From d729816dffeff6e954609fc22ed96169db702743 Mon Sep 17 00:00:00 2001 From: Olivier Sauter <Olivier.Sauter@epfl.ch> Date: Tue, 18 Feb 2020 08:47:06 +0100 Subject: [PATCH] comment or add keyboar for remaining tcv parts in gdat_jet (still to be developed) --- matlab/JET/gdat_jet.m | 500 +++++++++++++++++++++--------------------- 1 file changed, 251 insertions(+), 249 deletions(-) diff --git a/matlab/JET/gdat_jet.m b/matlab/JET/gdat_jet.m index dff583de..fba1dcf5 100644 --- a/matlab/JET/gdat_jet.m +++ b/matlab/JET/gdat_jet.m @@ -948,234 +948,234 @@ elseif strcmp(mapping_for_jet.method,'switchcase') end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - case {'ne_rho', 'te_rho', 'nete_rho'} - % if nete_rho, do first ne, then Te later (so fir stuff already done) - zshift = 0.; - if isfield(gdat_data.gdat_params,'zshift') && ~isempty(gdat_data.gdat_params.zshift) - zshift = gdat_data.gdat_params.zshift; - else - gdat_data.gdat_params.zshift = zshift; - end - if ~(isfield(gdat_data.gdat_params,'edge') && ~isempty(gdat_data.gdat_params.edge) && ... - gdat_data.gdat_params.edge>0) - gdat_data.gdat_params.edge = 0; - end - [gdat_data] = get_thomson_raw_data(shot,data_request_eff,gdat_data,gdat_data.gdat_params.edge,gdat_params.nverbose); - % construct rho mesh - edge_str_ = ''; - edge_str_dot = ''; - if gdat_data.gdat_params.edge - edge_str_ = '_edge'; - edge_str_dot = '.edge'; - end - psi_max=gdat([],['\results::thomson' edge_str_dot ':psi_max' substr_liuqe]); - psiscatvol=gdat([],['\results::thomson' edge_str_dot ':psiscatvol' substr_liuqe]); - if abs(zshift)>1e-5 - % calculate new psiscatvol - psitdi=tdi(['\results::psi' substr_liuqe]); - rmesh=psitdi.dim{1}; - zmesh=psitdi.dim{2}; - zthom=mdsdata('dim_of(\thomson:te,1)'); - zeffshift=zshift; - % set zeffshift time array same as psitdi - switch length(zeffshift) - case 1 - zeffshift=zeffshift * ones(size(psitdi.dim{3})); - case length(psitdi.dim{3}) - % ok - case length(psiscatvol.dim{1}) - zeffshift=interp1(psiscatvol.dim{1},zeffshift,psitdi.dim{3}); - otherwise - if (gdat_params.nverbose>=1); - disp(' bad time dimension for zshift') - disp(['it should be 1 or ' num2str(length(psiscatvol.dim{1})) ' or ' num2str(length(psitdi.dim{3}))]) - end - end - for it=1:length(psiscatvol.dim{1}) - itpsitdi=iround(psitdi.dim{3},psiscatvol.dim{1}(it)); - psirz=psitdi.data(:,:,itpsitdi); - psiscatvol0=griddata(rmesh,zmesh,psirz',0.9*ones(size(zthom)),zthom-zeffshift(itpsitdi)); - psiscatvol.data(it,:)=psiscatvol0; - end - end - if ~isempty(psiscatvol.data) && ~ischar(psiscatvol.data) && ~isempty(psi_max.data) && ~ischar(psi_max.data) - for ir=1:length(psiscatvol.dim{2}) - rho(ir,:)= sqrt(1.-psiscatvol.data(:,ir)./psi_max.data(:))'; - end - else - if gdat_params.nverbose>=1; warning(['psiscatvol empty?, no rho calculated for data_request = ' data_request_eff]); end - rho=[]; - end - gdat_data.dim{1}=rho; - gdat_data.dimunits=[{'sqrt(psi_norm)'} ; {'time [s]'}]; - gdat_data.x=rho; - %%%%%%%%%%% - % if nete_rho, copy data as .ne, get .te and put pe=e ne Te in data: - if strcmp(data_request_eff(1:4),'nete') - % note, now has ne.data_raw for density without fir_to_thomson_ratio - gdat_data.ne.data = gdat_data.data; - gdat_data.ne.data_raw = gdat_data.data_raw; - gdat_data.ne.error_bar = gdat_data.error_bar; - gdat_data.ne.error_bar_raw = gdat_data.error_bar_raw; - gdat_data.ne.firrat=gdat_data.firrat; - gdat_data.ne.units = 'm^{-3}'; - gdat_data = rmfield(gdat_data,{'firrat','data_raw','error_bar_raw'}); - % - nodenameeff=['\results::thomson' edge_str_dot ':te']; - tracetdi=tdi(nodenameeff); - nodenameeff=['\results::thomson' edge_str_dot ':te; error_bar']; - tracestd=tdi(['\results::thomson' edge_str_dot ':te:error_bar']); - gdat_data.te.data=tracetdi.data'; - gdat_data.te.error_bar=tracestd.data'; - gdat_data.te.units = tracetdi.units; - gdat_data.data_fullpath=['pe=1.6e-19*ne*Te in data, .ne, .te from \results::thomson' ... - edge_str_dot ':ne and te and projected on rhopol\_norm']; - gdat_data.units='N/m^2; 1.6022e-19 ne Te'; - gdat_data.data = 1.6022e-19 .* gdat_data.ne.data .* gdat_data.te.data; - gdat_data.error_bar = 1.6022e-19 .* (gdat_data.ne.data .* gdat_data.te.error_bar ... - + gdat_data.te.data .* gdat_data.ne.error_bar); - end - %%%%%%%%%%% add fitted profiles if 'fit'>=1 - default_fit_type = 'conf'; - if ~isfield(gdat_data.gdat_params,'fit') || isempty(gdat_data.gdat_params.fit) - gdat_data.gdat_params.fit = 1; - end - % add empty structure for fit so results is always the same with or without call to fit=1 or 0 - gdat_data.fit.data = []; - gdat_data.fit.x = []; - gdat_data.fit.t = []; - gdat_data.fit.units = []; - gdat_data.fit.data_fullpath = []; - if strcmp(data_request_eff(1:4),'nete') - % note gdat_data.fit.data level is for pe - gdat_data.fit.ne.data = []; - gdat_data.fit.ne.x = []; - gdat_data.fit.ne.t = []; - gdat_data.fit.ne.units = []; - gdat_data.fit.ne.data_fullpath = []; - gdat_data.fit.te.data = []; - gdat_data.fit.te.x = []; - gdat_data.fit.te.t = []; - gdat_data.fit.te.units = []; - gdat_data.fit.te.data_fullpath = []; - end - if gdat_data.gdat_params.fit>0 - % default is from proffit:avg_time - if ~(isfield(gdat_data.gdat_params,'fit_type') && ~isempty(gdat_data.gdat_params.fit_type)) || ~any(strcmp(gdat_data.gdat_params.fit_type,{'local', 'avg', 'conf'})) - gdat_data.gdat_params.fit_type = default_fit_type; - end - switch gdat_data.gdat_params.fit_type - case 'avg' - def_proffit = '\results::proffit.avg_time:'; - case 'local' - def_proffit = '\results::proffit.local_time:'; - case 'conf' - def_proffit = '\results::conf:'; - otherwise - if (gdat_params.nverbose>=1); - disp('should not be in switch gdat_data.gdat_params.fit_type') - disp('ask olivier.sauter@epfl.ch') - end - return - end - if strcmp(gdat_data.gdat_params.fit_type,'conf') - nodenameeff = [def_proffit data_request_eff(1:2)]; - else - if strcmp(data_request_eff(1:2),'ne') - nodenameeff = [def_proffit 'neft_abs']; % do first ne if nete asked for - elseif strcmp(data_request_eff(1:2),'te') - nodenameeff = [def_proffit 'teft']; - else - if (gdat_params.nverbose>=1); - disp(['should not be here: data_request_eff, data_request_eff(1:2)= ',data_request_eff, data_request_eff(1:2)]); - end - end - end - if isfield(gdat_data.gdat_params,'trialindx') && ~isempty(gdat_data.gdat_params.trialindx) && ... - gdat_data.gdat_params.trialindx>=0 - nodenameeff=[nodenameeff ':trial']; - trialindx = gdat_data.gdat_params.trialindx; - else - gdat_data.gdat_params.trialindx = []; - trialindx = []; - end - tracetdi=tdi(nodenameeff); - if isempty(trialindx) - if ~isempty(tracetdi.data) && ~isempty(tracetdi.dim) && ~ischar(tracetdi.data) - gdat_data.fit.data = tracetdi.data; - else - if gdat_params.nverbose>=1 - disp([nodenameeff ' is empty, thus no fits, check hldsi(shot) and may need to run anaprofs?']) - end - if strcmp(data_request_eff(1:4),'nete') - gdat_data.fit.ne.data_fullpath = [nodenameeff ' is empty']; - gdat_data.fit.te.data_fullpath = [nodenameeff ' is empty']; - else - gdat_data.fit.data_fullpath = [nodenameeff ' is empty']; - end - return - end - else - if ~isempty(tracetdi.data) && size(tracetdi.data,3)>=trialindx+1 - gdat_data.fit.data = tracetdi.data(:,:,trialindx+1); - else - if gdat_params.nverbose>=1 - disp([nodenameeff ' with trialindx=' num2str(trialindx) ' is empty, thus no fits, check hldsi(shot) and may need to run anaprofs?']) - end - gdat_data.fit.data_fullpath = [nodenameeff ' with trialindx=' num2str(trialindx) ' is empty']; - return - end - end - gdat_data.fit.x=tracetdi.dim{1}; - gdat_data.fit.t=tracetdi.dim{2}; - if mapping_for_jet.timedim~=2 | mapping_for_jet.gdat_timedim~=2 - if (gdat_params.nverbose>=1); - disp(['unexpected timedim in fit: data_request_eff= ' data_request_eff ... - ', mapping_for_jet.timedim= ' mapping_for_jet.timedim ... - ', mapping_for_jet.gdat_timedim= ' mapping_for_jet.gdat_timedim]); - end - end - if any(strcmp(fieldnames(tracetdi),'units')) - gdat_data.fit.units=tracetdi.units; - end - gdat_data.fit.data_fullpath = nodenameeff; - % do te as well if nete asked for - if strcmp(data_request_eff(1:4),'nete') - gdat_data.fit.ne.data = gdat_data.fit.data; - gdat_data.fit.ne.x = gdat_data.fit.x; - gdat_data.fit.ne.t = gdat_data.fit.t; - gdat_data.fit.ne.units = gdat_data.fit.units; - gdat_data.fit.ne.data_fullpath = gdat_data.fit.data_fullpath; - if strcmp(gdat_data.gdat_params.fit_type,'conf') - nodenameeff = [def_proffit 'te']; - else - nodenameeff = [def_proffit 'teft']; - end - if ~isempty(trialindx); nodenameeff=[nodenameeff ':trial']; end - tracetdi=tdi(nodenameeff); - if isempty(trialindx) - gdat_data.fit.te.data = tracetdi.data; - else - if ~isempty(tracetdi.data) && size(tracetdi.data,3)>=trialindx+1 - gdat_data.fit.te.data = tracetdi.data(:,:,trialindx+1); - else - return - end - end - gdat_data.fit.te.x = gdat_data.fit.ne.x; - gdat_data.fit.te.t = gdat_data.fit.ne.t; - if any(strcmp(fieldnames(tracetdi),'units')) - gdat_data.fit.te.units=tracetdi.units; - end - gdat_data.fit.te.data_fullpath = [nodenameeff]; - % construct pe=1.6022e-19*ne*te - gdat_data.fit.data = 1.6022e-19.*gdat_data.fit.ne.data .* gdat_data.fit.te.data; - gdat_data.fit.units = 'N/m^2; 1.6022e-19 ne Te'; - gdat_data.fit.data_fullpath = [gdat_data.fit.data_fullpath ' ; ' nodenameeff ' and pe in data']; - end - else - gdat_data.gdat_params.fit_type = default_fit_type; - end +% $$$ case {'ne_rho', 'te_rho', 'nete_rho'} +% $$$ % if nete_rho, do first ne, then Te later (so fir stuff already done) +% $$$ zshift = 0.; +% $$$ if isfield(gdat_data.gdat_params,'zshift') && ~isempty(gdat_data.gdat_params.zshift) +% $$$ zshift = gdat_data.gdat_params.zshift; +% $$$ else +% $$$ gdat_data.gdat_params.zshift = zshift; +% $$$ end +% $$$ if ~(isfield(gdat_data.gdat_params,'edge') && ~isempty(gdat_data.gdat_params.edge) && ... +% $$$ gdat_data.gdat_params.edge>0) +% $$$ gdat_data.gdat_params.edge = 0; +% $$$ end +% $$$ [gdat_data] = get_thomson_raw_data(shot,data_request_eff,gdat_data,gdat_data.gdat_params.edge,gdat_params.nverbose); +% $$$ % construct rho mesh +% $$$ edge_str_ = ''; +% $$$ edge_str_dot = ''; +% $$$ if gdat_data.gdat_params.edge +% $$$ edge_str_ = '_edge'; +% $$$ edge_str_dot = '.edge'; +% $$$ end +% $$$ psi_max=gdat([],['\results::thomson' edge_str_dot ':psi_max' substr_liuqe]); +% $$$ psiscatvol=gdat([],['\results::thomson' edge_str_dot ':psiscatvol' substr_liuqe]); +% $$$ if abs(zshift)>1e-5 +% $$$ % calculate new psiscatvol +% $$$ psitdi=tdi(['\results::psi' substr_liuqe]); +% $$$ rmesh=psitdi.dim{1}; +% $$$ zmesh=psitdi.dim{2}; +% $$$ zthom=mdsdata('dim_of(\thomson:te,1)'); +% $$$ zeffshift=zshift; +% $$$ % set zeffshift time array same as psitdi +% $$$ switch length(zeffshift) +% $$$ case 1 +% $$$ zeffshift=zeffshift * ones(size(psitdi.dim{3})); +% $$$ case length(psitdi.dim{3}) +% $$$ % ok +% $$$ case length(psiscatvol.dim{1}) +% $$$ zeffshift=interp1(psiscatvol.dim{1},zeffshift,psitdi.dim{3}); +% $$$ otherwise +% $$$ if (gdat_params.nverbose>=1); +% $$$ disp(' bad time dimension for zshift') +% $$$ disp(['it should be 1 or ' num2str(length(psiscatvol.dim{1})) ' or ' num2str(length(psitdi.dim{3}))]) +% $$$ end +% $$$ end +% $$$ for it=1:length(psiscatvol.dim{1}) +% $$$ itpsitdi=iround(psitdi.dim{3},psiscatvol.dim{1}(it)); +% $$$ psirz=psitdi.data(:,:,itpsitdi); +% $$$ psiscatvol0=griddata(rmesh,zmesh,psirz',0.9*ones(size(zthom)),zthom-zeffshift(itpsitdi)); +% $$$ psiscatvol.data(it,:)=psiscatvol0; +% $$$ end +% $$$ end +% $$$ if ~isempty(psiscatvol.data) && ~ischar(psiscatvol.data) && ~isempty(psi_max.data) && ~ischar(psi_max.data) +% $$$ for ir=1:length(psiscatvol.dim{2}) +% $$$ rho(ir,:)= sqrt(1.-psiscatvol.data(:,ir)./psi_max.data(:))'; +% $$$ end +% $$$ else +% $$$ if gdat_params.nverbose>=1; warning(['psiscatvol empty?, no rho calculated for data_request = ' data_request_eff]); end +% $$$ rho=[]; +% $$$ end +% $$$ gdat_data.dim{1}=rho; +% $$$ gdat_data.dimunits=[{'sqrt(psi_norm)'} ; {'time [s]'}]; +% $$$ gdat_data.x=rho; +% $$$ %%%%%%%%%%% +% $$$ % if nete_rho, copy data as .ne, get .te and put pe=e ne Te in data: +% $$$ if strcmp(data_request_eff(1:4),'nete') +% $$$ % note, now has ne.data_raw for density without fir_to_thomson_ratio +% $$$ gdat_data.ne.data = gdat_data.data; +% $$$ gdat_data.ne.data_raw = gdat_data.data_raw; +% $$$ gdat_data.ne.error_bar = gdat_data.error_bar; +% $$$ gdat_data.ne.error_bar_raw = gdat_data.error_bar_raw; +% $$$ gdat_data.ne.firrat=gdat_data.firrat; +% $$$ gdat_data.ne.units = 'm^{-3}'; +% $$$ gdat_data = rmfield(gdat_data,{'firrat','data_raw','error_bar_raw'}); +% $$$ % +% $$$ nodenameeff=['\results::thomson' edge_str_dot ':te']; +% $$$ tracetdi=tdi(nodenameeff); +% $$$ nodenameeff=['\results::thomson' edge_str_dot ':te; error_bar']; +% $$$ tracestd=tdi(['\results::thomson' edge_str_dot ':te:error_bar']); +% $$$ gdat_data.te.data=tracetdi.data'; +% $$$ gdat_data.te.error_bar=tracestd.data'; +% $$$ gdat_data.te.units = tracetdi.units; +% $$$ gdat_data.data_fullpath=['pe=1.6e-19*ne*Te in data, .ne, .te from \results::thomson' ... +% $$$ edge_str_dot ':ne and te and projected on rhopol\_norm']; +% $$$ gdat_data.units='N/m^2; 1.6022e-19 ne Te'; +% $$$ gdat_data.data = 1.6022e-19 .* gdat_data.ne.data .* gdat_data.te.data; +% $$$ gdat_data.error_bar = 1.6022e-19 .* (gdat_data.ne.data .* gdat_data.te.error_bar ... +% $$$ + gdat_data.te.data .* gdat_data.ne.error_bar); +% $$$ end +% $$$ %%%%%%%%%%% add fitted profiles if 'fit'>=1 +% $$$ default_fit_type = 'conf'; +% $$$ if ~isfield(gdat_data.gdat_params,'fit') || isempty(gdat_data.gdat_params.fit) +% $$$ gdat_data.gdat_params.fit = 1; +% $$$ end +% $$$ % add empty structure for fit so results is always the same with or without call to fit=1 or 0 +% $$$ gdat_data.fit.data = []; +% $$$ gdat_data.fit.x = []; +% $$$ gdat_data.fit.t = []; +% $$$ gdat_data.fit.units = []; +% $$$ gdat_data.fit.data_fullpath = []; +% $$$ if strcmp(data_request_eff(1:4),'nete') +% $$$ % note gdat_data.fit.data level is for pe +% $$$ gdat_data.fit.ne.data = []; +% $$$ gdat_data.fit.ne.x = []; +% $$$ gdat_data.fit.ne.t = []; +% $$$ gdat_data.fit.ne.units = []; +% $$$ gdat_data.fit.ne.data_fullpath = []; +% $$$ gdat_data.fit.te.data = []; +% $$$ gdat_data.fit.te.x = []; +% $$$ gdat_data.fit.te.t = []; +% $$$ gdat_data.fit.te.units = []; +% $$$ gdat_data.fit.te.data_fullpath = []; +% $$$ end +% $$$ if gdat_data.gdat_params.fit>0 +% $$$ % default is from proffit:avg_time +% $$$ if ~(isfield(gdat_data.gdat_params,'fit_type') && ~isempty(gdat_data.gdat_params.fit_type)) || ~any(strcmp(gdat_data.gdat_params.fit_type,{'local', 'avg', 'conf'})) +% $$$ gdat_data.gdat_params.fit_type = default_fit_type; +% $$$ end +% $$$ switch gdat_data.gdat_params.fit_type +% $$$ case 'avg' +% $$$ def_proffit = '\results::proffit.avg_time:'; +% $$$ case 'local' +% $$$ def_proffit = '\results::proffit.local_time:'; +% $$$ case 'conf' +% $$$ def_proffit = '\results::conf:'; +% $$$ otherwise +% $$$ if (gdat_params.nverbose>=1); +% $$$ disp('should not be in switch gdat_data.gdat_params.fit_type') +% $$$ disp('ask olivier.sauter@epfl.ch') +% $$$ end +% $$$ return +% $$$ end +% $$$ if strcmp(gdat_data.gdat_params.fit_type,'conf') +% $$$ nodenameeff = [def_proffit data_request_eff(1:2)]; +% $$$ else +% $$$ if strcmp(data_request_eff(1:2),'ne') +% $$$ nodenameeff = [def_proffit 'neft_abs']; % do first ne if nete asked for +% $$$ elseif strcmp(data_request_eff(1:2),'te') +% $$$ nodenameeff = [def_proffit 'teft']; +% $$$ else +% $$$ if (gdat_params.nverbose>=1); +% $$$ disp(['should not be here: data_request_eff, data_request_eff(1:2)= ',data_request_eff, data_request_eff(1:2)]); +% $$$ end +% $$$ end +% $$$ end +% $$$ if isfield(gdat_data.gdat_params,'trialindx') && ~isempty(gdat_data.gdat_params.trialindx) && ... +% $$$ gdat_data.gdat_params.trialindx>=0 +% $$$ nodenameeff=[nodenameeff ':trial']; +% $$$ trialindx = gdat_data.gdat_params.trialindx; +% $$$ else +% $$$ gdat_data.gdat_params.trialindx = []; +% $$$ trialindx = []; +% $$$ end +% $$$ tracetdi=tdi(nodenameeff); +% $$$ if isempty(trialindx) +% $$$ if ~isempty(tracetdi.data) && ~isempty(tracetdi.dim) && ~ischar(tracetdi.data) +% $$$ gdat_data.fit.data = tracetdi.data; +% $$$ else +% $$$ if gdat_params.nverbose>=1 +% $$$ disp([nodenameeff ' is empty, thus no fits, check hldsi(shot) and may need to run anaprofs?']) +% $$$ end +% $$$ if strcmp(data_request_eff(1:4),'nete') +% $$$ gdat_data.fit.ne.data_fullpath = [nodenameeff ' is empty']; +% $$$ gdat_data.fit.te.data_fullpath = [nodenameeff ' is empty']; +% $$$ else +% $$$ gdat_data.fit.data_fullpath = [nodenameeff ' is empty']; +% $$$ end +% $$$ return +% $$$ end +% $$$ else +% $$$ if ~isempty(tracetdi.data) && size(tracetdi.data,3)>=trialindx+1 +% $$$ gdat_data.fit.data = tracetdi.data(:,:,trialindx+1); +% $$$ else +% $$$ if gdat_params.nverbose>=1 +% $$$ disp([nodenameeff ' with trialindx=' num2str(trialindx) ' is empty, thus no fits, check hldsi(shot) and may need to run anaprofs?']) +% $$$ end +% $$$ gdat_data.fit.data_fullpath = [nodenameeff ' with trialindx=' num2str(trialindx) ' is empty']; +% $$$ return +% $$$ end +% $$$ end +% $$$ gdat_data.fit.x=tracetdi.dim{1}; +% $$$ gdat_data.fit.t=tracetdi.dim{2}; +% $$$ if mapping_for_jet.timedim~=2 | mapping_for_jet.gdat_timedim~=2 +% $$$ if (gdat_params.nverbose>=1); +% $$$ disp(['unexpected timedim in fit: data_request_eff= ' data_request_eff ... +% $$$ ', mapping_for_jet.timedim= ' mapping_for_jet.timedim ... +% $$$ ', mapping_for_jet.gdat_timedim= ' mapping_for_jet.gdat_timedim]); +% $$$ end +% $$$ end +% $$$ if any(strcmp(fieldnames(tracetdi),'units')) +% $$$ gdat_data.fit.units=tracetdi.units; +% $$$ end +% $$$ gdat_data.fit.data_fullpath = nodenameeff; +% $$$ % do te as well if nete asked for +% $$$ if strcmp(data_request_eff(1:4),'nete') +% $$$ gdat_data.fit.ne.data = gdat_data.fit.data; +% $$$ gdat_data.fit.ne.x = gdat_data.fit.x; +% $$$ gdat_data.fit.ne.t = gdat_data.fit.t; +% $$$ gdat_data.fit.ne.units = gdat_data.fit.units; +% $$$ gdat_data.fit.ne.data_fullpath = gdat_data.fit.data_fullpath; +% $$$ if strcmp(gdat_data.gdat_params.fit_type,'conf') +% $$$ nodenameeff = [def_proffit 'te']; +% $$$ else +% $$$ nodenameeff = [def_proffit 'teft']; +% $$$ end +% $$$ if ~isempty(trialindx); nodenameeff=[nodenameeff ':trial']; end +% $$$ tracetdi=tdi(nodenameeff); +% $$$ if isempty(trialindx) +% $$$ gdat_data.fit.te.data = tracetdi.data; +% $$$ else +% $$$ if ~isempty(tracetdi.data) && size(tracetdi.data,3)>=trialindx+1 +% $$$ gdat_data.fit.te.data = tracetdi.data(:,:,trialindx+1); +% $$$ else +% $$$ return +% $$$ end +% $$$ end +% $$$ gdat_data.fit.te.x = gdat_data.fit.ne.x; +% $$$ gdat_data.fit.te.t = gdat_data.fit.ne.t; +% $$$ if any(strcmp(fieldnames(tracetdi),'units')) +% $$$ gdat_data.fit.te.units=tracetdi.units; +% $$$ end +% $$$ gdat_data.fit.te.data_fullpath = [nodenameeff]; +% $$$ % construct pe=1.6022e-19*ne*te +% $$$ gdat_data.fit.data = 1.6022e-19.*gdat_data.fit.ne.data .* gdat_data.fit.te.data; +% $$$ gdat_data.fit.units = 'N/m^2; 1.6022e-19 ne Te'; +% $$$ gdat_data.fit.data_fullpath = [gdat_data.fit.data_fullpath ' ; ' nodenameeff ' and pe in data']; +% $$$ end +% $$$ else +% $$$ gdat_data.gdat_params.fit_type = default_fit_type; +% $$$ end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% case {'powers'} @@ -1373,26 +1373,26 @@ elseif strcmp(mapping_for_jet.method,'switchcase') gdat_data.data_fullpath = rad.gdat_params.data_request; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - case {'psi_edge'} - % psi at edge, 0 by construction in Liuqe, thus not given - nodenameeff=['\results::psi_axis' substr_liuqe]; - if liuqe_version==-1 - nodenameeff=[begstr 'q_psi' substr_liuqe]; - end - tracetdi=tdi(nodenameeff); - if isempty(tracetdi.data) || isempty(tracetdi.dim) || ~any(~isnan(tracetdi.data)) % || ischar(tracetdi.data) (to add?) - if (gdat_params.nverbose>=1); warning(['problems loading data for ' nodenameeff ' for data_request= ' data_request_eff]); end - if (gdat_params.nverbose>=3); disp(['rerun LIUQE?']); end - return - end - gdat_data.data = tracetdi.data.*0; - gdat_data.dim = tracetdi.dim; - gdat_data.t = gdat_data.dim{1}; - gdat_data.data_fullpath=[' zero ']; - gdat_data.dimunits = tracetdi.dimunits; - gdat_data.units = tracetdi.units; - gdat_data.request_description = '0 since LIUQE construct psi to be zero at LCFS'; - +% $$$ case {'psi_edge'} +% $$$ % psi at edge, 0 by construction in Liuqe, thus not given +% $$$ nodenameeff=['\results::psi_axis' substr_liuqe]; +% $$$ if liuqe_version==-1 +% $$$ nodenameeff=[begstr 'q_psi' substr_liuqe]; +% $$$ end +% $$$ tracetdi=tdi(nodenameeff); +% $$$ if isempty(tracetdi.data) || isempty(tracetdi.dim) || ~any(~isnan(tracetdi.data)) % || ischar(tracetdi.data) (to add?) +% $$$ if (gdat_params.nverbose>=1); warning(['problems loading data for ' nodenameeff ' for data_request= ' data_request_eff]); end +% $$$ if (gdat_params.nverbose>=3); disp(['rerun LIUQE?']); end +% $$$ return +% $$$ end +% $$$ gdat_data.data = tracetdi.data.*0; +% $$$ gdat_data.dim = tracetdi.dim; +% $$$ gdat_data.t = gdat_data.dim{1}; +% $$$ gdat_data.data_fullpath=[' zero ']; +% $$$ gdat_data.dimunits = tracetdi.dimunits; +% $$$ gdat_data.units = tracetdi.units; +% $$$ gdat_data.request_description = '0 since LIUQE construct psi to be zero at LCFS'; +% $$$ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% case {'q_rho'} % q profile on psi from liuqe @@ -1524,6 +1524,8 @@ elseif strcmp(mapping_for_jet.method,'switchcase') case {'rhovol','volume_rho','volume'} % volume_rho = vol(rho); volume = vol(LCFS) = vol(rho=1); % rhovol = sqrt(vol(rho)/vol(rho=1)); + warning('should change to jet relevant data') + keyboard nodenameeff='\results::psitbx:vol'; if liuqe_version==-1 nodenameeff=[begstr 'vol' substr_liuqe]; @@ -1533,7 +1535,7 @@ elseif strcmp(mapping_for_jet.method,'switchcase') % try to run psitbxput psitbxput_version = 1.3; psitbxput(psitbxput_version,shot); - ishot = mdsopen(shot); + %ishot = mdsopen(shot); tracetdi=tdi(nodenameeff); if isempty(tracetdi.data) || isempty(tracetdi.dim) return -- GitLab