diff --git a/matlab/JET/gdat_jet.m b/matlab/JET/gdat_jet.m index 17a407b30d6b5ab3b06868257eec3482b935332f..2197e8fd37b0b7eb7e9da8f31fb9dbd4824c0595 100644 --- a/matlab/JET/gdat_jet.m +++ b/matlab/JET/gdat_jet.m @@ -69,11 +69,13 @@ error_status=1; % construct main default parameters structure gdat_params.data_request = ''; default_machine = 'jet'; +default_user = getenv('USER'); gdat_params.machine=default_machine; gdat_params.doplot = 0; gdat_params.nverbose = 1; -keyboard +gdat_params.jet_user = default_user; + % construct list of keywords from global set of keywords and specific JET set % get data_request names from centralized table %%% data_request_names = get_data_request_names; % do not use xlsx anymore but scan respective machine_requests_mapping.m files @@ -259,7 +261,7 @@ gdat_params = gdat_data.gdat_params; if strcmp(mapping_for_jet.method,'signal') ppftype = mapping_for_jet.expression{1}; tracename = [mapping_for_jet.expression{2} '/' mapping_for_jet.expression{3}]; - [a,x,t,d,e]=rda_jet(shot,ppftype,tracename); + [a,x,t,d,e]=rda_jet(shot,ppftype,tracename,gdat_params.jet_user); if e==0 if gdat_params.nverbose>=3; disp(['error after rda_jet in signal with data_request_eff= ' data_request_eff]); end return @@ -559,7 +561,6 @@ elseif strcmp(mapping_for_jet.method,'switchcase') i = channel_index_list(1); aa.data = []; for i=channel_index_list(2:end) - mdsconnect('mdsplus.jet.efda.org'); if isempty(aa.data) params_eff.data_request = {'ppf','kk3',num2str(i,'te%.2d')}; aa = gdat_jet(shot,params_eff); @@ -567,19 +568,18 @@ elseif strcmp(mapping_for_jet.method,'switchcase') aa_data_start(i,:) = reshape(aa.data,1,numel(aa.data)); aa.data = aa_data_start; params_eff.data_request = {'ppf','kk3',num2str(i,'rc%.2d')}; - mdsconnect('mdsplus.jet.efda.org'); gdat_data.rc = gdat_jet(shot,params_eff); rc_data(i,:) = reshape(gdat_data.rc.data,1,numel(gdat_data.rc.data)); gdat_data.rc.data = rc_data; end else % assume same time for all + mdsconnect(['ssh://' gdat_params.jet_user '@mdsplus.jetdata.eu']); rda_data_request = ['ppf/kk3/' num2str(i,'te%.2d')]; bb = mdsvalue(['_bb=jet("' rda_data_request '",' num2str(shot) ')']); if ~isempty(bb) && numel(bb)==size(aa.data,2) aa.data(i,:) = bb; end - mdsconnect('mdsplus.jet.efda.org'); rda_data_request = ['ppf/kk3/' num2str(i,'rc%.2d')]; bb = mdsvalue(['_bb=jet("' rda_data_request '",' num2str(shot) ')']); if ~isempty(bb) && numel(bb)==size(gdat_data.rc.data,2) @@ -1488,7 +1488,7 @@ elseif strcmp(mapping_for_jet.method,'switchcase') nodenameeff=[{'ppf'},{'EFIT'},{'Q'}]; ppftype = nodenameeff{1}; tracename = [nodenameeff{2} '/' nodenameeff{3}]; - [a,x,t,d,e]=rda_jet(shot,ppftype,tracename); + [a,x,t,d,e]=rda_jet(shot,ppftype,tracename,gdat_params.jet_user); if e==0 if gdat_params.nverbose>=3; disp(['error after rda_jet in signal with data_request_eff= ' data_request_eff]); end return @@ -1521,7 +1521,7 @@ elseif strcmp(mapping_for_jet.method,'switchcase') nodenameeff=[{'ppf'},{'EFIT'},{'FTOR'}]; ppftype = nodenameeff{1}; tracename = [nodenameeff{2} '/' nodenameeff{3}]; - [a,x,t,d,e]=rda_jet(shot,ppftype,tracename); + [a,x,t,d,e]=rda_jet(shot,ppftype,tracename,gdat_params.jet_user); % FTOR is on psinorm: move to rhopolnorm x = sqrt(x); if e==0 @@ -1572,11 +1572,11 @@ elseif strcmp(mapping_for_jet.method,'switchcase') nodenameeff=[{'ppf'},{'EFIT'},{'VJAC'}]; % dVdpsi? ppftype = nodenameeff{1}; tracename = [nodenameeff{2} '/' nodenameeff{3}]; - [a,x,t,d,e]=rda_jet(shot,ppftype,tracename); + [a,x,t,d,e]=rda_jet(shot,ppftype,tracename,gdat_params.jet_user); nodenameeff2=[{'ppf'},{'EFIT'},{'VOLM'}]; ppftype2 = nodenameeff2{1}; tracename2 = [nodenameeff2{2} '/' nodenameeff2{3}]; - [a2,x2,t2,d2,e2]=rda_jet(shot,ppftype2,tracename2); + [a2,x2,t2,d2,e2]=rda_jet(shot,ppftype2,tracename2,gdat_params.jet_user); if e==0 || e2==0 if gdat_params.nverbose>=3; disp(['error after rda_jet in signal with nodenameeff= ' nodenameeff]); diff --git a/matlab/JET/rda_jet.m b/matlab/JET/rda_jet.m index 7dd31b3888ce46de0798a902ec3eb35f7243ab97..70c6de8c29fe49a903dff637e8f90dafe558e046 100644 --- a/matlab/JET/rda_jet.m +++ b/matlab/JET/rda_jet.m @@ -5,7 +5,8 @@ function [data,x,time,hsig,error]=rda_jet(shot,pftype,tracename,varargin); % 2D arrays: assumes data vs (x,time) % 3D arrays: assumes data vs (x,time,hsig) (for mdsplus) % -% varargin{1}: time interval or timevalue, will get data closest to that time or within that time interval +% varargin{1}: jet_username +% varargin{2}: time interval or timevalue, will get data closest to that time or within that time interval % (DOES NOT WORK YET) % % examples: @@ -21,9 +22,13 @@ function [data,x,time,hsig,error]=rda_jet(shot,pftype,tracename,varargin); global usemdsplus if isempty(usemdsplus); usemdsplus=1; end +jet_user=[]; +if nargin>=4 && ~isempty(varargin{1}) && ischar(varargin{1}) + jet_user=varargin{1}; +end time_int=[]; -if nargin>=4 & ~isempty(varargin{1}) - time_int=varargin{1}; +if nargin>=5 && ~isempty(varargin{2}) + time_int=varargin{2}; end if usemdsplus @@ -32,7 +37,7 @@ if usemdsplus if ~unix('test -d /home/duval/mdsplus') % addpath('/home/duval/mdsplus') end - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); mdsvalue('reset_public()'); % defines trace to fetch % after '?' specific details @@ -111,7 +116,7 @@ if usemdsplus traceeff=[traceeff '/' num2str(seq)]; end user=getenv('USER'); - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['[data,error]=mdsvalue(''_rdaeff' user '=jet("' traceeff '",' num2str(shot) ')'');']) hsig=[]; ss=size(data); @@ -120,13 +125,13 @@ if usemdsplus nbofdim=max(nbofdim,1); switch nbofdim case 1 - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['time=mdsvalue(''dim_of(_rdaeff' user ',0)'');']); x=[]; if isempty(time) & length(data)>1e6 & strcmpi(type,'lpf') & strcmpi(diag,'kc1f') mdsdisconnect; - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['aaa=mdsvalue(''_tc91=jet("jpf/da/c1-tc91",' num2str(shot) ');1'');']) taaa=mdsvalue('_ttc91=dim_of(_tc91,0);_ttc91[0]'); time=linspace(taaa+1e-6,taaa+4,length(data))'; @@ -135,23 +140,23 @@ if usemdsplus ichannel=findstr(':00',maintrace); iblock=str2num(maintrace(ichannel+3)); mdsdisconnect; - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); taaa=39.9989+(iblock-1)*8; time=linspace(taaa,taaa+8-4e-6,length(data))'; end case 2 - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['x=mdsvalue(''dim_of(_rdaeff' user ',0)'');']); - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['time=mdsvalue(''dim_of(_rdaeff' user ',1)'');']); case 3 - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['x=mdsvalue(''dim_of(_rdaeff' user ',0)'');']); - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['time=mdsvalue(''dim_of(_rdaeff' user ',1)'');']); disp('3rd dimension in hsig!!!!!!!!!!!!!!!!!!!!!!!!!') - mdsconnect('ssh://osauter@mdsplus.jetdata.eu'); + mdsconnect(['ssh://' jet_user '@mdsplus.jetdata.eu']); eval(['hsig=mdsvalue(''dim_of(_rdaeff' user ',2)'');']); otherwise