diff --git a/crpptbx/D3D/get_signal_d3d.m b/crpptbx/D3D/get_signal_d3d.m index e0d0a0d475e9da566d5a3ac5a1b34f2870a1ced1..71a18725856c8a60fd48aa6dde45fd3ef00a40bf 100644 --- a/crpptbx/D3D/get_signal_d3d.m +++ b/crpptbx/D3D/get_signal_d3d.m @@ -1,6 +1,14 @@ function [gdat_data,error_status] = get_signal_d3d(signal,gdat_data); -gdat_data.data = mdsvalue(signal); +if strcmp(lower(gdat_data.gdat_params.tree),'d3d') && strcmp(signal(1),'\') + % try also ptdata + gdat_data.data = mdsvalue(['_sOS=' signal]); + if ischar(gdat_data.data) % could check if "not found" present, but not all cases + gdat_data.data = mdsvalue(['_sOS=ptdata(''' signal ''',' num2str(gdat_data.shot) ')']); + end +else + gdat_data.data = mdsvalue(['_sOS=' signal]); +end error_status = 1; gdat_data.dim = []; @@ -9,11 +17,11 @@ gdat_data.t = []; gdat_data.x = []; nbdims=numel(setdiff(size(gdat_data.data),1)); if ~isempty(gdat_data.data) && ~ischar(gdat_data.data) - gdat_data.units = mdsvalue(['units_of(' signal ')']); + gdat_data.units = mdsvalue(['units_of(' '_sOS' ')']); if prod(size(gdat_data.data)) > 1 for i=1:nbdims - gdat_data.dim{i} = mdsvalue(['dim_of(' signal ',' num2str(i-1) ')']); - % gdat_data.dimunits{i} = mdsvalue(['dimunits_of(' signal ',' num2str(i-1) ')']); + gdat_data.dim{i} = mdsvalue(['dim_of(' '_sOS' ',' num2str(i-1) ')']); + % gdat_data.dimunits{i} = mdsvalue(['dimunits_of(' '_sOS' ',' num2str(i-1) ')']); gdat_data.dimunits{i} = 'to get'; end if nbdims==1