Skip to content
Snippets Groups Projects
Commit 1b792b40 authored by Olivier Sauter's avatar Olivier Sauter
Browse files

add various cases, to check further...

git-svn-id: https://spcsvn.epfl.ch/repos/TCV/gdat/trunk@5441 d63d8f72-b253-0410-a779-e742ad2e26cf
parent 9b2b58d4
No related branches found
No related tags found
No related merge requests found
...@@ -144,6 +144,12 @@ switch lower(data_request) ...@@ -144,6 +144,12 @@ switch lower(data_request)
'params_eff.data_request={''MOD'',''EvenN''};' ... 'params_eff.data_request={''MOD'',''EvenN''};' ...
'gdat_tmp2=gdat_aug(shot,params_eff);gdat_tmp.data(:,2)=reshape(gdat_tmp2.data,length(gdat_tmp2.data),1);' ... 'gdat_tmp2=gdat_aug(shot,params_eff);gdat_tmp.data(:,2)=reshape(gdat_tmp2.data,length(gdat_tmp2.data),1);' ...
'gdat_tmp.n_even.data = gdat_tmp2.data;gdat_tmp.n_even.data_request=params_eff.data_request;gdat_tmp.label={''n\_odd'',''n\_even''};' ... 'gdat_tmp.n_even.data = gdat_tmp2.data;gdat_tmp.n_even.data_request=params_eff.data_request;gdat_tmp.label={''n\_odd'',''n\_even''};' ...
'params_eff.data_request={''MOD'',''OddNAmp''};' ...
'gdat_tmp2=gdat_aug(shot,params_eff);gdat_tmp.n_odd.amp=reshape(gdat_tmp2.data,length(gdat_tmp2.data),1);' ...
'gdat_tmp.n_odd.amp_t=gdat_tmp2.t;' ...
'params_eff.data_request={''MOD'',''EvenNAmp''};' ...
'gdat_tmp2=gdat_aug(shot,params_eff);gdat_tmp.n_even.amp=reshape(gdat_tmp2.data,length(gdat_tmp2.data),1);' ...
'gdat_tmp.n_even.amp_t=gdat_tmp2.t;' ...
'gdat_tmp.full_path=''MOD/Odd in data and .n_odd; .n_even'';' ... 'gdat_tmp.full_path=''MOD/Odd in data and .n_odd; .n_even'';' ...
'gdat_tmp.gdat_request=''mhd'';gdat_tmp.gdat_params.data_request=gdat_tmp.gdat_request;']; 'gdat_tmp.gdat_request=''mhd'';gdat_tmp.gdat_params.data_request=gdat_tmp.gdat_request;'];
case 'ne' case 'ne'
...@@ -174,6 +180,10 @@ switch lower(data_request) ...@@ -174,6 +180,10 @@ switch lower(data_request)
mapping.method = 'switchcase'; mapping.method = 'switchcase';
case 'ni' case 'ni'
mapping.method = 'switchcase'; % especially since might have option fit, etc mapping.method = 'switchcase'; % especially since might have option fit, etc
case 'pgyro'
mapping.timedim = 1;
mapping.label = 'EC gyros';
mapping.method = 'switchcase';
case 'powers' case 'powers'
mapping.timedim = 1; mapping.timedim = 1;
mapping.label = 'various powers'; mapping.label = 'various powers';
......
...@@ -1066,6 +1066,159 @@ elseif strcmp(mapping_for_aug.method,'switchcase') ...@@ -1066,6 +1066,159 @@ elseif strcmp(mapping_for_aug.method,'switchcase')
gdat_data.label = 'pe'; gdat_data.label = 'pe';
end end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'pgyro'}
% LOAD MULTI CHANNEL DATA ECS
% powers, frequencies, etc
params_eff = gdat_data.gdat_params;
params_eff.data_request={'ECS','PECRH'};
% pgyro tot in index=9
try
gdat_data=gdat_aug(shot,params_eff);
catch
if gdat_params.nverbose>=3; disp(['problems with ' params_eff.data_request]); end
return
end
nb_timepoints = length(gdat_data.t);
pgyro = NaN*ones(nb_timepoints,9);
pgyro(:,9) = reshape(gdat_data.data,nb_timepoints,1);
gdat_data.data = pgyro;
labels{9} = 'ECtot';
for i=1:4
% "old" ECRH1 gyrotrons: gyro 1 to 4 in pgyro
params_eff.data_request={'ECS',['PG' num2str(i)]};
gdat_data_i=gdat_aug(shot,params_eff);
if isempty(gdat_data_i.data) || isempty(gdat_data_i.dim)
else
gdat_data.ec{i} = gdat_data_i;
gdat_data.data(:,i) = reshape(gdat_data_i.data,nb_timepoints,1);
gdat_data.dim = [{gdat_data_i.t} {[1:9]}];
if max(gdat_data_i.data) > 0.
labels{i} = ['EC_' num2str(i)];
end
end
try
a = sf2par('ECS',shot,'gyr_freq',['P_sy1_g' num2str(i)]);
catch
% gyr_freq not present (old shots for example)
a=[];
end
if isempty(a)
else
gdat_data.ec{i}.freq = a;
gdat_data.freq_ec(i) = a.value;
end
try
a = sf2par('ECS',shot,'GPolPos',['P_sy1_g' num2str(i)]);
catch
% GPolPos not present
a=[];
end
if isempty(a)
else
gdat_data.ec{i}.polpos = a.value;
gdat_data.polpos_ec(i) = a.value;
end
try
a = sf2par('ECS',shot,'GTorPos',['P_sy1_g' num2str(i)]);
catch
a=[];
end
if isempty(a)
else
gdat_data.ec{i}.torpos = a.value;
gdat_data.torpos_ec(i) = a.value;
end
% "new" ECRH2 gyrotrons: gyro 5 to 8 in pgyro
params_eff.data_request={'ECS',['PG' num2str(i) 'N']};
gdat_data_i=gdat_aug(shot,params_eff);
if isempty(gdat_data_i.data) || isempty(gdat_data_i.dim)
else
gdat_data.ec{i+4} = gdat_data_i;
gdat_data.data(:,i+4) = reshape(gdat_data_i.data,nb_timepoints,1);
gdat_data.dim = [{gdat_data_i.t} {[1:9]}];
if max(gdat_data_i.data) > 0.
labels{i+4} = ['EC_' num2str(i+4)];
end
end
try
a = sf2par('ECS',shot,'gyr_freq',['P_sy2_g' num2str(i)]);
catch
a=[];
end
if isempty(a)
else
gdat_data.ec{i+4}.freq = a;
gdat_data.freq_ec(i+4) = a.value;
end
try
a = sf2par('ECS',shot,'GPolPos',['P_sy2_g' num2str(i)]);
catch
a=[];
end
if isempty(a)
else
gdat_data.ec{i+4}.polpos = a.value;
gdat_data.polpos_ec(i+4) = a.value;
end
try
a = sf2par('ECS',shot,'GTorPos',['P_sy2_g' num2str(i)]);
catch
a=[];
end
if isempty(a)
else
gdat_data.ec{i+4}.torpos = a.value;
gdat_data.torpos_ec(i+4) = a.value;
end
params_eff.data_request={'ECN',['G' num2str(i) 'POL']};
gdat_data_i=gdat_aug(shot,params_eff);
if isempty(gdat_data_i.data) || isempty(gdat_data_i.dim)
else
gdat_data.ec{i+4}.gpol_ec = gdat_data_i;
end
params_eff.data_request={'ECN',['G' num2str(i) 'TOR']};
gdat_data_i=gdat_aug(shot,params_eff);
if isempty(gdat_data_i.data) || isempty(gdat_data_i.dim)
else
gdat_data.ec{i+4}.gtor_ec = gdat_data_i;
end
params_eff.data_request={'ECN',['G' num2str(i) 'PO4']};
gdat_data_i=gdat_aug(shot,params_eff);
if isempty(gdat_data_i.data) || isempty(gdat_data_i.dim)
else
gdat_data.ec{i+4}.gpo4_ec = gdat_data_i;
end
params_eff.data_request={'ECN',['G' num2str(i) 'PO8']};
gdat_data_i=gdat_aug(shot,params_eff);
if isempty(gdat_data_i.data) || isempty(gdat_data_i.dim)
else
gdat_data.ec{i+4}.gpo8_ec = gdat_data_i;
end
end
if ~isempty(gdat_data.dim)
gdat_data.t = gdat_data.dim{1};
gdat_data.x = gdat_data.dim{2};
gdat_data.dimunits=[{'time [s]'} {'ECRH1(1:4) ECRH2(1:4) ECtot'}];
gdat_data.units='W';
gdat_data.freq_ech_units = 'GHz';
gdat_data.data_fullpath=['ECS/' 'PGi and PGiN, etc'];
icount=0;
for i=1:length(labels)
if ~isempty(labels{i})
icount=icount+1;
gdat_data.label{icount} = labels{i};
end
end
else
gdat_data.freq_ech_units =[]';
gdat_data.ec = [];
gdat_data.freq_ec = [];
gdat_data.polpos_ec = [];
gdat_data.torpos_ec = [];
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'powers'} case {'powers'}
% case total only % case total only
......
...@@ -45,7 +45,7 @@ if nargin>=3 && mod(length(varargin),2)==0 ...@@ -45,7 +45,7 @@ if nargin>=3 && mod(length(varargin),2)==0
end end
if shot>0 if shot>0
pgyro=gdat(shot,'pgyro',1); powers=gdat(shot,'powers');
hhDCR = sfread('DCR', shot); hhDCR = sfread('DCR', shot);
dousedcr = ''; dousedcr = '';
......
...@@ -67,12 +67,15 @@ if prod(isfield(gdat_data,{'data','t'})) && ~isempty(gdat_data.data) && ~isempty ...@@ -67,12 +67,15 @@ if prod(isfield(gdat_data,{'data','t'})) && ~isempty(gdat_data.data) && ~isempty
xlabel(['time']); xlabel(['time']);
end end
ylabel_eff = gdat_data.label; ylabel_eff = gdat_data.label;
if iscell(gdat_data.label) && length(gdat_data.label)>=2; ylabel_eff = gdat_data.label{2}; end if iscell(gdat_data.label) && length(gdat_data.label)>=2; ylabel_eff = gdat_data.label{end}; end
if ~isempty(gdat_data.units) if ~isempty(gdat_data.units)
hylabel=ylabel([ylabel_eff '[' gdat_data.units ']']); hylabel=ylabel([ylabel_eff '[' gdat_data.units ']']);
else else
hylabel=ylabel(ylabel_eff); hylabel=ylabel(ylabel_eff);
end end
if iscell(gdat_data.label) && length(gdat_data.label)>=2;
legend(gdat_data.label)
end
zoom on; zoom on;
end end
if strcmp(gdat_data.gdat_request,'mhd') if strcmp(gdat_data.gdat_request,'mhd')
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment