diff --git a/crpptbx/AUG/gdat_aug.m b/crpptbx/AUG/gdat_aug.m index 0040c5f0c8cdc90b37484b772b56de59ec5215b1..130d11b5f5f4002529971851c51ad7a0d6dd19d7 100644 --- a/crpptbx/AUG/gdat_aug.m +++ b/crpptbx/AUG/gdat_aug.m @@ -984,8 +984,12 @@ elseif strcmp(mapping_for_aug.method,'switchcase') end gdat_data.gdat_params = params_equil; gdat_data.equil = equil; - figure(10); - fignb_handle = gcf; + if gdat_data.gdat_params.doplot==0 + fignb_handle = -1; + else + figure(9999); + fignb_handle = gcf; + end for itime=1:length(time_eqdsks) time_eff = time_eqdsks(itime); % use read_results updated to effectively obtain an eqdsk with sign correct with COCOS=2 diff --git a/crpptbx/AUG/geteqdskAUG.m b/crpptbx/AUG/geteqdskAUG.m index f0624981640336431dabfc671543e05736d3c492..c35f9486aded0bb307344506eae79057ff12063e 100644 --- a/crpptbx/AUG/geteqdskAUG.m +++ b/crpptbx/AUG/geteqdskAUG.m @@ -7,6 +7,7 @@ function [eqdskAUG, equil_all_t, equil_t_index]=geteqdskAUG(shot,time,zshift,var % varargin{1:2}: 'source','EQI' (default) or 'source','IDE' (used in gdat(...,'equil') ) % varargin{3:4}: 'extra_arg_sf2sig','[]' (default) or 'extra_arg_sf2sig','''-ed'',2' % varargin{5:6}: 'fignb',ii (default is a new fig each time, if a number is given it over plots on this figure, needed if called in series) +% if <=0: no plots % % [eqdskAUG, equil_all_t, equil_t_index]=geteqdskAUG(shot,time); % [eqdskAUG, equil_all_t, equil_t_index]=geteqdskAUG(shot,time,[],'source','IDE'); @@ -142,7 +143,10 @@ zmag=gdat_aug(shot,'zmag','source',equilpar_source,'extra_arg_sf2sig',extra_arg_ eqdsk.zaxis = zmag.data(itrmag) - eqdsk.zshift; % get plasma boundary -if isempty(fignb) || (isnumeric(fignb) && fignb < 1) || (~isnumeric(fignb) && ~ishandle(fignb)) +doplot = 1; +if isnumeric(fignb) && fignb <= 0 + doplot = 0; +elseif isempty(fignb) || (isnumeric(fignb) && fignb < 1) || (~isnumeric(fignb) && ~ishandle(fignb)) figure fignb_handle = gcf; set(gcf,'Name','from geteqdskAUG'); @@ -153,15 +157,21 @@ else set(gcf,'Name','from geteqdskAUG'); end -contour(eqdsk.rmesh,eqdsk.zmesh,eqdsk.psi',100) -hold on +if doplot + contour(eqdsk.rmesh,eqdsk.zmesh,eqdsk.psi',100) + hold on +end psiedge_eff = 0.001*eqdsk.psiaxis + 0.999*eqdsk.psiedge; % note for IDE psi edge is already 99% %ixpoint=iround_os(equil.Xpoints.psi(:,it),eqdsk.psiedge); if abs(equil.Xpoints.psi(ixpoint,it)-eqdsk.psiedge) < 0.1.*abs(eqdsk.psiedge-eqdsk.psiaxis) psiedge_eff = 0.002*eqdsk.psiaxis + 0.998*equil.Xpoints.psi(ixpoint,it); end -[hh1 hh2]=contour(eqdsk.rmesh,eqdsk.zmesh,eqdsk.psi',[psiedge_eff psiedge_eff],'k'); -axis equal +if doplot + [hh1 hh2]=contour(eqdsk.rmesh,eqdsk.zmesh,eqdsk.psi',[psiedge_eff psiedge_eff],'k'); + axis equal +else + [hh1]=contourc(eqdsk.rmesh,eqdsk.zmesh,eqdsk.psi',[psiedge_eff psiedge_eff]); +end if ~isempty(hh1) ij=1; ij_prev = 0; @@ -182,7 +192,9 @@ if ~isempty(hh1) eqdsk.nbbound = nbhh1(irz); eqdsk.rplas = Rbnd{irz}'; eqdsk.zplas = Zbnd{irz}'; - plot(eqdsk.rplas,eqdsk.zplas,'k-') + if doplot + plot(eqdsk.rplas,eqdsk.zplas,'k-') + end else eqdsk.nbbound = []; eqdsk.rplas = []; @@ -195,8 +207,8 @@ eval(['load ' fullfile(path1,'AUG_innerouterwall.data')]) eqdsk.nblim=size(AUG_innerouterwall,1); eqdsk.rlim=AUG_innerouterwall(:,1); eqdsk.zlim=AUG_innerouterwall(:,2); -plot(eqdsk.rlim,eqdsk.zlim,'k-') - -title(eqdsk.stitle) - +if doplot + plot(eqdsk.rlim,eqdsk.zlim,'k-') + title(eqdsk.stitle) +end eqdskAUG = eqdsk; diff --git a/crpptbx/AUG/torbeam_prepare_inputs_and_run.m b/crpptbx/AUG/torbeam_prepare_inputs_and_run.m index a4a6ffc571e135905c94f83f5e90c668db32c5df..3222f0c0e196819ceaca522dcbb37e640ec3605f 100644 --- a/crpptbx/AUG/torbeam_prepare_inputs_and_run.m +++ b/crpptbx/AUG/torbeam_prepare_inputs_and_run.m @@ -9,7 +9,7 @@ function [torbeam_out,torbeam_in,varargout] = torbeam_prepare_inputs_and_run(sho % varargin{4}: nb of radial points for outputs in shotfile structure (default 401) % % Examples: -% [torbeam_out,torbeam_in] = torbeam_prepare_inputs_and_run(30594,linpace(0,10,101)); +% [torbeam_out,torbeam_in] = torbeam_prepare_inputs_and_run(30594,linspace(0,10,101)); % [torbeam_out2] = torbeam_prepare_inputs_and_run(30594,torbeam_in.inbeam.t_some_beam_on(1:30:end),torbeam_in); % to rerun a few cases % @@ -103,12 +103,12 @@ if doload==0 end end if doload, - torbeam_in.eqd_all=gdat(shot,'eqdsk','time',torbeam_in.inbeam.t_some_beam_on,'write',0,'source',source_gdat_profiles); + torbeam_in.eqd_all=gdat(shot,'eqdsk','time',torbeam_in.inbeam.t_some_beam_on,'write',0,'source',source_gdat_profiles,'doplot',0); torbeam_in.dir_torbeam = ['/tmp/' getenv('USER') '/' num2str(shot) '_torbeam']; unix(['mkdir -p ' torbeam_in.dir_torbeam]); else if ~isfield(torbeam_in,'eqd_all') || isempty(torbeam_in.eqd_all) - error('expects eqd_all as field of torbeam_in (varargin{1}) from gdat(shot,''eqdsk'',''time'',torbeam_in.inbeam.t_some_beam_on,''write'',0);') + error('expects eqd_all as field of torbeam_in (varargin{1}) from gdat(shot,''eqdsk'',''time'',torbeam_in.inbeam.t_some_beam_on,''write'',0,''doplot'',0);') end end if length(torbeam_in.eqd_all.eqdsk) < 1