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

add mhd odd/even for JET

git-svn-id: https://spcsvn.epfl.ch/repos/TCV/gdat/trunk@7777 d63d8f72-b253-0410-a779-e742ad2e26cf
parent f8cdc498
No related branches found
No related tags found
No related merge requests found
...@@ -706,95 +706,52 @@ elseif strcmp(mapping_for_jet.method,'switchcase') ...@@ -706,95 +706,52 @@ elseif strcmp(mapping_for_jet.method,'switchcase')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'mhd'} case {'mhd'}
% load n=1, 2 and 3 Bdot from magnetic measurements params_eff = gdat_data.gdat_params;
if shot< 50926 if ~isfield(params_eff,'nfft') || isempty(params_eff.nfft)
n1=tdi('abs(mhdmode("LFS",1,1))'); params_eff.nfft = 4096;
n2=tdi('abs(mhdmode("LFS",2,1))');
n3=tdi('abs(mhdmode("LFS",3,1))');
gdat_data.data_fullpath='abs(mhdmode("LFS",n,1));% for 1, 2, 3';
else
if isfield(gdat_data.gdat_params,'source') && ~isempty(gdat_data.gdat_params.source)
% gdat_data.gdat_params.source;
else
gdat_data.gdat_params.source = '23';
end
if length(gdat_data.gdat_params.source)>=2 && strcmp(gdat_data.gdat_params.source(1:2),'23')
aaLFSz23_sect3=tdi('\atlas::DT196_MHD_001:channel_067');
aaLFSz23_sect11=tdi('\atlas::DT196_MHD_001:channel_075');
n1 = aaLFSz23_sect3;
n1.data = aaLFSz23_sect3.data - aaLFSz23_sect11.data;
n2 = aaLFSz23_sect3;
n2.data = aaLFSz23_sect3.data + aaLFSz23_sect11.data;
n3=n1;
gdat_data.data_fullpath='\atlas::DT196_MHD_001:channel_067 -+ \atlas::DT196_MHD_001:channel_075 for n=1,2, LFS_sect_3/11, z=23cm';
if strcmp(gdat_data.gdat_params.source,'23full')
% HFS from sec 3 and 11
aaHFSz23_sect3=tdi('\atlas::DT196_MHD_002:channel_018');
aaHFSz23_sect11=tdi('\atlas::DT196_MHD_002:channel_022');
gdat_data.n1_HFS=aaHFSz23_sect3;
gdat_data.n1_HFS.data = gdat_data.n1_HFS.data - aaHFSz23_sect11.data;
gdat_data.n2_HFS=aaHFSz23_sect3;
gdat_data.n2_HFS.data = gdat_data.n2_HFS.data + aaHFSz23_sect11.data;
gdat_data.data_fullpath=['\atlas::DT196_MHD_001:channel_067 -+ \atlas::DT196_MHD_001:channel_075 for n=1,2, LFS_sect_3/11, z=23cm; _HFS' ...
' same for sector HFS: MHD_002:channel_018-+MHD_002:channel_022'];
end
elseif strcmp(gdat_data.gdat_params.source(1),'0')
aaLFSz0_sect3=tdi('\atlas::DT196_MHD_001:channel_083');
aaLFSz0_sect11=tdi('\atlas::DT196_MHD_001:channel_091');
n1 = aaLFSz0_sect3;
n1.data = aaLFSz0_sect3.data - aaLFSz0_sect11.data;
n2 = aaLFSz0_sect3;
n2.data = aaLFSz0_sect3.data + aaLFSz0_sect11.data;
n3=n1;
gdat_data.data_fullpath='\atlas::DT196_MHD_001:channel_083 -+ \atlas::DT196_MHD_001:channel_091 for n=1,2, LFS_sect_3/11, z=0cm';
if strcmp(gdat_data.gdat_params.source,'0full')
% sect 11 180deg from sec 3
aaHFSz0_sect3=tdi('\atlas::DT196_MHD_002:channel_034');
aaHFSz0_sect11=tdi('\atlas::DT196_MHD_002:channel_038');
gdat_data.n1_HFS=aaHFSz0_sect11;
gdat_data.n1_HFS.data = gdat_data.n1_HFS.data - aaHFSz0_sect11.data;
gdat_data.n2_HFS=aaHFSz0_sect11;
gdat_data.n2_HFS.data = gdat_data.n2_HFS.data + aaHFSz0_sect11.data;
gdat_data.data_fullpath=['\atlas::DT196_MHD_001:channel_083 -+ \atlas::DT196_MHD_001:channel_091 for n=1,2, LFS_sect3/11, z=0cm; _HFS' ...
' same for HFS: MHD_002:channel_034-+MHD_002:channel_038'];
end
else
disp('should not be here in ''mhd'', ask O. Sauter')
return
end
end end
if ~isempty(n1.data) gdat_data.gdat_params = params_eff;
gdat_data.data(:,1) = reshape(n1.data,length(n1.data),1); params_eff.data_request={'JPF','DA','C1M-H305'};
if length(n2.data)==length(n1.data); gdat_data.data(:,2) = reshape(n2.data,length(n2.data),1); end gdat_tmp = gdat_jet(shot,params_eff);
if length(n3.data)==length(n1.data); gdat_data.data(:,3) = reshape(n3.data,length(n3.data),1); end gdat_data.sig1.data = reshape(gdat_tmp.data,length(gdat_tmp.data),1 );
gdat_data.dim{1} = n1.dim{1}; gdat_data.t = gdat_tmp.t;
gdat_data.t = gdat_data.dim{1}; gdat_data.dim{1} = gdat_data.t;
gdat_data.dim{2} = [1; 2; 3]; gdat_data.dim{2} = [1 2];
gdat_data.dimunits{1} = n1.dimunits{1}; gdat_data.dimunits = {'s', 'odd/even'};
gdat_data.dimunits{2} = 'n number'; gdat_data.x = gdat_data.dim{2};
gdat_data.units = 'T/s'; gdat_data.sig1.data_request = params_eff.data_request;
gdat_data.request_description = 'delta_Bdot from magnetic probes to get n=1, 2 and 3'; % other coil 180deg apart toroidally
gdat_data.label = {'n=1','n=2','n=3'}; % can be used in legend(gdat_data.label) params_eff.data_request = {'JPF','DA','C1M-T009'};
gdat_tmp=gdat_jet(shot,params_eff);
gdat_data.sig2.data = reshape(gdat_tmp.data,length(gdat_tmp.data),1);
gdat_data.sig2.data_request=params_eff.data_request;
gdat_data.label={'n=odd','n=even'};
gdat_data.full_path='n=1 in data(:,1) and .sig1; .sig2';
gdat_data.units = 'T/s';
gdat_data.label = {'n=odd','n=even'}; % can be used in legend(gdat_data.label)
%
if ~isempty(gdat_data.sig1.data) && ~isempty(gdat_data.sig2.data)
gdat_data.data(:,1) = (gdat_data.sig1.data - gdat_data.sig2.data)./2;
gdat_data.data(:,2) = (gdat_data.sig1.data + gdat_data.sig2.data)./2;
end end
keyboard
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'ne','te'} case {'ne','te'}
nodenameeff_rho = 'rho'; nodenameeff_rho = 'rho';
params_eff = gdat_data.gdat_params; if ~isfield(gdat_data.gdat_params,'fit') || isempty(gdat_data.gdat_params.fit) || ~isnumeric(gdat_data.gdat_params.fit)
if isfield(params_eff,'source') && ~isempty(params_eff.source) gdat_data.gdat_params.fit = 1; % default do fit
if strcmp(lower(params_eff.source),'chain2') end
params_eff.source = 'hrt2'; if isfield(gdat_data.gdat_params,'source') && ~isempty(gdat_data.gdat_params.source)
if strcmp(lower(gdat_data.gdat_params.source),'chain2')
gdat_data.gdat_params.source = 'hrt2';
end end
if strcmp(lower(params_eff.source),'hrt2') if strcmp(lower(gdat_data.gdat_params.source),'hrt2')
nodenameeff_rho = []; % profiles already on rho nodenameeff_rho = []; % profiles already on rho
end end
else else
params_eff.source = 'hrts'; gdat_data.gdat_params.source = 'hrts';
end end
gdat_data.gdat_params = params_eff; params_eff = gdat_data.gdat_params;
params_eff.doplot = 0; params_eff.doplot = 0;
% ne or Te from Thomson data on raw z mesh vs (z,t) % ne or Te from Thomson data on raw z mesh vs (z,t)
params_eff.data_request = {'ppf',params_eff.source,data_request_eff}; params_eff.data_request = {'ppf',params_eff.source,data_request_eff};
...@@ -838,6 +795,106 @@ elseif strcmp(mapping_for_jet.method,'switchcase') ...@@ -838,6 +795,106 @@ elseif strcmp(mapping_for_jet.method,'switchcase')
gdat_data.(data_request_eff).rhopol = gdat_data.x; gdat_data.(data_request_eff).rhopol = gdat_data.x;
gdat_data.dimunits{1} = 'rhopol'; gdat_data.dimunits{1} = 'rhopol';
end end
% defaults for fits, so user always gets std structure
gdat_data.fit.rhotornorm = []; % same for both ne and te
gdat_data.fit.rhopolnorm = [];
gdat_data.fit.t = [];
gdat_data.fit.te.data = [];
gdat_data.fit.te.drhotornorm = [];
gdat_data.fit.ne.data = [];
gdat_data.fit.ne.drhotornorm = [];
gdat_data.fit.raw.te.data = [];
gdat_data.fit.raw.te.rhotornorm = [];
gdat_data.fit.raw.ne.data = [];
gdat_data.fit.raw.ne.rhotornorm = [];
fit_tension_default = -0.1;
if isfield(gdat_data.gdat_params,'fit_tension')
fit_tension = gdat_data.gdat_params.fit_tension;
else
fit_tension = fit_tension_default;
end
if ~isstruct(fit_tension)
fit_tension_eff.te = fit_tension;
fit_tension_eff.ne = fit_tension;
fit_tension = fit_tension_eff;
else
if ~isfield(fit_tension,'te'); fit_tension.te = fit_tension_default; end
if ~isfield(fit_tension,'ne '); fit_tension.ne = fit_tension_default; end
end
gdat_data.gdat_params.fit_tension = fit_tension;
if isfield(gdat_data.gdat_params,'fit_nb_rho_points')
fit_nb_rho_points = gdat_data.gdat_params.fit_nb_rho_points;
else
fit_nb_rho_points = 201;
end
gdat_data.gdat_params.fit_nb_rho_points = fit_nb_rho_points;
%
if gdat_data.gdat_params.fit==1
% add fits
gdat_data.fit.t = gdat_data.t;
rhopolfit = linspace(0,1,fit_nb_rho_points)';
gdat_data.fit.rhotornorm = NaN*ones(length(rhopolfit),length(gdat_data.fit.t));
gdat_data.fit.rhopolnorm = rhopolfit;
if any(strfind(data_request_eff,'te'))
gdat_data.fit.raw.te.data = NaN*ones(size(gdat_data.te.data));
gdat_data.fit.raw.te.error_bar = NaN*ones(size(gdat_data.te.data));
gdat_data.fit.raw.te.rhopolnorm = NaN*ones(size(gdat_data.te.data));
gdat_data.fit.te.data = gdat_data.fit.rhotornorm;
gdat_data.fit.te.drhotornorm = gdat_data.fit.rhotornorm;
end
if any(strfind(data_request_eff,'ne'))
gdat_data.fit.raw.ne.data = NaN*ones(size(gdat_data.ne.data));
gdat_data.fit.raw.ne.error_bar = NaN*ones(size(gdat_data.ne.data));
gdat_data.fit.raw.ne.rhopolnorm = NaN*ones(size(gdat_data.ne.data));
gdat_data.fit.ne.data =gdat_data.fit.rhotornorm;
gdat_data.fit.ne.drhotornorm = gdat_data.fit.rhotornorm;
end
for it=1:length(gdat_data.t)
% make rhotor->rhopol transformation for each time since equilibrium might have changed
irhook=find(gdat_data.grids_1d.rhotornorm(:,it)>0 & gdat_data.grids_1d.rhotornorm(:,it)<1); % no need for ~isnan
[rhoeff isort]=sort(gdat_data.grids_1d.rhotornorm(irhook,it));
gdat_data.fit.rhopolnorm(:,it)=interpos([0; rhoeff; 1],[0; gdat_data.grids_1d.rhopolnorm(irhook(isort),it); 1],rhopolfit,-0.1,[2 2],[0 1]);
if any(strfind(data_request_eff,'te'))
idatate = find(gdat_data.te.data(:,it)>0 & gdat_data.grids_1d.rhotornorm(:,it)<=1.05);
if length(idatate)>0
gdat_data.fit.raw.te.rhotornorm(idatate,it) = gdat_data.grids_1d.rhotornorm(idatate,it);
gdat_data.fit.raw.te.data(idatate,it) = gdat_data.te.data(idatate,it);
gdat_data.fit.raw.te.error_bar(idatate,it) = gdat_data.te.error_bar(idatate,it);
[rhoeff,irhoeff] = sort(gdat_data.grids_1d.rhotornorm(idatate,it));
rhoeff = [0; rhoeff];
teeff = gdat_data.te.data(idatate(irhoeff),it);
te_err_eff = gdat_data.te.error_bar(idatate(irhoeff),it);
% they are some strange low error_bars, so remove these by max(Te/error_bar)<=10; and changing it to large error bar
ij=find(teeff./te_err_eff>10.);
if ~isempty(ij); te_err_eff(ij) = teeff(ij)./0.1; end
%
teeff = [teeff(1); teeff];
te_err_eff = [1e4; te_err_eff];
[gdat_data.fit.te.data(:,it), gdat_data.fit.te.drhotornorm(:,it)] = interpos(rhoeff,teeff,rhopolfit,fit_tension.te,[1 0],[0 0],te_err_eff);
end
end
if any(strfind(data_request_eff,'ne'))
idatane = find(gdat_data.ne.data(:,it)>0 & gdat_data.grids_1d.rhotornorm(:,it)<=1.05);
if length(idatane)>0
gdat_data.fit.raw.ne.rhotornorm(idatane,it) = gdat_data.grids_1d.rhotornorm(idatane,it);
gdat_data.fit.raw.ne.data(idatane,it) = gdat_data.ne.data(idatane,it);
gdat_data.fit.raw.ne.error_bar(idatane,it) = gdat_data.ne.error_bar(idatane,it);
[rhoeff,irhoeff] = sort(gdat_data.grids_1d.rhotornorm(idatane,it));
rhoeff = [0; rhoeff];
% they are some strange low error_bars, so remove these by max(Te/error_bar)<=10; and changing it to large error bar
neeff = gdat_data.ne.data(idatane(irhoeff),it);
ne_err_eff = gdat_data.ne.error_bar(idatane(irhoeff),it);
ij=find(neeff./ne_err_eff>10.);
if ~isempty(ij); ne_err_eff(ij) = neeff(ij)./0.1; end
%
neeff = [neeff(1); neeff];
ne_err_eff = [1e21; ne_err_eff];
[gdat_data.fit.ne.data(:,it), gdat_data.fit.ne.drhotornorm(:,it)] = interpos(rhoeff,neeff,rhopolfit,fit_tension.ne,[1 0],[0 0],ne_err_eff);
end
end
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'ni','ti'} case {'ni','ti'}
...@@ -1280,33 +1337,6 @@ elseif strcmp(mapping_for_jet.method,'switchcase') ...@@ -1280,33 +1337,6 @@ elseif strcmp(mapping_for_jet.method,'switchcase')
gdat_data.dim{2} = gdat_data.x; gdat_data.dimunits{2} = ''; gdat_data.dim{2} = gdat_data.x; gdat_data.dimunits{2} = '';
gdat_data.data_fullpath = 'tot powers from each sources, and total power in .data(:,end)'; gdat_data.data_fullpath = 'tot powers from each sources, and total power in .data(:,end)';
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'q_rho'}
% q profile on psi from liuqe
nodenameeff=[{'ppf'},{'EFIT'},{'Q'}];
ppftype = nodenameeff{1};
tracename = [nodenameeff{2} '/' nodenameeff{3}];
[a,x,t,d,e]=rda_jet(shot,ppftype,tracename);
if e==0
if gdat_params.nverbose>=3; disp(['error after rda_jet in signal with data_request_eff= ' data_request_eff]); end
return
end
aatmp.data = a; aatmp.t = t; aatmp.x = sqrt(x); % psi to rhopol
gdat_data.data = aatmp.data;
gdat_data.t = aatmp.t;
gdat_data.x = aatmp.x;
if isempty(gdat_data.data)
return
end
gdat_data.dim = [{gdat_data.x} {gdat_data.t}];
gdat_data.data_fullpath=[nodenameeff ' on rhopol'];
gdat_data.dimunits{1} = '';
gdat_data.dimunits{2} = 's';
gdat_data.units = '';
gdat_data.request_description = 'q(rhopol\_norm)';
% add grids_1d to have rhotor, etc
gdat_data = get_grids_1d(gdat_data,1,1,gdat_params.nverbose);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'p_rad', 'prad'} case {'p_rad', 'prad'}
params_eff = gdat_data.gdat_params; params_eff = gdat_data.gdat_params;
...@@ -1362,6 +1392,32 @@ elseif strcmp(mapping_for_jet.method,'switchcase') ...@@ -1362,6 +1392,32 @@ elseif strcmp(mapping_for_jet.method,'switchcase')
gdat_data.request_description = '0 since LIUQE construct psi to be zero at LCFS'; gdat_data.request_description = '0 since LIUQE construct psi to be zero at LCFS';
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'q_rho'}
% q profile on psi from liuqe
nodenameeff=[{'ppf'},{'EFIT'},{'Q'}];
ppftype = nodenameeff{1};
tracename = [nodenameeff{2} '/' nodenameeff{3}];
[a,x,t,d,e]=rda_jet(shot,ppftype,tracename);
if e==0
if gdat_params.nverbose>=3; disp(['error after rda_jet in signal with data_request_eff= ' data_request_eff]); end
return
end
aatmp.data = a; aatmp.t = t; aatmp.x = sqrt(x); % psi to rhopol
gdat_data.data = aatmp.data;
gdat_data.t = aatmp.t;
gdat_data.x = aatmp.x;
if isempty(gdat_data.data)
return
end
gdat_data.dim = [{gdat_data.x} {gdat_data.t}];
gdat_data.data_fullpath=[nodenameeff ' on rhopol'];
gdat_data.dimunits{1} = '';
gdat_data.dimunits{2} = 's';
gdat_data.units = '';
gdat_data.request_description = 'q(rhopol\_norm)';
% add grids_1d to have rhotor, etc
gdat_data = get_grids_1d(gdat_data,1,1,gdat_params.nverbose);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
case {'rhotor', 'rhotor_edge', 'rhotor_norm', 'rhovol', 'volume_rho'} case {'rhotor', 'rhotor_edge', 'rhotor_norm', 'rhovol', 'volume_rho'}
% Phi(LCFS) = int(Bphi dSphi), can use Eq.(11) of "Tokamak coordinate conventions: COCOS" paper: % Phi(LCFS) = int(Bphi dSphi), can use Eq.(11) of "Tokamak coordinate conventions: COCOS" paper:
......
...@@ -129,16 +129,29 @@ switch lower(data_request) ...@@ -129,16 +129,29 @@ switch lower(data_request)
case 'mhd' case 'mhd'
mapping.timedim = 1; mapping.timedim = 1;
mapping.label = 'n=1 and n=2 amplitude'; mapping.label = 'n=1 and n=2 amplitude';
mapping.method = 'expression'; % {'JPF','DA','C1M-H306'} {'JPF','DA','C1M-T009'} (big) {'JPF','DA','C1M-MIT27'} mapping.timedim = 1;
mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request={''JPF'',''DA'',''C1H-I301''}; ' ... mapping.method = 'switchcase';
'gdat_tmp=gdat_jet(shot,params_eff);gdat_tmp.data=reshape(gdat_tmp.data,length(gdat_tmp.data),1 );' ... % $$$ mapping.method = 'expression'; % {'JPF','DA','C1M-H306'} {'JPF','DA','C1M-T009'} (big) {'JPF','DA','C1M-MIT27'}{'jpf' 'da' 'c1m-h304'} nfft=1024*3;
'gdat_tmp.dim{1}=gdat_tmp.t;gdat_tmp.dim{2}=[1 2];gdat_tmp.x=gdat_tmp.dim{2};' ... % $$$ mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request={''JPF'',''DA'',''C1H-I301''}; ' ...
'gdat_tmp.n_1.data = gdat_tmp.data;gdat_tmp.n_1.data_request=params_eff.data_request;' ... % $$$ 'gdat_tmp=gdat_jet(shot,params_eff);gdat_tmp.data=reshape(gdat_tmp.data,length(gdat_tmp.data),1 );' ...
'params_eff.data_request={''JPF'',''DA'',''C1H-I302''};' ... % $$$ 'gdat_tmp.dim{1}=gdat_tmp.t;gdat_tmp.dim{2}=[1 2];gdat_tmp.x=gdat_tmp.dim{2};' ...
'gdat_tmp2=gdat_jet(shot,params_eff);gdat_tmp.data(:,2)=reshape(gdat_tmp2.data,length(gdat_tmp2.data),1);' ... % $$$ 'gdat_tmp.n_1.data = gdat_tmp.data;gdat_tmp.n_1.data_request=params_eff.data_request;' ...
'gdat_tmp.n_2.data = gdat_tmp2.data;gdat_tmp.n_2.data_request=params_eff.data_request;gdat_tmp.label={''n=1'',''n=2''};' ... % $$$ 'params_eff.data_request={''JPF'',''DA'',''C1H-I302''};' ...
'gdat_tmp.full_path=''n=1 in data and .n_1; .n_2'';' ... % $$$ 'gdat_tmp2=gdat_jet(shot,params_eff);gdat_tmp.data(:,2)=reshape(gdat_tmp2.data,length(gdat_tmp2.data),1);' ...
'gdat_tmp.gdat_request=''mhd'';gdat_tmp.gdat_params.data_request=gdat_tmp.gdat_request;']; % $$$ 'gdat_tmp.n_2.data = gdat_tmp2.data;gdat_tmp.n_2.data_request=params_eff.data_request;gdat_tmp.label={''n=1'',''n=2''};' ...
% $$$ 'gdat_tmp.full_path=''n=1 in data and .n_1; .n_2'';' ...
% $$$ 'gdat_tmp.gdat_request=''mhd'';gdat_tmp.gdat_params.data_request=gdat_tmp.gdat_request;'];
% $$$ mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request={''JPF'',''DA'',''C1M-T009''}; ' ...
% $$$ 'gdat_tmp=gdat_jet(shot,params_eff);gdat_tmp.data=reshape(gdat_tmp.data,length(gdat_tmp.data),1 );' ...
% $$$ 'gdat_tmp.dim{1}=gdat_tmp.t;gdat_tmp.dim{2}=[1 2];gdat_tmp.x=gdat_tmp.dim{2};' ...
% $$$ 'gdat_tmp.n_1.data = gdat_tmp.data;gdat_tmp.n_1.data_request=params_eff.data_request;' ...
% $$$ 'params_eff.data_request={''JPF'',''DA'',''C1M-H305''};' ...
% $$$ 'gdat_tmp2=gdat_jet(shot,params_eff);gdat_tmp.data(:,2)=reshape(gdat_tmp2.data,length(gdat_tmp2.data),1);' ...
% $$$ 'gdat_tmp.n_2.data = gdat_tmp2.data;gdat_tmp.n_2.data_request=params_eff.data_request;gdat_tmp.label={''n=1'',''n=2''};' ...
% $$$ 'gdat_tmp.full_path=''n=1 in data and .n_1; .n_2'';' ...
% $$$ 'gdat_tmp.gdat_request=''mhd'';gdat_tmp.gdat_params.data_request=gdat_tmp.gdat_request;' ...
% $$$ ''];
case 'mhd_ampl' case 'mhd_ampl'
mapping.timedim = 1; mapping.timedim = 1;
mapping.label = 'n=1 and n=2 amplitude'; mapping.label = 'n=1 and n=2 amplitude';
......
...@@ -94,7 +94,11 @@ if all(isfield(gdat_data,{'data','t'})) && ~isempty(gdat_data.data) && ~isempty( ...@@ -94,7 +94,11 @@ if all(isfield(gdat_data,{'data','t'})) && ~isempty(gdat_data.data) && ~isempty(
legend(gdat_data.label); legend(gdat_data.label);
% add spectrogram per signal % add spectrogram per signal
mhd_sum_data = 0.; mhd_sum_data = 0.;
nfft=1024; if isfield(gdat_data.gdat_params,'nfft') && ~isempty(gdat_data.gdat_params.nfft)
nfft = gdat_data.gdat_params.nfft;
else
nfft=1024;
end
tmhdm=mean(reshape(gdat_data.t(1:nfft*fix(length(gdat_data.t)/nfft)),nfft,fix(length(gdat_data.t)/nfft))); tmhdm=mean(reshape(gdat_data.t(1:nfft*fix(length(gdat_data.t)/nfft)),nfft,fix(length(gdat_data.t)/nfft)));
for i=1:size(gdat_data.data,2) for i=1:size(gdat_data.data,2)
[B,F,T]=specgram(gdat_data.data(:,i),nfft,1/mean(diff(gdat_data.t)),hanning(nfft),nfft/2); [B,F,T]=specgram(gdat_data.data(:,i),nfft,1/mean(diff(gdat_data.t)),hanning(nfft),nfft/2);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment