diff --git a/AUG/loadAUGdata.m b/AUG/loadAUGdata.m index bebba43bd5badfe80da8e559f2d4b5932df546e0..43e51772cb908bc0ea66f495300fa2550046958c 100644 --- a/AUG/loadAUGdata.m +++ b/AUG/loadAUGdata.m @@ -25,6 +25,7 @@ function [trace,error,varargout]=loadAUGdata(shot,data_type,varargin) % (for traces with many channel, enables to load additional channels, % like SXR, ECE, etc.) % varargin{3}: zmag for varargout{1} computation +% varargin{4}: time range [t1 t2] (to limit data collected) % % OUTPUT: % trace.data: data structure @@ -290,17 +291,27 @@ switch AUGkeywrdcase{index} else status=ones(endi-starti+1,1); end + if nargin>=6 & ~isempty(varargin{4}) + timerange=varargin{4}; + else + timerange=[2 2.5]; + end trace.t=[]; trace.x=[]; ppftype='SXR'; tracename='B'; - [a,e]=rdaAUG_eff(shot,ppftype,tracename); + [a,e]=rdaAUG_eff(shot,ppftype,tracename,timerange); trace=a; trace.dim=[{[starti:endi]'} ; {trace.t}]; trace.x=trace.dim{1}; trace.dimunits=[{'channels'} ; {'time [s]'}]; trace.units='W/m^2'; trace.name=[num2str(shot) '/' ppftype '/' tracename]; + % keep only nth points + nth=13; + trace.t=trace.t(1:nth:end); + trace.data=trace.data(:,1:nth:end); + trace.dim{2}=trace.t; % calculating intersection of the view lines with magnetics axis if strcmp(data_type_eff_noext,'sxR') if nargin>=5 & ~isempty(varargin{3}) diff --git a/AUG/rdaAUG_eff.m b/AUG/rdaAUG_eff.m index f2486f2085d208ae3f4c475553ef12bb362e97c3..6b2c350e44cee5a4fbdb88144ac10e7c78b7ee46 100644 --- a/AUG/rdaAUG_eff.m +++ b/AUG/rdaAUG_eff.m @@ -19,7 +19,7 @@ function [adata,error]=rdaAUG_eff(shot,diagname,sigtype,varargin); % global usemdsplus -if isempty(usemdsplus); usemdsplus=0; end +if isempty(usemdsplus); usemdsplus=1; end error=1; @@ -30,6 +30,56 @@ end if usemdsplus + % use mdsplus + + if ~unix('test -d /home/duval/mdsplus') + addpath('/home/duval/mdsplus') + end + mdsconnect('localhost:8001'); + + user=getenv('USER'); + if nargin>=4 & ~isempty(varargin{1}) + ['[data,error]=mdsvalue(''_rdaeff' user diagname '=augsignal(' num2str(shot) ',"' diagname '","' sigtype '",,,' ... + num2str(varargin{1}(1),'%.14f') ',' num2str(varargin{1}(end),'%.14f') ')'');'] + eval(['[data,error]=mdsvalue(''_rdaeff' user diagname '=augsignal(' num2str(shot) ',"' diagname '","' sigtype '",,,' ... + num2str(varargin{1}(1),'%.14f') ',' num2str(varargin{1}(end),'%.14f') ')'');']); + else + eval(['[data,error]=mdsvalue(''_rdaeff' user diagname '=augsignal(' num2str(shot) ',"' diagname '","' sigtype '")'');']); + end + adata.data=data; + hsig=[]; + ss=size(data); + nbofdim=length(ss); + if ss(end)==1; nbofdim=nbofdim-1; end + nbofdim=max(nbofdim,1); + switch nbofdim + case 1 + eval(['time=mdsvalue(''dim_of(_rdaeff' user diagname ',0)'');']); + x=[]; + + case 2 + eval(['x=mdsvalue(''dim_of(_rdaeff' user diagname ',0)'');']); + eval(['time=mdsvalue(''dim_of(_rdaeff' user diagname ',1)'');']); + + case 3 + eval(['x=mdsvalue(''dim_of(_rdaeff' user diagname ',0)'');']); + eval(['time=mdsvalue(''dim_of(_rdaeff' user diagname ',1)'');']); + disp('3rd dimension in hsig!!!!!!!!!!!!!!!!!!!!!!!!!') + eval(['hsig=mdsvalue(''dim_of(_rdaeff' user diagname ',2)'');']); + + otherwise + disp([' more than 3 dimensions for ' num2str(shot) ' ; ' sigtype '/' diagname]) + error('in rdaAUG_eff') + + end + adata.t=time; + adata.x=x; + adata.hsig=hsig; + mdsdisconnect; + if ~unix('test -d /home/duval/mdsplus') + rmpath('/home/duval/mdsplus') + end + else % use SF2ML if isempty(time_int) diff --git a/gdat.m b/gdat.m index c9bf587b374797cf6b5293210704d2cdf51ba7d7..30fe8e7c74e64c7b98b513cf132b1cd75b8e98a8 100644 --- a/gdat.m +++ b/gdat.m @@ -51,7 +51,7 @@ function [trace,error,varargout] = gdat(shot,data_type,varargin) % optional arguments valid for all values of data_type (not passed on to loadMACHINEdata function): % % varargin{1}: 0 => no plot (default), 1 => plot -% varargin{2}: machine name 'JET', 'TCV' (default) +% varargin{2}: machine name 'JET' , 'TCV' (default: JET or TCV, depending on where implemented) % % Additional input arguments for specific traces (passed on to loadMACHINEdata function) % @@ -109,13 +109,8 @@ end doplot=0; if (nargineff>=3 & ~isempty(varargin{1})); doplot=varargin{1}; end machine='TCV'; -a=which('gdat'); -if ~isempty(findstr('ipp',a)) - machine='AUG'; -elseif ~isempty(findstr('osauter',a)); - machine='JET'; -end -if (nargineff>=4 & ~isempty(varargin{2})); machine=varargin{2}; end +a=which('sawteeth'); +if ~isempty(findstr('osauter',a)); machine='JET'; end if (nargineff>=4 & ~isempty(varargin{2})); machine=varargin{2}; end % load data from specified machine diff --git a/gdatpaths.m b/gdatpaths.m index f197f924fe487ebe66b475abb2f438dc5da46222..a14d9c3748be173c5a0a0c7be174ceed323a1048 100644 --- a/gdatpaths.m +++ b/gdatpaths.m @@ -7,7 +7,7 @@ a=which('gdat'); ii=findstr('/',a); a=a(1:ii(end)); -machines=[{'AUG'} {'JET'} {'TCV'}]; +machines=[{'JET'} {'TCV'} {'AUG'}]; for i=1:length(machines) addpath([a machines{i}])