diff --git a/crpptbx_new/AUG/AUG_innerouterwall.data b/crpptbx_new/AUG/AUG_innerouterwall.data
deleted file mode 100644
index d2fdf0b12cba6a6b9328307dff1654639979ef71..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/AUG_innerouterwall.data
+++ /dev/null
@@ -1,115 +0,0 @@
-% RR ZZ (through tdic augvessel(28215))
-2.521000 0.000000
-2.505910 0.210064
-2.460960 0.415815
-2.387070 0.613032
-2.285760 0.797666
-2.159100 0.965927
-2.009700 1.114360
-1.840610 1.239920
-1.840680 1.239890
-1.705260 1.302920
-1.558120 1.328610
-1.409360 1.315190
-1.269190 1.263590
-1.147240 1.177340
-1.051880 1.062380
-0.989661 0.926584
-0.964858 0.779291
-0.964798 0.778768
-0.957132 0.519238
-0.952534 0.259636
-0.951000 0.000003
-0.952534 -0.259635
-0.957132 -0.519237
-0.964798 -0.778767
-0.964858 -0.779291
-0.989661 -0.926584
-1.051880 -1.062380
-1.147240 -1.177340
-1.269190 -1.263590
-1.409360 -1.315190
-1.558120 -1.328610
-1.705260 -1.302920
-1.840680 -1.239890
-1.840610 -1.239920
-2.009700 -1.114360
-2.159100 -0.965927
-2.285760 -0.797666
-2.387070 -0.613032
-2.460960 -0.415815
-2.505910 -0.210063
-2.521000 0.000000
-% RR       ZZ  (by clicking on plot)
-2.201873 0.069525
-2.204467 0.159907
-2.191499 0.274623
-2.165562 0.368482
-2.137032 0.441483
-2.105908 0.504056
-2.150000 0.552723
-1.971037 0.865585
-1.867291 0.935110
-1.779107 1.074160
-1.504179 1.185400
-1.408213 1.171495
-1.366715 1.174971
-1.327810 1.108922
-1.335591 1.088065
-1.288905 1.022016
-1.247406 0.962920
-1.208501 0.893395
-1.185159 0.813441
-1.167003 0.761298
-1.146254 0.702202
-1.122911 0.632677
-1.112536 0.563152
-1.094380 0.500579
-1.081412 0.438007
-1.068444 0.368482
-1.058069 0.298957
-1.055476 0.232908
-1.047695 0.159907
-1.045101 0.100811
-1.047695 0.020857
-1.045101 -0.045191
-1.047695 -0.114716
-1.047695 -0.184241
-1.058069 -0.243337
-1.065850 -0.312862
-1.071037 -0.378911
-1.086599 -0.451912
-1.096974 -0.504056
-1.112536 -0.577057
-1.073631 -0.636153
-1.078818 -0.663963
-1.138473 -0.650058
-1.187752 -0.726535
-1.250000 -0.820394
-1.262968 -0.848204
-1.275937 -0.869061
-1.294092 -0.924681
-1.288905 -0.969873
-1.283718 -1.004635
-1.237032 -1.119351
-1.281124 -1.122827
-1.327810 -1.060255
-1.460086 -1.063731
-1.460086 -1.060255
-1.558646 -1.168019
-1.574207 -1.223638
-1.600144 -1.227115
-1.636455 -0.997683
-1.644236 -0.959444
-1.675360 -0.907300
-1.709078 -0.862109
-1.747983 -0.830823
-1.991787 -0.552723
-1.989193 -0.517961
-2.028098 -0.458864
-2.067003 -0.403244
-2.100720 -0.337196
-2.147406 -0.232908
-2.170749 -0.159907
-2.191499 -0.045191
-2.201873 0.069525
diff --git a/crpptbx_new/AUG/AUG_innerwall.data b/crpptbx_new/AUG/AUG_innerwall.data
deleted file mode 100644
index 663bc7e6a73d967484623c4409ff0edd0ea43eda..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/AUG_innerwall.data
+++ /dev/null
@@ -1,72 +0,0 @@
-% RR       ZZ  (by clicking on plot)
-1.460086 -1.060255
-1.558646 -1.168019
-1.574207 -1.223638
-1.600144 -1.227115
-1.636455 -0.997683
-1.644236 -0.959444
-1.675360 -0.907300
-1.709078 -0.862109
-1.747983 -0.830823
-1.991787 -0.552723
-1.989193 -0.517961
-2.028098 -0.458864
-2.067003 -0.403244
-2.100720 -0.337196
-2.147406 -0.232908
-2.170749 -0.159907
-2.191499 -0.045191
-2.201873 0.069525
-2.204467 0.159907
-2.191499 0.274623
-2.165562 0.368482
-2.137032 0.441483
-2.105908 0.504056
-2.150000 0.552723
-1.971037 0.865585
-1.867291 0.935110
-1.779107 1.074160
-1.504179 1.185400
-1.408213 1.171495
-1.366715 1.174971
-1.327810 1.108922
-1.335591 1.088065
-1.288905 1.022016
-1.247406 0.962920
-1.208501 0.893395
-1.185159 0.813441
-1.167003 0.761298
-1.146254 0.702202
-1.122911 0.632677
-1.112536 0.563152
-1.094380 0.500579
-1.081412 0.438007
-1.068444 0.368482
-1.058069 0.298957
-1.055476 0.232908
-1.047695 0.159907
-1.045101 0.100811
-1.047695 0.020857
-1.045101 -0.045191
-1.047695 -0.114716
-1.047695 -0.184241
-1.058069 -0.243337
-1.065850 -0.312862
-1.071037 -0.378911
-1.086599 -0.451912
-1.096974 -0.504056
-1.112536 -0.577057
-1.073631 -0.636153
-1.078818 -0.663963
-1.138473 -0.650058
-1.187752 -0.726535
-1.250000 -0.820394
-1.262968 -0.848204
-1.275937 -0.869061
-1.294092 -0.924681
-1.288905 -0.969873
-1.283718 -1.004635
-1.237032 -1.119351
-1.281124 -1.122827
-1.327810 -1.060255
-1.460086 -1.063731
diff --git a/crpptbx_new/AUG/AUG_outerwall.data b/crpptbx_new/AUG/AUG_outerwall.data
deleted file mode 100644
index e6f06860b2650bf4ed6d6048c81fc7b0e2b305f2..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/AUG_outerwall.data
+++ /dev/null
@@ -1,42 +0,0 @@
-% RR ZZ (through tdic augvessel(28215))
-2.521000 0.000000
-2.505910 0.210064
-2.460960 0.415815
-2.387070 0.613032
-2.285760 0.797666
-2.159100 0.965927
-2.009700 1.114360
-1.840610 1.239920
-1.840680 1.239890
-1.705260 1.302920
-1.558120 1.328610
-1.409360 1.315190
-1.269190 1.263590
-1.147240 1.177340
-1.051880 1.062380
-0.989661 0.926584
-0.964858 0.779291
-0.964798 0.778768
-0.957132 0.519238
-0.952534 0.259636
-0.951000 0.000003
-0.952534 -0.259635
-0.957132 -0.519237
-0.964798 -0.778767
-0.964858 -0.779291
-0.989661 -0.926584
-1.051880 -1.062380
-1.147240 -1.177340
-1.269190 -1.263590
-1.409360 -1.315190
-1.558120 -1.328610
-1.705260 -1.302920
-1.840680 -1.239890
-1.840610 -1.239920
-2.009700 -1.114360
-2.159100 -0.965927
-2.285760 -0.797666
-2.387070 -0.613032
-2.460960 -0.415815
-2.505910 -0.210063
-2.521000 0.000000
diff --git a/crpptbx_new/AUG/README_mdsplus b/crpptbx_new/AUG/README_mdsplus
deleted file mode 100644
index 6797cef0c648c14c3d9d9124d225a3fc42ac2a59..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/README_mdsplus
+++ /dev/null
@@ -1,43 +0,0 @@
-To connect from JET to IPP with mdsplus:
-
-need 2 windows
-
-1st window, create tunneling with slogin:
-
-slogin -losauter -L 8001:seaug.ipp.mpg.de:8000 gate1.aug.ipp.mpg.de
-(mdsplus too slow now)
-
-In other window, open matlab and do:
-mdsconnect('localhost:8001')
-
-To check the connection:
-mdsvalue('1+2')
-
-zmag.data=mdsvalue('_zmag=augsignal(shot,"FPG","Zmag")');
-zmag.t=mdsvalue('dim_of(_aa,0)');
-
-
-To get subsets of points:
-
-Thanks to Xavier Llobet I have succeeded in fetching only every nth point of the SXR trace. For other purposes a filter would be better so a tdi function should be performed to do it locally, may be it exists already.
-
-In any case, for what I wanted to do, here is the solution:
-
-(Create _sxr data and dimensions on remote host, fetch channel numbers only)
-sxr_channels=mdsvalue('_sxr=augsignal(15133,"SXR","B");_sxr_t=dim_of(_sxr,0);_sxr_chan=dim_of(_sxr,1)');
-
-nth=12;
-
-(use "data" function to remove complicated relation between _sxr array and its dimensions. This relation depends on how the build_signal was used to create the signal. Note Xavier has important suggestion on how to build the dimensions such as to save space in compression, etc, for those interested)
-
-sxr_full_t_dim=mdsvalue('_sxrdata=data(_sxr);size(_sxrdata,0)');
-
-(at this point _sxrdata has just the values and the dimensions are just the indices 0...N, etc, so we can use the array extraction to take every nth point for all channels:)
-
-sxr_data=mdsvalue('_sxrdata[0:sxr_full_t_dim-1:nth,*]');
-eval(['sxr_data=mdsvalue(''_sxrdata[0:' num2str(sxr_full_t_dim-1) ':' num2str(nth) ',*]'');'])
-
-Same for time array
-sxr_data_t=mdsvalue('_sxr_t[0:sxr_full_t_dim-1:nth]');
-eval(['sxr_data_t=mdsvalue(''_sxr_t[0:' num2str(sxr_full_t_dim-1) ':' num2str(nth) ']'');'])
-
diff --git a/crpptbx_new/AUG/TRANSP_signals.m b/crpptbx_new/AUG/TRANSP_signals.m
deleted file mode 100644
index b90136d282759d458e58a5d086e135a583d732a8..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/TRANSP_signals.m
+++ /dev/null
@@ -1,585 +0,0 @@
-%Setup ; Parameter-Set ; Namelist parameters and switches
-%NBIpar ; Parameter-Set ; Parameters of Neutral Beam Injection
-clear transp_sig
-i=0;
-i=i+1;transp_sig{i,1}= 'TIME'; transp_sig{i,2}='Time-Base'; transp_sig{i,3}='Time grid of time traces';
-i=i+1;transp_sig{i,1}= 'ALPC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAG:ALPHA, CALCULATED [ ]';
-i=i+1;transp_sig{i,1}= 'ASHAF'; transp_sig{i,2}='Signal'; transp_sig{i,3}='SHAFRANOV AXIS SHIFT [CM ]';
-i=i+1;transp_sig{i,1}= 'BBNTS'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM-BEAM NEUTRONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BBPAR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM BETA(POLOIDAL) PLL [ ]';
-i=i+1;transp_sig{i,1}= 'BBPER'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM BETA(POLOIDAL) PERP [ ]';
-i=i+1;transp_sig{i,1}= 'BDNDT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D/DT(FAST ION POPULATION) [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BDNDTX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D/DT(FAST IONS OUTSIDE PLASMA) [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BETAE'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ELECTRON BETA (POLOIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BETAI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='THERMAL ION BETA POLOIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'BETAR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ROTATION BETA (POLOIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BETAT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL BETA(POLOIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BPCAP'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM POWER CAPTURED [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCI0'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX SCE POWER (INT) [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCPR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER: COMPRESSION OF FAST IONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCRI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX RECAPTURE (INT) [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCRX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX RECAPTURE (EXT) [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCX0'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX SCE POWER (EXT) [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCXE'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX TRACKER ERROR [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCXI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION POWER TO CX (INT) [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPCXX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION POWER TO CX (EXT) [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPDA1'; transp_sig{i,2}='Signal'; transp_sig{i,3}='1D DIAMAGNETIC BETA(POLOIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BPDC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='KINETIC BETA(DIA) [ ]';
-i=i+1;transp_sig{i,1}= 'BPDIA'; transp_sig{i,2}='Signal'; transp_sig{i,3}='DIAMAGNETIC BETA(POLOIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BPDM'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAGNETICS EST. BETA(DIA) [ ]';
-i=i+1;transp_sig{i,1}= 'BPEPHI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Electrostatic field -> fast ions [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPEPHI_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ELECTROSTATIC ACCEL.: D BEAM [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPEQ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='EQUILIBRIUM BETA(POLOIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BPERR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION ORBIT POWER ERROR [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPFASTPA'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL FAST ION BETA(POL) PLL [ ]';
-i=i+1;transp_sig{i,1}= 'BPFASTPP'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL FAST ION BETA(POL) PERP [ ]';
-i=i+1;transp_sig{i,1}= 'BPHCK'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. BALANCE CHECK [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHCL'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. COLLISIONAL TORQUE [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHCX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. CX LOSS [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHDFB_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM: ANOM.DIFF. TORQUE [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHDP'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. DEPOSITION [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHER'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ORBIT TORQUE ERROR [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION ANGULAR MOMENTUM [NT-M-SEC ]';
-i=i+1;transp_sig{i,1}= 'BPHOH'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. FROM OH [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHOR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. ORBIT LOSS [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHRC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. CX RECAPTURE [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHST'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. ANGULAR MOMENTUM GAIN [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHTH'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. THERMALIZATION [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHTO'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL FAST ION HEATING [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPHW0'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. NEUTRAL ESCAPE [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPHXB'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FI ROT. JXB TORQUE [NT-M ]';
-i=i+1;transp_sig{i,1}= 'BPLIM'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION ORBIT LOSS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPOH'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER: OH CIRCUIT TO FAST IONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPSHI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION SHINE-THRU POWER [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPST'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION POWER STORED [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPTE'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM POWER TO ELECTRONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPTH'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION POWER THERMALIZED [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BPTI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM POWER TO IONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'BSBAL'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION PTCL BALANCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BSNXI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX SINK (INT) [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BSNXO'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX SINK (EXT) [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BSORB'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION ORBIT LOSSES [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BSTH'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION THERMALIZATIONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BTDIA'; transp_sig{i,2}='Signal'; transp_sig{i,3}='DIAMAGNETIC BETA(TOROIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BTEQ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='EQUILIBRIUM BETA(TOROIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'BTNTS'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM-TARGET NEUTRONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BTNTS_DD'; transp_sig{i,2}='Signal'; transp_sig{i,3}='DD BEAM-TARGET NEUTRONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'BZ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BZ @R=RMAJOR OUTSIDE PLASMA [TESLA ]';
-i=i+1;transp_sig{i,1}= 'BZXR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='VACUUM FIELD "BZ*R" [TESLA*CM ]';
-i=i+1;transp_sig{i,1}= 'BZXRC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='CALCULATED VACUUM FIELD "BZ*R" [TESLA*CM ]';
-i=i+1;transp_sig{i,1}= 'CPTIM'; transp_sig{i,2}='Signal'; transp_sig{i,3}='CPU TIME USED SO FAR [HOURS ]';
-i=i+1;transp_sig{i,1}= 'DFLUX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='COMPUTED DIAMAGNETIC FLUX [WEBERS ]';
-i=i+1;transp_sig{i,1}= 'DT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ENERGY BALANCE TIMESTEP [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'DTG'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TIMESTEP FOR GEO & SOURCES [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'DTPROFIL'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TIME SPACING FOR PROFILE OUTPUT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'DTSCALAR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TIME SPACING FOR SCALAR OUTPUT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'E0INR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='T0 (RECYCLING) @EDGE [EV ]';
-i=i+1;transp_sig{i,1}= 'ECEGAP'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ECE B(R) monotonicity gap [CM ]';
-i=i+1;transp_sig{i,1}= 'EINJ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAX INITIAL BEAM ENERGY [EV ]';
-i=i+1;transp_sig{i,1}= 'EINJAV_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D: avg full injection energy [EV ]';
-i=i+1;transp_sig{i,1}= 'ELDOT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ELDOT: GRID MOTION [1/SEC ]';
-i=i+1;transp_sig{i,1}= 'FLSTA'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FALSI ERROR CODE [0=NORMAL ]';
-i=i+1;transp_sig{i,1}= 'GASD'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D0 GAS FLOW SOURCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'GASH'; transp_sig{i,2}='Signal'; transp_sig{i,3}='H0 GAS FLOW SOURCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'GSERROR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='REL.EQUIL.GRAD-SHAFRANOV ERROR [ ]';
-i=i+1;transp_sig{i,1}= 'HIO2'; transp_sig{i,2}='Signal'; transp_sig{i,3}='INDUCTANCE (HI/2) [ ]';
-i=i+1;transp_sig{i,1}= 'IPXVS'; transp_sig{i,2}='Signal'; transp_sig{i,3}='PCUR * VSUR [WATTS ]';
-i=i+1;transp_sig{i,1}= 'KAINT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='K(ALPHA) LINE INTENSITY [ARB.UNITS ]';
-i=i+1;transp_sig{i,1}= 'KATX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='COMPUTED K(ALPHA) T(IMPURITY) [EV ]';
-i=i+1;transp_sig{i,1}= 'L2PB1'; transp_sig{i,2}='Signal'; transp_sig{i,3}='1D DEFINITION LI/2+BETA [ ]';
-i=i+1;transp_sig{i,1}= 'LAMDC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='KINETIC+J EST. LAMDA [ ]';
-i=i+1;transp_sig{i,1}= 'LAMDM'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAGNETICS EST. LAMDA [ ]';
-i=i+1;transp_sig{i,1}= 'LI2PB'; transp_sig{i,2}='Signal'; transp_sig{i,3}='LI/2 + BETA(POLOIDAL) [ ]';
-i=i+1;transp_sig{i,1}= 'LIO2'; transp_sig{i,2}='Signal'; transp_sig{i,3}='INDUCTANCE (LI/2) [ ]';
-i=i+1;transp_sig{i,1}= 'LIO21'; transp_sig{i,2}='Signal'; transp_sig{i,3}='1D DEFINITION OF LI/2 [ ]';
-i=i+1;transp_sig{i,1}= 'LIO2C'; transp_sig{i,2}='Signal'; transp_sig{i,3}='LI/2 (COMPUTED FROM J PROFILE) [ ]';
-i=i+1;transp_sig{i,1}= 'LIO2M'; transp_sig{i,2}='Signal'; transp_sig{i,3}='LI/2 (MAGNETICS DATA ESTIMATE) [ ]';
-i=i+1;transp_sig{i,1}= 'MUIC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TRANSP EST. MU(DIA) MHD EQ [ ]';
-i=i+1;transp_sig{i,1}= 'MUIM'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAGNETICS EST. MU(DIA) [ ]';
-i=i+1;transp_sig{i,1}= 'NEUTT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL NEUTRONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'NEUTX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='THERMONUCLEAR NEUTRONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'NEUTX_DD'; transp_sig{i,2}='Signal'; transp_sig{i,3}='DD THERMONUCLEAR NEUTRONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'NMCLOSS_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam D MC Prompt Loss [N ]';
-i=i+1;transp_sig{i,1}= 'NMCTOT_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam D Total MC Ions [N ]';
-i=i+1;transp_sig{i,1}= 'P0BAL'; transp_sig{i,2}='Signal'; transp_sig{i,3}='NEUTRAL POWER BALANCE CHECK [WATTS ]';
-i=i+1;transp_sig{i,1}= 'P0CXT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL CX POWER [WATTS ]';
-i=i+1;transp_sig{i,1}= 'P0ESC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='NEUTRAL POWER ESCAPED [WATTS ]';
-i=i+1;transp_sig{i,1}= 'P0FIN'; transp_sig{i,2}='Signal'; transp_sig{i,3}='NEUTRAL INFLUX POWER [WATTS ]';
-i=i+1;transp_sig{i,1}= 'P0INZ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='NEUTRAL POWER IONIZED [WATTS ]';
-i=i+1;transp_sig{i,1}= 'P0RFL'; transp_sig{i,2}='Signal'; transp_sig{i,3}='NEUTRAL POWER REFLECTED IN [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PAREA'; transp_sig{i,2}='Signal'; transp_sig{i,3}='PLASMA CROSS SECTION AREA [CM**2 ]';
-i=i+1;transp_sig{i,1}= 'PCUR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MEASURED PLASMA CURRENT [AMPS ]';
-i=i+1;transp_sig{i,1}= 'PCURC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='CALCULATED PLASMA CURRENT [AMPS ]';
-i=i+1;transp_sig{i,1}= 'PCUREQ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='EQ PLASMA CURRENT [AMPS ]';
-i=i+1;transp_sig{i,1}= 'PEEDG'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ELECTRON ENERGY VIA BDY [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECHT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ECRF ELECTRON HEATING [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ECRF INPUT POWER [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN1'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 1 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN2'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 2 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN3'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 3 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN4'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 4 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN5'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 5 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN6'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 6 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN7'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 7 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PECIN8'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER FROM GYRO 8 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHA1'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER ON ICRF ANTENNA #1 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHA2'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER ON ICRF ANTENNA #2 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHA3'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER ON ICRF ANTENNA #3 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHA4'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER ON ICRF ANTENNA #4 [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHBAL'; transp_sig{i,2}='Signal'; transp_sig{i,3}='RF POWER BALANCE [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHE'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER: ICH DIRECT TO ELECTRONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHEXT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='RF POWER BEYOND SEPARATRIX [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHFAST'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER: ICH DIRECT TO Fast ions [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHI'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER: ICH DIRECT TO TH.IONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHMC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER: ICH TO MODE CONVERSION [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHMIN'; transp_sig{i,2}='Signal'; transp_sig{i,3}='POWER: ICH TO MINORITY IONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PICHTOT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL ICRF ANTENNA POWER [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PIEDG'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ION ENERGY VIA BDY [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='BEAM POWER INJECTED [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ01'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#01(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ02'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#02(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ03'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#03(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ04'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#04(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ05'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#05(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ06'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#06(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ07'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#07(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PINJ08'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam#08(D) injected power [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PLFLXA'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ENCLOSED POLOIDAL FLUX [WEBERS ]';
-i=i+1;transp_sig{i,1}= 'POHT'; transp_sig{i,2}='Signal'; transp_sig{i,3}='OHMIC INPUT POWER [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PRFB_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='RF POWER -> D BEAM IONS [WATTS ]';
-i=i+1;transp_sig{i,1}= 'PVOL'; transp_sig{i,2}='Signal'; transp_sig{i,3}='PLASMA VOLUME [CM**3 ]';
-i=i+1;transp_sig{i,1}= 'RAXIS'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAJOR RADIUS OF MAG. AXIS [CM ]';
-i=i+1;transp_sig{i,1}= 'RCYD'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D0 RECYCLING SOURCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'RCYH'; transp_sig{i,2}='Signal'; transp_sig{i,3}='H0 RECYCLING SOURCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'RTPC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAG:RT, CALCULATED [CM ]';
-i=i+1;transp_sig{i,1}= 'RTXUV'; transp_sig{i,2}='Signal'; transp_sig{i,3}='UV DOPPLER TI RADIUS [CM ]';
-i=i+1;transp_sig{i,1}= 'RZITER'; transp_sig{i,2}='Signal'; transp_sig{i,3}='RZSOLVER iterations [ ]';
-i=i+1;transp_sig{i,1}= 'SBCX0MC_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM CX NEUTRALS LAUNCHED [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCXBAL_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM CX NEUTRAL PTCL BAL [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCXESC_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM CX NEUTRALS ESCAPED [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCXRMC_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM CX MC IONS RECAPTURED [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCXRR_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM CX NEUTRALS "R.R." [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCXX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='CX FAST ION LOSS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDBBCX_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM DEP: BEAM-BEAM CX [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDBBIZ_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM DEP: BEAM-BEAM IONIZ. [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDEPBA_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM DEP PTCL BALANCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDEPCX_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM DEP: CX W/THERMAL IONS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDEPIZ_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM DEP: TH.IONIZATION [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDEPMC_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM MC IONS DEPOSITED [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDEPRR_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM DEP "RUSSIAN ROULETTE" [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDEPSC_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM TOTAL DEPOSITION SCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBDTBMC_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM MC RATE OF CHANGE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBORBAL_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM ORBIT PTCL BALANCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBORBRR_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM ORBIT CODE "R.R." [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBRBBCX_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM RECAP: BEAM-BEAM CX [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBRBBIZ_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM RECAP: BEAM-BEAM IONIZ. [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBSHINE_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM SHINE-THROUGH [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXRCCX_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM RECAP: TH.CX [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXRCIZ_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM RECAP: TH.IONIZATION [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXRCSC_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM TOTAL RECAPTURE SCE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SEEDG'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ELECTRONS VIA BDY [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SFDEP'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION SCE: DEPOSITION [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SFRCAP'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST ION CX RECAPTURE [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SHFSC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='CALCULATED S1+S2 [ ]';
-i=i+1;transp_sig{i,1}= 'SHFSM'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MAGNETICS EST. S1+S2 [ ]';
-i=i+1;transp_sig{i,1}= 'SINJ'; transp_sig{i,2}='Signal'; transp_sig{i,3}='FAST NEUTRALS INJECTED [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SNBXBB0_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM ION CX W/ BEAM NEUTS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SNBXBB1_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM ION CX W/ FAST CX NEUTS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SNBXTOT_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL D BEAM ION CX SINK [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SNBXV0_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM ION CX SINK: HALO NEUTS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'SNBXW0_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D BEAM ION CX SINK: WALL NEUTS [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'TAUA1'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ENERGY CONFINEMENT (TOTAL) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TAUEA'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ENERGY CONFINEMENT (THERMAL) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TAUEE'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ELECTRON ENERGY CONFINEMENT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TFLUX'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ENCLOSED TOROIDAL FLUX [WEBERS ]';
-i=i+1;transp_sig{i,1}= 'TOTDDN'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL D(D,N)HE3 FUSION [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'TOTDDP'; transp_sig{i,2}='Signal'; transp_sig{i,3}='TOTAL D(D,P)T FUSION [N/SEC ]';
-i=i+1;transp_sig{i,1}= 'TRAPB0_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D beam full E dep banana frac. [ ]';
-i=i+1;transp_sig{i,1}= 'TRAPB_D'; transp_sig{i,2}='Signal'; transp_sig{i,3}='D beam ions banana fraction [ ]';
-i=i+1;transp_sig{i,1}= 'TXUV'; transp_sig{i,2}='Signal'; transp_sig{i,3}='UV DOPPLER T(IMPURITY) [EV ]';
-i=i+1;transp_sig{i,1}= 'VISBC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='CHORDAL VB LIGHT (CALCULATED) [VB UNITS ]';
-i=i+1;transp_sig{i,1}= 'VSUR'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MEAS.AVG. SURFACE VOLTAGE [VOLTS ]';
-i=i+1;transp_sig{i,1}= 'VSUR0'; transp_sig{i,2}='Signal'; transp_sig{i,3}='SURFACE VOLTAGE [VOLTS ]';
-i=i+1;transp_sig{i,1}= 'VSURC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='CALC.AVG. SURFACE VOLTAGE [VOLTS ]';
-i=i+1;transp_sig{i,1}= 'WNMCTOT_'; transp_sig{i,2}='Signal'; transp_sig{i,3}='Beam D Total MC Ions [#ptcls ]';
-i=i+1;transp_sig{i,1}= 'XBFAC'; transp_sig{i,2}='Signal'; transp_sig{i,3}='MHD BETA ADJUSTMENT FACTOR [ ]';
-i=i+1;transp_sig{i,1}= 'XIQ1'; transp_sig{i,2}='Signal'; transp_sig{i,3}='xi of Q=1 surface [ ]';
-i=i+1;transp_sig{i,1}= 'XIQ2'; transp_sig{i,2}='Signal'; transp_sig{i,3}='xi of Q=2 surface [ ]';
-i=i+1;transp_sig{i,1}= 'XIQ3'; transp_sig{i,2}='Signal'; transp_sig{i,3}='xi of Q=3 surface [ ]';
-i=i+1;transp_sig{i,1}= 'XIQ3_2'; transp_sig{i,2}='Signal'; transp_sig{i,3}='xi of Q=3/2 surface [ ]';
-i=i+1;transp_sig{i,1}= 'YAXIS'; transp_sig{i,2}='Signal'; transp_sig{i,3}='ASYMMETRIC GEO: Y OF MAG. AXIS [CM ]';
-i=i+1;transp_sig{i,1}= 'YMPBDY'; transp_sig{i,2}='Signal'; transp_sig{i,3}='"MIDPLANE" Y OF ASYM BDY SURFACE [CMU ]';
-i=i+1;transp_sig{i,1}= 'TIME3'; transp_sig{i,2}='Time-Base'; transp_sig{i,3}='Time grid for profile data';
-i=i+1;transp_sig{i,1}= 'X'; transp_sig{i,2}='Area-Base'; transp_sig{i,3}='rho_tor (full radial resolution)';
-i=i+1;transp_sig{i,1}= 'AMOI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Total Therm Ang Inertia Dens [NtM2/CM3 ]';
-i=i+1;transp_sig{i,1}= 'BBETA'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM BETA POLOIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'BBNTX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM-BEAM NEUTRONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BDENS'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM ION DENSITY [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'BDEPE_D1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FULL E D BEAM DEP (TOTAL) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BDEPE_D2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='HALF E D BEAM DEP (TOTAL) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BDEPE_D3'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='1/3 E D BEAM DEP (TOTAL) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BDEP_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D BEAM DEPOSITION (TOTAL) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BN0T1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NEUTRALS:1.GEN 1/1*EB [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'BN0T2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NEUTRALS:1.GEN 1/2*EB [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'BN0T3'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NEUTRALS:1.GEN 1/3*EB [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'BTBE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM BETA TOROIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'BTE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON BETA TOROIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'BTI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION BETA TOROIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'BTNTX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM-TARGET NEUTRONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BTPL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='PLASMA BETA TOROIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'BTRAP0_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D beam full E dep banana frac. [ ]';
-i=i+1;transp_sig{i,1}= 'BTRAP_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D beam ions banana fraction [ ]';
-i=i+1;transp_sig{i,1}= 'BTROT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ROTATION BETA TOROIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'BTTOT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL BETA TOROIDAL [ ]';
-i=i+1;transp_sig{i,1}= 'CICHD_AL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH DIRECT CUR DRIVE [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CICHM_AL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH MINORITY CUR DRIVE [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CLOGE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON COULOMB LOG [ ]';
-i=i+1;transp_sig{i,1}= 'CLOGI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION COULOMB LOG [ ]';
-i=i+1;transp_sig{i,1}= 'CUR'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL PLASMA CURRENT [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CURB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DRIVEN CURRENT [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CURBS'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BOOTSTRAP CURRENT [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CURBSEPS'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Aspect Ratio Bootstrap Current [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CURBSSAU'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Sauter Bootstrap Current [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CURBSWNC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NCLASS Bootstrap Current [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CURGP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GRAD(P) TOROIDAL CUR [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'CUROH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='OHMIC PLASMA CURRENT [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'DAREA'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ZONE CROSS SECTIONAL AREA [CM**2 ]';
-i=i+1;transp_sig{i,1}= 'DIVFD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='DIV(ION FLUX D+) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIVFE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='DIV(ELECTRON FLUX) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIVFI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='DIV(TOTAL ION FLUX) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'DN0VD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VOL NEUTRAL DENSITY G=D [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'DN0VH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VOL NEUTRAL DENSITY G=H [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'DN0WD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='WALL NEUTRAL DENS G=D [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'DN0WH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='WALL NEUTRAL DENS G=H [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'DNDDT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D/DT(ION DENS D+) [N/CM3/SEC]';
-i=i+1;transp_sig{i,1}= 'DVOL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ZONE VOLUME [CM**3 ]';
-i=i+1;transp_sig{i,1}= 'EBEAM_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='AVG D BEAM ION ENERGY [EV ]';
-i=i+1;transp_sig{i,1}= 'ECCUR'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 1) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 2) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR3'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 3) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR4'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 4) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR5'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 5) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR6'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 6) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR7'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 7) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'ECCUR8'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH CURRENT (GYRO 8) [A/CM2 ]';
-i=i+1;transp_sig{i,1}= 'EHEAT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ELECTRON HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'ETA_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC RESISTIVITY (old fit) [OHM*CM ]';
-i=i+1;transp_sig{i,1}= 'ETA_SNC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Sauter Neoclassical Resistivity [OHM*CM ]';
-i=i+1;transp_sig{i,1}= 'ETA_SP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='SPITZER RESISTIVITY [OHM*CM ]';
-i=i+1;transp_sig{i,1}= 'ETA_SPS'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='SPITZER RESISTIVITY (Sauter) [OHM*CM ]';
-i=i+1;transp_sig{i,1}= 'ETA_TSC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TSC Neoclassical Resistivity [OHM*CM ]';
-i=i+1;transp_sig{i,1}= 'ETA_USE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RESISTIVITY USED OR INFERRED [OHM*CM ]';
-i=i+1;transp_sig{i,1}= 'ETA_WNC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NCLASS Resistivity [OHM*CM ]';
-i=i+1;transp_sig{i,1}= 'FMCK_WNC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NCLASS Fm convergence check [ ]';
-i=i+1;transp_sig{i,1}= 'FPAX_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D BEAM SCATTERING >IMPURITIES [ ]';
-i=i+1;transp_sig{i,1}= 'FPBX_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D BEAM DRAG >IMPURITIES [ ]';
-i=i+1;transp_sig{i,1}= 'FTOTDDN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL D(D,N)HE3 FUSION [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'FTOTDDP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL D(D,P)T FUSION [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'GAINE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON GAIN [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'GAINI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION GAIN [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'GMAG'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GMAG (RT) PRESSURE PROFILE [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'GR2X2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='<R**2*GRAD(XI)**2> FLX.SURF.AVG [ ]';
-i=i+1;transp_sig{i,1}= 'GXI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='<GRAD(XI)> FLUX SURF VOL.AVG [CM**-1 ]';
-i=i+1;transp_sig{i,1}= 'GXI2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='<GRAD(XI)**2> FLUX SURF VOL.AVG [CM**-2 ]';
-i=i+1;transp_sig{i,1}= 'IHEAT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ION HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'JBFAC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Species avg Jb shielding [ ]';
-i=i+1;transp_sig{i,1}= 'JBFACZ1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Z=1 Jb shielding [ ]';
-i=i+1;transp_sig{i,1}= 'M0NET'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NET CX MOMENTUM LOSS [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'MCONV'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CONVECTIVE TRANSPORT [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'MODOT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MOMENTUM GAIN [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'MVISC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VISCOUS TRANSPORT [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'N0BCXD0'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CX FAST NEUTRAL DENSITY (D0) [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'N0BD0'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='1.GEN FAST NEUTRAL DENSITY (D0) [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NB_F1_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='density: full energy D beam [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NB_F2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='density: half energy D beam [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NB_F3_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='density: 1/3 energy D beam [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NCFT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC trapping fraction (net) [ ]';
-i=i+1;transp_sig{i,1}= 'NCFTMINU'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC trapping fraction lower limit [ ]';
-i=i+1;transp_sig{i,1}= 'NCFTPLUS'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC trapping fraction upper limit [ ]';
-i=i+1;transp_sig{i,1}= 'ND'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='DEUTERIUM ION DENSITY [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON DENSITY [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='HYDROGEN ION DENSITY [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NHE4'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='HELIUM-4 ION DENSITY [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ION DENSITY [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NIMP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL IMPURITY DENSITY [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'NMC_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Beam D No. of MC Ions [N ]';
-i=i+1;transp_sig{i,1}= 'NUSTE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON COLLISIONALITY [ ]';
-i=i+1;transp_sig{i,1}= 'NUSTI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION COLLISIONALITY [ ]';
-i=i+1;transp_sig{i,1}= 'OMEGA'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOROIDAL ANGULAR VELOCITY [RAD/SEC ]';
-i=i+1;transp_sig{i,1}= 'OMEGA_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='N.C. TOROIDAL ANGULAR VELOCITY [RAD/SEC ]';
-i=i+1;transp_sig{i,1}= 'OMEGB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM ION AVG ANG.VELOCITY [RAD/SEC ]';
-i=i+1;transp_sig{i,1}= 'OMEGB_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D BEAM ION AVG ANG.VELOCITY [RAD/SEC ]';
-i=i+1;transp_sig{i,1}= 'OMEGDATA'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Toroidal Ang.Velocity Data [RAD/SEC ]';
-i=i+1;transp_sig{i,1}= 'P0NET'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NET CHARGE EXCHANGE LOSS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBCX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='THERMAL ION LOSS, FAST ION CX [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM HEATING OF ELECTRONS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBEPHI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Electrostatic field -> fast ions [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBE_F1_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Pbe: full energy D beam [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBE_F2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Pbe: half energy D beam [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBE_F3_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Pbe: 1/3 energy D beam [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM HEATING OF IONS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBI_F1_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Pbi: full energy D beam [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBI_F2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Pbi: half energy D beam [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBI_F3_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Pbi: 1/3 energy D beam [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PBTH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION THERMALIZATION POWER [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCMPE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON COMPRESSION [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCMPI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION COMPRESSION [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCNDE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON CONDUCTION LOSS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCNVE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON CONVECTION LOSS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCOND'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION CONDUCTION LOSS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCONV'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION CONVECTION LOSS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCPRB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='POWER: COMPRESSION OF FAST IONS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PCX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CHARGE EXCHANGE LOSS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 1) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 2) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH3'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 3) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH4'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 4) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH5'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 5) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH6'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 6) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH7'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 7) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEECH8'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ECRH ELECTRON HEATING (GYRO 8) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PEICH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICRF ELECTRON HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PHBAL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ANGULAR MOMENTUM BALANCE [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PICF01N0'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICRF PWR, Nphi= 12, FREQ#1 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PICF02N0'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICRF PWR, Nphi= 12, FREQ#2 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PICF03N0'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICRF PWR, Nphi= 12, FREQ#3 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PICF04N0'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICRF PWR, Nphi= 12, FREQ#4 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PIC_F1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RF PWR Absorbed, Freq.1 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PIC_F2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RF PWR Absorbed, Freq.2 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PIC_F3'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RF PWR Absorbed, Freq.3 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PIC_F4'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RF PWR Absorbed, Freq.4 [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PIICH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICRF ION HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PION'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NEUTRAL IONIZATION WORK [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PMHD_IN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='PRESSURE INPUT to MHD SOLVER [PASCALS ]';
-i=i+1;transp_sig{i,1}= 'PNI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NEUTRAL IONIZATION SOURCE [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'POH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='OHMIC HEATING POWER [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'POHB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='POWER: OH CIRCUIT TO FAST IONS [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PPLAS'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='PLASMA PRESSURE [PASCALS ]';
-i=i+1;transp_sig{i,1}= 'PRAD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NET RADIATED POWER [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PRADC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NET RADIATED POWER CALCULATED [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PRADS_TO'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOK Impurity Radiation [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PRAD_BR'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BREMSSTRAHLUNG RADIATION [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PRAD_CY'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CYCLOTRON RADIATION [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PRAD_LI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='LINE RADIATION [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PTMIN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MINORITY TRANSPORT [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'PTOWB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='KINETIC MHD PRESSURE W/FAST IONS [PASCALS ]';
-i=i+1;transp_sig{i,1}= 'QICHA'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ICH HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'QICHE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH DIRECT ELECTRON HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'QICHFAST'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH Heating of Beam & Fusn Ions [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'QICHI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH DIRECT TH.ION HEATING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'QICHMC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH HEATING BY MODE CONVERSION [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'QICHMIN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH PWR TO MINORITY [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'QIE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION-ELECTRON COUPLING [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'QMINICH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICRH Power (Renormalized QL0) [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'S0RCD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RECOMB NEUTRAL SCE G=D [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'S0RCH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RECOMB NEUTRAL SCE G=H [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'S0VLE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL NEUTRAL VOL SCE [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'S0VOL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL NEUTRAL VOL E-SCE [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SB0ID'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D0 NEUTRAL SINK BEAM II [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SB0IH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='H0 NEUTRAL SINK BEAM II [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SB0XD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D0 NEUTRAL SINK BEAM CX [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SB0XH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='H0 NEUTRAL SINK BEAM CX [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCX0'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION CX: NEUTRALS BORN [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCXD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D0 NEUTRAL SOURCE BEAM CX [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBCXH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='H0 NEUTRAL SOURCE BEAM CX [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON SCE FAST ION DEPOSITION [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBHD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D+ ION SCE DUE TO BEAM [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBHH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='H+ ION SCE DUE TO BEAM [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBTH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION THERMALIZATION SOURCE [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBTOT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ION SCE(VOL. NEUTRALS) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXRB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION CX: BEAM-BEAM RECAPTURE [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXRD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM CX: RECAPTURE BY CX W/D+ [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXRH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM CX: RECAPTURE BY CX W/H+ [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXR_IE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION RECAPTURE on electrons [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXR_II'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION RECAPTURE on th.ions [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SBXR_IZ'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION RECAPTURE on impurities [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SCEE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON SOURCE (TH.NEUTRALS) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SCEV'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON SCE (VOL. NEUTRALS) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SCEW'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON SCE (WALL NEUTRALS) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SCIMP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='IMPURITY SOURCE [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SDBBI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DEPOSITION: BEAM-BEAM II [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SDBBX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DEPOSITION: BEAM-BEAM CX [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SDB_IE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DEP: ioniz. on electrons [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SDB_II'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DEP: ioniz. on therm. ions [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SDB_IZ'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DEP: ioniz. on impurities [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SDCXD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DEPOSITION: CX W/D+ IONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SDCXH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM DEPOSITION: CX W/H+ IONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SERUN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='RUNAWAY ELEC SOURCE RATE [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SFETO'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRONS -> FAST NEUTRALS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SVD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOT ION SCE VOL. D+ [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SVH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOT ION SCE VOL. H+ [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SWD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOT ION SCE WALL D+ [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SWH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOT ION SCE WALL H+ [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'SWTOT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ION SCE(WALL NEUTRALS) [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'T0VD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VOL NEUTRAL TEMP G=D [EV ]';
-i=i+1;transp_sig{i,1}= 'T0VH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VOL NEUTRAL TEMP G=H [EV ]';
-i=i+1;transp_sig{i,1}= 'T0WD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='WALL NEUTRAL TEMP G=D [EV ]';
-i=i+1;transp_sig{i,1}= 'T0WH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='WALL NEUTRAL TEMP G=H [EV ]';
-i=i+1;transp_sig{i,1}= 'TE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON TEMPERATURE [EV ]';
-i=i+1;transp_sig{i,1}= 'THNTX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='THERMONUCLEAR NEUTRONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'TI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION TEMPERATURE [EV ]';
-i=i+1;transp_sig{i,1}= 'TPA1A_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D FULL E TAU(SCATTERING,CO) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TPA2A_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D HALF E TAU(SCATTERING,CO) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TPA3A_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D 1/3 E TAU(SCATTERING,CO) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TQBCO'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM COLLISIONAL TORQUE [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'TQBTH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM THERMALIZATION TORQUE [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'TQICHMIN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ICH Torque TO MINORITY IONS [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'TQIN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL INPUT TORQUE [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'TQJXB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM JXB TORQUE [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'TQRPL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM RPL JXB TORQUE [Nt-M/CM3 ]';
-i=i+1;transp_sig{i,1}= 'TSL1A_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D FULL E TAU(SLOWING DOWN,CO) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TSL2A_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D HALF E TAU(SLOWING DOWN,CO) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TSL3A_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D 1/3 E TAU(SLOWING DOWN,CO) [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TTNTX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL NEUTRONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'TX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='IMPURITY TEMPERATURE [EV ]';
-i=i+1;transp_sig{i,1}= 'UBPAR'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM PLL ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UBPOL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='POLOIDAL FIELD ENERGY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UBPRP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='BEAM PERP ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UBTOR'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOROIDAL FIELD ENERGY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UCURB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='UNSHIELDED BEAM CURRENT [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'UDEXB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='E CROSS B POWER [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UFASTPA'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION PLL ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UFASTPP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION PERP ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UJBCO'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='UNSHIELDED BEAM CUR (CO BEAMS) [AMPS/CM2 ]';
-i=i+1;transp_sig{i,1}= 'UPHI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='THERMAL PLASMA ROTATIONAL ENERGY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UPHIN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ROTATIONAL ENERGY INPUT [WATTS/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UTHRM'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='THERMAL ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'UTOTL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL ENERGY DENSITY [JLES/CM3 ]';
-i=i+1;transp_sig{i,1}= 'V'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VOLTAGE [VOLTS ]';
-i=i+1;transp_sig{i,1}= 'VPB_F1_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Vpll.B: full energy D beam [T*(cm/sec)]';
-i=i+1;transp_sig{i,1}= 'VPB_F2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Vpll.B: half energy D beam [T*(cm/sec)]';
-i=i+1;transp_sig{i,1}= 'VPB_F3_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Vpll.B: 1/3 energy D beam [T*(cm/sec)]';
-i=i+1;transp_sig{i,1}= 'VPOH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VOLTAGE for POH calculation [VOLTS ]';
-i=i+1;transp_sig{i,1}= 'WNMC_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Beam D No. of MC Ions [#ptcls ]';
-i=i+1;transp_sig{i,1}= 'ZEFFI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='INPUT ZEFF (UNCONSTRAINED) [ ]';
-i=i+1;transp_sig{i,1}= 'ZEFMD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MAGDIF ZEFF PROFILE [ ]';
-i=i+1;transp_sig{i,1}= 'XB'; transp_sig{i,2}='Area-Base'; transp_sig{i,3}='rho_tor "boundary"';
-i=i+1;transp_sig{i,1}= 'BPOL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='POLOIDAL FIELD [Tesla ]';
-i=i+1;transp_sig{i,1}= 'CHPHI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MOMENTUM DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'CONDE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON HEAT DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'CONDEF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='1 FLUID "EFFECTIVE" CHI [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'CONDI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION HEAT DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'CONDICWN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NCLASS ion class heat conduct [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'CONDIWNC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NCLASS ion heat conductivity [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'CURBRABD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION RAD.CUR (ANOM DIFFUS) [AMPS ]';
-i=i+1;transp_sig{i,1}= 'CURBRFSH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION RAD.CUR (FISHBONES) [AMPS ]';
-i=i+1;transp_sig{i,1}= 'CURBRORB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION RADIAL CURRENT (ORBIT) [AMPS ]';
-i=i+1;transp_sig{i,1}= 'CURBRRIP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FAST ION RAD.CUR (RIPPLE LOSS) [AMPS ]';
-i=i+1;transp_sig{i,1}= 'DIFB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ANOMOLOUS FAST ION DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIFFD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='EFF. D+ ION DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIFFE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELEC PTCL DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIFFH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='EFF. H+ ION DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIFFI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION DIFFUSIVITY FROM TOTAL FLUX [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIFFIGLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 ION DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIFWE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELEC PTCL DIFFUSIVITY (WARE) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'DIFFX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='EFF. IMP ION DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'ELONG'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Flux surface elongation [ ]';
-i=i+1;transp_sig{i,1}= 'ETAE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D(LN(TE))/D(LN(NE)) [ ]';
-i=i+1;transp_sig{i,1}= 'ETAI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D(LN(TI))/D(LN("NI")) [ ]';
-i=i+1;transp_sig{i,1}= 'ETAIE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D(LN(TI))/D(LN(NE)) [ ]';
-i=i+1;transp_sig{i,1}= 'ETPARGLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 MOM (PAR) DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'ETPERGLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 MOM (PERP) DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'ETPHIGLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 MOM (TOR) DIFFUSIVITY [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'EXBGLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 EXB SHEAR RATE [/SEC ]';
-i=i+1;transp_sig{i,1}= 'FKBOL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CHI(I) NC BOLTON [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'FKCH2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CHI(I) NC CHANG-HINTON VSN 2 [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'FKCHH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CHI(I) NC CHANG-HINTON ORIGINAL [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'FKCHZ'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CHI(I) NC CHANG-HINTON Z-CORR [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'FKHZH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CHI(I) NC HAZELTINE-HINTON [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'FKJUL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='CHI(I) NC RUTHERFORD-JULICH [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'FRAT1GLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 LEADING MODE FREQUENCY [/SEC ]';
-i=i+1;transp_sig{i,1}= 'FRAT2GLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 SCND LEADING MODE FREQ [/SEC ]';
-i=i+1;transp_sig{i,1}= 'GAMMMM1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 GRTH RATE MODE=1 [1/SEC ]';
-i=i+1;transp_sig{i,1}= 'GAMMMM2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 GRTH RATE MODE=2 [1/SEC ]';
-i=i+1;transp_sig{i,1}= 'GFUN'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='G: PARA/DIAMAGNETISM [ ]';
-i=i+1;transp_sig{i,1}= 'GFUNC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='G: GRAD-SHAF EQUILIBRIUM CHECK [ ]';
-i=i+1;transp_sig{i,1}= 'GRAT1GLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 GROWTH RT OF LEADING MODE [/SEC ]';
-i=i+1;transp_sig{i,1}= 'GRAT2GLF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 GRTH RT SCND LEADING MODE [/SEC ]';
-i=i+1;transp_sig{i,1}= 'OMEMMM1'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 FREQUENCY MODE=1 [RAD/SEC ]';
-i=i+1;transp_sig{i,1}= 'OMEMMM2'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 FREQUENCY MODE=2 [RAD/SEC ]';
-i=i+1;transp_sig{i,1}= 'PLCURPLL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='POLOIDAL CUR (J PLL) [AMPS ]';
-i=i+1;transp_sig{i,1}= 'PLCURPRP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='POLOIDAL CUR (J PERP) [AMPS ]';
-i=i+1;transp_sig{i,1}= 'PLCURTOT'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL POLOIDAL CUR TO WALL [AMPS ]';
-i=i+1;transp_sig{i,1}= 'PLFLX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='POLOIDAL FLUX [Wb/rad ]';
-i=i+1;transp_sig{i,1}= 'PLFLX2PI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOTAL POLOIDAL FLUX [Webers ]';
-i=i+1;transp_sig{i,1}= 'Q'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Q PROFILE [ ]';
-i=i+1;transp_sig{i,1}= 'RLTCRGKF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='R/LTi: critical ITG main br. [ ]';
-i=i+1;transp_sig{i,1}= 'RLTCRGKZ'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='R/LTi: critical ITG Carbon br. [ ]';
-i=i+1;transp_sig{i,1}= 'RLTI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='R/LTi: actual ITG:R*Grad(Ti)/Ti [ ]';
-i=i+1;transp_sig{i,1}= 'RMJMP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FLUX SURFACE CTRS [CM ]';
-i=i+1;transp_sig{i,1}= 'RMNMP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MIDPLANE RADII [CM ]';
-i=i+1;transp_sig{i,1}= 'SREXBMMM'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ExB Shear Rate (MMM95) [SEC**-1 ]';
-i=i+1;transp_sig{i,1}= 'SSHAF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='SHAFRANOV SHIFT [CM ]';
-i=i+1;transp_sig{i,1}= 'SURF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='FLUX SURFACE AREA [CM**2 ]';
-i=i+1;transp_sig{i,1}= 'TAPWE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON TAU(P) WARE CORRECTION [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TAUE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='PLASMA ENERGY CONFINEMENT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TAUPE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON PTCL CONFINEMNT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TAUPI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION PTCL CONFINEMENT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TEE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON ENERGY CONFINEMENT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'TEI'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION ENERGY CONFINEMENT [SECONDS ]';
-i=i+1;transp_sig{i,1}= 'THDIG'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ION DIFF (WEILAND) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THDKB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ION DIFF (KB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THDRB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ION DIFF (RB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THEIG'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ELEC THER DIFF (WEILAND) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THEKB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ELEC THER DIFF (KB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THERB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ELEC THER DIFF (RB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THIIG'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ION THER DIFF (WEILAND) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THIKB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ION THER DIFF (KB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THIRB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 ION THER DIFF (RB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THZIG'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 IMP DIFF (WEILAND) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THZKB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 IMP DIFF (KB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'THZRB'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 IMP DIFF (RB) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'TRFLX'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOROIDAL FLUX [Webers ]';
-i=i+1;transp_sig{i,1}= 'TRIANG'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Flux surface triangularity [ ]';
-i=i+1;transp_sig{i,1}= 'TRIANGL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Flux surf. lower triangularity [ ]';
-i=i+1;transp_sig{i,1}= 'TRIANGU'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Flux surf. upper triangularity [ ]';
-i=i+1;transp_sig{i,1}= 'VCONEMMM'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 MODEL ELEC. CONV. VEL. [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VCONIMMM'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 MODEL ION CONV. VEL. [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VCONZMMM'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 MODEL IMP. CONV. VEL. [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VELD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION VELOCITY (NET) D+ [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VELE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON RADIAL VELOCITY [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VELH'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ION VELOCITY (NET) H+ [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VELIM'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='IMPURITY RADIAL VELOCITY [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VELWE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='ELECTRON WARE VELOCITY [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VMO_PBAL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='Momentum v_rad from ptcl-bal [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'XKAPEGKF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='IFS-PPPL GYROFLUID MODEL CHI(E) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'XKAPIGKF'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='IFS-PPPL GYROFLUID MODEL CHI(I) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'XKEGLF23'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 MODEL CHI(E) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'XKEMMM95'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 MODEL CHI(E) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'XKIGLF23'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='GLF23 MODEL CHI(I) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'XKIMMM95'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MMM95 MODEL CHI(I) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'XKINC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NEOCLASSICAL CHI(I) [CM**2/SEC ]';
-i=i+1;transp_sig{i,1}= 'RMAJM'; transp_sig{i,2}='Area-Base'; transp_sig{i,3}='R values';
-i=i+1;transp_sig{i,1}= 'TRFMP'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='TOROIDAL FLUX [WEBERS ]';
-i=i+1;transp_sig{i,1}= 'VPOLD_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC D+ poloidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VPOLE_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC electron poloidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VPOLH_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC H+ poloidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VPOLX_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC impurity poloidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VTORD_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC D+ toroidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VTORE_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC electron toroidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VTORH_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC H+ toroidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'VTORX_NC'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='NC impurity toroidal velocity [CM/SEC ]';
-i=i+1;transp_sig{i,1}= 'RMJSYM'; transp_sig{i,2}='Area-Base'; transp_sig{i,3}='R values (both field sides)';
-i=i+1;transp_sig{i,1}= 'VP2_USE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='VP2 data as used [rad/sec ]';
-i=i+1;transp_sig{i,1}= 'MSElabel'; transp_sig{i,2}='Area-Base'; transp_sig{i,3}='MSE label';
-i=i+1;transp_sig{i,1}= 'BPHI_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='B_phi at (R,Z) of detector [TESLA ]';
-i=i+1;transp_sig{i,1}= 'BR_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='B_R at (R,Z) of detector [TESLA ]';
-i=i+1;transp_sig{i,1}= 'BZ_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='B_Z at (R,Z) of detector [TESLA ]';
-i=i+1;transp_sig{i,1}= 'ER_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='E_R at (R,Z) of detector [V/M ]';
-i=i+1;transp_sig{i,1}= 'EZ_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='E_Z at (R,Z) of detector [V/M ]';
-i=i+1;transp_sig{i,1}= 'GAM1_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MSE Signal (due to B only) [ ]';
-i=i+1;transp_sig{i,1}= 'GAM2_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='MSE Signal (due to B and E) [ ]';
-i=i+1;transp_sig{i,1}= 'VBA_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='beam energy/nucleon [eV/AMU ]';
-i=i+1;transp_sig{i,1}= 'X_MSE'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='flux surface x=sqrt(phi/phlim) [ ]';
-i=i+1;transp_sig{i,1}= 'MCINDX'; transp_sig{i,2}='Area-Base'; transp_sig{i,3}='Monte Carlo index for f(r,theta)';
-i=i+1;transp_sig{i,1}= 'BBNT2_DD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='DD BEAM-BEAM NEUTRONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BDENS2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D Beam ion density [N/CM**3 ]';
-i=i+1;transp_sig{i,1}= 'BEPRP2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D Beam ion <Eperp> [eV ]';
-i=i+1;transp_sig{i,1}= 'BEPLL2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D Beam ion <Epll> [eV ]';
-i=i+1;transp_sig{i,1}= 'BMVOL'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='2d MC grid zone volumes [CM**3 ]';
-i=i+1;transp_sig{i,1}= 'BTNT2_DD'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='DD BEAM-TARGET NEUTRONS [N/CM3/SEC ]';
-i=i+1;transp_sig{i,1}= 'BVTOR2_D'; transp_sig{i,2}='Signal-Group'; transp_sig{i,3}='D Beam ion <Vtor> [cm/sec ]';
diff --git a/crpptbx_new/AUG/adaptPFM_rda.m b/crpptbx_new/AUG/adaptPFM_rda.m
deleted file mode 100644
index cd73a1d9f478dd559e36f92208ac10d1a4df7197..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/adaptPFM_rda.m
+++ /dev/null
@@ -1,17 +0,0 @@
-function [nodeout]=adaptPFM_rda(nodein,ndim1,ndim2,ndim3);
-%
-% 3D case is special
-%
-% adapt nodein to keep only 1st ndim1 points in dim1 and ndim2 points in dim2 and same for ndim3
-%
-% re-generate .x and .t
-%
-% change .value, .data, .x and .t 
-%
-
-nodeout = nodein;
-
-nodeout.value = nodeout.value(1:ndim1,1:ndim2,1:ndim3);
-nodeout.data = nodeout.value;
-nodeout.x = [1:ndim1];
-nodeout.t = [1:ndim3];
diff --git a/crpptbx_new/AUG/adapt_rda.m b/crpptbx_new/AUG/adapt_rda.m
deleted file mode 100644
index 58e4fd9bcce7b37728c3300791ce00f91ef797eb..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/adapt_rda.m
+++ /dev/null
@@ -1,22 +0,0 @@
-function [nodeout]=adapt_rda(nodein,ndim1,ndim2,itotransposeback,varargin);
-%
-% adapt nodein to keep only 1st ndim1 points in dim1 and ndim2 points in dim2
-% if itotransposeback==1, transpose back matrix and use ndim1 for ndim2 and vice versa
-%
-% change .value, .data, .x and .t 
-%
-
-nodeout = nodein;
-
-if itotransposeback==1
-  nodeout.value = nodeout.value';
-  nodeout.data = nodeout.data';
-  temp = nodeout.x;
-  nodeout.x = nodeout.t;
-  nodeout.t = temp;
-end
-
-nodeout.value = nodeout.value(1:ndim1,1:ndim2);
-nodeout.data = nodeout.value;
-nodeout.x = nodeout.x(1:ndim1);
-nodeout.t = nodeout.t(1:ndim2);
diff --git a/crpptbx_new/AUG/aug_requests_mapping.m b/crpptbx_new/AUG/aug_requests_mapping.m
deleted file mode 100644
index 15b98dd61e0063c58bb5c8662cd6c503e6a8b8d0..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/aug_requests_mapping.m
+++ /dev/null
@@ -1,169 +0,0 @@
-function mapping = aug_requests_mapping(data_request)
-
-% Defaults
-mapping = struct(...
-    'label', '', ...
-    'method', '', ...
-    'expression','', ...
-    'timedim', -1, ...     % dim which is the time, to copy in .t, the other dims are in .x (-1 means last dimension)
-    'new_timedim',0, ...  % if need to reshape data and dim orders to have timedim as new_timedim (shifting time to new_timedim)
-    'min', -inf, ...
-    'max', inf);
-
-if ~exist('data_request') || isempty(data_request)
-  return
-end
-
-% default label: data_request keyword itself
-mapping.label = data_request;
-
-% for AUG, following choices are set so far:
-% method = 'tdi' and then expression is the string within tdi (usual case when there is a direct link to an existing signal)
-%                with tdi, if expression cell array, call tdi(cell{1},cell{2},...)
-% method = 'function', then expression is the funtion to call which should return the correct structure
-% method = 'switchcase', then there will be a specific case within gdat_aug (usual case when not directly a signal)
-%
-% label is used for plotting
-switch lower(data_request)
- case 'b0'
-  mapping.label = 'B_0';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'betan'
-  mapping.label = '\beta_N';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'betap'
-  mapping.label = '\beta_p';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::beta_pol';
- case 'cxrs'
-  mapping.label = 'cxrs';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'delta'
-  mapping.method = 'tdi';
-  mapping.expression = '\results::delta_edge';
-  mapping.method = 'function';
-  mapping.expression = ['tdi(''\results::q_psi'');'];
- case 'delta_top'
-  mapping.label = 'delta\_top';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::delta_ed_top';
- case 'delta_bottom'
-  mapping.label = 'delta\_bottom';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::delta_ed_bot';
- case 'ece'
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'eqdsk'
-  mapping.method = 'switchcase'; % could use function make_eqdsk directly?
-  mapping.expression = '';
- case 'halpha'
-  mapping.label = 'Halpha';
-  mapping.method = 'tdi';
-  mapping.expression = '\base::pd:pd_011';
- case 'ioh'
-  mapping.label = 'I ohmic transformer';
-  mapping.method = 'tdi';
-  mapping.expression = [{'\magnetics::ipol[*,$1]'} {'OH_001'}];
- case 'ip'
-  mapping.label = 'Plasma current';
-  mapping.method = 'tdi';
-  mapping.expression = '\magnetics::iplasma:trapeze';
- case 'kappa'
-  mapping.method = 'tdi';
-  mapping.expression = '\results::kappa_edge';
- case 'mhd'
-  mapping.label = 'n=1,2, etc';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'ne'
-  mapping.method = 'switchcase';
- case 'neint'
-  mapping.label = 'line integrated el. density';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::fir:lin_int_dens';
- case 'nel'
-  mapping.label = 'line-averaged el. density';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::fir:n_average';
- case 'nerho'
-  mapping.label = 'ne';
-  mapping.method = 'switchcase';
- case 'neterho'
-  mapping.label = 'ne and Te';
-  mapping.method = 'switchcase';
- case 'ni'
-  mapping.method = 'switchcase'; % especially since might have option fit, etc
- case 'powers'
-  mapping.label = 'various powers';
-  mapping.method = 'switchcase';
- case 'q0'
-  mapping.method = 'tdi';
-  mapping.expression = '\results::q_zero';
- case 'q95'
-  mapping.method = 'tdi';
-  mapping.expression = '\results::q_95';
- case 'qedge'
-  mapping.method = 'tdi';
-  mapping.expression = '\results::q_edge';
- case 'qrho'
-  mapping.label = 'q';
-  mapping.method = 'switchcase';
- case 'rgeom'
-  mapping.label = 'Rgeom';
-  mapping.method = 'switchcase';
- case 'rhovol'
-  mapping.label = 'rhovol\_norm';
-  mapping.method = 'switchcase'; % from conf if exist otherwise computes it
- case 'rmag'
-  mapping.label = 'R\_magaxis';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::r_axis';
- case 'sxr'
-  mapping.method = 'switchcase';
- case 'te'
-  mapping.label = 'Te';
-  mapping.method = 'switchcase';
- case 'terho'
-  mapping.label = 'Te';
-  mapping.method = 'switchcase';
- case 'ti'
-  mapping.label = 'Ti';
-  mapping.method = 'switchcase';
- case 'transp'
-  mapping.label = 'transp output';
-  mapping.method = 'switchcase';
- case 'vloop'
-  mapping.label = '';
-  mapping.method = 'tdi';
-  mapping.expression = '';
- case 'vol'
-  mapping.label = 'Volume';
-  mapping.method = 'switchcase';
-  % mapping.expression = '\results::psitbx:vol'; (if exists for liuqe2 and 3 as well)
- case 'zeff'
-  mapping.label = 'zeff from Ip-Ibs';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::ibs:z_eff';
- case 'zgeom'
-  mapping.label = 'Zgeom';
-  mapping.method = 'switchcase';
- case 'zmag'
-  mapping.label = 'Zmagaxis';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::z_axis';
-% $$$  case ''
-% $$$   mapping.label = '';
-% $$$   mapping.method = 'tdi';
-% $$$   mapping.expression = '';
- otherwise
-  mapping.label = data_request;
-  mapping.method = 'tdi'; % assume a full tracename is given, so just try with tdi (could check there are some ":", etc...)
-  mapping.expression = data_request;
-  
-end
-
-
diff --git a/crpptbx_new/AUG/gdat_aug.m b/crpptbx_new/AUG/gdat_aug.m
deleted file mode 100644
index f070e344b769bc1899c876c9521ebcf19883fdd3..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/gdat_aug.m
+++ /dev/null
@@ -1,426 +0,0 @@
-function [gdat_data,gdat_params,error_status,varargout] = gdat_aug(shot,data_request,varargin)
-%
-% function [gdat_data,gdat_params,error_status,varargout] = gdat(shot,data_request,varargin)
-%
-% Aim: get data from a given machine using full path or keywords. 
-%      data_request are and should be case independent (transformed in lower case in the function and outputs)
-%
-% If no inputs are provided, return the list of available pre-defined data_request in gdat_data and default parameters gdat_params
-%
-% Inputs:
-%
-%    no inputs: return default parameters in a structure form in gdat_params
-%    shot: shot number
-%    data_request: keyword (like 'ip') or trace name or structure containing all parameters but shot number
-%    varargin{i},varargin{i+1},i=1:nargin-2: additional optional parameters given in pairs: param_name, param_value
-%                                            The optional parameters list might depend on the data_request
-%              examples of optional parameters:
-%                               'plot',1 (plot is set by default to 0)
-%                               'machine','AUG' (the default machine is the local machine)
-%
-%
-% Outputs:
-%
-% gdat_data: structure containing the data, the time trace if known and other useful information
-% gdat_data.t : time trace
-% gdat_data.data: requested data values
-% gdat_data.dim : values of the various coordinates related to the dimensions of .data(:,:,...)
-%                     note that one of the dim is the time, replicated in .t for clarity
-% gdat_data.dimunits : units of the various dimensions, 'dimensionless' if dimensionless
-% gdat_data.error_bar : if provided
-% gdat_data.gdat_call : list of parameters provided in the gdat call (so can be reproduced)
-% gdat_data.shot: shot number
-% gdat_data.machine: machine providing the data
-% gdat_data.gdat_request: keyword for gdat if relevant
-% gdat_data.data_fullpath: full path to the data node if known and relevant, or expression, or relevant function called if relevant
-% gdat_data.gdat_params: copy gdat_params for completeness
-% gdat_data.xxx: any other relevant information
-%
-%
-% Examples:
-% (should add working examples for various machines (provides working shot numbers for each machine...))
-% 
-%    [a1,a2]=gdat;
-%    a2.data_request = 'Ip';
-%    a3=gdat(48836,a2);  % gives input parameters as a structure, allows to call the same for many shots
-%    a4=gdat('opt1',123,'opt2',[1 2 3],'shot',48832,'data_request','Ip','opt3','aAdB'); % all in pairs
-%    a5=gdat(48836,'ip'); % standard call
-%    a6=gdat(48836,'ip','Opt1',123,'Doplot',1,'opt2','Abc'); % standard call with a few options (note all lowercase in output)
-
-%
-% Comments for local developer:
-% This gdat is just a "header routine" calling the gdat for the specific machine gdat_`machine`.m which can be called
-% directly, thus which should be able to treat the same type of input arguments
-%
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Prepare some variables, etc
-
-varargout{1}=cell(1,1);
-error_status=1;
-
-% construct default parameters structure
-gdat_params.data_request = '';
-default_machine = 'aug';
-
-gdat_params.machine=default_machine;
-gdat_params.doplot = 0;
-
-% construct list of keywords from global set of keywords and specific AUG set
-% get data_request names from centralized function
-data_request_names = get_data_request_names;
-
-% add AUG specific to all:
-if ~isempty(data_request_names.aug)
-  aug_names = fieldnames(data_request_names.aug);
-  for i=1:length(aug_names)
-    data_request_names.all.(aug_names{i}) = data_request_names.aug.(aug_names{i});
-  end
-end
-data_request_names_all = fieldnames(data_request_names.all);
-
-% $$$ data_request_names_all= [{'ip'} {'b0'} {'zmag'} {'rmag'} {'rcont'} {'zcont'} {'vol'} {'rhovol'} {'qrho'} {'q95'} {'kappa'} ...
-% $$$       {'delta'} {'deltatop'} {'deltabot'} {'neint'} {'nel'} ...
-% $$$       {'ne'} {'te'} {'nerho'} {'terho'}  {'ne_edge'} {'te_edge'} {'nerho_edge'} {'terho_edge'} {'nerhozshift'} {'terhozshift'} {'profnerho'} {'profterho'} ...
-% $$$       {'neft'} {'teft'} {'neftav'} {'teftav'} {'neft:trial'} {'teft:trial'} {'neftav:trial'} {'teftav:trial'}  ...
-% $$$       {'sxr'} {'sxr'} {'ece'} {'mpx'} {'ioh'} {'vloop'} {'pgyro'} {'jtor'} {'vi_tor'} {'vi_torfit'} {'vi_pol'} {'vi_polfit'} {'ti'} {'tifit'} {'ni'} {'nifit'} {'zeffcxrs'} {'zeffcxrsfit'}];
-
-% construct default output structure
-gdat_data.data = [];
-gdat_data.units = [];
-gdat_data.dim = [];
-gdat_data.dimunits = [];
-gdat_data.t = [];
-gdat_data.x = [];
-gdat_data.shot = [];
-gdat_data.gdat_request = [];
-gdat_data.gdat_params = gdat_params;
-gdat_data.data_fullpath = [];
-
-
-% Treat inputs:
-ivarargin_first_char = 3;
-data_request_eff = '';
-if nargin>=2 && ischar(data_request); data_request = lower(data_request); end
-
-gdat_data.gdat_request = data_request_names_all; % so if return early gives list of possible request names
-% no inputs
-if nargin==0
-  % return defaults and list of keywords
-  return
-end
-
-do_mdsopen_mdsclose = 1;
-% treat 1st arg
-if nargin>=1
-  if isempty(shot)
-    % means mdsopen(shot) already performed
-    shot = mdsipmex(2,'$SHOT');
-    gdat_data.shot = shot;
-    do_mdsopen_mdsclose = 0;
-  elseif isnumeric(shot)
-    gdat_data.shot = shot;
-  elseif ischar(shot)
-    ivarargin_first_char = 1;
-  else
-    warning('type of 1st argument unexpected, should be numeric or char')
-    error_status=2;
-    return
-  end
-  if nargin==1
-    % Only shot number given. If there is a default data_request set it and continue, otherwise return
-    return
-  end
-end
-% 2nd input argument if not part of pairs
-if nargin>=2 && ivarargin_first_char~=1
-  if isempty(data_request)
-    return
-  end
-  % 2nd arg can be a structure with all options except shot_number, or a string for the pathname or keyword, or the start of pairs string/value for the parameters
-  if isstruct(data_request)
-    if ~isfield(data_request,'data_request')
-      warning('expects field data_request in input parameters structure')
-      error_status=3;
-      return
-    end
-    data_request.data_request = lower(data_request.data_request);
-    data_request_eff = data_request.data_request;
-    gdat_params = data_request;
-  else
-    % since data_request is char check from nb of args if it is data_request or a start of pairs
-    if mod(nargin-1,2)==0
-      ivarargin_first_char = 2;
-    else
-      ivarargin_first_char = 3;
-      data_request_eff = data_request;
-    end
-  end
-end
-
-if ~isstruct(data_request)
-  gdat_params.data_request = data_request_eff;
-end
-
-% if start pairs from shot or data_request, shift varargin
-if ivarargin_first_char==1
-  varargin_eff{1} = shot;
-  varargin_eff{2} = data_request;
-  varargin_eff(3:nargin) = varargin(:);
-elseif ivarargin_first_char==2
-  varargin_eff{1} = data_request;
-  varargin_eff(2:nargin-1) = varargin(:);
-else
-  varargin_eff(1:nargin-2) = varargin(:);
-end
-
-% extract parameters from pairs of varargin:
-if (nargin>=ivarargin_first_char)
-  if mod(nargin-ivarargin_first_char+1,2)==0
-    for i=1:2:nargin-ivarargin_first_char+1
-      if ischar(varargin_eff{i})
-        % enforce lower case for any character driven input
-        if ischar(varargin_eff{i+1})
-          gdat_params.(lower(varargin_eff{i})) = lower(varargin_eff{i+1});
-        else
-          gdat_params.(lower(varargin_eff{i})) = varargin_eff{i+1};
-        end
-      else
-        warning(['input argument nb: ' num2str(i) ' is incorrect, expects a character string'])
-        error_status=401;
-        return
-      end
-    end
-  else
-    warning('number of input arguments incorrect, cannot make pairs of parameters')
-    error_status=402;
-    return
-  end
-end
-data_request_eff = gdat_params.data_request; % in case was defined in pairs
-
-% if it is a request_keyword copy it:
-ij=strmatch(data_request_eff,data_request_names_all,'exact');
-if ~isempty(ij); 
-  gdat_data.gdat_request = data_request_names_all{ij};
-  if isfield(data_request_names.all.(data_request_names_all{ij}),'description') && ~isempty(data_request_names.all.(data_request_names_all{ij}).description)
-    % copy description of keyword
-    gdat_data.request_description = data_request_names.all.(data_request_names_all{ij}).description;
-  end
-end
-
-% special treatment if shot and data_request given within pairs
-if isfield(gdat_params,'shot')
-  shot = gdat_params.shot; % should use only gdat_params.shot but change shot to make sure
-  gdat_data.shot = gdat_params.shot;
-  gdat_params=rmfield(gdat_params,'shot');
-end
-if ~isfield(gdat_params,'data_request') || isempty(gdat_params.data_request)
-  % warning('input for ''data_request'' missing from input arguments') % might be correct, asking for list of requests
-  error_status=5;
-  return
-end
-gdat_data.gdat_params = gdat_params;
-
-% re-assign main variables to make sure use the one in gdat_data structure
-shot = gdat_data.shot;
-data_request_eff = gdat_data.gdat_params.data_request;
-error_status = 6; % at least reached this level
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% Specifications on how to get the data provided in aug_requests_mapping
-mapping_for_aug = aug_requests_mapping(data_request_eff);
-gdat_data.label = mapping_for_aug.label;
-
-ishot=NaN;
-if do_mdsopen_mdsclose
-  mdsdefaultserver aug1.epfl.ch; % should be in aug general path, but set-it in the meantime...
-  ishot = mdsopen(shot); % if ishot equal to shot, then mdsclose at the end
-  if ishot~=shot
-    warning(['cannot open shot= ' num2str(shot)])
-    return
-  end
-end
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% 1st treat the simplest method: "tdi"
-if strcmp(mapping_for_aug.method,'tdi')
-  % need to treat liuqe2, model, etc from options....
-  if iscell(mapping_for_aug.expression)
-    if length(mapping_for_aug.expression)>0
-      % series of arguments for tdi given in each cell
-      eval_expr = ['aatmp=tdi(''' mapping_for_aug.expression{1} ''''];
-      for i=2:length(mapping_for_aug.expression)
-        eval_expr = [eval_expr ',''' mapping_for_aug.expression{i} ''''];
-      end
-      eval_expr = [eval_expr ');'];
-      eval(eval_expr);
-    else
-      % empty or wrong expression
-      error_status=701;
-      return
-    end
-  else
-    eval_expr = ['aatmp=tdi(''' mapping_for_aug.expression ''');'];
-    eval(eval_expr);
-  end
-  gdat_data.data = aatmp.data;
-  gdat_data.dim = aatmp.dim;
-  nbdims = length(gdat_data.dim);
-  if mapping_for_aug.timedim==-1; 
-    mapping_for_aug.timedim = nbdims;
-    if (size(gdat_data.data,nbdims)==1 && nbdims>1); mapping_for_aug.timedim = nbdims-1; end
-  end
-  dim_nontim = setdiff([1:nbdims],mapping_for_aug.timedim);
-  if ~isempty(dim_nontim)
-    % since most cases have at most 2d, copy as array if data is 2D and as cell if 3D or more
-    if length(dim_nontim)==1
-      gdat_data.x = gdat_data.dim{dim_nontim(1)};
-    else
-      gdat_data.x = gdat_data.dim(dim_nontim);
-    end
-  end
-  gdat_data.t = gdat_data.dim{mapping_for_aug.timedim};
-  gdat_data.units = aatmp.units;
-  gdat_data.dimunits = aatmp.dimunits;
-  if mapping_for_aug.new_timedim>0 && mapping_for_aug.new_timedim ~= mapping_for_aug.timedim
-    % shift timedim to new_timedim data(i,j,...itime,k,...) -> data(i,inewtime,j,...,k,...)
-    % note that this means that gdat_data.x and gdat_data.t are same and correct, 
-    % only .data, .dim and .dimunits need to be changed
-    iprev=[1:nbdims];
-    ij=find(dim_nontim>mapping_for_aug.new_timedim-1);
-    inew=[1:mapping_for_aug.new_timedim-1 mapping_for_aug.timedim dim_nontim(ij)];
-    data_sizes = size(aatmp.data);
-    gdat_data.data = NaN*ones(data_sizes(inew));
-    abcol=ones(1,nbdims)*double(':'); abcomma=ones(1,nbdims)*double(',');
-    dimstr_prev=['(' repmat(':,',1,mapping_for_aug.timedim-1) 'it,' ...
-                 repmat(':,',1,nbdims-mapping_for_aug.timedim-1) ':)'];
-    dimstr_new=['(' repmat(':,',1,mapping_for_aug.new_timedim-1) 'it,' ...
-                repmat(':,',1,nbdims-mapping_for_aug.new_timedim-1) ':)'];
-    % eval gdat_data.data(;,:,...,it,...) = aatmp.data(:,:,:,it,...);
-    for it=1:size(aatmp.data,mapping_for_aug.timedim)
-      shift_eval = ['gdat_data.data' dimstr_new ' = aatmp.data'  dimstr_prev ';'];
-      eval(shift_eval);
-    end
-    gdat_data.dim = aatmp.dim(inew);
-    gdat_data.dimunits = aatmp.dimunits(inew);
-  end
-  gdat_data.data_fullpath=mapping_for_aug.expression;
-  % end of method "tdi"
-
-  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-elseif strcmp(mapping_for_aug.method,'function')
-  % 2nd: method="function"
-  % assume expression contains function to call and which returns a structure
-  % we copy the structure, to make sure default nodes are defined and to avoid if return is an closed object like tdi
-  eval_expr = ['aatmp=' mapping_for_aug.expression ';'];
-  eval(eval_expr);
-  if isempty(aatmp) || (~isstruct(aatmp) & ~isobject(aatmp))
-    warning(['function expression does not return a structure: ' eval_expr])
-    error_status=801;
-    return
-  end
-  tmp_fieldnames = fieldnames(aatmp);
-  if sum(strcmp(tmp_fieldnames,'data'))==0 % note: cannot do isfield since aatmp might be an object
-    warning(['function does not return a child name ''data'' for ' data_request_eff])
-  end
-  for i=1:length(tmp_fieldnames)
-    gdat_data.(tmp_fieldnames{i}) = aatmp.(tmp_fieldnames{i});
-  end
-  % add .t and .x in case only dim is provided
-  % do not allow shifting of timedim since should be treated in the relevant function
-  ijdim=find(strcmp(tmp_fieldnames,'dim')==1);
-  if ~isempty(ijdim)
-    nbdims = length(gdat_data.dim);
-    if mapping_for_aug.timedim==-1; 
-      mapping_for_aug.timedim = nbdims;
-      if (size(gdat_data.data,nbdims)==1 && nbdims>1); mapping_for_aug.timedim = nbdims-1; end
-    end
-    dim_nontim = setdiff([1:nbdims],mapping_for_aug.timedim);
-    ijt=find(strcmp(tmp_fieldnames,'t')==1);
-    if isempty(ijt)
-      gdat_data.t = gdat_data.dim{mapping_for_aug.timedim};
-    end
-    ijx=find(strcmp(tmp_fieldnames,'x')==1);
-    if isempty(ijx)
-      if ~isempty(dim_nontim)
-        % since most cases have at most 2d, copy as array if data is 2D and as cell if 3D or more
-        if length(dim_nontim)==1
-          gdat_data.x = gdat_data.dim{dim_nontim(1)};
-        else
-          gdat_data.x = gdat_data.dim(dim_nontim);
-        end
-      end
-    end
-    gdat_data.data_fullpath=mapping_for_aug.expression;
-  end
-  % end of method "function"
-
-  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-elseif strcmp(mapping_for_aug.method,'switchcase')
-  switch data_request_eff % not lower(...) since data_request_eff should be lower case already at this stage
-   case {'ne','te'}
-    % ne or Te from Thomson data on raw z mesh vs (z,t)
-    mdsopen(shot);
-    nodenameeff=['\results::thomson:' data_request_eff];
-    tracetdi=tdi(nodenameeff);
-    tracestd=tdi(['\results::thomson:' data_request_eff ':error_bar']);
-    trace_fir_rat=tdi('\results::thomson:fir_thom_rat');
-    gdat_data.data=tracetdi.data'; % Thomson data as (t,z)
-    gdat_data.error_bar=tracestd.data';
-    gdat_data.data_fullpath=[nodenameeff];
-    % add correct dimensions
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' data_request_eff])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' data_request_eff])
-      return
-    end
-    if strcmp(data_request_eff(1:2),'ne')
-      tracefirrat_data = get_fir_thom_rat_data('thomson',time);
-      gdat_data.data_abs = gdat_data.data * diag(tracefirrat_data);
-      gdat_data.error_bar_abs = gdat_data.error_bar * diag(tracefirrat_data);
-      gdat_data.firrat=tracefirrat_data;
-      gdat_data.data_fullpath=[gdat_data.data_fullpath ' ; _abs includes *firrat'];
-    end
-    z=mdsdata('\diagz::thomson_set_up:vertical_pos');
-    gdat_data.dim=[{z};{time}];
-    gdat_data.dimunits=[{'Z [m]'} ; {'time [s]'}];
-    gdat_data.x=z;
-    gdat_data.t=time;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus use fieldnames
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      gdat_data.units=tracetdi.units;
-    end
-
-    
-   case 'nerho'
-    
-    
-   otherwise
-    warning(['switchcase= ' data_request_eff ' not known in gdat_aug'])
-    error_status=901;
-    return
-  end
-  
-else
-  warning(['AUG method=' mapping_for_aug.method ' not known yet, contact Olivier.Sauter@epfl.ch'])
-  error_status=602;
-  return
-end
-
-if ishot==shot; mdsclose; end
-
-gdat_data.mapping_for_aug = mapping_for_aug;
-error_status=0;
-
-return
-
diff --git a/crpptbx_new/AUG/geteqdskAUG.m b/crpptbx_new/AUG/geteqdskAUG.m
deleted file mode 100644
index d96a944d3cc10f36700f2ab4b45b48d25d1ae967..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/geteqdskAUG.m
+++ /dev/null
@@ -1,111 +0,0 @@
-function [eqdskAUG, equil_all_t, equil_t_index]=geteqdskAUG(shot,time,NR,NZ,savedir,deltaz,varargin);
-%
-% [eqdskAUG, equil_all_t, equil_t_index]=geteqdskAUG(shot,time,NR,NZ,savedir,deltaz,varargin);
-%
-% you can then do:
-%     write_eqdsk('fname',eqdskAUG,17); % EQI is COCOS=17 by default, use [17,11] if you want an ITER version
-%     write_eqdsk('fname',eqdskAUG,[17 11]); % if you want an ITER version with COCOS=11
-%
-
-
-if ~exist('time'); 
-  time_eff = 2.0;
-else
-  time_eff = time;
-end
-
-if ~exist('savedir')
-  savedir_eff = '.';
-else
-  savedir_eff = savedir;
-end
-
-if ~exist('deltaz')
-  deltaz_eff = NaN; % no shift
-else
-  deltaz_eff = deltaz;
-end
-
-equil=gdat(shot,'equil');
-[zz it]=min(abs(equil.t-time_eff));
-
-equil_all_t = equil;
-equil_t_index = it;
-
-eqdsk.cocos=17;
-eqdsk.nr = size(equil.Rmesh,1);
-eqdsk.nz = size(equil.Zmesh,1);
-eqdsk.rmesh = equil.Rmesh(:,it);
-eqdsk.zmesh = equil.Zmesh(:,it);
-eqdsk.p = equil.pressure(:,it);
-eqdsk.pprime = equil.dpressuredpsi(:,it);
-eqdsk.FFprime = equil.ffprime(:,it);
-eqdsk.q = equil.qvalue(:,it);
-eqdsk.psimesh = equil.psi(:,it);
-eqdsk.rhopsi = equil.rhopolnorm(:,it);
-eqdsk.psi = equil.psi2D(:,:,it);
-eqdsk.psirz = equil.psi2D(:,:,it);
-eqdsk.rboxlen = equil.Rmesh(end,it) - equil.Rmesh(1,it) ;
-eqdsk.rboxleft=eqdsk.rmesh(1);
-eqdsk.zboxlen = equil.Zmesh(end,it) - equil.Zmesh(1,it) ;
-eqdsk.zmid = 0.5*(equil.Zmesh(end,it) + equil.Zmesh(1,it)) ;
-eqdsk.psiaxis = equil.psi_axis(it);
-eqdsk.psiedge = equil.psi_lcfs(it);
-eqdsk.ip = equil.Ip(it);
-eqdsk.stitle=['AUGD equil_cliste t=' num2str(time_eff)];
-eqdsk.ind1=1;
-
-psisign = sign(eqdsk.psimesh(end)-eqdsk.psimesh(1));
-[dum1,dum2,dum3,F2_05]=interpos(psisign.*eqdsk.psimesh,eqdsk.FFprime,-0.1);
-
-b0=gdat(shot,'b0');
-[zz itb0]=min(abs(b0.t-time_eff));
-eqdsk.b0 = b0.data(itb0);
-eqdsk.r0 = 1.65;
-fedge=eqdsk.r0.*eqdsk.b0;
-F2 = psisign.*2.*F2_05 + fedge.^2;
-eqdsk.F = sqrt(F2)*sign(eqdsk.b0);
-
-rmag=gdat(shot,'rmag');
-[zz itrmag]=min(abs(rmag.t-time_eff));
-eqdsk.raxis = rmag.data(itrmag);
-zmag=gdat(shot,'zmag');
-eqdsk.zaxis = zmag.data(itrmag);
-
-% get plasma boundary
-figure
-contour(eqdsk.rmesh,eqdsk.zmesh,eqdsk.psi',100)
-hold
-psiedge_eff = 0.001*eqdsk.psiaxis + 0.999*eqdsk.psiedge;
-[hh1 hh2]=contour(eqdsk.rmesh,eqdsk.zmesh,eqdsk.psi',[psiedge_eff psiedge_eff],'k');
-axis equal
-ij=1;
-ij_prev = 0;
-nbhh1(ij)=hh1(2,ij_prev+1);
-Rbnd{ij}=hh1(1,2:1+nbhh1(ij));
-Zbnd{ij}=hh1(2,2:1+nbhh1(ij));
-ij_prev = ij_prev+1+nbhh1(ij);
-while (ij_prev+1<size(hh1,2))
-  % next
-  ij=ij + 1;
-  nbhh1(ij)=hh1(2,ij_prev+1);
-  Rbnd{ij}=hh1(1,ij_prev+2:ij_prev+1+nbhh1(ij));
-  Zbnd{ij}=hh1(2,ij_prev+2:ij_prev+1+nbhh1(ij));
-  ij_prev = ij_prev+1+nbhh1(ij);
-end
-% assume LCFS with most points
-[zzz irz]=max(nbhh1);
-eqdsk.nbbound = nbhh1(irz);
-eqdsk.rplas = Rbnd{irz}';
-eqdsk.zplas = Zbnd{irz}';
-plot(eqdsk.rplas,eqdsk.zplas,'k-')
-
-[aget]=which('geteqdskAUG');
-[path1,name2,ext3]=fileparts(aget);
-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-')
-
-eqdskAUG = eqdsk;
diff --git a/crpptbx_new/AUG/loadAUGdata.m b/crpptbx_new/AUG/loadAUGdata.m
deleted file mode 100644
index 8978a6eb833f50eed5eeb9365993d5d43f7c8f66..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/loadAUGdata.m
+++ /dev/null
@@ -1,1562 +0,0 @@
-function [trace,error,varargout]=loadAUGdata(shot,data_type,varargin)
-%
-% data_type:
-% 'Ip'   =  current
-% 'zmag' =  vertical position of the center of the plasma (magnetic axis)
-% 'rmag' =  radial position of the center of the plasma 
-% 'sxr'  =  soft x-ray emission 
-% 'sxR'  =  soft x-ray emission with varargout{1} option (requires varargin{5}!)
-% 'SXB'  =  soft x-ray emission from (by default camera J) SXB/J_xx camera (sxb, sxB, etc all work)
-% 'SXF'  =  soft x-ray emission from (by default camera J) SXF/I_xx camera (sxf, sxF, etc all work)
-% 'SSX_H' = from SSX, H channel, same for G, I, etc
-% 'SSX' : gets the SSX_G by default at this stage
-%
-%     gdat(15133,'MAG/Ipa',1,'AUG') % uses experiment=AUGD shotfiles per default
-%     gdat(15133,'MAG/Ipa',1) (sufficient at AUG since 'AUG' per defaut, same with gdat(15133,'ip',1)
-%     gdat(15133,'AUGD/MAG/Ipa',1,'AUG') % to specify experiment explicitely like in:
-%     gdat(30230,'ECED/RMD/Trad-A',1,'AUG') % 
-%     gdat(30230,'ECED/CEC/Trad-A',1,'AUG') % 
-%     gdat(31053,'MSP/IGP_07Co',1); % N gas opening at -6s (03 as well)
-%
-% INPUT:
-% shot: shot number
-% data_type: type of the required data: 'diag_name/sig_name'
-%
-% examples:
-%           data_type='SXR/B', 'TOT/beta_N', 'SXB/J_053', 'SXB'
-%           data_type='POT/ELMa-Han', 'MOD/OddNAmp', 'MOD/EvenNAmp', 'TOT/PNBI_TOT', 'TOT/P_TOT'
-%
-% Meaning of varargin depends on data_type:
-%
-% data_type=sxr, sxb, sxf or ece, eced:
-%                  varargin{1}:  [i1 i2] : if not empty, assumes need many chords from i1 to i2
-%                  varargin{2}:  channel status: 1=unread yet, 0=read
-%                                (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)
-%                  varargin{5}:  nth to keep only nth time points of traces
-%                  varargin{6}:  camera to use: 'B' (default), 'A', 
-%
-% OUTPUT:
-% trace.data:   data structure
-% trace.t:      time of reference 
-% trace.x:      space of reference 
-% ....          others related to data
-% error:        error in loading signal (0=> OK, 1=> error)
-%
-% Additional Output arguments depending on data_type
-%
-% data_type=sxR:
-%                varargout{1}: intersection of the view lines with magnetic axis
-%
-% functions needed: SF2ML or mdsplus routines
-%
-% Example:
-%         [ip,error]=loadAUGdata(shot,'ip');
-%         [ip,error]=loadAUGdata(shot,'MAG/Ipi');
-%         [n2,error]=loadAUGdata(shot,'MOD/EvenNAmp');
-%
-% List of keywords (can be used in adition to 'DIAG/tracenam'), with comments when not obvious:
-%
-% Ip : 
-% b0 : 
-% zmag : 
-% rmag : 
-% rgeo : 
-% zgeo : 
-% q0 : 
-% q95 : 
-% kappa : 
-% delta : 
-% deltatop : 
-% deltabot : 
-% neint : 
-% neterho : 
-% cxrs : CXRS structure from CEZ with vrot, Ti, ...
-% cxrs_rho : same as cxrs but project on rho as well (using 'equil' information)
-% equil : equilibrium structure, rhopol, rhotor, rhovol, etc from EQI
-% equil_fpp : as equil but from FPP
-% equil_eqm : as equil but from EQM
-% equil_eqr : as equil but from EQR
-% equil_eqh : as equil but from EQH
-% sxr : from SXR/A or B (from old stuff, not sure still OK)
-% sxR : from SXR/A or B adding R of chords (from old stuff, not sure still OK)
-% sxb : 'SXB/J' chords
-% sxf : 'SXF/I' chords
-% transp_EXPNAME : data from TRA using experiment name = "EXPNAME"
-% ece : 
-% ece_rho : 
-% eced : 
-% eced_rho : 
-% eced_rmd : 
-% Halpha : 
-% pgyro : for each gyrotrons, power, freq, etc (ask for more)
-% powers : power traces for each sources
-%
-
-
-varargout={cell(1,1)};
-error=1;
-shotfile_exp = 'AUGD';
-
-% To allow multiple ways of writing a specific keyword, use data_type_eff within this routine
-data_type_eff=data_type;
-if size(data_type,1)==1
-  % there might be "/" in the name, add backslash to protect it, thus remove in the name afterwards:
-  inotok=findstr('\/',data_type);
-  iok=regexp(data_type,'[^\\]/');
-  iok=iok+1;
-  if ~isempty(inotok)
-    % remove \/ and construct index of real separators "/"
-    for ij=1:length(inotok)
-      ijk=find(iok>inotok(ij));
-      if ~isempty(ijk)
-	iok(ijk) = iok(ijk) - 1;
-      end
-    end
-  end
-  inobackslash=regexp(data_type,'[^\\]');
-  data_type=data_type(inobackslash);
-  index_slash = iok;
-  % i=findstr('/',data_type);
-  i = index_slash;
-  if length(i)==1
-    % assumes given a la 'MAG/Ipi'
-    data_type_eff=[{data_type(1:i(1)-1)} ; {data_type(i(1)+1:end)}];
-  elseif length(i)==2
-    % assumes given a la 'AUGD/MAG/Ipi' or 'ECED/RMP/Trad-A'
-    data_type_eff=[{data_type(i(1)+1:i(2)-1)} ; {data_type(i(2)+1:end)}];
-    shotfile_exp = data_type(1:i(1)-1);
-  elseif length(i)>2
-    disp(['more / than expected in tracename: length(i)= ' num2str(length(i))])
-    data_type
-  end
-elseif isempty(data_type)
-  data_type_eff = ' ';
-end
-
-i_efitm=0;
-i_ext=length(data_type_eff)+1;
-name_ext='';
-if size(data_type_eff,1)==1
-  data_type_eff_noext=data_type_eff(1:i_ext-1);
-  if ~isempty(strmatch(data_type_eff_noext,[{'ip'} {'i_p'} {'IP'} {'iP'} {'xip'}],'exact'))
-    data_type_eff_noext='Ip';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'B0'}],'exact'))
-    data_type_eff_noext='b0';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Te'} {'t_e'} {'TE'} {'T_e'}],'exact'))
-    data_type_eff_noext='te';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Ne'} {'n_e'} {'NE'} {'N_e'}],'exact'))
-    data_type_eff_noext='ne';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Terho'}],'exact'))
-    data_type_eff_noext='terho';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'neterho'}],'exact'))
-    data_type_eff_noext='neterho';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'cxrs'} {'vrot'} {'ti'}],'exact'))
-    data_type_eff_noext='cxrs'; % load full CEZ structure
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'cxrs_rhos'} {'cxrs_rho'} {'cxrsrho'} {'cxrsrhos'}],'exact'))
-    data_type_eff_noext='cxrs_rho'; % load full CEZ structure
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'SXR'}],'exact'))
-    data_type_eff_noext='sxr';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'SXB'} {'sxb'} {'Sxb'} {'sXb'} {'sxB'} {'SXb'}],'exact'))
-    data_type_eff_noext='sxb';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'SXF'} {'sxf'} {'Sxf'} {'sXf'} {'sxf'} {'SXf'}],'exact'))
-    data_type_eff_noext='sxf';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'ssx_g'} {'ssx'}],'exact'))
-    data_type_eff_noext='ssx_g';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'ssx_h'} {'ssx'}],'exact'))
-    data_type_eff_noext='ssx_h';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'ssx_i'} {'ssx'}],'exact'))
-    data_type_eff_noext='ssx_i';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'ssx_j'} {'ssx'}],'exact'))
-    data_type_eff_noext='ssx_j';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'ssx'}],'exact'))
-    data_type_eff_noext='ssx';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext(1:min(7,length(data_type_eff_noext)))),[{'transp_'}],'exact'))
-    shotfile_exp = data_type_eff_noext(8:end)
-    data_type_eff_noext='transp'
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'ECE'}],'exact'))
-    data_type_eff_noext='ece';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'ece_rho'}],'exact'))
-    data_type_eff_noext='ece_rho';
-  end
-  if ~isempty(strmatch(upper(data_type_eff_noext),[{'ECED'}],'exact'))
-    data_type_eff_noext='eced';
-  end
-  if ~isempty(strmatch(upper(data_type_eff_noext),[{'ECED_RHO'}],'exact'))
-    data_type_eff_noext='eced_rho';
-  end
-  if ~isempty(strmatch(upper(data_type_eff_noext),[{'ECED_RMD'}],'exact'))
-    data_type_eff_noext='eced_rmd';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'VOL'} {'volume'}],'exact'))
-    data_type_eff_noext='vol';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'q_0'} {'Q0'}],'exact'))
-    data_type_eff_noext='q0';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'q_95'} {'Q95'}],'exact'))
-    data_type_eff_noext='q95';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'elongation'} {'elon'}],'exact'))
-    data_type_eff_noext='kappa';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'triangularity'} {'triang'}],'exact'))
-    data_type_eff_noext='delta';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'deltaup'} {'deltau'} {'triangtop'} {'triangu'} {'triangup'}],'exact'))
-    data_type_eff_noext='deltatop';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'deltalow'} {'deltal'} {'triangbot'} {'triangl'} {'trianglow'}],'exact'))
-    data_type_eff_noext='deltabot';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'qrho_FPP'}],'exact'))
-    data_type_eff_noext='qrho_fpp';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'equil_FPP'}],'exact'))
-    data_type_eff_noext='equil_fpp';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'equil_eqm'}],'exact'))
-    data_type_eff_noext='equil_eqm';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'equil_eqr'}],'exact'))
-    data_type_eff_noext='equil_eqr';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'equil_eqh'}],'exact'))
-    data_type_eff_noext='equil_eqh';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Rmag'}],'exact'))
-    data_type_eff_noext='rmag';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Rgeo'}],'exact'))
-    data_type_eff_noext='rgeo';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Zmag'}],'exact'))
-    data_type_eff_noext='zmag';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Zgeo'}],'exact'))
-    data_type_eff_noext='zgeo';
-  end
-% $$$   if ~isempty(strmatch(data_type_eff_noext,[{'Rcont'}],'exact'))
-% $$$     data_type_eff_noext='rcont';
-% $$$   end
-% $$$   if ~isempty(strmatch(data_type_eff_noext,[{'Zcont'}],'exact'))
-% $$$     data_type_eff_noext='zcont';
-% $$$   end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'betan'} {'betn'} {'beta_n'}],'exact'))
-    data_type_eff_noext='betan';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'betap'} {'betp'} {'betpol'} {'betapol'} {'beta_p'} {'beta_pol'}],'exact'))
-    data_type_eff_noext='betap';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Ha'} {'ha'} {'Halpha'} {'halpha'}],'exact'))
-    data_type_eff_noext='Halpha';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'pgyro'} {'pec'} {'pech'} {'pecrh'} {'p_ec'} {'p_gyro'}],'exact'))
-    data_type_eff_noext='pgyro';
-  end
-  if ~isempty(strmatch(lower(data_type_eff_noext),[{'powers'} {'ptot'} {'ptots'}],'exact'))
-    data_type_eff_noext='powers';
-  end
-else
-  i_ext=length(data_type_eff{2})+1;
-  name_ext='';
-  data_type_eff_noext=data_type_eff{2}(1:i_ext-1);
-end
-
-% all keywords and corresponding case to run below
-AUGkeywrdall=[{'Ip'} {'b0'} {'zmag'} {'rmag'}  {'rgeo'} {'zgeo'} {'vol'} {'qrho'} {'qrho_fpp'} {'q0'} {'q95'} {'kappa'} ...
-	      {'delta'} {'deltatop'} {'deltabot'} {'neint'} {'ne'} {'te'}  ...
-	      {'nerho'} {'neterho'} {'terho'} {'cxrs'} {'cxrs_rho'} {'equil'} {'equil_fpp'} {'equil_eqm'} ...
-	      {'equil_eqr'} {'equil_eqh'} {'sxr'} {'sxR'} {'sxb'} {'sxf'} {'ssx_g'} {'ssx_h'} {'ssx_i'} {'ssx_j'} {'ssx'} ...
-	      {'transp'} {'ece'} {'ece_rho'} {'eced'} {'eced_rho'} {'eced_rmd'} {'Halpha'} {'pgyro'} {'powers'} ...
-	      {'betan'}  {'betap'}]; % rm, not yet implemented: {'rcont'} {'zcont'}
-AUGsig.iip=strmatch('Ip',AUGkeywrdall,'exact');
-AUGsig.ib0=strmatch('b0',AUGkeywrdall,'exact');
-AUGsig.izmag=strmatch('zmag',AUGkeywrdall,'exact');
-AUGsig.irmag=strmatch('rmag',AUGkeywrdall,'exact');
-AUGsig.irgeo=strmatch('rgeo',AUGkeywrdall,'exact');
-AUGsig.izgeo=strmatch('zgeo',AUGkeywrdall,'exact');
-% $$$ AUGsig.ircont=strmatch('rcont',AUGkeywrdall,'exact');
-% $$$ AUGsig.izcont=strmatch('zcont',AUGkeywrdall,'exact');
-AUGsig.ivol=strmatch('vol',AUGkeywrdall,'exact');
-AUGsig.iqrho=strmatch('qrho',AUGkeywrdall,'exact');
-AUGsig.iqrho_fpp=strmatch('qrho_fpp',AUGkeywrdall,'exact');
-AUGsig.iequil=strmatch('equil',AUGkeywrdall,'exact');
-AUGsig.iequil_fpp=strmatch('equil_fpp',AUGkeywrdall,'exact');
-AUGsig.iequil_eqm=strmatch('equil_eqm',AUGkeywrdall,'exact');
-AUGsig.iequil_eqr=strmatch('equil_eqr',AUGkeywrdall,'exact');
-AUGsig.iequil_eqh=strmatch('equil_eqh',AUGkeywrdall,'exact');
-AUGsig.iq0=strmatch('q0',AUGkeywrdall,'exact');
-AUGsig.iq95=strmatch('q95',AUGkeywrdall,'exact');
-AUGsig.ikappa=strmatch('kappa',AUGkeywrdall,'exact');
-AUGsig.idelta=strmatch('delta',AUGkeywrdall,'exact');
-AUGsig.ideltatop=strmatch('deltatop',AUGkeywrdall,'exact');
-AUGsig.ideltabot=strmatch('deltabot',AUGkeywrdall,'exact');
-AUGsig.ibetan=strmatch('betan',AUGkeywrdall,'exact');
-AUGsig.ibetap=strmatch('betap',AUGkeywrdall,'exact');
-AUGsig.ineint=strmatch('neint',AUGkeywrdall,'exact');
-AUGsig.ine=strmatch('ne',AUGkeywrdall,'exact');
-AUGsig.ite=strmatch('te',AUGkeywrdall,'exact');
-AUGsig.inerho=strmatch('nerho',AUGkeywrdall,'exact');
-AUGsig.iterho=strmatch('terho',AUGkeywrdall,'exact');
-AUGsig.ineterho=strmatch('neterho',AUGkeywrdall,'exact');
-AUGsig.icxrs=strmatch('cxrs',AUGkeywrdall,'exact');
-AUGsig.icxrs_rho=strmatch('cxrs_rho',AUGkeywrdall,'exact');
-AUGsig.isxr=strmatch('sxr',AUGkeywrdall,'exact');
-AUGsig.isxR=strmatch('sxR',AUGkeywrdall,'exact');
-AUGsig.isxb=strmatch('sxb',AUGkeywrdall,'exact');
-AUGsig.isxf=strmatch('sxf',AUGkeywrdall,'exact');
-AUGsig.issx_g=strmatch('ssx_g',AUGkeywrdall,'exact');
-AUGsig.issx_h=strmatch('ssx_h',AUGkeywrdall,'exact');
-AUGsig.issx_i=strmatch('ssx_i',AUGkeywrdall,'exact');
-AUGsig.issx_j=strmatch('ssx_j',AUGkeywrdall,'exact');
-AUGsig.issx=strmatch('ssx',AUGkeywrdall,'exact');
-AUGsig.itransp=strmatch('transp',AUGkeywrdall,'exact');
-AUGsig.iece=strmatch('ece',AUGkeywrdall,'exact');
-AUGsig.ieced=strmatch('eced',AUGkeywrdall,'exact');
-AUGsig.iece_rho=strmatch('ece_rho',AUGkeywrdall,'exact');
-AUGsig.ieced_rho=strmatch('eced_rho',AUGkeywrdall,'exact');
-AUGsig.ieced_rmd=strmatch('eced_rmd',AUGkeywrdall,'exact');
-AUGsig.iHalpha=strmatch('Halpha',AUGkeywrdall,'exact');
-AUGsig.ipgyro=strmatch('pgyro',AUGkeywrdall,'exact');
-AUGsig.ipowers=strmatch('powers',AUGkeywrdall,'exact');
-
-% For each keyword, specify which case to use. As most common is 'simplereaddata', fill in with this and change
-% only indices needed. Usually use name of case same as keyword name
-AUGkeywrdcase=cell(size(AUGkeywrdall));
-AUGkeywrdcase(:)={'simplereaddata'};
-AUGkeywrdcase(AUGsig.iqrho)=AUGkeywrdall(AUGsig.iqrho); % special as efit q on psi
-AUGkeywrdcase(AUGsig.iqrho_fpp)=AUGkeywrdall(AUGsig.iqrho_fpp); % special as efit q on psi
-AUGkeywrdcase(AUGsig.iequil)=AUGkeywrdall(AUGsig.iequil); % special as efit q on psi
-AUGkeywrdcase(AUGsig.iequil_fpp)=AUGkeywrdall(AUGsig.iequil_fpp); % special as efit q on psi
-AUGkeywrdcase(AUGsig.iequil_eqm)=AUGkeywrdall(AUGsig.iequil_eqm); % special as efit q on psi
-AUGkeywrdcase(AUGsig.iequil_eqr)=AUGkeywrdall(AUGsig.iequil_eqr); % special as efit q on psi
-AUGkeywrdcase(AUGsig.iequil_eqh)=AUGkeywrdall(AUGsig.iequil_eqh);
-%AUGkeywrdcase(AUGsig.idelta)=AUGkeywrdall(AUGsig.idelta); % special as average of triu and tril
-AUGkeywrdcase(AUGsig.ine)=AUGkeywrdall(AUGsig.ine); % special as adds error bars
-AUGkeywrdcase(AUGsig.ite)=AUGkeywrdall(AUGsig.ite); % idem
-AUGkeywrdcase(AUGsig.inerho)=AUGkeywrdall(AUGsig.inerho); % idem
-AUGkeywrdcase(AUGsig.ineterho)=AUGkeywrdall(AUGsig.ineterho); % idem
-AUGkeywrdcase(AUGsig.iterho)=AUGkeywrdall(AUGsig.iterho); % idem
-AUGkeywrdcase(AUGsig.isxr)=AUGkeywrdall(AUGsig.isxr);
-AUGkeywrdcase(AUGsig.isxR)=AUGkeywrdall(AUGsig.isxR);
-AUGkeywrdcase(AUGsig.isxb)=AUGkeywrdall(AUGsig.isxb);
-AUGkeywrdcase(AUGsig.isxf)=AUGkeywrdall(AUGsig.isxf);
-AUGkeywrdcase(AUGsig.issx_g)=AUGkeywrdall(AUGsig.issx_g);
-AUGkeywrdcase(AUGsig.issx_h)=AUGkeywrdall(AUGsig.issx_h);
-AUGkeywrdcase(AUGsig.issx_i)=AUGkeywrdall(AUGsig.issx_i);
-AUGkeywrdcase(AUGsig.issx_j)=AUGkeywrdall(AUGsig.issx_j);
-AUGkeywrdcase(AUGsig.issx)=AUGkeywrdall(AUGsig.issx);
-AUGkeywrdcase(AUGsig.itransp)={data_type_eff_noext};
-AUGkeywrdcase(AUGsig.iece)=AUGkeywrdall(AUGsig.iece);
-AUGkeywrdcase(AUGsig.ieced)=AUGkeywrdall(AUGsig.ieced);
-AUGkeywrdcase(AUGsig.iece_rho)=AUGkeywrdall(AUGsig.iece_rho);
-AUGkeywrdcase(AUGsig.ieced_rho)=AUGkeywrdall(AUGsig.ieced_rho);
-AUGkeywrdcase(AUGsig.icxrs)=AUGkeywrdall(AUGsig.icxrs);
-AUGkeywrdcase(AUGsig.icxrs_rho)=AUGkeywrdall(AUGsig.icxrs_rho);
-AUGkeywrdcase(AUGsig.ipgyro)=AUGkeywrdall(AUGsig.ipgyro); % idem
-AUGkeywrdcase(AUGsig.ipowers)=AUGkeywrdall(AUGsig.ipowers); % idem
-
-% Information about which dimension has time, always return 2D data as (x,t) array
-% as most are 1D arrays with time as first index, fill in with ones and change only those needed
-AUGsigtimeindx=ones(size(AUGkeywrdall));
-
-% For the 'simplereaddata' cases, we need the full node in case gdat was called with full location directly
-% for the other cases, leave this location empty
-AUGsiglocation=cell(2,size(AUGkeywrdall,2));
-AUGsiglocation(:)={''};
-AUGsiglocation(:,AUGsig.iip)={'MAG'; 'Ipa'};
-AUGsiglocation(:,AUGsig.ib0)={'FPC'; 'BTF'}; % at 1.65m (?)
-AUGsiglocation(:,AUGsig.izmag)={'FPG'; 'Zmag'};
-AUGsiglocation(:,AUGsig.irmag)={'FPG'; 'Rmag'};
-AUGsiglocation(:,AUGsig.irgeo)={'FPG'; 'Rgeo'};
-AUGsiglocation(:,AUGsig.izgeo)={'FPG'; 'Zgeo'};
-% $$$ AUGsiglocation(:,AUGsig.ircont)={'' ; ''}; AUGsigtimeindx(AUGsig.ircont)=2;
-% $$$ AUGsiglocation(:,AUGsig.izcont)={'' ; ''}; AUGsigtimeindx(AUGsig.izcont)=2;
-AUGsiglocation(:,AUGsig.ivol)={'FPG'; 'Vol'};
-AUGsiglocation(:,AUGsig.iq0)={'FPG'; 'q0'};
-AUGsiglocation(:,AUGsig.iq95)={'FPG'; 'q95'};
-AUGsiglocation(:,AUGsig.ikappa)={'FPG'; 'k'};
-AUGsiglocation(:,AUGsig.ideltatop)={'FPG'; 'delRoben'};
-AUGsiglocation(:,AUGsig.ideltabot)={'FPG'; 'delRuntn'};
-AUGsiglocation(:,AUGsig.ibetan)={'TOT'; 'beta_N'};
-AUGsiglocation(:,AUGsig.ibetap)={'FPG'; 'betpol'};
-AUGsiglocation(:,AUGsig.ineint)={'DCN'; 'H-1'};
-AUGsiglocation(:,AUGsig.iece)={'CEC'; 'Trad-A'};
-AUGsiglocation(:,AUGsig.ieced)={'CEC'; 'Trad-A'}; % ECED
-AUGsiglocation(:,AUGsig.iece_rho)={'CEC'; 'Trad-A'};
-AUGsiglocation(:,AUGsig.ieced_rho)={'CEC'; 'Trad-A'}; % ECED
-AUGsiglocation(:,AUGsig.ieced_rmd)={'RMD'; 'Trad-A'}; % ECED_RMD
-AUGsiglocation(:,AUGsig.iHalpha)={'POT'; 'ELMa-Han'};
-
-% For the 'simplereaddata' cases, we need the full node in case gdat was called with full location directly
-% for the other cases, leave this location empty
-AUGexplocation=cell(size(AUGkeywrdall,2),1);
-AUGexplocation(:)={'AUGD'};
-% cases with a "private" shotfile:
-AUGexplocation(AUGsig.ieced)={'ECED'};
-AUGexplocation(AUGsig.ieced_rho)={'ECED'};
-AUGexplocation(AUGsig.ieced_rmd)={'ECED'};
-AUGexplocation(AUGsig.itransp)={shotfile_exp};
-
-if shot==-9
-  clear trace
-  for i=1:length(AUGkeywrdall)
-    fieldname_eff = lower(AUGkeywrdall{i});
-    keyword_eff = AUGkeywrdall{i};
-    ij=findstr(fieldname_eff,':');
-    if ~isempty(ij);
-      fieldname_eff(ij)='_';
-      keyword_eff(ij:end+1)=[':i' keyword_eff(ij+1:end)] ;
-    end
-    trace.(fieldname_eff) = keyword_eff;
-  end
-  % add example for Ip trace full call
-  trace.ipfullcall = 'MAG/Ipa';
-  % trace.data=[];
-  return
-end
-
-% initialize order of substructures and allows just a "return" if data empty
-trace.data=[];
-trace.x=[];
-trace.t=[];
-trace.dim=[];
-trace.dimunits=[];
-trace.name=[];
-
-% find index of signal called upon
-if size(data_type_eff,1)==2
-  % in case node name was given in 2 parts directly (as old way)
-  ii1=strmatch(data_type_eff(1),AUGsiglocation(1,:),'exact');
-  iiindex=strmatch(data_type_eff_noext,AUGsiglocation(2,ii1),'exact');
-  if ~isempty(iiindex)
-    index=ii1(iiindex);
-  else
-    index=[];
-  end
-  if isempty(index)
-% $$$     disp('********************')
-% $$$     disp('trace not yet registered.')
-% $$$     disp('If standard data, ask andrea.scarabosio@epfl.ch or olivier.sauter@epfl.ch to create a keyqord entry for this data')
-%    eval(['!mail -s ''' data_type_eff{1} ' ' data_type_eff{2} ' ' num2str(shot) ' ' ...
-%          getenv('USER') ' AUG'' olivier.sauter@epfl.ch < /dev/null'])
-    disp('********************')
-    % temporarily add entry in arrays, so can work below
-    index=length(AUGkeywrdall)+1;
-    AUGkeywrdall(end+1)={'new'};
-    AUGkeywrdcase(end+1)={'simplereaddata'};
-    AUGsiglocation(1:2,end+1)=[data_type_eff(1) ; {data_type_eff_noext}];
-    AUGexplocation{end+1}=shotfile_exp;
-    AUGsigtimeindx(end+1)=0;
-    AUGkeywrdcase{index}
-  elseif length(index)>1 || ~strcmp(AUGkeywrdcase{index},'simplereaddata')
-% $$$     msgbox(['Problem in loadAUGdata with data_type_eff = ' char(data_type_eff(end)) ...
-% $$$           '. Full paths of nodes should only be for case simplereaddata'],'in loadAUGdata','error')
-% $$$     error('in loadAUGdata')
-    % chose a full path which coincides with a keyword
-    disp('the node path seems to coincide with the following keywords, which might be better to use:')
-    disp(' ')
-    disp(AUGkeywrdcase(index))
-    disp('proceed as is in any case')
-    index=length(AUGkeywrdall)+1;
-    AUGkeywrdall(end+1)={'new'};
-    AUGkeywrdcase(end+1)={'simplereaddata'};
-    AUGsiglocation(1:2,end+1)=[data_type_eff(1) ; {data_type_eff_noext}];
-    AUGexplocation{end+1}=shotfile_exp;
-    AUGsigtimeindx(end+1)=0;
-    AUGkeywrdcase{index}    
-  end
-else
-  index=strmatch(data_type_eff_noext,AUGkeywrdall,'exact');
-  if isempty(index)
-    disp(' ')
-    disp('********************')
-    if iscell(data_type_eff)
-      disp(['no such keyword: ' data_type_eff{1} '/' data_type_eff{2}])
-    else
-      disp(['no such keyword: ' data_type_eff])
-    end
-    disp(' ')
-    disp('Available keywords:')
-    AUGkeywrdall(:)
-    disp('********************')
-    return
-  end
-end
-disp(' ')
-if iscell(data_type_eff)
-  disp(['loading' ' ' data_type_eff{1} '/' data_type_eff{2} ' from AUG shot #' num2str(shot)]); 
-else
-  disp(['loading' ' ' data_type_eff ' from AUG shot #' num2str(shot)]); 
-end
-disp(['case ' AUGkeywrdcase{index}])
-disp(' ')
-
-switch AUGkeywrdcase{index}
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'simplereaddata'
-
-    ppftype=AUGsiglocation{1,index};
-    shotfile_exp_eff = AUGexplocation{index};
-    if i_efitm; 
-      tracename=['eftm' AUGsiglocation{2,index}(5:end) name_ext];
-    else
-      tracename=[AUGsiglocation{2,index} name_ext];
-    end
-    ij=find(tracename~='''');
-    tracename=tracename(ij)
-    [a,e]=rdaAUG_eff(shot,ppftype,tracename,shotfile_exp_eff);
-%    switch tracename
-%  special cases if traces do not exist for some shot or other
-%    end
-    
-    trace=a;
-    clear error
-    error=e;
-    if isempty(trace.data)
-      trace.dimunits=[];
-    elseif length(size(trace.data))==1 | (length(size(trace.data))==2 & size(trace.data,2)==1)
-      trace.dim=[{trace.t}];
-      trace.dimunits={'time [s]'};
-    elseif length(size(trace.data))==2
-      trace.dim=[{trace.x} ; {trace.t}];
-      trace.dimunits=[{'R [m] or rho=sqrt(psi_norm)'} ; {'time [s]'}];
-    else
-      % disp('how to deal with 3D arrays?')
-      % find time dimension
-      ilentime=length(trace.t);
-      ij=find(size(trace.value)==ilentime);
-      if ij==1;
-	% as expected
-	trace.x = [1:size(trace.value,2)];
-	trace.dim=[{trace.t} ; {trace.x} ; {[1:size(trace.value,3)]}];
-	trace.dimunits=[{'time [s]'} ; {''} ; {''}];
-      else
-	trace.dim=[{[]} ; {[]} ; {[]}];
-	trace.dim{ij} = trace.t;
-	trace.dimunits=[{[]} ; {[]} ; {[]}];
-	trace.dimunits{ij}='time [s]';
-      end
-    end
-    trace.name=[num2str(shot) '/' ppftype '/' tracename];
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'sxr','sxR'}
-    %  LOAD MULTI CHANNEL DATA    
-    %  load AUG soft x-ray data 
-
-    shotfile_exp_eff = AUGexplocation{index};
-
-    if  nargin>=3 & ~isempty(varargin{1})
-      starti=varargin{1}(1);
-      endi=varargin{1}(2);
-    else
-      starti=1;
-      endi=30;
-    end
-    if  nargin>=4 & ~isempty(varargin{2})
-      status=varargin{2};
-    else
-      status=ones(endi-starti+1,1);
-    end
-    if  nargin>=6 & ~isempty(varargin{4})
-      timerange=varargin{4};
-    else
-      timerange=[1 7];
-    end
-    if  nargin>=7 & ~isempty(varargin{5})
-      nth=varargin{5};
-    else
-      nth=13;
-    end
-    if  nargin>=8 & ~isempty(varargin{6})
-      tracename=varargin{6};
-    else
-      tracename='B';
-    end
-    trace.t=[];
-    trace.x=[];
-    ppftype='SXR';
-    [a,e]=rdaAUG_eff(shot,ppftype,tracename,shotfile_exp_eff,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
-    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})
-        zmag=varargin{3};
-      else
-        zmag=loadAUGdata(shot,'zmag');
-      end
-      zmageff=interp1(zmag.t,zmag.data,trace.t);
-      if strcmp(tracename,'B')
-        [R_B, Z_B, ang_B,Rsxr]=sxrbgeometry(zmageff);
-      elseif strcmp(tracename,'A')
-        [R_A, Z_A, ang_A,Rsxr]=sxrageometry(zmageff);
-      else
-        disp(['sxr camera: ' tracename ' not set yet for calculating R projection'])
-        return
-      end
-      radius.data=Rsxr;
-      radius.t=trace.t;
-      varargout{1}={radius};
-      trace.R=radius;
-    end
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'sxb', 'sxf', 'ssx', 'ssx_g', 'ssx_h', 'ssx_i', 'ssx_j'}
-    %  LOAD MULTI CHANNEL DATA SXB/J_0xx (or other than J camera if specified in varargin{8})
-    %  load AUG soft x-ray data 
-
-    shotfile_exp_eff = AUGexplocation{index};
-
-    if  nargin>=3 & ~isempty(varargin{1})
-      % chords to be loaded
-      starti=varargin{1}(1);
-      endi=varargin{1}(2);
-    elseif strcmp(AUGkeywrdcase{index}(1:3),'ssx')
-      starti=1;
-      endi=60;
-    else
-      starti=52;
-      endi=54;
-    end
-    if  nargin>=4 & ~isempty(varargin{2})
-      % chords already loaded, 1=not loaded (to load), 0=loaded
-      status=varargin{2};
-    else
-      status=ones(endi-starti+1,1);
-    end
-    if  nargin>=6 & ~isempty(varargin{4})
-      timerange=varargin{4};
-    else
-      timerange=[0 10];
-    end
-    if  nargin>=7 & ~isempty(varargin{5})
-      nth=varargin{5};
-    else
-      nth=13;
-    end
-    if  nargin>=8 & ~isempty(varargin{6})
-      tracename=varargin{6};
-    else
-      if strcmp(AUGkeywrdcase{index},'sxb')
-	tracename='J';
-      elseif strcmp(AUGkeywrdcase{index},'sxf')
-	tracename='I';
-      elseif strcmp(AUGkeywrdcase{index},'ssx')
-	tracename='G';
-      elseif strcmp(AUGkeywrdcase{index}(1:4),'ssx_')
-	tracename=upper(AUGkeywrdcase{index}(5));
-      else
-	disp('should not be here, ask O. Sauter');
-      end
-    end
-    trace.t=[];
-    trace.x=[];
-    ppftype=upper(AUGkeywrdcase{index}(1:3));
-    iok=0;
-    for ichord=starti:endi
-      tracename_eff = [tracename '_' num2str(ichord,'%.3d')];
-      try
-	[a,e]=rdaAUG_eff(shot,ppftype,tracename_eff,shotfile_exp_eff,timerange);
-      catch
-	a = [];
-      end
-      if isempty(a) || e~=0
-	if ~exist('trace_all')
-	  trace_all = struct([]);
-	else
-	end
-      else
-	if iok==0
-	  trace_all = a;
-	  trace_all = rmfield(trace_all,[{'value'},{'data'}]);
-	  iok = iok+1;
-	else
-	  iok = iok+1;
-	end
-	trace_all.value(ichord,:) = a.value;
-	trace_all.data(ichord,:) = a.data;
-      end
-    end
-    if ~isempty(trace_all)
-      trace_all.dim=[{[starti:endi]'} ; {trace.t}];
-      trace = trace_all;
-      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
-      trace.t=trace.t(1:nth:end);
-      trace.data=trace.data(:,1:nth:end);
-      trace.dim{2}=trace.t;
-      trace.value=trace.value(:,1:nth:end);
-      trace.time_aug.value=trace.time_aug.value(1:nth:end);
-    else
-      trace.data = [];
-      trace.dim = [];
-      trace.dimunits = [];
-      trace.x = [];
-      trace.t = [];
-      trace.units = [];
-      trace.name=[num2str(shot) '/' ppftype '/' tracename];
-    end
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'ece','eced','ece_rho','eced_rho'}
-    %  LOAD MULTI CHANNEL DATA    
-    %  load AUG ece data
-
-    shotfile_exp_eff = AUGexplocation{index};
-    if  nargin>=3 & ~isempty(varargin{1})
-      starti=varargin{1}(1);
-      endi=varargin{1}(2);
-    else
-      starti=1;
-      endi=30;
-    end
-    if  nargin>=4 & ~isempty(varargin{2})
-      status=varargin{2};
-    else
-      status=ones(endi-starti+1,1);
-    end
-    if  nargin>=6 & ~isempty(varargin{4})
-      timerange=varargin{4};
-    else
-      timerange=[0 10];
-    end
-    if  nargin>=7 & ~isempty(varargin{5})
-      nth=varargin{5};
-    else
-      nth=1;
-    end
-    trace.t=[];
-    trace.x=[];
-    ppftype=AUGsiglocation{1,index};
-    tracename=AUGsiglocation{2,index};
-    [a,e]=rdaAUG_eff(shot,ppftype,tracename,shotfile_exp_eff,timerange);
-    starti=1;
-    endi=size(a.value,1);
-    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
-    trace.t=trace.t(1:nth:end);
-    trace.data=trace.data(:,1:nth:end);
-    trace.dim{2}=trace.t;
-    % get R
-    try
-      [aR,e]=rdaAUG_eff(shot,ppftype,'R-A',shotfile_exp_eff,timerange);
-    catch
-    end
-    try
-      [aZ,e]=rdaAUG_eff(shot,ppftype,'z-A',shotfile_exp_eff,timerange); % (problem now)
-      %aZ=aR;
-      %aZ.data=ones(size(aR.data));
-    catch
-      disp(['problem with getting z-A in ' ppftype])
-    end
-    domatchRtime=0;
-    if domatchRtime
-      % interpolate R structure on ece data time array, to ease plot vs R
-      for i=starti:endi
-	radius.data(i,:) = interp1(aR.t,aR.data(i,:),trace.t);
-	zheight.data(i,:) = interp1(aZ.t,aZ.data(i,:),trace.t);
-      end
-      radius.t=trace.t;
-      zheight.t=trace.t;
-    else
-      radius.data = aR.data;
-      radius.t=aR.t;
-      zheight.data = aZ.data;
-      zheight.t=aR.t;
-    end
-    ij=find(trace.data==0);
-    trace.data(ij)=NaN;
-    varargout{1}={radius};
-    trace.R=radius;
-    trace.Z=zheight;
-
-    if strcmp(AUGkeywrdcase{index},'ece_rho') || strcmp(AUGkeywrdcase{index},'eced_rho')
-      equil=gdat(shot,'equil',0);
-      inb_chord_ece=size(trace.R.data,1);
-      inb_time_ece=size(trace.R.data,2);
-      psi_out = NaN*ones(inb_chord_ece,inb_time_ece);
-      rhopsinorm_out = NaN*ones(inb_chord_ece,inb_time_ece);
-      rhotornorm_out = NaN*ones(inb_chord_ece,inb_time_ece);
-      rhovolnorm_out = NaN*ones(inb_chord_ece,inb_time_ece);
-      % constructs intervals within which a given equil is used: [time_equil(i),time_equil(i+1)]
-      time_equil=[1.5*equil.t(1)-0.5*equil.t(2) 0.5.*(equil.t(1:end-1)+equil.t(2:end)) 1.5*equil.t(end)-0.5*equil.t(end-1)];
-      iok=find(aR.data(:,1)>0);
-      for itequil=1:length(time_equil)-1
-	rr=equil.Rmesh(:,itequil);
-	zz=equil.Zmesh(:,itequil);
-	psirz_in = equil.psi2D(:,:,itequil);
-	it_ece_inequil = find(trace.R.t>=time_equil(itequil) & trace.R.t<=time_equil(itequil+1));
-	if ~isempty(it_ece_inequil)
-	  rout=trace.R.data(iok,it_ece_inequil);
-	  ijok=find(~isnan(rout));
-	  if ~isempty(ijok)
-	    zout=trace.Z.data(iok,it_ece_inequil);
-	    psi_at_routzout = interpos2Dcartesian(rr,zz,psirz_in,rout,zout);
-	    psi_out(iok,it_ece_inequil) = reshape(psi_at_routzout,length(iok),length(it_ece_inequil));
-	    rhopsinorm_out(iok,it_ece_inequil) = sqrt(abs((psi_out(iok,it_ece_inequil)-equil.psi_axis(itequil))./(equil.psi_lcfs(itequil)-equil.psi_axis(itequil))));
-	    for it_cx=1:length(it_ece_inequil)
-	      rhotornorm_out(iok,it_ece_inequil(it_cx)) = interpos(equil.rhopolnorm(:,itequil),equil.rhotornorm(:,itequil),rhopsinorm_out(iok,it_ece_inequil(it_cx)),-3,[2 2],[0 1]);
-	      rhovolnorm_out(iok,it_ece_inequil(it_cx)) = interpos(equil.rhopolnorm(:,itequil),equil.rhovolnorm(:,itequil),rhopsinorm_out(iok,it_ece_inequil(it_cx)),-3,[2 2],[0 1]);
-	    end
-	  end
-	end
-      end
-      trace.rhos.psi_on_rztime = psi_out;
-      trace.rhos.rhopsinorm_on_rztime = rhopsinorm_out;
-      trace.rhos.rhotornorm_on_rztime = rhotornorm_out;
-      trace.rhos.rhovolnorm_on_rztime = rhovolnorm_out;
-      trace.rhos.t = trace.R.t;
-    end
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'cxrs', 'cxrs_rho'}
-    %  LOAD CEZ data
-    %  
-
-    shotfile_exp_eff = AUGexplocation{index};
-
-    trace.t=[];
-    trace.x=[];
-    ppftype='CEZ';
-    [a,e]=rdaAUG_eff(shot,ppftype,'vrot',shotfile_exp_eff);
-    if isempty(a) || e~=0
-      cxrs = struct([]);
-    else
-      cxrs.vrot = a;
-      rmfield(cxrs.vrot,'x'); rmfield(cxrs.vrot,'t'); rmfield(cxrs.vrot,'data');
-      cxrs.x = a.x;
-      cxrs.data = a.data;
-      cxrs.t = a.t;
-      cxrs.x = a.x;
-    end
-    if ~isempty(cxrs)
-      cxrs.dim=[{cxrs.x} ; {cxrs.t}];
-      cxrs.dimunits=[{'chord'} ; {'time [s]'}];
-      cxrs.name=[num2str(shot) '/' ppftype '/vrot;Ti;Ti_c'];
-      [aerr,e]=rdaAUG_eff(shot,ppftype,'err_vrot',shotfile_exp_eff);
-      cxrs.vrot.error = aerr.value;
-      [r_time]=sf2ab(ppftype,shot,'R_time','-exp',shotfile_exp_eff);
-      cxrs.r_time = r_time.value{1};
-      [z_time]=sf2ab(ppftype,shot,'z_time','-exp',shotfile_exp_eff);
-      cxrs.z_time = z_time.value{1};
-      [a,e]=rdaAUG_eff(shot,ppftype,'Ti',shotfile_exp_eff);
-      [aerr,e]=rdaAUG_eff(shot,ppftype,'err_Ti',shotfile_exp_eff);
-      cxrs.ti = a;
-      cxrs.ti.error = aerr.value;
-      [a,e]=rdaAUG_eff(shot,ppftype,'Ti_c',shotfile_exp_eff);
-      [aerr,e]=rdaAUG_eff(shot,ppftype,'err_Ti_c',shotfile_exp_eff);
-      cxrs.ti_c = a;
-      cxrs.ti_c.error = aerr.value;
-      %
-      if strcmp(AUGkeywrdcase{index},'cxrs_rho')
-	equil=gdat(shot,'equil',0);
-	inb_chord_cxrs=size(cxrs.r_time,1);
-	inb_time_cxrs=size(cxrs.r_time,2);
-	psi_out = NaN*ones(inb_chord_cxrs,inb_time_cxrs);
-	rhopsinorm_out = NaN*ones(inb_chord_cxrs,inb_time_cxrs);
-	rhotornorm_out = NaN*ones(inb_chord_cxrs,inb_time_cxrs);
-	rhovolnorm_out = NaN*ones(inb_chord_cxrs,inb_time_cxrs);
-	% constructs intervals within which a given equil is used: [time_equil(i),time_equil(i+1)]
-	time_equil=[1.5*equil.t(1)-0.5*equil.t(2) 0.5.*(equil.t(1:end-1)+equil.t(2:end)) 1.5*equil.t(end)-0.5*equil.t(end-1)];
-	iok=find(cxrs.r_time(:,1)>0);
-	for itequil=1:length(time_equil)-1
-	  rr=equil.Rmesh(:,itequil);
-	  zz=equil.Zmesh(:,itequil);
-	  psirz_in = equil.psi2D(:,:,itequil);
-	  it_cxrs_inequil = find(cxrs.t>=time_equil(itequil) & cxrs.t<=time_equil(itequil+1));
-	  if ~isempty(it_cxrs_inequil)
-	    rout=cxrs.r_time(iok,it_cxrs_inequil);
-	    zout=cxrs.z_time(iok,it_cxrs_inequil);
-	    psi_at_routzout = interpos2Dcartesian(rr,zz,psirz_in,rout,zout);
-	    psi_out(iok,it_cxrs_inequil) = reshape(psi_at_routzout,length(iok),length(it_cxrs_inequil));
-	    rhopsinorm_out(iok,it_cxrs_inequil) = sqrt((psi_out(iok,it_cxrs_inequil)-equil.psi_axis(itequil))./(equil.psi_lcfs(itequil)-equil.psi_axis(itequil)));
-	    for it_cx=1:length(it_cxrs_inequil)
-	      rhotornorm_out(iok,it_cxrs_inequil(it_cx)) = interpos(equil.rhopolnorm(:,itequil),equil.rhotornorm(:,itequil),rhopsinorm_out(iok,it_cxrs_inequil(it_cx)),-3,[2 2],[0 1]);
-	      rhovolnorm_out(iok,it_cxrs_inequil(it_cx)) = interpos(equil.rhopolnorm(:,itequil),equil.rhovolnorm(:,itequil),rhopsinorm_out(iok,it_cxrs_inequil(it_cx)),-3,[2 2],[0 1]);
-	    end
-	  end
-	end
-	cxrs.psi_on_rztime = psi_out;
-	cxrs.rhopsinorm_on_rztime = rhopsinorm_out;
-	cxrs.rhotornorm_on_rztime = rhotornorm_out;
-	cxrs.rhovolnorm_on_rztime = rhovolnorm_out;
-      end
-	
-      trace = cxrs;
-    else
-      trace.data = [];
-      trace.dim = [];
-      trace.dimunits = [];
-      trace.x = [];
-      trace.t = [];
-      trace.units = [];
-      trace.name=[num2str(shot) '/' ppftype '/' 'vrot, Ti_c,...'];
-    end
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'neterho'} % 'nerho', 'terho', 
-    %  LOAD VTA data
-    %  Vertical Thomson core and edge
-
-    shotfile_exp_eff = AUGexplocation{index};
-
-    trace.t=[];
-    trace.x=[];
-    ppftype='VTA';
-    % if strcmp(AUGkeywrdcase{index},'terho')    
-    [a,e]=rdaAUG_eff(shot,ppftype,'Te_c',shotfile_exp_eff);
-    if isempty(a) || e~=0
-      thomson = struct([]);
-    else
-      thomson.te_core = a;
-      rmfield(thomson.te_core,'x'); rmfield(thomson.te_core,'t'); rmfield(thomson.te_core,'data');
-      thomson.x = a.x;
-      thomson.data = a.data;
-      thomson.t = a.t;
-      thomson.time_core = a.t;
-      thomson.x = a.x;
-    end
-    if ~isempty(thomson)
-      thomson.dim=[{thomson.x} ; {thomson.t}];
-      thomson.dimunits=[{'points'} ; {'time [s]'}];
-      thomson.name=[num2str(shot) '/' ppftype '/te_c;te_e;ne_c;ne_e'];
-      [alow,e]=rdaAUG_eff(shot,ppftype,'Telow_c',shotfile_exp_eff);
-      [aup,e]=rdaAUG_eff(shot,ppftype,'Teupp_c',shotfile_exp_eff);
-      thomson.te_core.error = max(aup.value-thomson.te_core.value,thomson.te_core.value-alow.value);
-      %
-      [a,e]=rdaAUG_eff(shot,ppftype,'Ne_c',shotfile_exp_eff);
-      thomson.ne_core = a;
-      rmfield(thomson.ne_core,'x'); rmfield(thomson.ne_core,'t'); rmfield(thomson.ne_core,'data');
-      [alow,e]=rdaAUG_eff(shot,ppftype,'Nelow_c',shotfile_exp_eff);
-      [aup,e]=rdaAUG_eff(shot,ppftype,'Neupp_c',shotfile_exp_eff);
-      thomson.ne_core.error = max(aup.value-thomson.ne_core.value,thomson.ne_core.value-alow.value);
-      %
-      [r_time]=rdaAUG_eff(shot,ppftype,'R_core',shotfile_exp_eff);
-      thomson.r_core_time = ones(size(thomson.te_core.value,1),1)*r_time.value;
-      [z_time]=rdaAUG_eff(shot,ppftype,'Z_core',shotfile_exp_eff);
-      thomson.z_core_time = z_time.value' * ones(1,size(thomson.te_core.value,2));
-      %
-      [a,e]=rdaAUG_eff(shot,ppftype,'Te_e',shotfile_exp_eff);
-      thomson.te_edge = a;
-      thomson.time_edge = a.t;
-      rmfield(thomson.te_edge,'x'); rmfield(thomson.te_edge,'t'); rmfield(thomson.te_edge,'data');
-      [alow,e]=rdaAUG_eff(shot,ppftype,'Telow_e',shotfile_exp_eff);
-      [aup,e]=rdaAUG_eff(shot,ppftype,'Teupp_e',shotfile_exp_eff);
-      thomson.te_edge.error = max(aup.value-thomson.te_edge.value,thomson.te_edge.value-alow.value);
-      %
-      [a,e]=rdaAUG_eff(shot,ppftype,'Ne_e',shotfile_exp_eff);
-      thomson.ne_edge = a;
-      rmfield(thomson.ne_edge,'x'); rmfield(thomson.ne_edge,'t'); rmfield(thomson.ne_edge,'data');
-      [alow,e]=rdaAUG_eff(shot,ppftype,'Nelow_e',shotfile_exp_eff);
-      [aup,e]=rdaAUG_eff(shot,ppftype,'Neupp_e',shotfile_exp_eff);
-      thomson.ne_edge.error = max(aup.value-thomson.ne_edge.value,thomson.ne_edge.value-alow.value);
-      %
-      [r_time]=rdaAUG_eff(shot,ppftype,'R_edge',shotfile_exp_eff);
-      thomson.r_edge_time = ones(size(thomson.te_edge.value,1),1)*r_time.value;
-      [z_time]=rdaAUG_eff(shot,ppftype,'Z_edge',shotfile_exp_eff);
-      thomson.z_edge_time = z_time.value' * ones(1,size(thomson.te_edge.value,2));
-      %
-      if strcmp(AUGkeywrdcase{index},'neterho')
-	equil=gdat(shot,'equil',0);
-	% core
-	inb_chord_thomson_core=size(thomson.r_core_time,1);
-	inb_time_thomson_core=size(thomson.r_core_time,2);
-	psi_out_core = NaN*ones(inb_chord_thomson_core,inb_time_thomson_core);
-	rhopsinorm_out_core = NaN*ones(inb_chord_thomson_core,inb_time_thomson_core);
-	rhotornorm_out_core = NaN*ones(inb_chord_thomson_core,inb_time_thomson_core);
-	rhovolnorm_out_core = NaN*ones(inb_chord_thomson_core,inb_time_thomson_core);
-	% edge
-	inb_chord_thomson_edge=size(thomson.r_edge_time,1);
-	inb_time_thomson_edge=size(thomson.r_edge_time,2);
-	psi_out_edge = NaN*ones(inb_chord_thomson_edge,inb_time_thomson_edge);
-	rhopsinorm_out_edge = NaN*ones(inb_chord_thomson_edge,inb_time_thomson_edge);
-	rhotornorm_out_edge = NaN*ones(inb_chord_thomson_edge,inb_time_thomson_edge);
-	rhovolnorm_out_edge = NaN*ones(inb_chord_thomson_edge,inb_time_thomson_edge);
-	% constructs intervals within which a given equil is used: [time_equil(i),time_equil(i+1)]
-	time_equil=[1.5*equil.t(1)-0.5*equil.t(2) 0.5.*(equil.t(1:end-1)+equil.t(2:end)) 1.5*equil.t(end)-0.5*equil.t(end-1)];
-	for itequil=1:length(time_equil)-1
-	  rr=equil.Rmesh(:,itequil);
-	  zz=equil.Zmesh(:,itequil);
-	  psirz_in = equil.psi2D(:,:,itequil);
-	  it_thomson_core_inequil = find(thomson.time_core>=time_equil(itequil) & thomson.time_core<=time_equil(itequil+1));
-	  if ~isempty(it_thomson_core_inequil)
-	    rout_core=thomson.r_core_time(:,it_thomson_core_inequil);
-	    zout_core=thomson.z_core_time(:,it_thomson_core_inequil);
-	    psi_at_routzout = interpos2Dcartesian(rr,zz,psirz_in,rout_core,zout_core);
-	    psi_out_core(:,it_thomson_core_inequil) = reshape(psi_at_routzout,inb_chord_thomson_core,length(it_thomson_core_inequil));
-	    rhopsinorm_out_core(:,it_thomson_core_inequil) = sqrt((psi_out_core(:,it_thomson_core_inequil)-equil.psi_axis(itequil))./(equil.psi_lcfs(itequil)-equil.psi_axis(itequil)));
-	    for it_cx=1:length(it_thomson_core_inequil)
-	      rhotornorm_out_core(:,it_thomson_core_inequil(it_cx)) = ...
-		  interpos(equil.rhopolnorm(:,itequil),equil.rhotornorm(:,itequil),rhopsinorm_out_core(:,it_thomson_core_inequil(it_cx)),-3,[2 2],[0 1]);
-	      rhovolnorm_out_core(:,it_thomson_core_inequil(it_cx)) = ...
-		  interpos(equil.rhopolnorm(:,itequil),equil.rhovolnorm(:,itequil),rhopsinorm_out_core(:,it_thomson_core_inequil(it_cx)),-3,[2 2],[0 1]);
-	    end
-	  end
-	  % edge
-	  it_thomson_edge_inequil = find(thomson.time_edge>=time_equil(itequil) & thomson.time_edge<=time_equil(itequil+1));
-	  if ~isempty(it_thomson_edge_inequil)
-	    rout_edge=thomson.r_edge_time(:,it_thomson_edge_inequil);
-	    zout_edge=thomson.z_edge_time(:,it_thomson_edge_inequil);
-	    psi_at_routzout = interpos2Dcartesian(rr,zz,psirz_in,rout_edge,zout_edge);
-	    psi_out_edge(:,it_thomson_edge_inequil) = reshape(psi_at_routzout,inb_chord_thomson_edge,length(it_thomson_edge_inequil));
-	    rhopsinorm_out_edge(:,it_thomson_edge_inequil) = sqrt((psi_out_edge(:,it_thomson_edge_inequil)-equil.psi_axis(itequil))./(equil.psi_lcfs(itequil)-equil.psi_axis(itequil)));
-	    for it_cx=1:length(it_thomson_edge_inequil)
-	      rhotornorm_out_edge(:,it_thomson_edge_inequil(it_cx)) = ...
-		  interpos(equil.rhopolnorm(:,itequil),equil.rhotornorm(:,itequil),rhopsinorm_out_edge(:,it_thomson_edge_inequil(it_cx)),-3,[2 2],[0 1]);
-	      rhovolnorm_out_edge(:,it_thomson_edge_inequil(it_cx)) = ...
-		  interpos(equil.rhopolnorm(:,itequil),equil.rhovolnorm(:,itequil),rhopsinorm_out_edge(:,it_thomson_edge_inequil(it_cx)),-3,[2 2],[0 1]);
-	    end
-	  end
-	end
-	thomson.core_psi_on_rztime = psi_out_core;
-	thomson.core_rhopsinorm_on_rztime = rhopsinorm_out_core;
-	thomson.core_rhotornorm_on_rztime = rhotornorm_out_core;
-	thomson.core_rhovolnorm_on_rztime = rhovolnorm_out_core;
-	thomson.edge_psi_on_rztime = psi_out_edge;
-	thomson.edge_rhopsinorm_on_rztime = rhopsinorm_out_edge;
-	thomson.edge_rhotornorm_on_rztime = rhotornorm_out_edge;
-	thomson.edge_rhovolnorm_on_rztime = rhovolnorm_out_edge;
-      end
-	
-      trace = thomson;
-    else
-      trace.data = [];
-      trace.dim = [];
-      trace.dimunits = [];
-      trace.x = [];
-      trace.t = [];
-      trace.units = [];
-      trace.name=[num2str(shot) '/' ppftype '/' tracename];
-    end
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'te', 'ne'}
-
-    shotfile_exp_eff = AUGexplocation{index};
-    
-    if strcmp(AUGkeywrdcase{index},'te')
-      [a,e]=rdaAUG_eff(shot,'YPR','Te',shotfile_exp_eff);
-    else
-      [a,e]=rdaAUG_eff(shot,'YPR','Ne',shotfile_exp_eff);
-    end
-    trace = a;
-    trace.data = a.value';
-    trace.dim{1} = trace.x;
-    trace.dim{2} = trace.t;
-    trace.units = trace.unit;
-    trace.dimunits{1} = a.area.name ;
-    trace.dimunits{2} = a.time_aug.unit;
-
-  case {'equil', 'equil_fpp', 'equil_eqm', 'equil_eqr', 'equil_eqh', 'qrho', 'qrho_fpp'}
-
-    % In shotfiles time is 1st index in 2D arrays while gdat convention is to have time as last dimension
-    % so change equil.xxx to (rho,time) on the way...
-    
-    shotfile_exp_eff = AUGexplocation{index};
-    
-    if strcmp(AUGkeywrdcase{index},'equil_fpp') || strcmp(AUGkeywrdcase{index},'qrho_fpp')
-      DIAG = 'FPP';
-    elseif strcmp(AUGkeywrdcase{index},'equil_eqm')
-      DIAG = 'EQM';
-    elseif strcmp(AUGkeywrdcase{index},'equil_eqr')
-      DIAG = 'EQR';
-    elseif strcmp(AUGkeywrdcase{index},'equil_eqh')
-      DIAG = 'EQH';
-    else
-      DIAG = 'EQI';
-    end
-    M_Rmesh_par = sf2par(DIAG,shot,'M','PARMV');
-    M_Rmesh = M_Rmesh_par.value + 1; % nb of points
-    N_Zmesh_par = sf2par(DIAG,shot,'N','PARMV');
-    N_Zmesh = N_Zmesh_par.value + 1; % nb of points
-    NTIME_par = sf2par(DIAG,shot,'NTIME','PARMV');
-    NTIME = NTIME_par.value; % nb of points
-    Lpf_par = rdaAUG_eff(shot,DIAG,'Lpf',shotfile_exp_eff);
-    % since June, nb of time points in EQ results is not consistent with NTIME and time
-    % It seems the first NTIME points are correct, so use this explicitely
-    NTIME_Lpf = length(Lpf_par.value);
-    if (NTIME < NTIME_Lpf)
-      disp('WARNING: nb of times points smaller then equil results, use first NTIME points')
-    elseif (NTIME > NTIME_Lpf)
-      disp('ERROR: nb of times points LARGER then equil results')
-      disp('this is unexpected, so stop there and ask Olivier.Sauter@epfl.ch')
-      return
-    end
-    Lpf_tot = Lpf_par.value(1:NTIME); % nb of points: 100000*nb_SOL points + nb_core
-    Lpf_SOL = fix(Lpf_tot/100000);
-    Lpf1_t = mod(Lpf_tot,100000)+1; % nb of Lpf points
-    % since Lpf depends on time, need to load all first and then loop over time for easier mapping
-    [qpsi,e]=rdaAUG_eff(shot,DIAG,'Qpsi',shotfile_exp_eff);
-    ndimrho = size(qpsi.data,2);
-    if ndimrho==NTIME_Lpf
-      % data seems to be transposed
-      ndimrho = size(qpsi.data,1);
-      itotransposeback = 1; % seems x,time inverted so transpose and exchange .x and .t
-    else
-      itotransposeback = 0;
-    end
-    qpsi=adapt_rda(qpsi,NTIME,ndimrho,itotransposeback);
-    ijnan=find(isnan(qpsi.value));
-    qpsi.value(ijnan)=0;
-    [psi_tree,e]=rdaAUG_eff(shot,DIAG,'PFL',shotfile_exp);
-    psi_tree=adapt_rda(psi_tree,NTIME,ndimrho,itotransposeback);
-    [phi_tree,e]=rdaAUG_eff(shot,DIAG,'TFLx',shotfile_exp);
-    phi_tree=adapt_rda(phi_tree,NTIME,ndimrho,itotransposeback);
-    [Vol,e]=rdaAUG_eff(shot,DIAG,'Vol',shotfile_exp);
-    Vol=adapt_rda(Vol,NTIME,2*ndimrho,itotransposeback);
-    [Area,e]=rdaAUG_eff(shot,DIAG,'Area',shotfile_exp);
-    Area=adapt_rda(Area,NTIME,2*ndimrho,itotransposeback);
-    [Ri,e]=rdaAUG_eff(shot,DIAG,'Ri',shotfile_exp);
-    Ri=adapt_rda(Ri,NTIME,M_Rmesh,itotransposeback);
-    [Zj,e]=rdaAUG_eff(shot,DIAG,'Zj',shotfile_exp);
-    Zj=adapt_rda(Zj,NTIME,N_Zmesh,itotransposeback);
-    [PFM_tree,e]=rdaAUG_eff(shot,DIAG,'PFM',shotfile_exp);
-    PFM_tree=adaptPFM_rda(PFM_tree,M_Rmesh,N_Zmesh,NTIME);
-    [Pres,e]=rdaAUG_eff(shot,DIAG,'Pres',shotfile_exp);
-    Pres=adapt_rda(Pres,NTIME,2*ndimrho,itotransposeback);
-    [Jpol,e]=rdaAUG_eff(shot,DIAG,'Jpol',shotfile_exp);
-    Jpol=adapt_rda(Jpol,NTIME,2*ndimrho,itotransposeback);
-    [FFP,e]=rdaAUG_eff(shot,DIAG,'FFP',shotfile_exp);
-    if ~isempty(FFP.value)
-      FFP=adapt_rda(FFP,NTIME,ndimrho,itotransposeback);
-    else
-      FFP.value=NaN*ones(NTIME,max(Lpf1_t));
-    end
-    if strcmp(DIAG,'EQI') || strcmp(DIAG,'EQH')
-      [Rinv,e]=rdaAUG_eff(shot,DIAG,'Rinv',shotfile_exp);
-      Rinv=adapt_rda(Rinv,NTIME,ndimrho,itotransposeback);
-      [R2inv,e]=rdaAUG_eff(shot,DIAG,'R2inv',shotfile_exp);
-      R2inv=adapt_rda(R2inv,NTIME,ndimrho,itotransposeback);
-      [Bave,e]=rdaAUG_eff(shot,DIAG,'Bave',shotfile_exp);
-      Bave=adapt_rda(Bave,NTIME,ndimrho,itotransposeback);
-      [B2ave,e]=rdaAUG_eff(shot,DIAG,'B2ave',shotfile_exp);
-      B2ave=adapt_rda(B2ave,NTIME,ndimrho,itotransposeback);
-      [FTRA,e]=rdaAUG_eff(shot,DIAG,'FTRA',shotfile_exp);
-      FTRA=adapt_rda(FTRA,NTIME,ndimrho,itotransposeback);
-    else
-      Rinv.value=[]; R2inv.value=[]; Bave.value=[]; B2ave.value=[]; FTRA.value=[];
-    end
-    [LPFx,e]=rdaAUG_eff(shot,DIAG,'LPFx',shotfile_exp);
-    LPFx.value=LPFx.value(1:NTIME); LPFx.data=LPFx.value; LPFx.t=LPFx.t(1:NTIME);
-    [PFxx,e]=rdaAUG_eff(shot,DIAG,'PFxx',shotfile_exp);
-    PFxx=adapt_rda(PFxx,NTIME,max(LPFx.value)+1,itotransposeback);
-    [RPFx,e]=rdaAUG_eff(shot,DIAG,'RPFx',shotfile_exp);
-    RPFx=adapt_rda(RPFx,NTIME,max(LPFx.value)+1,itotransposeback);
-    [zPFx,e]=rdaAUG_eff(shot,DIAG,'zPFx',shotfile_exp);
-    zPFx=adapt_rda(zPFx,NTIME,max(LPFx.value)+1,itotransposeback);
-    % seems "LCFS" q-value is far too large, limit to some max (when diverted)
-    max_qValue = 40.0; % Note could just put a NaN on LCFS value since ill-defined when diverted
-    for it=1:NTIME
-      Lpf1 = Lpf1_t(it);
-      % Qpsi and similar data is on (time,radius) with radius being: LCFS..Lpf_points dummy LCFS..SOL part
-      % change it to (radial,time) and use only Lpf+1 points up to LCFS
-      ijok=find(qpsi.value(:,1)); % note: eqr fills in only odd points radially
-      % set NaNs to zeroes
-      if qpsi.value(ijok(1),1)<0
-	equil.qvalue(:,it) = max(qpsi.value(it,Lpf1:-1:1)',-max_qValue);
-      else
-	equil.qvalue(:,it) = min(qpsi.value(it,Lpf1:-1:1)',max_qValue);
-      end
-      % get x values
-      equil.psi(:,it)=psi_tree.value(it,Lpf1:-1:1)';
-      equil.psi_axis(it)= equil.psi(1,it);
-      equil.psi_lcfs(it)= equil.psi(end,it);
-      equil.rhopolnorm(:,it) = sqrt(abs((equil.psi(:,it)-equil.psi_axis(it)) ./(equil.psi_lcfs(it)-equil.psi_axis(it))));
-      if strcmp(DIAG,'EQR');
-	% q value has only a few values and from center to edge, assume they are from central rhopol values on
-	% But they are every other point starting from 3rd
-	ijk=find(equil.qvalue(:,it)~=0);
-	if length(ijk)>2
-	  % now shots have non-zero axis values in eqr
-	  rhoeff=equil.rhopolnorm(ijk,it);
-	  qeff=equil.qvalue(ijk,it); % radial order was already inverted above
-	  if ijk(1)>1
-	    rhoeff = [0.; rhoeff];
-	    qeff = [qeff(1) ;qeff];
-	  end
-	  ij_nonan=find(~isnan(equil.rhopolnorm(:,it)));
-	  qfit = zeros(size(equil.rhopolnorm(:,it)));
-	  qfit(ij_nonan)=interpos(rhoeff,qeff,equil.rhopolnorm(ij_nonan,it),-0.01,[1 0],[0 0],[300; ones(size(qeff(1:end-1)))]);
-	else
-	  qfit = zeros(size(equil.rhopolnorm(:,it)));
-	end
-	equil.qvalue(:,it) = qfit;
-      end    
-      % get rhotor values
-      equil.phi(:,it) = phi_tree.value(it,Lpf1:-1:1)';
-      equil.rhotornorm(:,it) = sqrt(abs(equil.phi(:,it) ./ equil.phi(end,it)));
-      % get rhovol values
-      equil.vol(:,it)=Vol.value(it,2*Lpf1-1:-2:1)'; 
-      equil.dvoldpsi(:,it)=Vol.value(it,2*Lpf1:-2:2)'; % 2nd index are dV/dpsi
-      equil.rhovolnorm(:,it) = sqrt(abs(equil.vol(:,it) ./ equil.vol(end,it)));
-      equil.area(:,it)=Area.value(it,2*Lpf1-1:-2:1)'; 
-      equil.dareadpsi(:,it)=Area.value(it,2*Lpf1:-2:2)'; % 2nd index are dV/dpsi
-      equil.Rmesh(:,it) = Ri.value(it,1:M_Rmesh);
-      equil.Zmesh(:,it) = Zj.value(it,1:N_Zmesh);
-      equil.psi2D(1:M_Rmesh,1:N_Zmesh,it) = PFM_tree.value(1:M_Rmesh,1:N_Zmesh,it);
-      equil.pressure(:,it)=Pres.value(it,2*Lpf1-1:-2:1)'; 
-      equil.dpressuredpsi(:,it)=Pres.value(it,2*Lpf1:-2:2)'; % 2nd index are dV/dpsi
-      if ~isempty(Jpol.value)
-	equil.jpol(:,it)=Jpol.value(it,2*Lpf1-1:-2:1)'; 
-	equil.djpolpsi(:,it)=Jpol.value(it,2*Lpf1:-2:2)'; % 2nd index are dV/dpsi
-      else
-	equil.jpol = [];
-	equil.djpolpsi = [];
-      end
-      equil.ffprime(:,it) = FFP.value(it,Lpf1:-1:1)';
-      equil.Xpoints.psi(1:LPFx.value(it)+1,it) = PFxx.value(it,1:LPFx.value(it)+1);
-      equil.Xpoints.Rvalue(1:LPFx.value(it)+1,it) = RPFx.value(it,1:LPFx.value(it)+1);
-      equil.Xpoints.Zvalue(1:LPFx.value(it)+1,it) = zPFx.value(it,1:LPFx.value(it)+1);
-      if ~isempty(Rinv.value)
-	equil.rinv(:,it) = Rinv.value(it,Lpf1:-1:1)';
-      else
-	equil.rinv = [];
-      end
-      if ~isempty(R2inv.value)
-	equil.r2inv(:,it) = R2inv.value(it,Lpf1:-1:1)';
-      else
-	equil.r2inv = [];
-      end
-      if ~isempty(Bave.value)
-	equil.bave(:,it) = Bave.value(it,Lpf1:-1:1)';
-      else
-	equil.bave = [];
-      end
-      if ~isempty(B2ave.value)
-	equil.b2ave(:,it) = B2ave.value(it,Lpf1:-1:1)';
-      else
-	equil.b2ave = [];
-      end
-      if ~isempty(FTRA.value)
-	equil.ftra(:,it) = FTRA.value(it,Lpf1:-1:1)';
-      else
-	equil.ftra = [];
-      end
-      %
-    end
-    equil.x = equil.rhopolnorm;
-    %
-    [equil_Rcoil,e]=rdaAUG_eff(shot,DIAG,'Rcl',shotfile_exp);
-    equil.Rcoils=equil_Rcoil.value;
-    [equil_Zcoil,e]=rdaAUG_eff(shot,DIAG,'Zcl',shotfile_exp);
-    equil.Zcoils=equil_Zcoil.value;
-    % get time values
-    [equil_time,e]=rdaAUG_eff(shot,DIAG,'time',shotfile_exp);
-    equil.t = equil_time.value(1:NTIME);
-    %
-    [IpiPSI,e]=rdaAUG_eff(shot,DIAG,'IpiPSI',shotfile_exp);
-    equil.Ip = IpiPSI.value(1:NTIME);
-    %
-    equil.data = equil.qvalue; % put q in data
-    equil.unit=[]; % not applicable
-    equil.name_gdat = [AUGkeywrdcase{index} ' using ' DIAG];
-    trace = equil;
-    trace.dim{1} = trace.x;
-    trace.dim{2} = trace.t;
-    trace.units = trace.unit;
-    trace.dimunits{1} = '';
-    trace.dimunits{2} = 's';
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'pgyro'}
-    %  LOAD MULTI CHANNEL DATA ECS
-    %  powers, frequencies, etc 
-
-    shotfile_exp_eff = AUGexplocation{index};
-
-    trace.t=[];
-    trace.x=[];
-    ppftype='ECS';
-    % pgyro tot in index=9
-    [a,e]=rdaAUG_eff(shot,ppftype,'PECRH',shotfile_exp_eff);
-    if isempty(a) || e~=0
-      trace_all = struct([]);
-    else
-      nb_timepoints = length(a.time_aug.value);
-      trace_all.pgyro = NaN*ones(nb_timepoints,9);
-      trace_all.freq_ech = NaN*ones(1,8);
-      trace_all.pgyro(:,9) = reshape(a.data,nb_timepoints,1);
-      trace_all.t = a.time_aug.value;
-    end
-    for i=1:4
-      % "old" ECRH1 gyrotrons: gyro 1 to 4 in pgyro
-      tracename_eff = ['PG' num2str(i)];
-      [a,e]=rdaAUG_eff(shot,ppftype,tracename_eff,shotfile_exp_eff);
-      if isempty(a) || e~=0
-      else
-	trace_all.ecrh1(i) = a;
-	trace_all.pgyro(:,i) = reshape(a.data,nb_timepoints,1);
-      end
-      try
-	a = sf2par('ECS',shot,'gyr_freq',['P_sy1_g' num2str(i)]);
-      catch
-	% gyr_freq not present (old shots for example)
-	a=[];
-      end
-      if isempty(a)
-      else
-	trace_all.freq_ecrh1(i) = a;
-	trace_all.freq_ech(i) = a.value;
-      end
-      try
-	a = sf2par('ECS',shot,'GPolPos',['P_sy1_g' num2str(i)]);
-      catch
-	% GPolPos not present
-	a=[];
-      end
-      if isempty(a)
-      else
-	trace_all.polpos_ecs(i) = a.value;
-      end
-      try
-	a = sf2par('ECS',shot,'GTorPos',['P_sy1_g' num2str(i)]);
-      catch
-	a=[];
-      end
-      if isempty(a)
-      else
-	trace_all.torpos_ecs(i) = a.value;
-      end
-      % "new" ECRH2 gyrotrons: gyro 5 to 8 in pgyro
-      tracename_eff = ['PG' num2str(i) 'N'];
-      [a,e]=rdaAUG_eff(shot,ppftype,tracename_eff,shotfile_exp_eff);
-      if isempty(a) || e~=0
-      else
-	trace_all.ecrh2(i) = a;
-	trace_all.pgyro(:,i+4) = reshape(a.data,nb_timepoints,1);
-      end
-      try
-	a = sf2par('ECS',shot,'gyr_freq',['P_sy2_g' num2str(i)]);
-      catch
-	a=[];
-      end
-      if isempty(a)
-      else
-	trace_all.freq_ecrh2(i) = a;
-	trace_all.freq_ech(i+4) = a.value;
-      end
-      try
-	a = sf2par('ECS',shot,'GPolPos',['P_sy2_g' num2str(i)]);
-      catch
-	a=[];
-      end
-      if isempty(a)
-      else
-	trace_all.polpos_ecs(i+4) = a.value;
-      end
-      try
-	a = sf2par('ECS',shot,'GTorPos',['P_sy2_g' num2str(i)]);
-      catch
-	a=[];
-      end
-      if isempty(a)
-      else
-	trace_all.torpos_ecs(i+4) = a.value;
-      end
-      [a,e]=rdaAUG_eff(shot,'ECN',['G' num2str(i) 'POL'],shotfile_exp_eff);
-      if isempty(a) || e~=0
-      else
-	trace_all.gpol_ecn(i+4) = a;
-      end
-      [a,e]=rdaAUG_eff(shot,'ECN',['G' num2str(i) 'TOR'],shotfile_exp_eff);
-      if isempty(a) || e~=0
-      else
-	trace_all.gtor_ecn(i+4) = a;
-      end
-      [a,e]=rdaAUG_eff(shot,'ECN',['G' num2str(i) 'PO4'],shotfile_exp_eff);
-      if isempty(a) || e~=0
-      else
-	trace_all.gpo4_ecn(i+4) = a;
-      end
-      [a,e]=rdaAUG_eff(shot,'ECN',['G' num2str(i) 'PO8'],shotfile_exp_eff);
-      if isempty(a) || e~=0
-      else
-	trace_all.gpo8_ecn(i+4) = a;
-      end
-    end
-    if ~isempty(trace_all)
-      trace_all.dim=[{trace_all.t} {[1:9]}];
-      trace_all.data = trace_all.pgyro;
-      trace = trace_all;
-      trace.x=trace.dim{2};
-      trace.dimunits=[{'time [s]'} {'ECRH1(1:4) ECRH2(1:4) ECtot'}];
-      trace.units='W';
-      trace.freq_ech_units = 'GHz';
-      trace.name=[num2str(shot) '/' ppftype '/' 'PGi and PGiN'];
-    else
-      trace.data = [];
-      trace.dim = [];
-      trace.dimunits = [];
-      trace.x = [];
-      trace.t = [];
-      trace.units = [];
-      trace.freq_ech_units =[]';
-     trace.name=[num2str(shot) '/' ppftype '/' 'PGi and PGiN'];
-    end
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'powers'}
-    %  load powers from TOT timebase as well
-    %  
-
-    shotfile_exp_eff = AUGexplocation{index};
-
-    trace.t=[];
-    trace.x=[];
-    ppftype='TOT';
-    % P ohmic
-    [a,e]=rdaAUG_eff(shot,ppftype,'P_OH',shotfile_exp_eff);
-    if isempty(a) || e~=0
-      trace_all = struct([]);
-    else
-      nb_timepoints = length(a.time_aug.value);
-      trace_all.powers = NaN*ones(nb_timepoints,5);
-      trace_all.powers(:,1) = reshape(a.data,nb_timepoints,1);
-      trace_all.power_names{1} = [ppftype '/P_OH'];
-      trace_all.pohmic = a;
-      trace_all.t = a.time_aug.value;
-    end
-    % P NBI
-    [a,e]=rdaAUG_eff(shot,ppftype,'PNBI_TOT',shotfile_exp_eff);
-    if isempty(a) || e~=0
-    else
-      trace_all.powers(:,2) = reshape(a.data,nb_timepoints,1);
-      trace_all.power_names{2} = [ppftype '/PNBI_TOT'];
-      trace_all.pnbi = a;
-    end
-    % P ECRH
-    [a,e]=rdaAUG_eff(shot,ppftype,'PECR_TOT',shotfile_exp_eff);
-    if isempty(a) || e~=0
-    else
-      trace_all.powers(:,3) = reshape(a.data,nb_timepoints,1);
-      trace_all.power_names{3} = [ppftype '/PECR_TOT'];
-      trace_all.pecrh = a;
-    end
-    % P ICRH
-    [a,e]=rdaAUG_eff(shot,ppftype,'PICR_TOT',shotfile_exp_eff);
-    if isempty(a) || e~=0
-    else
-      trace_all.powers(:,4) = reshape(a.data,nb_timepoints,1);
-      trace_all.power_names{4} = [ppftype '/PICR_TOT'];
-      trace_all.picrh = a;
-    end
-    trace_all.powers(:,5) = trace_all.powers(:,1) + trace_all.powers(:,2) + trace_all.powers(:,3) + trace_all.powers(:,4);
-    % tau_tot
-    [a,e]=rdaAUG_eff(shot,ppftype,'tau_tot',shotfile_exp_eff);
-    if isempty(a) || e~=0
-    else
-      trace_all.tau_tot = a;
-      ij=find(~isnan(trace_all.tau_tot.value));
-      trace_all.tau_tot_spline=interpos(trace_all.t(ij),trace_all.tau_tot.value(ij),trace_all.t,-1e3);
-      trace_all.tau_tot_spline = max(trace_all.tau_tot_spline,0.);
-    end
-    % betaN
-    [a,e]=rdaAUG_eff(shot,ppftype,'beta_N',shotfile_exp_eff);
-    if isempty(a) || e~=0
-    else
-      trace_all.betan = a;
-    end
-    % betaNthermal
-    [a,e]=rdaAUG_eff(shot,ppftype,'beta_Nth',shotfile_exp_eff);
-    if isempty(a) || e~=0
-    else
-      trace_all.betan_thermal = a;
-    end
-    %
-    if ~isempty(trace_all)
-      trace_all.dim=[{trace_all.t} {[1:5]}];
-      trace_all.data = trace_all.powers;
-      trace = trace_all;
-      trace.x=trace.dim{2};
-      trace.dimunits=[{'time [s]'} {'Pohmic Pnbi Pecrh Picrh Ptot'}];
-      trace.units='W';
-      trace.name=[num2str(shot) '/' ppftype '/' 'P_OH, PNBI_TOT, PECR_TOT, PICR_TOT'];
-    else
-      trace.data = [];
-      trace.dim = [];
-      trace.dimunits = [];
-      trace.x = [];
-      trace.t = [];
-      trace.units = [];
-      trace.freq_ech_units =[]';
-     trace.name=[num2str(shot) '/' ppftype '/' 'P_OH, PNBI_TOT, PECR_TOT, PICR_TOT'];
-    end
-
-%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'transp'} %  for TRANSP
-    %  LOAD TRA data into substructures
-    shotfile_exp_eff = AUGexplocation{index}
-    trace.t=[];
-    trace.x=[];
-    ppftype='TRA';
-    TRANSP_signals;
-    for i=1:size(transp_sig,1)
-      if strcmp(lower(transp_sig{i,2}),'signal') || strcmp(lower(transp_sig{i,2}),'signal-group')
-	try
-	  eval(['[trace.' transp_sig{i,1} ',e]=rdaAUG_eff(shot,ppftype,''' transp_sig{i,1} ''',shotfile_exp_eff);']);
-	catch
-	  eval(['trace.' transp_sig{i,1} '=[];']);
-	end
-      elseif strcmp(lower(transp_sig{i,2}),'area-base')
-	clear adata_area
-	try
-	  [adata_area]=sf2ab(ppftype,shot,transp_sig{i,1},'-exp',shotfile_exp_eff);
-	catch
-	  adata_area.value = cell(0);
-	end
-	eval(['trace.' transp_sig{i,1} '=adata_area;']);
-      elseif strcmp(lower(transp_sig{i,2}),'time-base')
-	clear adata_time
-	try
-	  [adata_time]=sf2tb(ppftype,shot,transp_sig{i,1},'-exp',shotfile_exp_eff);
-	catch
-	  adata_time.value = cell(0);
-	end
-	eval(['trace.' transp_sig{i,1} '=adata_time;']);
-      end
-    end
-
-  otherwise
-    disp('case not yet defined')
-    
-end
diff --git a/crpptbx_new/AUG/plot_torbeam.m b/crpptbx_new/AUG/plot_torbeam.m
deleted file mode 100644
index b5a3d2247e5bd2e402e28423d674043af28ebe1c..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/plot_torbeam.m
+++ /dev/null
@@ -1,64 +0,0 @@
-function fig_handles=plot_torbeam(torbeam_out_struct,varargin);
-%
-%       fig_handles=plot_torbeam(torbeam_out_struct,varargin);
-%
-% Default plots of structure torbeam_out_struct obtained from run_torbeam_fullshot.m
-%
-% varargin: list of fields to be plotted versus time
-%           (default: 'pow','rhopol_dep', 'pdens_peak', 'rhopol_pdens_width')
-%
-%           []: if empty then a list with multiple choice is proposed
-%
-
-fig_handles = [];
-
-if isempty(torbeam_out_struct); return; end
-
-set_colos;
-list_fields = {'pow','rhopol_dep', 'pdens_peak', 'rhopol_pdens_width'};
-
-abc=cat(1,torbeam_out_struct{:});
-tb_fields = [];
-if ~isempty(abc); tb_fields = fields(abc(1)); end
-
-if nargin >= 2
-  if isempty(varargin{1})
-    % asks from list
-    if ~isempty(tb_fields)
-      h_for_waitfor=figure;
-      global field_chosen
-      h1=uicontrol('Style','listbox','string',tb_fields,'pos',[20 20 200 300],'Max',20, ...
-	  'callback', ['global field_chosen;field_chosen=get(gcbo,''value'') ;']);
-      h2=uicontrol('Style','text','pos',[20 330 200 30],'string','choose fields to plot (ctrl-enter for multiple choices) then quit');
-      h3=uicontrol('Style','pushbutton','string','quit','pos',[300 20 30 20],'callback', ['close gcf;']);
-      waitfor(h_for_waitfor);
-      list_fields = tb_fields(field_chosen);
-      clear global field_chosen
-    else
-      disp('torbeam_out_struct empty');
-      return
-    end
-  elseif length(varargin) == 1
-    list_fields = varargin{1};
-  else
-    list_fields = varargin;
-  end
-end
-
-for ifield=1:length(list_fields)
-  titleg = [];
-  eval(['fig_handles.' list_fields{ifield} '.fig = figure(''name'',''' list_fields{ifield} ''');']);
-  for igyro=1:length(torbeam_out_struct)
-    if ~isempty(torbeam_out_struct{igyro})
-      eval(['array_to_plot = torbeam_out_struct{igyro}.' list_fields{ifield} ';']);
-      plotos(torbeam_out_struct{igyro}.time,array_to_plot,'-',[],[],colos(igyro,:));
-      hold on
-      titleg{end+1} = ['L' num2str(igyro)];
-    end
-  end
-  if ~isempty(titleg) ; legend(titleg); end
-  eval(['fig_handles.' list_fields{ifield} '.titleg = titleg;']);
-  xlabel('time [s]')
-  eval(['ylabel(''' list_fields{ifield} ''');']);
-  title(['AUG #' num2str(torbeam_out_struct{igyro}.shot(1))]);
-end
diff --git a/crpptbx_new/AUG/rdaAUG_eff.m b/crpptbx_new/AUG/rdaAUG_eff.m
deleted file mode 100644
index 6feeeee393e7293b37da7551b7ba2a4decbe834d..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/rdaAUG_eff.m
+++ /dev/null
@@ -1,169 +0,0 @@
-function [adata,error]=rdaAUG_eff(shot,diagname,sigtype,shotfile_exp,varargin);
-%
-% gets data using sf2sig or mdsplus (when mdsplus will be available)
-% 1D arrays: assumes dimension is time
-% 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
-%
-% examples:
-%          [data,error]=rdaAUG_eff(15133,'MAG','Ipi');
-%          [data,error]=rdaAUG_eff(15133,'MAG','Ipi',[1 5]);
-%
-% set global variable: usemdsplus to decide if sf2sig or mdsplus is used:
-%    >> global usemdsplus
-%    >> usemdsplus=1 % means use mds to get data
-%    >> usemdsplus=0 % means use sf2sig  (default if not defined)
-%       if ~exist('usemdsplus'); usemdsplus=0; end
-%
-
-global usemdsplus
-if isempty(usemdsplus); usemdsplus=1; end
-
-error=1;
-
-time_int=[];
-if nargin>=5 & ~isempty(varargin{1})
-  time_int=varargin{1};
-end
-
-if usemdsplus
-
-  % use mdsplus
-  
-  if ~unix('test -d /home/duval/mdsplus')
-    addpath('/home/duval/mdsplus')
-  end
-  
-  if ~unix('test -d /home/osauter/gdat')
-    mdsconnect('localhost:8001');
-  else
-    mdsconnect('localhost');
-  end
-
-  user=getenv('USER');
-  if nargin>=5 & ~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 sf2sig
-  if isempty(time_int)
-    try
-      [adata,adata_time, adata_area]=sf2sig(diagname,shot,sigtype,'-exp',shotfile_exp);
-    catch
-      adata.value = [];
-      adata.data = [];
-      adata.dim = [];
-      adata.t = [];
-      adata_time.data = [];
-      adata_area = [];
-    end
-  else
-    try
-      [adata,adata_time, adata_area]=sf2sig(diagname,shot,sigtype,[time_int(1);time_int(end)],'-exp',shotfile_exp);
-    catch
-      adata.value = [];
-      adata.data = [];
-      adata.dim = [];
-      adata.t = [];
-      adata_time.data = [];
-      adata_area = [];
-    end
-  end
-
-  if isempty(adata.value)
-    return
-  end
-
-  % special checks
-  if strcmp(upper(diagname),'SXB')
-    % time missing one point
-    if length(adata.value) == length(adata_time.value)+1
-      adata_time.value=linspace(adata_time.range(1),adata_time.range(2),length(adata.value));
-      adata_time.index(2) = length(adata.value);
-    end
-  end
-  
-  adata.time_aug = adata_time;
-
-  adata.area = adata_area;
- 
-  adata.exp = shotfile_exp;
-  if (prod(size(adata.value))==length(adata.value))
-    % only time signal
-    adata.x = [];
-    adata.value=reshape(adata.value,1,length(adata.value));
-    if ~isempty(adata.time_aug)
-      adata.t=adata.time_aug.value;
-    else
-      adata.t=[1:size(adata.value,2)];
-    end
-  else
-    if length(size(adata.value))<=2; adata.value = adata.value'; end % cannot transpose Nd>2 matrix
-    if ~isempty(adata.time_aug)
-      if length(size(adata.value))<=2;
-	adata.x=[1:prod(size(adata.value))/length(adata_time.value)];
-      else
-	adata.x = [];
-      end
-      adata.t=adata.time_aug.value;
-    else
-      adata.x=[1:size(adata.value,1)];
-      adata.t=[1:size(adata.value,2)];
-    end
-  end
-  adata.data=adata.value;
-  adata.units = adata.unit;
-  %  % transpose data as output in C format, reversed from Fortran and matlab standard
-  %  ss=size(a);
-  %  nbofdim=length(ss);
-  %  if ss(end)==1; nbofdim=nbofdim-1; end
-  %  nbofdim=max(nbofdim,1);
-  %  if nbofdim==1
-  %    data=a;
-  %  else
-  %    data=a';
-  %  end
-end
-
-error=0;
diff --git a/crpptbx_new/AUG/run_torbeam_fullshot.m b/crpptbx_new/AUG/run_torbeam_fullshot.m
deleted file mode 100644
index 52ea9891db468dcf0edce037860fb25febbbdc4c..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/run_torbeam_fullshot.m
+++ /dev/null
@@ -1,135 +0,0 @@
-function [torbeam_out_struct, file_out_prefix]=run_torbeam_fullshot(shot,varargin);
-%
-%     [torbeam_out_struct, file_out_prefix]=run_torbeam_fullshot(shot,varargin);
-%
-% Run tbdemo, using line command execution of TORBEAM, to run torbeam acroos full shot on reduced time axis
-%
-% shot: shot number for which to run Torbeam. 
-%       If empty or not given, ask for it
-%       if negative, assume output file exists, do not re-run TORBEAM and just reads data into structure torbeam_out_struct
-%
-% varargin given in pairs: 'keyword', value
-%    'time',time_array: time points for which to run Torbeam (by default run every 50ms for each ECRH2 gyrotron having power>0)
-%    'file_prefix', filename_prefix: results are saved on [filename '_gyroXX.dat'] (default: tbdemo_shot_gyroXX.dat with XX being the gyro nb)
-%
-% Examples:
-%      torbeam_out_struct = run_torbeam_fullshot(shot);   % standard call to run Torbeam
-%      torbeam_out_struct = run_torbeam_fullshot(-shot);  % standard call to just read the data from the local file from a previous run
-%
-%      torbeam_out_struct = run_torbeam_fullshot(shot,'time',linspace(tstart,tend,nbpoints)); % to run on given time array
-%      torbeam_out_struct = run_torbeam_fullshot(shot,'time',[t1 t2 t3...],'file_prefix','tbdemo_shot_fewtimes_gyro'); % to run on specific times
-
-torbeam_out_struct = [];
-
-if ~exist('shot')
-  shot=input('shot: ');
-end
-
-time_array=linspace(0,10,10/0.05);
-file_out_prefix = ['tbdemo_' num2str(abs(shot)) '_gyro'];
-
-if nargin>=3 && mod(length(varargin),2)==0
-  for i=1:2:length(varargin)-1
-    if ~isempty(varargin{i}) && ~isempty(varargin{i+1})
-      switch lower(varargin{i})
-       case {'time'}
-	time_array = varargin{i+1};
-       case {'file_prefix'}
-	file_out_prefix = varargin{i+1};
-       otherwise
-	disp(['case ' lower(varargin{i}) ' not yet implemented, ask Olivier.Sauter@epfl.ch'])
-	return
-      end
-    end
-  end
-end
-
-if shot>0
-  pgyro=gdat(shot,'pgyro',1);
-
-  hhDCR = sfread('DCR', shot);
-  dousedcr = '';
-  if hhDCR.handle~=0;
-    dousedcr = '-usedcr';
-    disp('can usedcr since DCR shotfile exists');
-  else
-    disp('do not use dcr since DCR shotfile does not seem to exists')
-  end
-
-  run_with_IDA = 0;
-  % test if IDA present
-  hhIDA = sfread('IDA', shot);
-  dousebetapol = '-betapol';
-  if hhIDA.handle~=0;
-    netest=gdat(shot,'IDA/ne');
-    tetest=gdat(shot,'IDA/te');
-    if ~isempty(netest.data) && ~isempty(tetest.data)
-      run_with_IDA = 1;
-      dousebetapol = ''; % can use Te from IDA
-      dousedcr = ''; % can use ne from IDA
-      disp('use IDA since shotfile exists')
-    else
-      disp('do not use IDA since shotfile does not seem to exist')
-    end
-  else
-    disp('do not use IDA since shotfile does not seem to exist')
-  end
-  
-  for igyro=1:8
-    filename=[file_out_prefix num2str(igyro) '.dat'];
-    unix(['rm ' filename ' >& /dev/null']); % since cannot write over an existing file by default
-    unix(['rm ' '.' filename ' >& /dev/null']); % since cannot write over an existing file by default
-    unix(['touch ' '.' filename]);
-    itt=find(pgyro.data(:,igyro)>1e5);
-    if ~isempty(itt)
-      itt_tok=find(time_array>=pgyro.t(itt(1)) & time_array<=pgyro.t(itt(end)));
-      if ~isempty(itt_tok)
-	pgyro_tok=interp1(pgyro.data(itt,igyro),time_array(itt_tok));
-	disp(['running system ' num2str(igyro) '...']);
-	for j=1:length(itt_tok)
-	  if pgyro_tok(j)>1e5
-	    % keyboard
-	    [a,b]=unix(['~rem/public/tbm_demo/tbmdemo -batch -silent -shot ' num2str(shot) ' -time ' num2str(time_array(itt_tok(j))) ' -system ' num2str(igyro) ' -ntm ' dousedcr ' ' dousebetapol ' -eqdiag EQI  -usemirror -cdrive 1 >> ' ['.' filename]]); % -exp AUGE
-	  end
-	end
-	[a,b]=unix(['egrep -e ''^Shot''' ' .' filename ' > ' filename]);
-      end
-    end
-  end
-end
-
-for igyro=1:8
-  try
-    eval(['[shot_tbnam,tbout{igyro}.shot,time_tbnam,tbout{igyro}.time,gyro_tbnam,tbout{igyro}.gyro,pol_tbnam,tbout{igyro}.pol,tor_tbnam,tbout{igyro}.tor,' ...
-	  'pow_tbnam,tbout{igyro}.pow,r_tbnam,tbout{igyro}.r,z_tbnam,tbout{igyro}.z,rho_tbnam,tbout{igyro}.rhopol_dep,pwr_dep_tbnam,tbout{igyro}.rhopol_pwr_dep,rhopol_cd_dep_tbnam,tbout{igyro}.rhopol_cd_dep,pdens_peak_tbnam,' ...
-	  'tbout{igyro}.pdens_peak,rhopol_pdens_wid_tbnam,tbout{igyro}.rhopol_pdens_width,jcd_peak_tbnam,tbout{igyro}.jcd_peak,rhopol_c_wid_tbnam,tbout{igyro}.rhopol_jcd_width,pni_tbnam,tbout{igyro}.pni,picr_tbnam,tbout{igyro}.picr,prad_tbnam,tbout{igyro}.prad,' ...
-	  'betan_tbnam,tbout{igyro}.betan,ipl_tbnam,tbout{igyro}.ipl,bt_tbnam,tbout{igyro}.bt,a1_tbnam,tbout{igyro}.ampN1,a2_tbnam,tbout{igyro}.ampN2,rhopolntm_tbnam,tbout{igyro}.rhopolntm]=' ...
-	  'textread(''' file_out_prefix  num2str(igyro) '.dat'',''%s%d%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f'');']);
-
-    %     eval(['[gyro_tbnam,tbout{igyro}.gyro,shot_tbnam,tbout{igyro}.shot,time_tbnam,tbout{igyro}.time,pol_tbnam,tbout{igyro}.pol,tor_tbnam,tbout{igyro}.tor,' ...
-    %     'pow_tbnam,tbout{igyro}.pow,r_tbnam,tbout{igyro}.r,z_tbnam,tbout{igyro}.z,pwr_dep_tbnam,tbout{igyro}.rhopol_pwr_dep,rhopol_cd_dep_tbnam,tbout{igyro}.rhopol_cd_dep,jcd_peak_tbnam,' ...
-    %     'tbout{igyro}.jcd_peak,rhopol_c_wid_tbnam,tbout{igyro}.rhopol_c_wid,pni_tbnam,tbout{igyro}.pni,picr_tbnam,tbout{igyro}.picr,prad_tbnam,tbout{igyro}.prad,' ...
-    % 	  'betan_tbnam,tbout{igyro}.betan,ipl_tbnam,tbout{igyro}.ipl,bt_tbnam,tbout{igyro}.bt,a1_tbnam,tbout{igyro}.a1,a2_tbnam,tbout{igyro}.a2,rhopolntm_tbnam,tbout{igyro}.rhopolntm]=' ...
-    %	  'textread(''' file_out_prefix  num2str(igyro) '.dat'',''%s%d%s%d%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f%s%f'');']);
-
-  catch
-    disp(['problems reading file ' file_out_prefix  num2str(igyro) '.dat: may be some errors with tbdemo, check file, skipped'])
-  end
-end
-
-if exist('tbout');
-  torbeam_out_struct = tbout;
-end
-
-fig_handles=plot_torbeam(torbeam_out_struct);
-
-
-% comments for hiytory backup:
-% 	    [a,b]=unix(['ssh sxaug21.aug.ipp.mpg.de ~rem/public/tbm_demo/tbmdemo -batch -silent -shot ' num2str(shot) ' -time ' num2str(time_array(itt_tok(j))) ' -system ' num2str(igyro) ' -usedcr -eqdiag EQI -betapol -usemirror -cdrive 1 >> ' ['.' filename]]);
-
-%	      [a,b]=unix(['ssh sxaug21.aug.ipp.mpg.de ~rem/public/tbm_demo/tbmdemo -batch -silent -shot ' num2str(shot) ' -time ' num2str(time_array(itt_tok(j))) ' -system ' num2str(igyro) ' -ntm -usedcr -eqdiag EQI -betapol -usemirror -cdrive 1 >> ' ['.' filename]]);
-
-% -shot 29672 -time 3.0 -system 5 -batch -ntm -silent -usemirror -cdrive 1
-%	      [a,b]=unix(['ssh sxaug21.aug.ipp.mpg.de ~rem/public/tbm_demo/tbmdemo -batch -silent -shot ' num2str(shot) ' -time ' num2str(time_array(itt_tok(j))) ' -system ' num2str(igyro) ' -ntm -usemirror -cdrive 1 >> ' ['.' filename]]);
-
-% [a,b]=unix(['grep -v ''could not''' ' .' filename '| grep -v ''invalid'' | grep -v ''Error'' | egrep -e ''^$'' -v > ' filename]);
diff --git a/crpptbx_new/AUG/sxrageometry.m b/crpptbx_new/AUG/sxrageometry.m
deleted file mode 100644
index 7cd169da59041c60c346bfb660964f22f5f67522..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/sxrageometry.m
+++ /dev/null
@@ -1,66 +0,0 @@
-function [R_A, Z_A, ang_A,varargout]=sxrageometry(varargin);
-%
-% [R_A, Z_A, ang_A]=sxrageometry;
-%
-% returns angles for A SXR camera from AUG
-% The R values at a given z=zmag are then given by:
-% zmag>Z_A: only ang_A<180
-% R= R_A - (zmag-Z_A)./tan(pi-ang_A.*pi/180);
-% zmag<Z_A: only ang_A>180
-% R= R_A - (zmag-Z_A)./tan(pi-ang_A.*pi/180);
-%
-% varargin{1}: zmag(t) (scalar or array)
-%
-% output
-%  R_A, Z_A scalars
-%  ang_A(nbchannels,1);
-%  varargout: R(nbchannels,time), with NaN depending on conditions above
-%
-
-R_A=1.411;
-Z_A=-1.075;
-ang_A= [...
-      47.852, ...
-      49.967, ...
-      52.151 , ...
-      54.266  , ...
-      56.449    , ...
-      58.565    , ...
-      60.748    , ...
-      62.863    , ...
-      65.047      , ...
-      67.162   , ...
-      69.345     , ...
-      71.460    , ...
-      73.644   , ...
-      75.759     , ...
-      77.942  , ...
-      80.058      , ...
-      82.241    , ...
-      84.356   , ...
-      86.540    , ...
-      88.655    , ...
-      90.838    , ...
-      92.953    , ...
-      95.137    , ...
-      97.252    , ...
-      99.435   , ...
-      101.551   , ...
-      103.734   , ...
-      105.849   , ...
-      108.033   , ...
-      110.148]';
-
-varargout{1}=[];
-if nargin <1 | isempty(varargin{1})
-  return
-end
-
-% compute R
-zmag=varargin{1};
-varargout{1}=NaN*ones(length(ang_A),length(zmag));
-for i=1:length(ang_A)
-  varargout{1}(i,:) = R_A - (zmag'-Z_A)./tan(pi-ang_A(i).*pi/180);
-end
-iiout=find(varargout{1}<=0 | varargout{1}>=2.5);
-varargout{1}(iiout)=NaN;
diff --git a/crpptbx_new/AUG/sxrbgeometry.m b/crpptbx_new/AUG/sxrbgeometry.m
deleted file mode 100644
index 9d631c2bb94026dd50c956d4ce0536206c465df0..0000000000000000000000000000000000000000
--- a/crpptbx_new/AUG/sxrbgeometry.m
+++ /dev/null
@@ -1,66 +0,0 @@
-function [R_B, Z_B, ang_B,varargout]=sxrbgeometry(varargin);
-%
-% [R_B, Z_B, ang_B]=sxrbgeometry;
-%
-% returns angles for B SXR camera from AUG
-% The R values at a given z=zmag are then given by:
-% zmag>Z_B: only ang_B<180
-% R= R_B - (zmag-Z_B)./tan(pi-ang_B.*pi/180);
-% zmag<Z_B: only ang_B>180
-% R= R_B - (zmag-Z_B)./tan(pi-ang_B.*pi/180);
-%
-% varargin{1}: zmag(t) (scalar or array)
-%
-% output
-%  R_B, Z_B scalars
-%  ang_B(nbchannels,1);
-%  varargout: R(nbchannels,time), with NaN depending on conditions above
-%
-
-R_B=2.351;
-Z_B=-0.271;
-ang_B= [...
-  107.955, ...
-  111.645, ...
-  115.555, ...
-  119.245, ...
-  123.155, ...
-  126.845, ...
-  130.755, ...
-  134.445, ...
-  138.355, ...
-  142.045, ...
-  145.955, ...
-  149.645, ...
-  153.555, ...
-  157.245, ...
-  161.155, ...
-  164.845, ...
-  168.755, ...
-  172.445, ...
-  176.355, ...
-  180.045, ...
-  183.955, ...
-  187.645, ...
-  191.555, ...
-  195.245, ...
-  199.155, ...
-  202.845, ...
-  206.755, ...
-  210.445, ...
-  214.355, ...
-  218.045]';
-
-varargout{1}=[];
-if nargin <1 | isempty(varargin{1})
-  return
-end
-
-% compute R
-zmag=varargin{1};
-varargout{1}=NaN*ones(length(ang_B),length(zmag));
-for i=1:length(ang_B)
-  varargout{1}(i,:) = R_B - (zmag'-Z_B)./tan(pi-ang_B(i).*pi/180);
-end
-iiout=find(varargout{1}<=0 | varargout{1}>=2.5);
-varargout{1}(iiout)=NaN;
diff --git a/crpptbx_new/JET/MatlabvesselcoordsJET.txt b/crpptbx_new/JET/MatlabvesselcoordsJET.txt
deleted file mode 100644
index df1110729731062745c9955925faeffceb230404..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/MatlabvesselcoordsJET.txt
+++ /dev/null
@@ -1,164 +0,0 @@
-Gentlemen, although I haven't had time to do anything more with them,
-please find attached a little .m containing a series of [R,z] keypoints
-for the JET vacuum vessel, obtained finally from Philip Andrew and
-Thomas Eich of TFE. Extract the file and do:
-
-jet_mkiigb_wall_coords;
-plot(rz(:,1),rz(:,2),rz(:,1),rz(:,2),'ro');axis('equal');grid;
-
-I was hoping to find time to write a function that computed a normlaised
-coordinate along the vessel perimeter (as Jean-Marc does in tcvtiles.m),
-but alas this is not a trivial task and the time hasn't been found yet.
-For the moment, it might be useful to you just to have the keypoints.
-
-R.
-____________________________________________
-
-Dr. R.A.Pitts        Email: richard.pitts@epfl.ch
-CRPP-EPFL, Batiment PPB, 1015 Lausanne, Switzerland
-Tel: +41 21 693 6003, Fax: 5176, Secr. 3487
-http://crppwww.epfl.ch/~pitts
-
-rz=[2.0481 -0.9298
-2.1316	-1.1314
-2.29273	-1.3368
-2.36107	-1.33684
-2.3974	-1.3757
-2.41037	-1.40277
-2.40596	-1.38824
-2.41365	-1.42575
-2.41416	-1.43282
-2.41403	-1.42928
-2.41416	-1.47234
-2.41347	-1.48059
-2.41398	-1.47648
-2.40894	-1.5077
-2.39934	-1.5197
-2.42075	-1.59625
-2.42247	-1.61334
-2.42235	-1.60472
-2.42003	-1.6469
-2.41786	-1.65826
-2.41928	-1.65265
-2.40695	-1.693
-2.3688	-1.693
-2.3157	-1.74057
-2.35658	-1.74057
-2.36614	-1.73964
-2.37535	-1.7369
-2.42729	-1.71581
-2.43651	-1.71307
-2.44608	-1.71214
-2.52216	-1.71211
-2.53175	-1.7217
-2.53475	-1.7157
-2.54675	-1.7157
-2.54675	-1.7017
-2.58073	-1.6297
-2.58975	-1.61057
-2.61375	-1.5597
-2.61375	-1.5487
-2.60575	-1.5487
-2.60575	-1.52457
-2.62642	-1.51033
-2.64708	-1.50281
-2.66775	-1.50035
-2.68842	-1.50255
-2.70908	-1.50976
-2.72975	-1.52353
-2.72975	-1.5487
-2.71975	-1.5487
-2.71975	-1.5597
-2.73975	-1.60408
-2.7513	-1.6297
-2.78375	-1.7017
-2.78375	-1.7157
-2.79874	-1.7157
-2.80176	-1.7167
-2.80569	-1.71277
-2.86091	-1.71275
-2.87114	-1.7138
-2.88095	-1.71693
-2.93663	-1.74127
-2.94644	-1.7444
-2.95668	-1.74545
-2.98773	-1.74543
-2.9288	-1.68563
-2.89682	-1.68563
-2.88125	-1.62655
-2.88001	-1.62023
-2.8796	-1.61381
-2.8796	-1.60477
-2.87992	-1.59909
-2.88089	-1.59348
-2.89937	-1.5137
-2.89016	-1.5017
-2.88783	-1.49362
-2.88638	-1.48678
-2.88589	-1.4798
-2.88589	-1.43815
-2.88709	-1.42726
-2.89064	-1.41688
-2.90084	-1.39518
-2.90658	-1.38581
-2.91423	-1.37791
-2.96398	-1.3368
-3.01294	-1.33678
-3.01547	-1.34003
-3.3294	-1.067
-3.4907	-0.8592
-3.5972	-0.722
-3.6605	-0.6267
-3.7113	-0.5254
-3.7665	-0.3947
-3.8039	-0.2876
-3.8352	-0.1787
-3.8602	-0.0681
-3.8789	0.0437
-3.8913	0.1563
-3.8972	0.2695
-3.8967	0.3829
-3.8897	0.496
-3.8764	0.6086
-3.8622	0.6922
-3.8307	0.8306
-3.7984	0.9392
-3.7601	1.0459
-3.7157	1.1502
-3.6787	1.2265
-3.5881	1.4801
-3.4635	1.5923
-3.3038	1.716
-3.1528	1.8211
-2.9806	1.9449
-2.8887	1.98
-2.7897	2.0083
-2.6826	2.022
-2.5797	2.0193
-2.4832	2.0027
-2.3854	1.9708
-2.2842	1.9192
-2.2474	1.8972
-2.1316	1.6866
-2.0481	1.485
-1.9399	1.1653
-1.9122	1.0691
-1.8876	0.972
-1.8663	0.8741
-1.8482	0.7756
-1.8334	0.6766
-1.8219	0.5771
-1.8137	0.4773
-1.8088	0.3773
-1.8073	0.2772
-1.809	0.177
-1.8141	0.077
-1.8225	-0.0228
-1.8342	-0.1222
-1.8491	-0.2213
-1.8674	-0.3197
-1.8889	-0.4175
-1.9137	-0.5146
-1.9416	-0.6107
-2.0481	-0.9298]
-
diff --git a/crpptbx_new/JET/Ra_rho_t.m b/crpptbx_new/JET/Ra_rho_t.m
deleted file mode 100644
index 83c9fc9b255dbde508a6008a9cf0e0c3d1dd0163..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/Ra_rho_t.m
+++ /dev/null
@@ -1,84 +0,0 @@
-function [R0zmag,azmag,Rminzmag,Rmaxzmag,zmageff]=Ra_rho_t(sspr,sspi,npts);
-%
-% function [R0zmag,azmag,Rminzmag,Rmaxzmag,zmageff]=Ra_rho_t(sspr,sspi,npts);
-%
-% Rmax(psi^.5),Rmin(psi^.5) and a(psi^.5) on z=zmag on npts equidistant sqrt(psin)
-%
-% Assumes all timing the same: sspr.t, sspi.t, zmag.t, rmag.t
-%
-% cannot use zmag as not good enough with respect to psirz. Better to use min of psirz contours, zmageff
-%
-% precision within 1e-3 - 1e-4 (as usually min(psi)~a few 1e-4)
-%
-% Note: this also gives Rin and Rout (psi) directly from Rmin and Rmax, or from R0+a or R0-a of rho^2
-%
-
-rhopsi=linspace(0,1,npts)';
-figure(92);clf; % used as dummy for contours calculation
-set(92,'pos',[600 500 200 200])
-set(92,'MenuBar','none');
-hold on
-azmag=sspr; % to get time array and structure same
-azmag.data=zeros(length(rhopsi),length(sspr.t));
-azmag.x=rhopsi;
-azmag.dim{1}=rhopsi;
-azmag.dimunits{1}='rho=sqrt(psin)';
-azmag.name='a(rho,t)=mean minor radius from psi(R,Z) and Ra_rho_t function';
-R0zmag=azmag;
-R0zmag.name='R0(rho,t)=mean major radius from psi(R,Z) and Ra_rho_t function';
-Rminzmag=azmag;
-Rminzmag.name='Rmin(rho,t)=Rbnd_HFS from psi(R,Z) and Ra_rho_t function';
-Rmaxzmag=azmag;
-Rmaxzmag.name='a(rho,t)=Rbnd_LFS from psi(R,Z) and Ra_rho_t function';
-zmageff=NaN*ones(size(sspr.t));
-
-% iteff=find(sspr.t>=54 & sspr.t<=69);
-for it=1:length(sspr.t)
-%for it1=1:length(iteff)
-%  it=iteff(it1);
-  [r,z,psinrz]=psinrzjet(-1,sspr.t(it),3*npts,3*npts,[],[],[],0,sspr,sspi,[]);
-  ir=find(r>2.7 & r<3.3);
-  iz=find(z>-1 & z<1.5);
-  psimin=1.2*max(0,min(min(psinrz(ir,iz))));
-  [c,h]=contour(r,z,psinrz',[psimin psimin]);
-  iii=find(c(1,:)==psimin);
-  rmagpsi=mean(c(1,iii(end)+1:iii(end)+c(2,iii(end))));
-  zmagpsi=mean(c(2,iii(end)+1:iii(end)+c(2,iii(end))));
-  % make (R,Z) array on which to compute psinrz
-  nr=sspi.data(1,it);
-  rmin=sspr.data(1,it)/100;
-  rmax=sspr.data(nr,it)/100; % in [cm] but will be used in [m]
-  zeff=zmagpsi;
-  rgrid=linspace(rmin+1e-4,rmax-1e-4,3*npts);
-  zgrid=zeff*ones(size(rgrid));
-  [r2,z2,psinrz2]=psinrzjet(-1,sspr.t(it),rgrid,zgrid,[],[],[],0,sspr,sspi,[],1);
-  [a,da1]=interpos(13,r2,psinrz2);
-  ii=find(da1>0);ii=ii(1);
-  rmagmin=interp1([da1(ii(1)-1) da1(ii(1))],[r2(ii(1)-1) r2(ii(1))],0);
-  ii=find(r2>=rmagmin);
-  [RpsiLFS]=interpos(13,psinrz2(ii).^.5,r2(ii),rhopsi);
-  ii=find(r2<=rmagmin);
-  [RpsiHFS]=interpos(13,psinrz2([ii(end):-1:1]).^.5,r2([ii(end):-1:1]),rhopsi);
-  azmag.data(:,it)=0.5.*(RpsiLFS-RpsiHFS);
-  azmag.data(1,it)=0;
-  azmag.data(2,it)=max(0,azmag.data(2,it));
-  R0zmag.data(:,it)=0.5.*(RpsiLFS+RpsiHFS);
-  R0zmag.data(1,it)=rmagmin;
-  Rminzmag.data(:,it)=RpsiHFS;
-  Rmaxzmag.data(:,it)=RpsiLFS;
-  zmageff(it)=zeff;
-  % get isoflux
-  %  [c1,h1]=contour(r,z,psinrz',rhopsi.^2);
-  %  for ir=1:length(rhopsi)
-  %    ii=find(c1(1,:)==rhopsi(ir)^2);
-  %    if isempty(ii)
-  %      Riso{ir,it}=rmagmin;
-  %      Ziso{ir,it}=zmagpsi;
-  %    else
-  %      [il ij]=max(c1(2,ii));
-  %      ieff=ii(ij);
-  %      Riso{ir,it}=c1(1,ieff+1:ieff+il)';
-  %      Ziso{ir,it}=c1(2,ieff+1:ieff+il)';
-  %    end
-  %  end
-end
diff --git a/crpptbx_new/JET/geteqdskJET.m b/crpptbx_new/JET/geteqdskJET.m
deleted file mode 100644
index fe024ccf1d5ba8558d70584ba5ca63dd19422b5b..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/geteqdskJET.m
+++ /dev/null
@@ -1,311 +0,0 @@
-function [efitdata]=geteqdskJET(shot,time,nrg,nzg,savedir,deltaz,efitlab,uid,seqd,varargin);
-%
-% function [efitdata]=geteqdskJET(shot,time,nrg,nzg,savedir,deltaz,efitlab,uid,seqd,varargin);
-%
-% save eqdsk file to savedir/JET_EQDSK_shot_ttime
-% returns data used in structure efitdata (efitdata.shot, efitdata.Rbnd, efitdataZbnd....)
-% 
-% examples:
-%          efitdata=geteqdskJET(shot,time,33,65,'/tmp')
-%          efitdata=geteqdskJET(shot,time,33,65,'/tmp',[],[],[],[],1,efitdata); % gives data so no need to load again
-%
-% INPUTS :
-% shot : shot number
-% time   : single time slice of analysis
-% nrg, nzg: nb of R and Z points for R,Z grid
-%   if nzg<0 force symmetric box aorund z=deltaz
-%
-% OPTIONAL
-% savedir: directory to save eqdsk file (default: './')
-% deltaz: shift equilibrium vertically
-%       = 0: (default) no shift
-%       = -99: shift so that zmag=0 (thus deltaz=-zmag)
-%       otherwise: shift Z position by this amount
-% efitlab : 'efit' or 'eftm' (default: 'efit')
-% uid{i}: user id if different from main database (default: 'jetppf')
-% seq(i): sequence number if not last one required (default: 0)
-%     i: 1 (efit), 2 (chain2: lid2), 3 (equi)
-%
-% varargin{1}: plot option: 0: do not plot contours, >0 plot contour with varargin{1} nb of contours (60 is good)
-% varargin{2}: efitdata in input (no need to load again if shot=efitdata.shot)
-%
-% OUTPUTS
-% efitdata: structure containing all data vs time so that one can call geteqdsk for another time quicker for same shot
-%
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-if nargin<=4 | isempty(savedir)
-  savedir='./';
-end
-if unix(['test -d ' savedir])
-  disp(['Problems in geteqdskJET, savedir=' savedir ' is not a directory'])
-  return
-end
-if nargin<=5 | isempty(deltaz)
-  deltaz=0;
-end
-if nargin<=6 | isempty(efitlab)
-  efitlab='efit';
-end
-iexefit=1;
-iexchain2=2;
-iexequi=3;
-uid0{iexefit}='jetppf';
-uid0{iexchain2}='jetppf';
-uid0{iexequi}='jetppf';
-seqd0(1:iexequi)=0;
-if nargin>=8 & ~isempty(uid)
-  for i=length(uid)+1:length(uid0)
-    uid{i}=uid0{i}
-  end
-else
-  uid=uid0;
-end
-if nargin>=9 & ~isempty(seqd)
-  for i=length(seqd)+1:length(seqd0)
-    seqd(i)=seqd0(i);
-  end
-else
-  seqd=seqd0;
-end
-for i=1:length(uid)
-  s_extra{i}=['?uid=' uid{i} '+seq=' num2str(seqd(i))];
-end
-
-ncont=0;
-if nargin>=10 & ~isempty(varargin{1})
-  ncont=varargin{1};
-end
-
-iread=1;
-if nargin>=11 & ~isempty(varargin{2})
-  efitdata=varargin{2};
-  if shot==efitdata.shot
-    iread=0;
-  else
-    disp(['shot=' num2str(shot) ' different from efitdata.shot=' num2str(efitdata.shot)])
-    warning('reload data with new shot')
-  end
-end
-
-if iread==1
-  efitdata.shot=shot;
-  % get data needed
-  efitdata.Rbnd=gdat(shot,['ppf/' efitlab '/RBND' s_extra{iexefit}],0,'JET');
-  efitdata.tefit=efitdata.Rbnd.t;
-  efitdata.Zbnd=gdat(shot,['ppf/' efitlab '/ZBND' s_extra{iexefit}],0,'JET');
-  efitdata.R0=gdat(shot,['ppf/' efitlab '/RGEO' s_extra{iexefit}],0,'JET');
-  efitdata.a=gdat(shot,['ppf/' efitlab '/CR0' s_extra{iexefit}],0,'JET');
-  % $$$ efitdata.Z0=gdat(shot,['ppf/' efitlab '/ZO' s_extra{iexefit}],0,'JET');
-  efitdata.rmag=gdat(shot,['ppf/' efitlab '/rmag' s_extra{iexefit}],0,'JET');
-  efitdata.zmag=gdat(shot,['ppf/' efitlab '/zmag' s_extra{iexefit}],0,'JET');
-  efitdata.faxs=gdat(shot,['ppf/' efitlab '/faxs' s_extra{iexefit}],0,'JET');
-  efitdata.fbnd=gdat(shot,['ppf/' efitlab '/fbnd' s_extra{iexefit}],0,'JET');
-  efitdata.bvac=gdat(shot,['ppf/' efitlab '/bvac' s_extra{iexefit}],0,'JET');
-  efitdata.ip=gdat(shot,['ppf/' efitlab '/xip' s_extra{iexefit}],0,'JET');
-  efitdata.F=gdat(shot,['ppf/' efitlab '/F' s_extra{iexefit}],0,'JET');
-  efitdata.psin=efitdata.F.x;
-  efitdata.P=gdat(shot,['ppf/' efitlab '/P' s_extra{iexefit}],0,'JET');
-  efitdata.Q=gdat(shot,['ppf/' efitlab '/Q' s_extra{iexefit}],0,'JET');
-  efitdata.kappa=gdat(shot,['ppf/' efitlab '/ELON' s_extra{iexefit}],0,'JET');
-  efitdata.q95=gdat(shot,['ppf/' efitlab '/q95' s_extra{iexefit}],0,'JET');
-  efitdata.btpd=gdat(shot,['ppf/' efitlab '/btpd' s_extra{iexefit}],0,'JET');
-  efitdata.bttd=gdat(shot,['ppf/' efitlab '/bttd' s_extra{iexefit}],0,'JET');
-  efitdata.btnd=gdat(shot,['ppf/' efitlab '/btnd' s_extra{iexefit}],0,'JET');
-  efitdata.btpm=gdat(shot,['ppf/' efitlab '/btpm' s_extra{iexefit}],0,'JET');
-  efitdata.bttm=gdat(shot,['ppf/' efitlab '/bttm' s_extra{iexefit}],0,'JET');
-  efitdata.btnm=gdat(shot,['ppf/' efitlab '/btnm' s_extra{iexefit}],0,'JET');
-  efitdata.xli=gdat(shot,['ppf/' efitlab '/xli' s_extra{iexefit}],0,'JET');
-  efitdata.sspr=gdat(shot,['ppf/' efitlab '/sspr' s_extra{iexefit}],0,'JET');
-  efitdata.sspi=gdat(shot,['ppf/' efitlab '/sspi' s_extra{iexefit}],0,'JET');
-  % add for profiles
-  efitdata.ti=gdat(shot,['ppf/TION/TI' s_extra{iexchain2}],0,'JET');
-  efitdata.p_tion=gdat(shot,['ppf/TION/p' s_extra{iexchain2}],0,'JET');
-  efitdata.pi=gdat(shot,['ppf/NION/DD' s_extra{iexchain2}],0,'JET');
-  efitdata.zef=gdat(shot,['ppf/NION/ZEF' s_extra{iexchain2}],0,'JET');
-  % add for calculating NTM parameters
-  efitdata.bpol=gdat(shot,['ppf/equi/bpol' s_extra{iexequi}],0,'JET');
-  efitdata.bpo2=gdat(shot,['ppf/equi/bpo2' s_extra{iexequi}],0,'JET');
-  efitdata.qmag=gdat(shot,['ppf/' efitlab '/qmag' s_extra{iexefit}],0,'JET');
-  efitdata.lidrpe=gdat(shot,['ppf/lidr/pe'],0,'JET');
-  efitdata.nexav=gdat(shot,['ppf/nex/av'],0,'JET');
-  efitdata.nbi=gdat(shot,['ppf/nbi/ptot'],0,'JET');
-  efitdata.icrh=gdat(shot,['ppf/icrh/ptot'],0,'JET');
-  efitdata.ptot=gdat(shot,['ppf/mg3/yto'],0,'JET');
-  efitdata.halpha=gdat(shot,['jpf/dd/s3-ad35'],0,'JET');
-  efitdata.n1=gdat(shot,['jpf/da/c1-g101'],0,'JET');
-  efitdata.n2=gdat(shot,['jpf/da/c1-g102'],0,'JET');
-end
-
-tefit=efitdata.tefit;
-[zz index_efit]=min(abs(tefit-time));
-time_efit=tefit(index_efit);
-disp('&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&')
-disp(['efit at t=' num2str(time_efit)])
-disp('&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&')
-
-Rbnd=efitdata.Rbnd.data(:,index_efit);
-Zbnd=efitdata.Zbnd.data(:,index_efit);
-R0=efitdata.R0.data(index_efit);
-% $$$ Z0=efitdata.Z0.data(index_efit);
-rmag=efitdata.rmag.data(index_efit);
-zmag=efitdata.zmag.data(index_efit);
-if deltaz==-99
-  deltaz=-zmag;
-end
-faxs=efitdata.faxs.data(index_efit);
-fbnd=efitdata.fbnd.data(index_efit);
-bvac=-efitdata.bvac.data(index_efit);
-ip=-efitdata.ip.data(index_efit);
-psi_efit=efitdata.psin;
-F=efitdata.F.data(:,index_efit);
-P=efitdata.P.data(:,index_efit);
-Q=efitdata.Q.data(:,index_efit);
-kappa=efitdata.kappa.data(index_efit);
-q95=efitdata.q95.data(index_efit);
-if index_efit<=length(efitdata.btpd.data); btpd=efitdata.btpd.data(index_efit); else; btpd=0; end
-if index_efit<=length(efitdata.bttd.data); bttd=efitdata.bttd.data(index_efit); else; bttd=0; end
-if index_efit<=length(efitdata.btnd.data); btnd=efitdata.btnd.data(index_efit); else; btnd=0; end
-if index_efit<=length(efitdata.btpm.data); btpm=efitdata.btpm.data(index_efit); else; btpm=0; end
-if index_efit<=length(efitdata.bttm.data); bttm=efitdata.bttm.data(index_efit); else; bttm=0; end
-if index_efit<=length(efitdata.btnm.data); btnm=efitdata.btnm.data(index_efit); else; btnm=0; end
-xli=efitdata.xli.data(index_efit);
-
-[R,Z,psinrz]=psirz(shot,time,nrg,nzg,efitlab,uid{iexefit},seqd(iexefit),ncont,efitdata.sspr,efitdata.sspi,deltaz);
-nzg=abs(nzg);
-
-% define file name
-s = sprintf('%.6f',time);
-fname=sprintf('%s/EQDSK.%st%s',savedir,num2str(shot),s);
-fid=fopen(fname,'w');
-
-% 1st eqdsk line: 48 characters for file description and then, 3, nr, nz
-tdate=date;
-ss=['JET #' num2str(shot) ' t= ' num2str(time_efit) ' ' efitlab '?uid=' uid{iexefit} '+seq=' num2str(seqd(iexefit)) ', ' tdate];
-if length(ss)<48
-  ss(end:48)=' ';
-else
-  ss=ss(1:48);
-end
-
-fprintf(fid,'%s%4d%4d%4d\n',ss,3,nrg,nzg);
-
-% 2nd line: rboxlen, zboxlen, r0, rboxlft, zboxmid
-rmin=min(R)
-rmax=max(R)
-zmin=min(Z)
-zmax=max(Z)
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',rmax-rmin,zmax-zmin,R0,rmin,0.5*(zmin+zmax)+deltaz);
-
-% 3rd line: rmag, zmag, psimag, psiedge, B0
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',rmag,zmag+deltaz,faxs,fbnd,bvac);
-
-% 4th line: Ip, psiax1, psiax2, raxis1, raxis2
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',ip,faxs,0.,rmag,0.);
-
-% 5th line: zaxis1, zaxis2, psi_sep, R_xpoint, Z_xpoint
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',zmag+deltaz,0.0,fbnd,-1,-1);
-
-% 6th entry: F(psi) on nr equidistant psi mesh
-psieq=[0:1/(nrg-1):1];
-psi_efit_eff=faxs+psi_efit.*(fbnd-faxs);
-psieq_eff=faxs+psieq.*(fbnd-faxs);
-[G Gprime]=interpos(13,psi_efit_eff,-F,psieq_eff);
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',G(1:end-1));
-fprintf(fid,'%16.9e\n',G(end));
-
-% 7th entry: p(psi) on nr equidistant psi mesh
-[press pressprime]=interpos(13,psi_efit_eff,P,psieq_eff);
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',press(1:end-1));
-fprintf(fid,'%16.9e\n',press(end));
-
-% 8th entry: FF'(psi) on nr equidistant psi mesh
-y=G.*Gprime;
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',y(1:end-1));
-fprintf(fid,'%16.9e\n',y(end));
-
-% 9th entry: p'(psi) on nr equidistant psi mesh (in MKSA)
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',pressprime(1:end-1));
-fprintf(fid,'%16.9e\n',pressprime(end));
-
-% 10th entry: psi(i,j)
-psirz=faxs+psinrz.*(fbnd-faxs);
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',psirz);
-if mod(nrg*nzg,5)~=0
-  fprintf(fid,'\n');
-end
-
-% 11th entry: q profile on nr equidistant psi mesh
-y=interpos(13,psi_efit,Q,psieq,1e-6);
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',y(1:end-1));
-fprintf(fid,'%16.9e\n',y(end));
-
-% 12th entry: (R,Z) plasma boundary and wall position
-npts=length(Rbnd);
-fprintf(fid,'%5d%5d\n',npts,5);
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',[Rbnd Zbnd+deltaz]');
-if mod(2*npts,5) ~= 0
-  fprintf(fid,'\n');
-end
-rdel=+0.8*(R(2)-R(1));
-zdel=+0.8*(Z(2)-Z(1));
-fprintf(fid,'%16.9e%16.9e%16.9e%16.9e%16.9e\n',min(Rbnd)-rdel,min(Zbnd)+deltaz-zdel, ...
-        max(Rbnd)+rdel,min(Zbnd)+deltaz-zdel,max(Rbnd)+rdel,max(Zbnd)+deltaz+zdel, ...
-        min(Rbnd)-rdel,max(Zbnd)+deltaz+zdel,min(Rbnd)-rdel,min(Zbnd)+deltaz-zdel);
-
-% Some useful data to compare with recomputed equilibria
-fprintf(fid,'%18.8e   psiedge-psiax\n',fbnd-faxs);
-fprintf(fid,'%18.8e   r-magaxe\n',rmag);
-fprintf(fid,'%18.8e   z-magaxe\n',zmag+deltaz);
-fprintf(fid,'%18.8e   z0 (zaver)\n',0.5.*(min(Zbnd)+max(Zbnd))+deltaz);
-fprintf(fid,'%18.8e   r-major\n',R0);
-fprintf(fid,'%18.8e   B0\n',bvac);
-fprintf(fid,'%18.8e   CURRT -> I-p [A]:  %18.8e \n',ip/4e-7/pi,ip);
-fprintf(fid,'%18.8e   kappa\n',kappa);
-fprintf(fid,'%18.8e   q_0\n',Q(1));
-y=interpos(13,psi_efit,Q,[0:0.01:1],1e-6);
-fprintf(fid,'%18.8e   q_edge, from int: %18.8e\n',Q(end),y(end));
-fprintf(fid,'%18.8e   q_95, from int: %18.8e\n',q95,y(96));
-[qmin ind]=min(y);
-fprintf(fid,'%18.8e   q_min, at psinorm= %18.8e\n',qmin,y(ind));
-fprintf(fid,'%18.8e   beta_pol(wdia)\n',btpd);
-fprintf(fid,'%18.8e   beta_pol(efit)\n',btpm);
-fprintf(fid,'%18.8e   beta_tor(wdia)\n',bttd);
-fprintf(fid,'%18.8e   beta_tor(efit)\n',bttm);
-fprintf(fid,'%18.8e   beta_N(wdia)\n',btnd);
-fprintf(fid,'%18.8e   beta_N(efit)\n',btnm);
-fprintf(fid,'%18.8e   li\n',xli);
-
-fprintf(fid,'\n%18.8e   time\n',time);
-fprintf(fid,'  %d   shot number\n',shot);
-fprintf(fid,'  efit version : %s\n',efitlab);
-fprintf(fid,'  uid : %s, %s, %s\n',uid{1},uid{2},uid{3});
-fprintf(fid,'  seq : %d, %d, %d\n',seqd(1:3));
-
-fclose(fid);
-disp(['wrote ',fname]);
-
-if ncont>0
-  figure;
-  pos=get(gcf,'position');
-  set(gcf,'position',[pos(1)+0.5*pos(3) 0.8*abs(pos(2)-pos(4)) pos(3) 2*pos(4)]) 
-  subplot(3,1,1)
-  plot(psi_efit,P/P(1),'-')
-  hold on
-  plot(psi_efit,F/F(end),'r-')
-  ss=sprintf('%.4f',time);
-  title(['JET #' num2str(shot) ' t= ' ss])
-  legend('P/P(0)','F/F(edge)',3)
-  subplot(3,1,2)
-  plot(psieq,pressprime/abs(pressprime(1)),'-')
-  hold on
-  plot(psieq,G.*Gprime/abs(G(1).*Gprime(1)),'r-')
-  legend('Pprime/|Pprime(0)|','F*Fprime/|F*Fprime(0)|',2)
-  subplot(3,1,3)
-  plot(psi_efit,Q,'-')
-  hold on
-  aa=axis;
-  plot([0.95 0.95],[aa(3) aa(4)],'k--')
-  grid on
-  xlabel('\psi/\psi_{edge}')
-end
diff --git a/crpptbx_new/JET/jet_mkiigb_wall_coords.data b/crpptbx_new/JET/jet_mkiigb_wall_coords.data
deleted file mode 100644
index 46427e3b222495751be134676b791731c9d0091f..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/jet_mkiigb_wall_coords.data
+++ /dev/null
@@ -1,143 +0,0 @@
-%     R                Z  of JET vacuum vessel, around divertor as well
-   2.0481000e+00  -9.2980000e-01
-   2.1316000e+00  -1.1314000e+00
-   2.2927300e+00  -1.3368000e+00
-   2.3610700e+00  -1.3368400e+00
-   2.3974000e+00  -1.3757000e+00
-   2.4103700e+00  -1.4027700e+00
-   2.4059600e+00  -1.3882400e+00
-   2.4136500e+00  -1.4257500e+00
-   2.4141600e+00  -1.4328200e+00
-   2.4140300e+00  -1.4292800e+00
-   2.4141600e+00  -1.4723400e+00
-   2.4134700e+00  -1.4805900e+00
-   2.4139800e+00  -1.4764800e+00
-   2.4089400e+00  -1.5077000e+00
-   2.3993400e+00  -1.5197000e+00
-   2.4207500e+00  -1.5962500e+00
-   2.4224700e+00  -1.6133400e+00
-   2.4223500e+00  -1.6047200e+00
-   2.4200300e+00  -1.6469000e+00
-   2.4178600e+00  -1.6582600e+00
-   2.4192800e+00  -1.6526500e+00
-   2.4069500e+00  -1.6930000e+00
-   2.3688000e+00  -1.6930000e+00
-   2.3157000e+00  -1.7405700e+00
-   2.3565800e+00  -1.7405700e+00
-   2.3661400e+00  -1.7396400e+00
-   2.3753500e+00  -1.7369000e+00
-   2.4272900e+00  -1.7158100e+00
-   2.4365100e+00  -1.7130700e+00
-   2.4460800e+00  -1.7121400e+00
-   2.5221600e+00  -1.7121100e+00
-   2.5317500e+00  -1.7217000e+00
-   2.5347500e+00  -1.7157000e+00
-   2.5467500e+00  -1.7157000e+00
-   2.5467500e+00  -1.7017000e+00
-   2.5807300e+00  -1.6297000e+00
-   2.5897500e+00  -1.6105700e+00
-   2.6137500e+00  -1.5597000e+00
-   2.6137500e+00  -1.5487000e+00
-   2.6057500e+00  -1.5487000e+00
-   2.6057500e+00  -1.5245700e+00
-   2.6264200e+00  -1.5103300e+00
-   2.6470800e+00  -1.5028100e+00
-   2.6677500e+00  -1.5003500e+00
-   2.6884200e+00  -1.5025500e+00
-   2.7090800e+00  -1.5097600e+00
-   2.7297500e+00  -1.5235300e+00
-   2.7297500e+00  -1.5487000e+00
-   2.7197500e+00  -1.5487000e+00
-   2.7197500e+00  -1.5597000e+00
-   2.7397500e+00  -1.6040800e+00
-   2.7513000e+00  -1.6297000e+00
-   2.7837500e+00  -1.7017000e+00
-   2.7837500e+00  -1.7157000e+00
-   2.7987400e+00  -1.7157000e+00
-   2.8017600e+00  -1.7167000e+00
-   2.8056900e+00  -1.7127700e+00
-   2.8609100e+00  -1.7127500e+00
-   2.8711400e+00  -1.7138000e+00
-   2.8809500e+00  -1.7169300e+00
-   2.9366300e+00  -1.7412700e+00
-   2.9464400e+00  -1.7444000e+00
-   2.9566800e+00  -1.7454500e+00
-   2.9877300e+00  -1.7454300e+00
-   2.9288000e+00  -1.6856300e+00
-   2.8968200e+00  -1.6856300e+00
-   2.8812500e+00  -1.6265500e+00
-   2.8800100e+00  -1.6202300e+00
-   2.8796000e+00  -1.6138100e+00
-   2.8796000e+00  -1.6047700e+00
-   2.8799200e+00  -1.5990900e+00
-   2.8808900e+00  -1.5934800e+00
-   2.8993700e+00  -1.5137000e+00
-   2.8901600e+00  -1.5017000e+00
-   2.8878300e+00  -1.4936200e+00
-   2.8863800e+00  -1.4867800e+00
-   2.8858900e+00  -1.4798000e+00
-   2.8858900e+00  -1.4381500e+00
-   2.8870900e+00  -1.4272600e+00
-   2.8906400e+00  -1.4168800e+00
-   2.9008400e+00  -1.3951800e+00
-   2.9065800e+00  -1.3858100e+00
-   2.9142300e+00  -1.3779100e+00
-   2.9639800e+00  -1.3368000e+00
-   3.0129400e+00  -1.3367800e+00
-   3.0154700e+00  -1.3400300e+00
-   3.3294000e+00  -1.0670000e+00
-   3.4907000e+00  -8.5920000e-01
-   3.5972000e+00  -7.2200000e-01
-   3.6605000e+00  -6.2670000e-01
-   3.7113000e+00  -5.2540000e-01
-   3.7665000e+00  -3.9470000e-01
-   3.8039000e+00  -2.8760000e-01
-   3.8352000e+00  -1.7870000e-01
-   3.8602000e+00  -6.8100000e-02
-   3.8789000e+00   4.3700000e-02
-   3.8913000e+00   1.5630000e-01
-   3.8972000e+00   2.6950000e-01
-   3.8967000e+00   3.8290000e-01
-   3.8897000e+00   4.9600000e-01
-   3.8764000e+00   6.0860000e-01
-   3.8622000e+00   6.9220000e-01
-   3.8307000e+00   8.3060000e-01
-   3.7984000e+00   9.3920000e-01
-   3.7601000e+00   1.0459000e+00
-   3.7157000e+00   1.1502000e+00
-   3.6787000e+00   1.2265000e+00
-   3.5881000e+00   1.4801000e+00
-   3.4635000e+00   1.5923000e+00
-   3.3038000e+00   1.7160000e+00
-   3.1528000e+00   1.8211000e+00
-   2.9806000e+00   1.9449000e+00
-   2.8887000e+00   1.9800000e+00
-   2.7897000e+00   2.0083000e+00
-   2.6826000e+00   2.0220000e+00
-   2.5797000e+00   2.0193000e+00
-   2.4832000e+00   2.0027000e+00
-   2.3854000e+00   1.9708000e+00
-   2.2842000e+00   1.9192000e+00
-   2.2474000e+00   1.8972000e+00
-   2.1316000e+00   1.6866000e+00
-   2.0481000e+00   1.4850000e+00
-   1.9399000e+00   1.1653000e+00
-   1.9122000e+00   1.0691000e+00
-   1.8876000e+00   9.7200000e-01
-   1.8663000e+00   8.7410000e-01
-   1.8482000e+00   7.7560000e-01
-   1.8334000e+00   6.7660000e-01
-   1.8219000e+00   5.7710000e-01
-   1.8137000e+00   4.7730000e-01
-   1.8088000e+00   3.7730000e-01
-   1.8073000e+00   2.7720000e-01
-   1.8090000e+00   1.7700000e-01
-   1.8141000e+00   7.7000000e-02
-   1.8225000e+00  -2.2800000e-02
-   1.8342000e+00  -1.2220000e-01
-   1.8491000e+00  -2.2130000e-01
-   1.8674000e+00  -3.1970000e-01
-   1.8889000e+00  -4.1750000e-01
-   1.9137000e+00  -5.1460000e-01
-   1.9416000e+00  -6.1070000e-01
-   2.0481000e+00  -9.2980000e-01
diff --git a/crpptbx_new/JET/jet_mkiigb_wall_coords2.m b/crpptbx_new/JET/jet_mkiigb_wall_coords2.m
deleted file mode 100644
index a43dd7f97f53d8c355cd13c6b622a805f52fffc9..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/jet_mkiigb_wall_coords2.m
+++ /dev/null
@@ -1,142 +0,0 @@
-rz=[2.0481 -0.9298
-2.1316	-1.1314
-2.29273	-1.3368
-2.36107	-1.33684
-2.3974	-1.3757
-2.41037	-1.40277
-2.40596	-1.38824
-2.41365	-1.42575
-2.41416	-1.43282
-2.41403	-1.42928
-2.41416	-1.47234
-2.41347	-1.48059
-2.41398	-1.47648
-2.40894	-1.5077
-2.39934	-1.5197
-2.42075	-1.59625
-2.42247	-1.61334
-2.42235	-1.60472
-2.42003	-1.6469
-2.41786	-1.65826
-2.41928	-1.65265
-2.40695	-1.693
-2.3688	-1.693
-2.3157	-1.74057
-2.35658	-1.74057
-2.36614	-1.73964
-2.37535	-1.7369
-2.42729	-1.71581
-2.43651	-1.71307
-2.44608	-1.71214
-2.52216	-1.71211
-2.53175	-1.7217
-2.53475	-1.7157
-2.54675	-1.7157
-2.54675	-1.7017
-2.58073	-1.6297
-2.58975	-1.61057
-2.61375	-1.5597
-2.61375	-1.5487
-2.60575	-1.5487
-2.60575	-1.52457
-2.62642	-1.51033
-2.64708	-1.50281
-2.66775	-1.50035
-2.68842	-1.50255
-2.70908	-1.50976
-2.72975	-1.52353
-2.72975	-1.5487
-2.71975	-1.5487
-2.71975	-1.5597
-2.73975	-1.60408
-2.7513	-1.6297
-2.78375	-1.7017
-2.78375	-1.7157
-2.79874	-1.7157
-2.80176	-1.7167
-2.80569	-1.71277
-2.86091	-1.71275
-2.87114	-1.7138
-2.88095	-1.71693
-2.93663	-1.74127
-2.94644	-1.7444
-2.95668	-1.74545
-2.98773	-1.74543
-2.9288	-1.68563
-2.89682	-1.68563
-2.88125	-1.62655
-2.88001	-1.62023
-2.8796	-1.61381
-2.8796	-1.60477
-2.87992	-1.59909
-2.88089	-1.59348
-2.89937	-1.5137
-2.89016	-1.5017
-2.88783	-1.49362
-2.88638	-1.48678
-2.88589	-1.4798
-2.88589	-1.43815
-2.88709	-1.42726
-2.89064	-1.41688
-2.90084	-1.39518
-2.90658	-1.38581
-2.91423	-1.37791
-2.96398	-1.3368
-3.01294	-1.33678
-3.01547	-1.34003
-3.3294	-1.067
-3.4907	-0.8592
-3.5972	-0.722
-3.6605	-0.6267
-3.7113	-0.5254
-3.7665	-0.3947
-3.8039	-0.2876
-3.8352	-0.1787
-3.8602	-0.0681
-3.8789	0.0437
-3.8913	0.1563
-3.8972	0.2695
-3.8967	0.3829
-3.8897	0.496
-3.8764	0.6086
-3.8622	0.6922
-3.8307	0.8306
-3.7984	0.9392
-3.7601	1.0459
-3.7157	1.1502
-3.6787	1.2265
-3.5881	1.4801
-3.4635	1.5923
-3.3038	1.716
-3.1528	1.8211
-2.9806	1.9449
-2.8887	1.98
-2.7897	2.0083
-2.6826	2.022
-2.5797	2.0193
-2.4832	2.0027
-2.3854	1.9708
-2.2842	1.9192
-2.2474	1.8972
-2.1316	1.6866
-2.0481	1.485
-1.9399	1.1653
-1.9122	1.0691
-1.8876	0.972
-1.8663	0.8741
-1.8482	0.7756
-1.8334	0.6766
-1.8219	0.5771
-1.8137	0.4773
-1.8088	0.3773
-1.8073	0.2772
-1.809	0.177
-1.8141	0.077
-1.8225	-0.0228
-1.8342	-0.1222
-1.8491	-0.2213
-1.8674	-0.3197
-1.8889	-0.4175
-1.9137	-0.5146
-1.9416	-0.6107
-2.0481	-0.9298];
diff --git a/crpptbx_new/JET/loadJETdata.m b/crpptbx_new/JET/loadJETdata.m
deleted file mode 100644
index c2e4ab03001810dbc08899344e3df3fde564e7e3..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/loadJETdata.m
+++ /dev/null
@@ -1,648 +0,0 @@
-function [trace,error,varargout]=loadJETdata(shot,data_type,varargin)
-%
-% data_type:
-% 'Ip'   =  current
-% 'zmag' =  vertical position of the center of the plasma (magnetic axis)
-% 'rmag' =  radial position of the center of the plasma 
-% 'rcont' =  R of plama boundary vs time
-% 'zcont' =  Z of plama boundary vs time
-% 'vol' =  volume of flux surfaces vs rho=sqrt(psi)
-% 'qrho' =  q profile on rho mesh
-% 'q95' =  q95 vs time
-% 'kappa', 'elon' =  edge elongation vs time
-% 'delta', 'triang' =  edge averaged triangularity vs time
-% 'deltatop', 'triangtop' =  edge upper (top) triangularity vs time
-% 'deltabot', 'triangbot' =  edge lower (bottom) triangularity vs time
-% 'n1' or 'n2': n=1 or n=2 MHD signal
-% 'neint' =  line-integrated electron density [m/m^3]
-% 'ne'= ne raw profile on (R,t). ADD error bars in .std
-% 'te'= Te raw profile on (R,t). ADD error bars in .std
-% 'nerho'= ne profile on (rho=sqrt(psi),time) mesh.Note rho is a 2D array as depends on time. ADD error bars in .std
-% 'terho'= Te profile on (rho=sqrt(psi),time) mesh.Note rho is a 2D array as depends on time. ADD error bars in .std
-%          Now, use CHAIN2 lid2/neo and teo for nerho, terho
-% 'ece'  =  electron cyclotron emission
-% 'sxr'  =  soft x-ray emission 
-% 'sxR'  =  soft x-ray emission with varargout{1} option (requires varargin{5}!)
-% 'halpha'= Dalpha signal
-%
-% Special case compatible with old gdat.m allows (JET related):
-%     gdat(51994,'ppf','efit/xip',...) % omitting the 'JET' input as assumes JET if 3rd argument is a string
-%
-% examples:
-%     aa=gdat(51994,'ppf/efit/xip',1,'JET');
-%     aa=gdat(55379,'jpf/di/c1f-chan8/131?type=lpf+diag=kc1f',1); % KC1F
-%     aa=gdat(53290,'jpf/di/c3-cats<c:001?type=lpf+diag=cats1',0,'JET')  % long magnetic 8s by 001, 002, 003, 004 blocks
-%     aa=gdat(53290,'jpf/di/c3-cats<h:301?type=lpf+diag=cats1',0,'JET'); % fast data coils 301, 302, etc
-%     sxr10=gdat(53290,'jpf/db/j3-sxr<v10/1',1,'JET');
-%
-% INPUT:
-% shot: shot number
-% data_type: type of the required data.
-%
-% Allows extension for uid and seq number a la RDA: ?uid=jetthg+seq=110
-% examples:
-%
-%                          data_type='Ip?uid=jetthg+seq=110'
-%                          data_type='ppf','efit/xip?uid=jetthg+seq=110'
-%
-% for EFIT traces, allows keyword extension '_m' to get data from ppf/efitm instead of ppf/efit
-% examples:
-%
-%                          data_type='Ip_m?uid=jetthg+seq=110'
-%                          data_type='ppf','efitm/xip?uid=jetthg+seq=110'
-%
-% Meaning of varargin depends on data_type:
-%
-% data_type=sxr or ece:
-%                  varargin{1}:  [i1 i2] : if not empty, assumes need many chords from i1 to i2
-%                  varargin{2}:  channel status: 1=unread yet, 0=read
-%                                (for traces with many channel, enables to load additional channels,
-%                                 like SXR, ECE, etc.)
-%                  varargin{3}:  zmag for varargout{1} computation
-%                  varargin{4}, {5} (used by AUG, time interval and skip interval to reduce time points)
-%                  varargin{6}: sxr camera extra option: use to choose R projection: 
-%                               empty or '0'=default (intersection with zmag with 5 degrees)
-%                               '1'=fixed to B. Alper R array (fixed in time)
-%
-% OUTPUT:
-% trace.data:   data structure
-% trace.t:      time of reference 
-% trace.x:      space of reference 
-% error:        error in loading signal (0=> OK, 1=> error)
-%
-% Additional Output arguments depending on data_type
-%
-% data_type=sxR:
-%                varargout{1}: intersection of the view lines with magnetic axis
-%                              uses 5 degrees and zmag (varargin{3} if given) as default
-%                              if varargin{4}==1, uses B. Alper fixed R array for V camera
-%
-% functions needed: jetreaddata or mdsplus routines
-%
-% Example:
-%         [zmag,error]=loadJETdata(shot,'zmag');
-%         [n2,error]=loadJETdata(shot,'jpf/da/c1-g102');
-%         [halpha,error]=loadJETdata(shot,'jpf/dd/s3-ad35');
-%
-
-varargout={cell(1,1)};
-error=1;
-
-% To allow multiple ways of writing a specific keyword, use data_type_eff within this routine
-data_type_eff=data_type;
-if size(data_type_eff,1)==1
-  i=findstr('/',data_type_eff);
-  if length(i)>1
-    % assumes given a la 'ppf/efit/xip'
-    data_type_eff=[{data_type_eff(1:i(1)-1)} ; {data_type_eff(i(1)+1:end)}];
-  end
-end
-
-i_efitm=0;
-i_ext=length(data_type_eff)+1;
-name_ext='';
-if size(data_type_eff,1)==1
-  i=findstr('?',data_type_eff);
-  if ~isempty(i)
-    i_ext=i;
-    name_ext=data_type_eff(i_ext:end);
-  end
-  data_type_eff_noext=data_type_eff(1:i_ext-1);
-  i=findstr('_m',data_type_eff_noext);
-  if ~isempty(i)
-    i_efitm=1;
-    data_type_eff_noext=data_type_eff(1:i-1);
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'ip'} {'i_p'} {'xip'}],'exact'))
-    data_type_eff_noext='Ip';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Te'} {'t_e'} {'TE'} {'T_e'}],'exact'))
-    data_type_eff_noext='te';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Ne'} {'n_e'} {'NE'} {'N_e'}],'exact'))
-    data_type_eff_noext='ne';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Terho'}],'exact'))
-    data_type_eff_noext='terho';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'SXR'}],'exact'))
-    data_type_eff_noext='sxr';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'ECE'}],'exact'))
-    data_type_eff_noext='ece';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'VOL'} {'volume'}],'exact'))
-    data_type_eff_noext='vol';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'q_95'} {'Q95'}],'exact'))
-    data_type_eff_noext='q95';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'elongation'} {'elon'}],'exact'))
-    data_type_eff_noext='kappa';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'triangularity'} {'triang'}],'exact'))
-    data_type_eff_noext='delta';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'deltaup'} {'deltau'} {'triangtop'} {'triangu'} {'triangup'}],'exact'))
-    data_type_eff_noext='deltatop';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'deltalow'} {'deltal'} {'triangbot'} {'triangl'} {'trianglow'}],'exact'))
-    data_type_eff_noext='deltabot';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'halpha'} {'Halpha'}],'exact'))
-    data_type_eff_noext='halpha';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'n1'} {'N1'}],'exact'))
-    data_type_eff_noext='n1';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'n2'} {'N2'}],'exact'))
-    data_type_eff_noext='n2';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Rmag'}],'exact'))
-    data_type_eff_noext='rmag';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Zmag'}],'exact'))
-    data_type_eff_noext='zmag';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Rcont'}],'exact'))
-    data_type_eff_noext='rcont';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Zcont'}],'exact'))
-    data_type_eff_noext='zcont';
-  end
-else
-  i_ext=length(data_type_eff{2})+1;
-  name_ext='';
-  i=findstr('?',data_type_eff{2});
-  if ~isempty(i)
-    i_ext=i;
-    name_ext=data_type_eff{2}(i_ext:end);
-  end
-  data_type_eff_noext=data_type_eff{2}(1:i_ext-1);
-end
-
-% all keywords and corresponding case to run below
-JETkeywrdall=[{'Ip'} {'zmag'} {'rmag'} {'rcont'} {'zcont'} {'vol'} {'qrho'} {'q95'} {'kappa'} ...
-      {'delta'} {'deltatop'} {'deltabot'} {'halpha'} {'n1'} {'n2'} {'neint'} ...
-      {'ne'} {'te'} {'nerho'} {'terho'} ...
-      {'sxr'} {'sxR'} {'ece'}];
-JETsig.iip=strmatch('Ip',JETkeywrdall,'exact');
-JETsig.izmag=strmatch('zmag',JETkeywrdall,'exact');
-JETsig.irmag=strmatch('rmag',JETkeywrdall,'exact');
-JETsig.ircont=strmatch('rcont',JETkeywrdall,'exact');
-JETsig.izcont=strmatch('zcont',JETkeywrdall,'exact');
-JETsig.ivol=strmatch('vol',JETkeywrdall,'exact');
-JETsig.iqrho=strmatch('qrho',JETkeywrdall,'exact');
-JETsig.iq95=strmatch('q95',JETkeywrdall,'exact');
-JETsig.ikappa=strmatch('kappa',JETkeywrdall,'exact');
-JETsig.idelta=strmatch('delta',JETkeywrdall,'exact');
-JETsig.ideltatop=strmatch('deltatop',JETkeywrdall,'exact');
-JETsig.ideltabot=strmatch('deltabot',JETkeywrdall,'exact');
-JETsig.ihalpha=strmatch('halpha',JETkeywrdall,'exact');
-JETsig.in1=strmatch('n1',JETkeywrdall,'exact');
-JETsig.in2=strmatch('n2',JETkeywrdall,'exact');
-JETsig.ineint=strmatch('neint',JETkeywrdall,'exact');
-JETsig.ine=strmatch('ne',JETkeywrdall,'exact');
-JETsig.ite=strmatch('te',JETkeywrdall,'exact');
-JETsig.inerho=strmatch('nerho',JETkeywrdall,'exact');
-JETsig.iterho=strmatch('terho',JETkeywrdall,'exact');
-JETsig.isxr=strmatch('sxr',JETkeywrdall,'exact');
-JETsig.isxR=strmatch('sxR',JETkeywrdall,'exact');
-JETsig.iece=strmatch('ece',JETkeywrdall,'exact');
-
-% For each keyword, specify which case to use. As most common is 'simplereaddata', fill in with this and change
-% only indices needed. Usually use name of case same as keyword name
-JETkeywrdcase=cell(size(JETkeywrdall));
-JETkeywrdcase(:)={'simplereaddata'};
-JETkeywrdcase(JETsig.iqrho)=JETkeywrdall(JETsig.iqrho); % special as efit q on psi
-JETkeywrdcase(JETsig.idelta)=JETkeywrdall(JETsig.idelta); % special as average of triu and tril
-JETkeywrdcase(JETsig.ine)=JETkeywrdall(JETsig.ine); % special as adds error bars
-JETkeywrdcase(JETsig.ite)=JETkeywrdall(JETsig.ite); % idem
-JETkeywrdcase(JETsig.inerho)=JETkeywrdall(JETsig.inerho); % idem
-JETkeywrdcase(JETsig.iterho)=JETkeywrdall(JETsig.iterho); % idem
-JETkeywrdcase(JETsig.isxr)=JETkeywrdall(JETsig.isxr);
-JETkeywrdcase(JETsig.isxR)=JETkeywrdall(JETsig.isxR);
-JETkeywrdcase(JETsig.iece)=JETkeywrdall(JETsig.iece);
-
-% Information about which dimension has time, always return 2D data as (x,t) array
-% as most are 1D arrays with time as first index, fill in with ones and change only those needed
-JETsigtimeindx=ones(size(JETkeywrdall));
-
-% For the 'simplereaddata' cases, we need the full node in case gdat was called with full location directly
-% for the other cases, leave this location empty
-JETsiglocation=cell(2,size(JETkeywrdall,2));
-JETsiglocation(:)={''};
-JETsiglocation(:,JETsig.iip)={'ppf'; 'efit/xip'};
-JETsiglocation(:,JETsig.izmag)={'ppf'; 'efit/zmag'};
-JETsiglocation(:,JETsig.irmag)={'ppf'; 'efit/rmag'};
-JETsiglocation(:,JETsig.ircont)={'ppf' ; 'efit/rbnd'}; JETsigtimeindx(JETsig.ircont)=2;
-JETsiglocation(:,JETsig.izcont)={'ppf' ; 'efit/zbnd'}; JETsigtimeindx(JETsig.izcont)=2;
-JETsiglocation(:,JETsig.ivol)={'ppf'; 'equi/vol'};
-JETsiglocation(:,JETsig.iq95)={'ppf'; 'efit/q95'};
-JETsiglocation(:,JETsig.ikappa)={'ppf'; 'efit/elon'};
-JETsiglocation(:,JETsig.ideltatop)={'ppf'; 'efit/triu'};
-JETsiglocation(:,JETsig.ideltabot)={'ppf'; 'efit/tril'};
-JETsiglocation(:,JETsig.ihalpha)={'jpf'; 'dd/s3-ad35'};
-JETsiglocation(:,JETsig.in1)={'jpf'; 'da/c1-g101'};
-JETsiglocation(:,JETsig.in2)={'jpf'; 'da/c1-g102'};
-JETsiglocation(:,JETsig.ineint)={'ppf'; 'kg1v/lid3'};
-
-% initialize order of substructures and allows just a "return" if data empty
-trace.data=[];
-trace.x=[];
-trace.t=[];
-trace.dim=[];
-trace.dimunits=[];
-trace.name=[];
-
-% find index of signal called upon
-if size(data_type_eff,1)==2
-  % in case node name was given in 2 parts directly (as old way)
-  ii1=strmatch(data_type_eff(1),JETsiglocation(1,:),'exact');
-  iiindex=strmatch(data_type_eff_noext,JETsiglocation(2,ii1),'exact');
-  if ~isempty(iiindex)
-    index=ii1(iiindex);
-  else
-    index=[];
-  end
-  if isempty(index)
-% $$$     disp('********************')
-% $$$     disp('trace not yet registered.')
-% $$$     disp('If standard data, ask andrea.scarabosio@epfl.ch or olivier.sauter@epfl.ch to create a keyqord entry for this data')
-%    eval(['!mail -s ''' data_type_eff{1} ' ' data_type_eff{2} ' ' num2str(shot) ' ' ...
-%          getenv('USER') ' JET'' olivier.sauter@epfl.ch < /dev/null'])
-    disp('********************')
-    % temporarily add entry in arrays, so can work below
-    index=length(JETkeywrdall)+1;
-    JETkeywrdall(end+1)={'new'};
-    JETkeywrdcase(end+1)={'simplereaddata'};
-    JETsiglocation(1:2,end+1)=[data_type_eff(1) ; {data_type_eff_noext}];
-    JETsigtimeindx(end+1)=0;
-  elseif ~strcmp(JETkeywrdcase{index},'simplereaddata')
-    msgbox(['Problem in loadJETdata with data_type_eff = ' char(data_type_eff(end)) ...
-          '. Full paths of nodes should only be for case simplereaddata'],'in loadJETdata','error')
-    error('in loadJETdata')
-  end
-else
-  index=strmatch(data_type_eff_noext,JETkeywrdall,'exact');
-  if isempty(index)
-    disp(' ')
-    disp('********************')
-    if iscell(data_type_eff)
-      disp(['no such keyword: ' data_type_eff{1} '/' data_type_eff{2}])
-    else
-      disp(['no such keyword: ' data_type_eff])
-    end
-    disp(' ')
-    disp('Available keywords:')
-    JETkeywrdall(:)
-    disp('********************')
-    return
-  end
-end
-disp(' ')
-if iscell(data_type_eff)
-  disp(['loading' ' ' data_type_eff{1} '/' data_type_eff{2} ' from JET shot #' num2str(shot)]); 
-else
-  disp(['loading' ' ' data_type_eff ' from JET shot #' num2str(shot)]); 
-end
-disp(['case ' JETkeywrdcase{index}])
-disp(' ')
-switch JETkeywrdcase{index}
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'simplereaddata'
-
-    ppftype=JETsiglocation{1,index};
-    if i_efitm; 
-      tracename=['eftm' JETsiglocation{2,index}(5:end) name_ext];
-    else
-      tracename=[JETsiglocation{2,index} name_ext];
-    end
-    ij=find(tracename~='''');
-    tracename=tracename(ij);
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    switch tracename
-      case {'efit/btpd','efit/btpd?uid=jetppf+seq=0'}
-        if isempty(a) | isempty(t);
-          disp('data or t empty, assumes means btpd not defined');
-          [xip,x,t,d,e]=rda_eff(shot,'ppf','efit/xip');
-          shot_mg3_list=[47274 47275 47276 47280 47281 47282 47283 47284 47285 47286 47287 47290 47295 47296 47301];
-          if isempty(find(shot_mg3_list==shot))
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','efit/wdia');
-          else
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','mg3/wpd');
-            wdia=interp1(t1,wdia,t);
-          end
-          [rgeo,x3,t3,d,e]=rda_eff(shot,'ppf','efit/rgeo');
-          a=2.122e6 .* wdia ./xip.^2 ./ rgeo;
-        end
-      case {'efit/btnd','efit/btnd?uid=jetppf+seq=0'}
-        if isempty(a) | isempty(t);
-          disp('data or t empty, assumes means btnd not defined');
-          [xip,x,t,d,e]=rda_eff(shot,'ppf','efit/xip');
-          shot_mg3_list=[47274 47275 47276 47280 47281 47282 47283 47284 47285 47286 47287 47290 47295 47296 47301];
-          if isempty(find(shot_mg3_list==shot))
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','efit/wdia');
-          else
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','mg3/wpd');
-            wdia=interp1(t1,wdia,t);
-          end
-          [rgeo,x3,t3,d,e]=rda_eff(shot,'ppf','efit/rgeo');
-          [cr0,x3,t3,d,e]=rda_eff(shot,'ppf','efit/cr0');
-          [bvac,x3,t3,d,e]=rda_eff(shot,'ppf','efit/bvac');
-          [volm,x3,t3,d,e]=rda_eff(shot,'ppf','efit/volm');
-          a=56.605.*wdia.*cr0.*rgeo./xip./volm./bvac;
-        end
-
-      case {'LIDR/Z','lidr/z','Lidr/Z','LIDR/Z?uid=jetppf+seq=0'}
-        % 1D but vs R instead of t
-        x=t;
-        t=[];
-        
-      end
-    
-    trace.data=a;
-    trace.x=x;
-    trace.t=t;
-    clear error
-    error=e;
-    if length(size(trace.data))==1 | (length(size(trace.data))==2 & size(trace.data,2)==1)
-      trace.dim=[{trace.t}];
-      trace.dimunits={'time [s]'};
-    elseif length(size(trace.data))==2
-      trace.dim=[{trace.x} ; {trace.t}];
-      trace.dimunits=[{'R [m] or rho=sqrt(psi_norm)'} ; {'time [s]'}];
-    else
-      disp('how to deal with 3D arrays?')
-      trace.dim=[{trace.x} ; {trace.t} ; {d}];
-      trace.dimunits=[{'R [m] or rho=sqrt(psi_norm)'} ; {'time [s]'} ; {'d'}];
-      trace.d=d;
-    end
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case JETkeywrdall{JETsig.iqrho}
-    %  q profile on sqrt(psi_norm)
-    ppftype='ppf';
-    if i_efitm
-      tracename=['eftm/q' name_ext];
-    else
-      tracename=['efit/q' name_ext];
-    end
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    trace.data=a;
-    trace.x=sqrt(x); % x is psi (? to test)
-    trace.t=t;
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'sqrt(\psi)'} ; {'time [s]'}];
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case JETkeywrdall{JETsig.idelta}
-    %  average of delatop and deltabot
-    ppftype='ppf';
-    tracename1=['efit/triu' name_ext];
-    tracename2=['efit/tril' name_ext];
-    [a1,x,t,d,e]=rda_eff(shot,ppftype,tracename1);
-    [a2,x,t,d,e]=rda_eff(shot,ppftype,tracename2);
-    trace.data=0.5.*(a1+a2);
-    trace.x=x;
-    trace.t=t;
-    trace.dim=[{trace.t}];
-    trace.dimunits=[{'time [s]'}];
-    trace.name=[ppftype '/' num2str(shot) '/efit/0.5(triu+tril)'];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {JETkeywrdall{JETsig.ine} , JETkeywrdall{JETsig.ite}}
-    %  ne, te raw data from LIDR vs R,t. Add error bars
-    ppftype='ppf';
-    if strcmp(JETkeywrdcase{index},JETkeywrdall{JETsig.ine})
-      tracename=['LIDR/NE' name_ext];
-    else
-      tracename=['LIDR/TE' name_ext];
-    end
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    trace.data=a;
-    trace.x=x;
-    trace.t=t;
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'R [m]'} ; {'time [s]'}];
-    trace.std=[];
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {JETkeywrdall{JETsig.inerho} , JETkeywrdall{JETsig.iterho}}
-    %  ne, te on rho mesh. use lid2, thus need chain2 to have been run. Add error bars
-    ppftype='ppf';
-    if strcmp(JETkeywrdcase{index},JETkeywrdall{JETsig.inerho})
-      tracename=['LID2/NEO' name_ext];
-    else
-      tracename=['LID2/TEO' name_ext];
-    end
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    trace.data=a;
-    trace.x=x;
-    trace.t=t;
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'rho=sqrt(psi)'} ; {'time [s]'}];
-    trace.std=[];
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'sxr','sxR'}
-    %  LOAD MULTI CHANNEL DATA    
-    %  load JET soft x-ray data 
-    % parameters needed for correct convertion of JET Sxr data
-    vconvert=   [1.379 1.311 1.249 1.191 1.139 1.093 1.049 ...
-          1.011 0.975 0.945 0.917 0.893 0.873 0.856 ...
-          0.842 0.829 0.821 0.815 0.821 0.829 0.842 ...
-          0.856 0.873 0.894 0.918 0.946 0.976 1.012 ...
-          1.050 1.094 1.141 1.193 1.251 1.313 1.382];
-    rconvert= [3.45 3.43 3.41 3.37 3.33 3.28 3.23 3.18 3.14 ...
-          3.09 3.05 3.00 2.94 2.89 2.83 2.77 2.72 2.68 2.63 ...
-          2.59 2.55 2.49 2.44 2.40 2.37 2.33 2.29 2.26 2.23 ...
-          2.19 2.14 2.12 2.10 2.08 2.06];
-    if  nargin>=3 & ~isempty(varargin{1})
-      starti=varargin{1}(1);
-      endi=varargin{1}(2);
-    else
-      starti=1;
-      endi=24;
-    end
-    if  nargin>=4 & ~isempty(varargin{2})
-      status=varargin{2};
-    else
-      status=ones(endi-starti+1,1);
-    end
-    trace.t=[];
-    trace.x=[];
-    iloaded_data=0;
-    for i=starti:endi
-      % Read channels from lowchannel to upchannel if necessary
-      if status(i)==1
-        iloaded_data=iloaded_data+1;
-        % Status=1 => Not Read Yet
-        % vertical SXR chords
-        ppftype='jpf';
-        tracename=['db/j3-sxr<v' num2str(i) '/1' name_ext];
-        if shot<48000
-          tracename=['db/j3-sxr<t' num2str(i) '/1' name_ext];
-          disp('Using T camera: Radius data probably wrong')
-        end
-        a=which('jpfdat');
-        if isempty(a)
-          [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-          % Convert from raw sxr data to W/m^2
-          % EDIT: on JET a is not empty on error
-          if ~isempty(a)
-            if ~isempty(t)
-              trace.data(i,:) = a * vconvert(i);
-              trace.t=t;
-              if ~isempty(x)
-                trace.x(i,:)=x; 
-              end
-            end
-            error=e;
-          end  
-        else
-          disp(['Reading channel ' tracename]);
-          [a, t, nwds, title, unit, ier] = jpfdat(tracename, shot);
-          if ~ier
-            % Convert from raw sxr data to W/m^2
-            trace.data(i,:) = a' * vconvert(i);
-            trace.t=t';
-          end
-        end
-        trace.dim=[{[starti:endi]'} ; {trace.t}];
-        trace.dimunits=[{'channels'} ; {'time [s]'}];
-        trace.name=[ 'jpf/' num2str(shot) '/' 'db/j3-sxr<vXX' '/1' name_ext];
-      end
-    end
-    if isempty(trace.t)
-      disp(['no data in ' trace.name])
-      return
-    end
-  % calculating intersection of the view lines with magnetics axis 
-  if strcmp(data_type_eff_noext,'sxR')
-    if iloaded_data>0
-      if nargin>=5 & ~isempty(varargin{3})
-        zmag=varargin{3};
-      else
-        zmag=loadJETdata(shot,'zmag');
-      end
-      zmageff=interp1(zmag.t,zmag.data,trace.t);
-      for i=starti:endi
-        radius.data(i,:)=2.848 + (2.172-zmageff') .* tan(-5.0/180.*3.14159 - atan2(0.99.*(i-18),35.31));
-      end
-      iii=0;
-      if nargin>=8 & ~isempty(varargin{6})
-        iii=str2num(varargin{6});
-      end
-      if iii==1
-        for i=starti:endi
-          radius.data(i,:)=rconvert(i);
-        end
-        disp('uses B. Alper fixed R array for SXR R intersection')
-      end
-      radius.t=t;
-      varargout{1}={radius}; 
-      trace.R=radius.data;
-    else
-      varargout{1}={struct([])};
-      trace.R=[];
-    end
-  end
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'ece'
-    if  nargin>=3 & ~isempty(varargin{1})
-      starti=varargin{1}(1);
-      endi=varargin{1}(2);
-    else
-      starti=1;
-      endi=24;
-    end
-    if nargin>=4 & ~isempty(varargin{2})
-      status=varargin{2};
-    else
-      status=ones(endi,1);
-    end
-    % Read channels from lowchannel to upchannel if necessary     
-    for i=starti:endi
-      if status(i)==1
-        % ECE, te0
-        % Status=1 => Not Read Yet
-        ppftype='ppf';
-        tracename=['kk3/te' num2str(i,'%2.2d') name_ext];
-        disp(tracename)
-        a=which('ppfread');
-        if isempty(a) | ~isempty(name_ext)
-          [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-          if isempty(a) & size(trace.data,2)>1
-            trace.data(i,:)=NaN;
-          else
-            trace.data(i,:)=a;
-            trace.t=t;
-          end
-          if ~isempty(x); trace.x(i,:)=x'; end;
-          error=e;
-        else
-          [a,x,t,unitd,unitx,unitt,comment,sequence,e]= ...
-              ppfread(shot,'KK3',['TE' num2str(i,'%2.2d')]);
-          if isempty(a) & size(trace.data,2)>1
-            trace.data(i,:)=NaN;
-          else
-            trace.data(i,:)=a';
-            trace.t=t';
-          end
-          if ~isempty(x); trace.x(i,:)=x; end;
-          error=e;
-        end
-        
-        ppftypeR='ppf';
-        tracenameR=['kk3/rc' num2str(i,'%2.2d') name_ext];
-        a=which('ppfdat');
-        if isempty(a) | ~isempty(name_ext)
-          [a,x,t,d,e]=rda_eff(shot,ppftypeR,tracenameR);
-          if isempty(a) & size(trace.data,2)>1
-            radius.data(i,:)=NaN;
-          else
-            radius.data(i,:)=a;
-            radius.t=t;
-            radius.x=x;
-          end
-        else
-          [a,x,t,unitd,unitx,unitt,comment,sequence,e]= ...
-              ppfread(shot,'KK3',['RC' num2str(i,'%2.2d')]);
-          if isempty(a) & size(trace.data,2)>1
-            radius.data(i,:)=NaN;
-          else
-            radius.data(i,:)=a';
-            radius.t=t';
-            radius.x=x';
-          end
-        end
-      end
-    end 
-    trace.dim=[{[starti:endi]'} ; {trace.t}];
-    trace.dimunits=[{'channels'} ; {'time [s]'}];
-    trace.name=[ 'ppf/' num2str(shot) '/' 'kk3/teXX' name_ext ];
-    if exist('radius')
-      varargout={{radius}}; 
-      for i=starti:endi
-        trace.R(i,:)=interp1(radius.t,radius.data(i,:),trace.t);
-      end
-    else
-      varargout={{struct([])}};
-      trace.R=[];
-    end
-
-  otherwise
-    disp('case not yet defined')
-    
-end
diff --git a/crpptbx_new/JET/mapflux_fast.m b/crpptbx_new/JET/mapflux_fast.m
deleted file mode 100644
index d7698a5c1bac2950f5beabe892c8f5a2987a4554..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/mapflux_fast.m
+++ /dev/null
@@ -1,110 +0,0 @@
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-function flux=mapflux_fast(cij,ri,zi,r,z,varargin)
-
-% mapflux : carte de flux normalise (r,z) sur jet
-%
-% syntaxe :   flux=mapflux(cij,ri,zi,r,z)
-%
-% entrees :
-% 	cij : coefficients bspline (efit/sspr(nr+nz+1:nr+nz+nc))
-% 	ri  : points de controle pour r (efit/sspr(1:nr))
-% 	zi  : points de controle pour z (efit/sspr(nr+1:nr+nz))
-% 	r   : grille en r pour la carte de flux (vecteur)
-% 	z   : grille en z pour la carte de flux (vecteur)
-%
-%    varargin{1}=1: output as diagonal of flux to get psin on (R,Z) set of points
-%                0: output full matrix (default)
-%    varargin{1}=1: limits spline calculation to relevant ri,zi points
-%                   (useful when computing on a few (r,z) points)
-%                   (default)
-%               =0: compute all splines (slightly faster when whole grid needed)
-%
-% sortie :
-% 	flux : matrice donnant le flux normalise sur la grille (r,z)
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% auteur : patrick maget
-% date : 13/10/2000
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-nr=length(ri);
-nz=length(zi);
-nrout=length(r);
-nzout=length(z);
-r=reshape(r,1,length(r));
-z=reshape(z,1,length(z));
-absplr=zeros(nrout,nr-4);
-if nargin>6 & varargin{2}==0
-  i1=1;
-  i2=nr-4;
-else
-  ii=find(ri>=min(r));i1=ii(1);
-  ii=find(ri>max(r));
-  if ~isempty(ii)
-    i2=ii(1);
-  else
-    i2=nr;
-  end
-end
-for i=max(1,i1-4):min(nr-4,i2-1)
-   absplr(:,i)=bsplinev(ri,r,3,i)';
-end
-absplz=zeros(nz-4,nzout);
-if nargin>6 & varargin{2}==0
-  i1=1;
-  i2=nz-4;
-else
-  ii=find(zi>=min(z));i1=ii(1);
-  ii=find(zi>max(z));
-  if ~isempty(ii)
-    i2=ii(1);
-  else
-    i2=nz;
-  end
-end
-for j=max(1,i1-4):min(nz-4,i2-1)
-  absplz(j,:)=bsplinev(zi,z,3,j);
-end
-cij2D=reshape(cij,nz-4,nr-4)';
-flux=absplr*(cij2D*absplz);
-if ~isempty(varargin) & varargin{1}
-  flux=diag(flux);
-end
-
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% fonction b-spline
-% bki=bspline(ti,t,k,i)
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% auteur : patrick maget 
-% date : 14/12/99
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% retourne pour la valeur de i, 
-% le vecteur de poids correspondant au vecteur de demande t
-% seuls les elements de t situes entre ti(i) et ti(i+k+1) ont un poids non nul
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-function bki=bsplinev(ti,t,k,i)
-
-if (i>=length(ti))
-   bki=0.0;
-elseif (k==0)
-   bki= ((t>=ti(i))&(t<ti(i+1)));
- %  if ((t<ti(i)) | (t>=ti(i+1)))
- %     bki=0.0;
- %  else
- %     bki=1.0;
- %  end
-else
-   if (ti(i+k)==ti(i))
-      fac1=0.0;
-   else
-      fac1=(t-ti(i))/(ti(i+k)-ti(i));
-   end
-   if (ti(i+k+1)==ti(i+1))
-      fac2=0.0;
-   else
-      fac2=(ti(i+k+1)-t)/(ti(i+k+1)-ti(i+1));
-   end
-   bki=fac1.*bsplinev(ti,t,k-1,i)+fac2.*bsplinev(ti,t,k-1,i+1);
-end
diff --git a/crpptbx_new/JET/psinrzjet.m b/crpptbx_new/JET/psinrzjet.m
deleted file mode 100644
index 84d105ed286e962af36523ee55803296badadb09..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/psinrzjet.m
+++ /dev/null
@@ -1,138 +0,0 @@
-function [r,z,psinrz,sspr,sspi,tefit_eff]=psinrzjet(shot,time,nrg_rg,nzg_zg,efitlab,uid,seq,varargin);
-%
-% function [r,z,psinrz,sspr,sspi,tefit_eff]=psinrzjet(shot,time,nrg_rg,nzg_zg,efitlab,uid,seq,varargin);
-%
-% psirz : reconstruction des surfaces de flux
-% 
-% ce programme utilise les donnees de efit ou eftm
-% 
-% examples:
-%  [r,z,psinrz,sspr,sspi]=psinrzjet(shot,time,nrg_rg,nzg_zg,[efitlab,uid,seq,ncont]);
-%  [r,z,psinrz,sspr,sspi]=psinrzjet(50814,60,65,65,[],[],[],60,sspr,sspi); % to get plot and give sspr,sspi
-%  [r,z,psinrz]=psinrzjet(50814,60.4,[3 3.2],[0 0.1],[],[],[],0,sspr,sspi,[],1); % 
-%
-% entrees :
-% shot : numero du choc jet
-% time   : time de l'analyse
-% nrg_rg, nzg_zg: nb de points de la grille en r (resp. en z) sur laquelle on fait la 
-%           reconstruction des surfaces de flux.
-%           if nzg_zg is negative, make symmetric box around zero
-%           if array, assumes rout and zout given firectly
-% varargin{1}: plot option: 0: do not plot contours, >0 plot contour with varargin{1} nb of contours (60 is good)
-% varargin{2}: sspr from ppf/efit/sspr, structure containing sspr.data and sspr.t
-% varargin{3}: sspi from ppf/efit/sspi, structure containing sspi.data and sspi.t
-% varargin{4}: deltaz
-% varargin{5}: idiag: =1 : gives diag(psinrz) as output to give psi at (r,z) points
-%              idiag=0 (default) full matrix as output
-%
-% facultatifs :
-% efitlab : efit ou eftm (efitlab=efit par defaut)
-% uid     : eventuellement, donnees ppf privees (uid='jetppf' par defaut).
-% seq     : "sequence number" de l'uid (0 par defaut -> version la plus recente)
-%
-% sorties :
-% r, z    : vecteurs de la grille (r,z)
-% psinrz  : matrice psin(r,z) (flux normalise)
-%
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-if nargin<=4 | isempty(efitlab)
-  efitlab='efit';
-end
-if nargin<=5 | isempty(uid)
-  uid='jetppf';
-end
-if nargin<=6 | isempty(seq)
-  seqd='0';
-else
-  if ischar(seq)
-    seqd=seq;
-  else
-    seqd=num2str(seq);
-  end
-end
-ncont=0;
-if nargin>=8 & ~isempty(varargin{1})
-  ncont=varargin{1};
-end
-
-% equilibre magnetique
-%---------------------
-if nargin>=9 & ~isempty(varargin{2})
-  sspr=varargin{2};
-else
-  sspr=gdat(shot,'ppf',[efitlab '/sspr?uid=' uid '+seq=' seqd]);
-end
-ssprs=sspr.data;
-tpefit=sspr.t;
-if nargin>=10 & ~isempty(varargin{3})
-  sspi=varargin{3};
-else
-  sspi=gdat(shot,'ppf',[efitlab '/sspi?uid=' uid '+seq=' seqd]);
-end
-sspis=sspi.data;
-tpefit=sspi.t;
-if nargin>=11 & ~isempty(varargin{4})
-  deltaz=varargin{4};
-else
-  deltaz=0;
-end
-if nargin>=12 & ~isempty(varargin{5})
-  idiag=varargin{5};
-else
-  idiag=0;
-end
-  
-[x,ind]=min(abs(time-tpefit));
-tefit_eff=tpefit(ind);
-
-sspr_t=ssprs(:,ind);
-sspi_t=sspis(:,ind);
-
-nr=sspi_t(1);
-nz=sspi_t(2);
-nc=sspi_t(3);
-ri=sspr_t(1:nr);
-zi=sspr_t((nr+1):(nr+nz));
-cij=sspr_t((nr+nz+1):(nr+nz+nc));
-
-rmin=0.01*sspr_t(1);
-rmax=0.01*sspr_t(nr);
-zmin=0.01*sspr_t(nr+1);
-zmax=0.01*sspr_t(nr+nz);
-
-rmin=rmin+1e-4;
-rmax=rmax-1e-4;
-zmin=zmin+1e-4;
-zmax=zmax-1e-4;
-
-if length(nrg_rg)==1 & length(nzg_zg)==1
-  r=linspace(rmin,rmax,nrg_rg);
-  z=linspace(zmin,zmax,abs(nzg_zg));
-  if nzg_zg<0
-    zlim=max(abs(zmin-deltaz),abs(zmax+deltaz));
-    z=linspace(-zlim-deltaz,zlim-deltaz,abs(nzg_zg));
-  end
-else
-  r=nrg_rg;
-  z=nzg_zg;
-end
-
-% mapflux contruit la carte de flux psin sur (r,z)
-psinrz=mapflux_fast(cij,0.01*ri,0.01*zi,r,z,idiag);
-
-if ncont>0
-  figure
-  contour(r,z,psinrz',ncont);
-  hold on
-  [h1, h2]=contour(r,z,psinrz',[1 1],'k');
-  for i=1:length(h2)
-    set(h2(i),'LineWidth',2);
-  end
-  ss=sprintf('%.4f',time);
-  title(['JET #' num2str(shot) ' t= ' ss])
-  xlabel('R [m]')
-  ylabel('Z [m]')
-  axis equal
-  axis([rmin rmax zmin zmax])
-end
diff --git a/crpptbx_new/JET/psirz.m b/crpptbx_new/JET/psirz.m
deleted file mode 100644
index 72abd3a4cbb9d87a4d425fb5ec624076ee86c6cd..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/psirz.m
+++ /dev/null
@@ -1,185 +0,0 @@
-function [r,z,psinrz,sspr,sspi]=psirz(shot,time,nrg,nzg,efitlab,uid,seqd,varargin);
-%
-% psirz : reconstruction des surfaces de flux
-% 
-% ce programme utilise les donnees de efit ou eftm
-% 
-% examples:
-%  [r,z,psinrz,sspr,sspi]=psirz(shot,time,nrg,nzg,[efitlab,uid,seq,ncont]);
-%  [r,z,psinrz,sspr,sspi]=psirz(50814,60,65,65,[],[],[],60,sspr,sspi); % to get plot and give sspr,sspi
-%
-% entrees :
-% shot : numero du choc jet
-% time   : time de l'analyse
-% nrg, nzg: nb de points de la grille en r (resp. en z) sur laquelle on fait la 
-%           reconstruction des surfaces de flux.
-%           if nzg is negative, make symmetric box around zero
-% varargin{1}: plot option: 0: do not plot contours, >0 plot contour with varargin{1} nb of contours (60 is good)
-% varargin{2}: sspr from ppf/efit/sspr, structure containing sspr.data and sspr.t
-% varargin{3}: sspi from ppf/efit/sspi, structure containing sspi.data and sspi.t
-% varargin{4}: deltaz
-%
-% facultatifs :
-% efitlab : efit ou eftm (efitlab=efit par defaut)
-% uid     : eventuellement, donnees ppf privees (uid='jetppf' par defaut).
-% seq     : "sequence number" de l'uid (0 par defaut -> version la plus recente)
-%
-% sorties :
-% r, z    : vecteurs de la grille (r,z)
-% psinrz  : matrice psin(r,z) (flux normalise)
-%
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-if nargin<=4 | isempty(efitlab)
-  efitlab='efit';
-end
-if nargin<=5 | isempty(uid)
-  uid='jetppf';
-end
-if nargin<=6 | isempty(seqd)
-  seqd='0';
-end
-ncont=0;
-if nargin>=8 & ~isempty(varargin{1})
-  ncont=varargin{1};
-end
-
-% equilibre magnetique
-%---------------------
-if nargin>=9 & ~isempty(varargin{2})
-  sspr=varargin{2};
-else
-  sspr=gdat(shot,'ppf',[efitlab '/sspr?uid=' uid '+seq=' seqd]);
-end
-ssprs=sspr.data;
-tpefit=sspr.t;
-if nargin>=10 & ~isempty(varargin{3})
-  sspi=varargin{3};
-else
-  sspi=gdat(shot,'ppf',[efitlab '/sspi?uid=' uid '+seq=' seqd]);
-end
-sspis=sspi.data;
-tpefit=sspi.t;
-if nargin>=11 & ~isempty(varargin{4})
-  deltaz=varargin{4};
-else
-  deltaz=0;
-end
-  
-[x,ind]=min(abs(time-tpefit));
-sspr_t=ssprs(:,ind);
-sspi_t=sspis(:,ind);
-
-nr=sspi_t(1);
-nz=sspi_t(2);
-nc=sspi_t(3);
-ri=sspr_t(1:nr);
-zi=sspr_t((nr+1):(nr+nz));
-cij=sspr_t((nr+nz+1):(nr+nz+nc));
-
-rmin=0.01*sspr_t(1);
-rmax=0.01*sspr_t(nr);
-zmin=0.01*sspr_t(nr+1);
-zmax=0.01*sspr_t(nr+nz);
-
-rmin=rmin+1e-4;
-rmax=rmax-1e-4;
-zmin=zmin+1e-4;
-zmax=zmax-1e-4;
-
-r=linspace(rmin,rmax,nrg);
-z=linspace(zmin,zmax,abs(nzg));
-if nzg<0
-  zlim=max(abs(zmin-deltaz),abs(zmax+deltaz));
-  z=linspace(-zlim-deltaz,zlim-deltaz,abs(nzg));
-end
-
-% mapflux contruit la carte de flux psin sur (r,z)
-psinrz=mapflux(cij,0.01*ri,0.01*zi,r,z);
-
-if ncont>0
-  figure
-  contour(r,z,psinrz',ncont);
-  hold on
-  [h1, h2]=contour(r,z,psinrz',[1 1],'k');
-  for i=1:length(h2)
-    set(h2(i),'LineWidth',2);
-  end
-  ss=sprintf('%.4f',time);
-  title(['JET #' num2str(shot) ' t= ' ss])
-  xlabel('R [m]')
-  ylabel('Z [m]')
-  axis equal
-  axis([rmin rmax zmin zmax])
-end
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-function flux=mapflux(cij,ri,zi,r,z)
-
-% mapflux : carte de flux normalise (r,z) sur jet
-%
-% syntaxe :   flux=mapflux(cij,ri,zi,r,z)
-%
-% entrees :
-% 	cij : coefficients bspline (efit/sspr(nr+nz+1:nr+nz+nc))
-% 	ri  : points de controle pour r (efit/sspr(1:nr))
-% 	zi  : points de controle pour z (efit/sspr(nr+1:nr+nz))
-% 	r   : grille en r pour la carte de flux (vecteur)
-% 	z   : grille en z pour la carte de flux (vecteur)
-%
-% sortie :
-% 	flux : matrice donnant le flux normalise sur la grille (r,z)
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% auteur : patrick maget
-% date : 13/10/2000
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-nr=length(ri);
-nz=length(zi);
-fpq=zeros(length(r),length(z));
-for i=1:(nr-4)
-   for j=1:(nz-4)
-      fpq=fpq+cij(j+(i-1)*(nz-4))*bsplinev(ri,r,3,i)'*bsplinev(zi,z,3,j);
-   end
-end
-flux=fpq;
-
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% fonction b-spline
-% bki=bspline(ti,t,k,i)
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% auteur : patrick maget 
-% date : 14/12/99
-%~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-% retourne pour la valeur de i, 
-% le vecteur de poids correspondant au vecteur de demande t
-% seuls les elements de t situes entre ti(i) et ti(i+k+1) ont un poids non nul
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-function bki=bsplinev(ti,t,k,i)
-
-if (i>=length(ti))
-   bki=0.0;
-elseif (k==0)
-   bki= ((t>=ti(i))&(t<ti(i+1)));
- %  if ((t<ti(i)) | (t>=ti(i+1)))
- %     bki=0.0;
- %  else
- %     bki=1.0;
- %  end
-else
-   if (ti(i+k)==ti(i))
-      fac1=0.0;
-   else
-      fac1=(t-ti(i))/(ti(i+k)-ti(i));
-   end
-   if (ti(i+k+1)==ti(i+1))
-      fac2=0.0;
-   else
-      fac2=(ti(i+k+1)-t)/(ti(i+k+1)-ti(i+1));
-   end
-   bki=fac1.*bsplinev(ti,t,k-1,i)+fac2.*bsplinev(ti,t,k-1,i+1);
-end
diff --git a/crpptbx_new/JET/rda_eff.m b/crpptbx_new/JET/rda_eff.m
deleted file mode 100644
index b1bb601bce43cee0451135fbabfdc13fc98a86fd..0000000000000000000000000000000000000000
--- a/crpptbx_new/JET/rda_eff.m
+++ /dev/null
@@ -1,189 +0,0 @@
-function [data,x,time,hsig,error]=rda_eff(shot,pftype,tracename,varargin);
-%
-% gets data using RDA or mdsplus
-% 1D arrays: assumes dimension is time
-% 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
-%              (DOES NOT WORK YET)
-%
-% examples:
-%          [data,x,time,hsig,error]=rda_eff(51994,'ppf','efit/xip');
-%          [data,x,time,hsig,error]=rda_eff(52206,'ppf','equi/rmji?uid=jetthg+seq=122');
-%
-% set global variable: usemdsplus to decide if RDA or mdsplus is used:
-%    >> global usemdsplus
-%    >> usemdsplus=1 % means use mds to get data (default if not defined)
-%    >> usemdsplus=0 % means use jetreaddata routine (RDA)
-%       if ~exist('usemdsplus'); usemdsplus=1; end
-%
-
-global usemdsplus
-if isempty(usemdsplus); usemdsplus=1; end
-time_int=[];
-if nargin>=4 & ~isempty(varargin{1})
-  time_int=varargin{1};
-end
-
-if usemdsplus
-  % use mdsplus
-  
-  if ~unix('test -d /home/duval/mdsplus')
-    addpath('/home/duval/mdsplus')
-  end
-  mdsconnect('mdsplus.jet.efda.org');
-
-  % defines trace to fetch
-  % after '?' specific details
-  separator='+';
-  mainseparator='?';
-  imaintrace=findstr(mainseparator,tracename);
-  if isempty(imaintrace)
-    maintrace=tracename;
-    uid=[];
-    seq=[];
-    diag=[];
-    type=[];
-  else
-    maintrace=tracename(1:imaintrace-1);
-    rest=tracename(imaintrace+1:end);
-    % gets uid if any
-    iuid=findstr('uid=',rest);
-    if isempty(iuid)
-      uid=[];
-    else
-      ii=findstr(separator,rest(iuid:end));
-      if isempty(ii)
-        uid=rest(iuid+4:end);
-      else
-        uid=rest(iuid+4:iuid+ii(1)-2);
-      end
-    end
-    % gets seq if any
-    iseq=findstr('seq=',rest);
-    if isempty(iseq)
-      seq=[];
-    else
-      ii=findstr(separator,rest(iseq:end));
-      if isempty(ii)
-        seq=rest(iseq+4:end);
-      else
-        seq=rest(iseq+4:iseq+ii(1)-2);
-      end
-    end
-    % gets type if any
-    itype=findstr('type=',rest);
-    if isempty(itype)
-      type=[];
-    else
-      ii=findstr(separator,rest(itype:end));
-      if isempty(ii)
-        type=rest(itype+5:end);
-      else
-        type=rest(itype+5:itype+ii(1)-2);
-      end
-    end
-    % gets diag if any
-    idiag=findstr('diag=',rest);
-    if isempty(idiag)
-      diag=[];
-    else
-      ii=findstr(separator,rest(idiag:end));
-      if isempty(ii)
-        diag=rest(idiag+5:end);
-      else
-        diag=rest(idiag+5:idiag+ii(1)-2);
-      end
-    end
-    
-  end
-  
-  % fetch value
-  if ~isempty(uid)
-    eval(['u=mdsvalue(''_sig=ppfuid("' uid '")'');'])
-  end
-  if strcmpi(type,'lpf')
-    pftype=[type '/' diag];
-  end
-  traceeff=[pftype '/' maintrace];
-  if ~isempty(seq)
-    traceeff=[traceeff '/' num2str(seq)];
-  end
-  user=getenv('USER');
-  eval(['[data,error]=mdsvalue(''_rdaeff' user '=jet("' traceeff '",' num2str(shot) ')'');'])
-  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 ',0)'');']);
-    x=[];
-    if isempty(time) & length(data)>1e6 & strcmpi(type,'lpf') & strcmpi(diag,'kc1f')
-      mdsdisconnect;
-      mdsconnect('mdsplus.jet.efda.org');
-      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))';
-    end
-    if isempty(time) & length(data)>1e6 & strcmpi(type,'lpf') & strcmpi(diag,'cats1')
-      ichannel=findstr(':00',maintrace);
-      iblock=str2num(maintrace(ichannel+3));
-      mdsdisconnect;
-      mdsconnect('mdsplus.jet.efda.org');
-      taaa=39.9989+(iblock-1)*8;
-      time=linspace(taaa,taaa+8-4e-6,length(data))';
-    end
-  case 2
-    eval(['x=mdsvalue(''dim_of(_rdaeff' user ',0)'');']);
-    eval(['time=mdsvalue(''dim_of(_rdaeff' user ',1)'');']);
-
-  case 3
-    eval(['x=mdsvalue(''dim_of(_rdaeff' user ',0)'');']);
-    eval(['time=mdsvalue(''dim_of(_rdaeff' user ',1)'');']);
-    disp('3rd dimension in hsig!!!!!!!!!!!!!!!!!!!!!!!!!')
-    eval(['hsig=mdsvalue(''dim_of(_rdaeff' user ',2)'');']);
-
-  otherwise
-    disp([' more than 3 dimensions for ' num2str(shot) ' ; ' pftype '/' tracename])
-    error('in rda_eff')
-    
-  end
-
-  mdsdisconnect;
-  if ~unix('test -d /home/duval/mdsplus')
-    rmpath('/home/duval/mdsplus')
-  end
-
-else
-  % use RDA
-  [a,time,x,hsig,error]=jetreaddata(['http://data.jet.uk/' pftype '/' num2str(shot) '/' tracename]);
-  % transpose data as output in C format, reversed from Fortran and matlab standard
-  ss=size(a);
-  nbofdim=length(ss);
-  if ss(end)==1; nbofdim=nbofdim-1; end
-  nbofdim=max(nbofdim,1);
-  if nbofdim==1
-    data=a;
-  else
-    data=a';
-  end
-end
-
-% to prevent problems when trace empty and time become string
-if ischar(time)
-  time=[];
-end
-if ischar(x)
-  x=[];
-end
-if isempty(x) & ~isempty(data) & data==0
-  data=[];
-end
-
-if isempty(data)
-  x=[];
-  time=[];
-end
diff --git a/crpptbx_new/KSTAR/loadKSTARdata.m b/crpptbx_new/KSTAR/loadKSTARdata.m
deleted file mode 100644
index 01c29260f561c9ce5af05feac83355e03f9095a7..0000000000000000000000000000000000000000
--- a/crpptbx_new/KSTAR/loadKSTARdata.m
+++ /dev/null
@@ -1,639 +0,0 @@
-function [trace,error,varargout]=loadKSTARdata(shot,data_type,varargin)
-%
-% data_type:
-% 'Ip'   =  current
-% 'zmag' =  vertical position of the center of the plasma (magnetic axis)
-% 'rmag' =  radial position of the center of the plasma 
-% 'rcont' =  R of plama boundary vs time
-% 'zcont' =  Z of plama boundary vs time
-% 'vol' =  volume of flux surfaces vs rho=sqrt(psi)
-% 'qrho' =  q profile on rho mesh
-% 'q95' =  q95 vs time
-% 'kappa', 'elon' =  edge elongation vs time
-% 'delta', 'triang' =  edge averaged triangularity vs time
-% 'deltatop', 'triangtop' =  edge upper (top) triangularity vs time
-% 'deltabot', 'triangbot' =  edge lower (bottom) triangularity vs time
-% 'n1' or 'n2': n=1 or n=2 MHD signal
-% 'neint' =  line-integrated electron density [m/m^3]
-% 'ne'= ne raw profile on (R,t). ADD error bars in .std
-% 'te'= Te raw profile on (R,t). ADD error bars in .std
-% 'nerho'= ne profile on (rho=sqrt(psi),time) mesh.Note rho is a 2D array as depends on time. ADD error bars in .std
-% 'terho'= Te profile on (rho=sqrt(psi),time) mesh.Note rho is a 2D array as depends on time. ADD error bars in .std
-%          Now, use CHAIN2 lid2/neo and teo for nerho, terho
-% 'ece'  =  electron cyclotron emission
-% 'sxr'  =  soft x-ray emission 
-% 'sxR'  =  soft x-ray emission with varargout{1} option (requires varargin{5}!)
-% 'halpha'= Dalpha signal
-%
-%
-% INPUT:
-% shot: shot number
-% data_type: type of the required data.
-%
-% Allows extension for uid and seq number a la RDA: ?uid=jetthg+seq=110
-% examples:
-%
-%                          data_type='Ip?uid=jetthg+seq=110'
-%                          data_type='ppf','efit/xip?uid=jetthg+seq=110'
-%
-% for EFIT traces, allows keyword extension '_m' to get data from ppf/efitm instead of ppf/efit
-% examples:
-%
-%                          data_type='Ip_m?uid=jetthg+seq=110'
-%                          data_type='ppf','efitm/xip?uid=jetthg+seq=110'
-%
-% Meaning of varargin depends on data_type:
-%
-% data_type=sxr or ece:
-%                  varargin{1}:  [i1 i2] : if not empty, assumes need many chords from i1 to i2
-%                  varargin{2}:  channel status: 1=unread yet, 0=read
-%                                (for traces with many channel, enables to load additional channels,
-%                                 like SXR, ECE, etc.)
-%                  varargin{3}:  zmag for varargout{1} computation
-%                  varargin{4}, {5} (used by AUG, time interval and skip interval to reduce time points)
-%                  varargin{6}: sxr camera extra option: use to choose R projection: 
-%                               empty or '0'=default (intersection with zmag with 5 degrees)
-%                               '1'=fixed to B. Alper R array (fixed in time)
-%
-% OUTPUT:
-% trace.data:   data structure
-% trace.t:      time of reference 
-% trace.x:      space of reference 
-% error:        error in loading signal (0=> OK, 1=> error)
-%
-% Additional Output arguments depending on data_type
-%
-% data_type=sxR:
-%                varargout{1}: intersection of the view lines with magnetic axis
-%                              uses 5 degrees and zmag (varargin{3} if given) as default
-%                              if varargin{4}==1, uses B. Alper fixed R array for V camera
-%
-% functions needed: jetreaddata or mdsplus routines
-%
-% Example:
-%         [zmag,error]=loadKSTARdata(shot,'zmag');
-%         [n2,error]=loadKSTARdata(shot,'jpf/da/c1-g102');
-%         [halpha,error]=loadKSTARdata(shot,'jpf/dd/s3-ad35');
-%
-
-varargout={cell(1,1)};
-error=1;
-
-% To allow multiple ways of writing a specific keyword, use data_type_eff within this routine
-data_type_eff=data_type;
-if size(data_type_eff,1)==1
-  i=findstr('/',data_type_eff);
-  if length(i)>1
-    % assumes given a la 'ppf/efit/xip'
-    data_type_eff=[{data_type_eff(1:i(1)-1)} ; {data_type_eff(i(1)+1:end)}];
-  end
-end
-
-i_efitm=0;
-i_ext=length(data_type_eff)+1;
-name_ext='';
-if size(data_type_eff,1)==1
-  i=findstr('?',data_type_eff);
-  if ~isempty(i)
-    i_ext=i;
-    name_ext=data_type_eff(i_ext:end);
-  end
-  data_type_eff_noext=data_type_eff(1:i_ext-1);
-  i=findstr('_m',data_type_eff_noext);
-  if ~isempty(i)
-    i_efitm=1;
-    data_type_eff_noext=data_type_eff(1:i-1);
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'ip'} {'i_p'} {'xip'}],'exact'))
-    data_type_eff_noext='Ip';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Te'} {'t_e'} {'TE'} {'T_e'}],'exact'))
-    data_type_eff_noext='te';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Ne'} {'n_e'} {'NE'} {'N_e'}],'exact'))
-    data_type_eff_noext='ne';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Terho'}],'exact'))
-    data_type_eff_noext='terho';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'SXR'}],'exact'))
-    data_type_eff_noext='sxr';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'ECE'}],'exact'))
-    data_type_eff_noext='ece';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'VOL'} {'volume'}],'exact'))
-    data_type_eff_noext='vol';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'q_95'} {'Q95'}],'exact'))
-    data_type_eff_noext='q95';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'elongation'} {'elon'}],'exact'))
-    data_type_eff_noext='kappa';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'triangularity'} {'triang'}],'exact'))
-    data_type_eff_noext='delta';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'deltaup'} {'deltau'} {'triangtop'} {'triangu'} {'triangup'}],'exact'))
-    data_type_eff_noext='deltatop';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'deltalow'} {'deltal'} {'triangbot'} {'triangl'} {'trianglow'}],'exact'))
-    data_type_eff_noext='deltabot';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'halpha'} {'Halpha'}],'exact'))
-    data_type_eff_noext='halpha';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'n1'} {'N1'}],'exact'))
-    data_type_eff_noext='n1';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'n2'} {'N2'}],'exact'))
-    data_type_eff_noext='n2';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Rmag'}],'exact'))
-    data_type_eff_noext='rmag';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Zmag'}],'exact'))
-    data_type_eff_noext='zmag';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Rcont'}],'exact'))
-    data_type_eff_noext='rcont';
-  end
-  if ~isempty(strmatch(data_type_eff_noext,[{'Zcont'}],'exact'))
-    data_type_eff_noext='zcont';
-  end
-else
-  i_ext=length(data_type_eff{2})+1;
-  name_ext='';
-  i=findstr('?',data_type_eff{2});
-  if ~isempty(i)
-    i_ext=i;
-    name_ext=data_type_eff{2}(i_ext:end);
-  end
-  data_type_eff_noext=data_type_eff{2}(1:i_ext-1);
-end
-
-% all keywords and corresponding case to run below
-KSTARkeywrdall=[{'Ip'} {'zmag'} {'rmag'} {'rcont'} {'zcont'} {'vol'} {'qrho'} {'q95'} {'kappa'} ...
-      {'delta'} {'deltatop'} {'deltabot'} {'halpha'} {'n1'} {'n2'} {'neint'} ...
-      {'ne'} {'te'} {'nerho'} {'terho'} ...
-      {'sxr'} {'sxR'} {'ece'}];
-KSTARsig.iip=strmatch('Ip',KSTARkeywrdall,'exact');
-KSTARsig.izmag=strmatch('zmag',KSTARkeywrdall,'exact');
-KSTARsig.irmag=strmatch('rmag',KSTARkeywrdall,'exact');
-KSTARsig.ircont=strmatch('rcont',KSTARkeywrdall,'exact');
-KSTARsig.izcont=strmatch('zcont',KSTARkeywrdall,'exact');
-KSTARsig.ivol=strmatch('vol',KSTARkeywrdall,'exact');
-KSTARsig.iqrho=strmatch('qrho',KSTARkeywrdall,'exact');
-KSTARsig.iq95=strmatch('q95',KSTARkeywrdall,'exact');
-KSTARsig.ikappa=strmatch('kappa',KSTARkeywrdall,'exact');
-KSTARsig.idelta=strmatch('delta',KSTARkeywrdall,'exact');
-KSTARsig.ideltatop=strmatch('deltatop',KSTARkeywrdall,'exact');
-KSTARsig.ideltabot=strmatch('deltabot',KSTARkeywrdall,'exact');
-KSTARsig.ihalpha=strmatch('halpha',KSTARkeywrdall,'exact');
-KSTARsig.in1=strmatch('n1',KSTARkeywrdall,'exact');
-KSTARsig.in2=strmatch('n2',KSTARkeywrdall,'exact');
-KSTARsig.ineint=strmatch('neint',KSTARkeywrdall,'exact');
-KSTARsig.ine=strmatch('ne',KSTARkeywrdall,'exact');
-KSTARsig.ite=strmatch('te',KSTARkeywrdall,'exact');
-KSTARsig.inerho=strmatch('nerho',KSTARkeywrdall,'exact');
-KSTARsig.iterho=strmatch('terho',KSTARkeywrdall,'exact');
-KSTARsig.isxr=strmatch('sxr',KSTARkeywrdall,'exact');
-KSTARsig.isxR=strmatch('sxR',KSTARkeywrdall,'exact');
-KSTARsig.iece=strmatch('ece',KSTARkeywrdall,'exact');
-
-% For each keyword, specify which case to use. As most common is 'simplereaddata', fill in with this and change
-% only indices needed. Usually use name of case same as keyword name
-KSTARkeywrdcase=cell(size(KSTARkeywrdall));
-KSTARkeywrdcase(:)={'simplereaddata'};
-KSTARkeywrdcase(KSTARsig.iqrho)=KSTARkeywrdall(KSTARsig.iqrho); % special as efit q on psi
-KSTARkeywrdcase(KSTARsig.idelta)=KSTARkeywrdall(KSTARsig.idelta); % special as average of triu and tril
-KSTARkeywrdcase(KSTARsig.ine)=KSTARkeywrdall(KSTARsig.ine); % special as adds error bars
-KSTARkeywrdcase(KSTARsig.ite)=KSTARkeywrdall(KSTARsig.ite); % idem
-KSTARkeywrdcase(KSTARsig.inerho)=KSTARkeywrdall(KSTARsig.inerho); % idem
-KSTARkeywrdcase(KSTARsig.iterho)=KSTARkeywrdall(KSTARsig.iterho); % idem
-KSTARkeywrdcase(KSTARsig.isxr)=KSTARkeywrdall(KSTARsig.isxr);
-KSTARkeywrdcase(KSTARsig.isxR)=KSTARkeywrdall(KSTARsig.isxR);
-KSTARkeywrdcase(KSTARsig.iece)=KSTARkeywrdall(KSTARsig.iece);
-
-% Information about which dimension has time, always return 2D data as (x,t) array
-% as most are 1D arrays with time as first index, fill in with ones and change only those needed
-KSTARsigtimeindx=ones(size(KSTARkeywrdall));
-
-% For the 'simplereaddata' cases, we need the full node in case gdat was called with full location directly
-% for the other cases, leave this location empty
-KSTARsiglocation=cell(2,size(KSTARkeywrdall,2));
-KSTARsiglocation(:)={''};
-KSTARsiglocation(:,KSTARsig.iip)={'ppf'; 'efit/xip'};
-KSTARsiglocation(:,KSTARsig.izmag)={'ppf'; 'efit/zmag'};
-KSTARsiglocation(:,KSTARsig.irmag)={'ppf'; 'efit/rmag'};
-KSTARsiglocation(:,KSTARsig.ircont)={'ppf' ; 'efit/rbnd'}; KSTARsigtimeindx(KSTARsig.ircont)=2;
-KSTARsiglocation(:,KSTARsig.izcont)={'ppf' ; 'efit/zbnd'}; KSTARsigtimeindx(KSTARsig.izcont)=2;
-KSTARsiglocation(:,KSTARsig.ivol)={'ppf'; 'equi/vol'};
-KSTARsiglocation(:,KSTARsig.iq95)={'ppf'; 'efit/q95'};
-KSTARsiglocation(:,KSTARsig.ikappa)={'ppf'; 'efit/elon'};
-KSTARsiglocation(:,KSTARsig.ideltatop)={'ppf'; 'efit/triu'};
-KSTARsiglocation(:,KSTARsig.ideltabot)={'ppf'; 'efit/tril'};
-KSTARsiglocation(:,KSTARsig.ihalpha)={'jpf'; 'dd/s3-ad35'};
-KSTARsiglocation(:,KSTARsig.in1)={'jpf'; 'da/c1-g101'};
-KSTARsiglocation(:,KSTARsig.in2)={'jpf'; 'da/c1-g102'};
-KSTARsiglocation(:,KSTARsig.ineint)={'ppf'; 'kg1v/lid3'};
-
-% initialize order of substructures and allows just a "return" if data empty
-trace.data=[];
-trace.x=[];
-trace.t=[];
-trace.dim=[];
-trace.dimunits=[];
-trace.name=[];
-
-% find index of signal called upon
-if size(data_type_eff,1)==2
-  % in case node name was given in 2 parts directly (as old way)
-  ii1=strmatch(data_type_eff(1),KSTARsiglocation(1,:),'exact');
-  iiindex=strmatch(data_type_eff_noext,KSTARsiglocation(2,ii1),'exact');
-  if ~isempty(iiindex)
-    index=ii1(iiindex);
-  else
-    index=[];
-  end
-  if isempty(index)
-% $$$     disp('********************')
-% $$$     disp('trace not yet registered.')
-% $$$     disp('If standard data, ask andrea.scarabosio@epfl.ch or olivier.sauter@epfl.ch to create a keyqord entry for this data')
-%    eval(['!mail -s ''' data_type_eff{1} ' ' data_type_eff{2} ' ' num2str(shot) ' ' ...
-%          getenv('USER') ' KSTAR'' olivier.sauter@epfl.ch < /dev/null'])
-    disp('********************')
-    % temporarily add entry in arrays, so can work below
-    index=length(KSTARkeywrdall)+1;
-    KSTARkeywrdall(end+1)={'new'};
-    KSTARkeywrdcase(end+1)={'simplereaddata'};
-    KSTARsiglocation(1:2,end+1)=[data_type_eff(1) ; {data_type_eff_noext}];
-    KSTARsigtimeindx(end+1)=0;
-  elseif ~strcmp(KSTARkeywrdcase{index},'simplereaddata')
-    msgbox(['Problem in loadKSTARdata with data_type_eff = ' char(data_type_eff(end)) ...
-          '. Full paths of nodes should only be for case simplereaddata'],'in loadKSTARdata','error')
-    error('in loadKSTARdata')
-  end
-else
-  index=strmatch(data_type_eff_noext,KSTARkeywrdall,'exact');
-  if isempty(index)
-    disp(' ')
-    disp('********************')
-    if iscell(data_type_eff)
-      disp(['no such keyword: ' data_type_eff{1} '/' data_type_eff{2}])
-    else
-      disp(['no such keyword: ' data_type_eff])
-    end
-    disp(' ')
-    disp('Available keywords:')
-    KSTARkeywrdall(:)
-    disp('********************')
-    return
-  end
-end
-disp(' ')
-if iscell(data_type_eff)
-  disp(['loading' ' ' data_type_eff{1} '/' data_type_eff{2} ' from KSTAR shot #' num2str(shot)]); 
-else
-  disp(['loading' ' ' data_type_eff ' from KSTAR shot #' num2str(shot)]); 
-end
-disp(['case ' KSTARkeywrdcase{index}])
-disp(' ')
-switch KSTARkeywrdcase{index}
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'simplereaddata'
-
-    ppftype=KSTARsiglocation{1,index};
-    if i_efitm; 
-      tracename=['eftm' KSTARsiglocation{2,index}(5:end) name_ext];
-    else
-      tracename=[KSTARsiglocation{2,index} name_ext];
-    end
-    ij=find(tracename~='''');
-    tracename=tracename(ij);
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    switch tracename
-      case {'efit/btpd','efit/btpd?uid=jetppf+seq=0'}
-        if isempty(a) | isempty(t);
-          disp('data or t empty, assumes means btpd not defined');
-          [xip,x,t,d,e]=rda_eff(shot,'ppf','efit/xip');
-          shot_mg3_list=[47274 47275 47276 47280 47281 47282 47283 47284 47285 47286 47287 47290 47295 47296 47301];
-          if isempty(find(shot_mg3_list==shot))
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','efit/wdia');
-          else
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','mg3/wpd');
-            wdia=interp1(t1,wdia,t);
-          end
-          [rgeo,x3,t3,d,e]=rda_eff(shot,'ppf','efit/rgeo');
-          a=2.122e6 .* wdia ./xip.^2 ./ rgeo;
-        end
-      case {'efit/btnd','efit/btnd?uid=jetppf+seq=0'}
-        if isempty(a) | isempty(t);
-          disp('data or t empty, assumes means btnd not defined');
-          [xip,x,t,d,e]=rda_eff(shot,'ppf','efit/xip');
-          shot_mg3_list=[47274 47275 47276 47280 47281 47282 47283 47284 47285 47286 47287 47290 47295 47296 47301];
-          if isempty(find(shot_mg3_list==shot))
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','efit/wdia');
-          else
-            [wdia,x1,t1,d,e]=rda_eff(shot,'ppf','mg3/wpd');
-            wdia=interp1(t1,wdia,t);
-          end
-          [rgeo,x3,t3,d,e]=rda_eff(shot,'ppf','efit/rgeo');
-          [cr0,x3,t3,d,e]=rda_eff(shot,'ppf','efit/cr0');
-          [bvac,x3,t3,d,e]=rda_eff(shot,'ppf','efit/bvac');
-          [volm,x3,t3,d,e]=rda_eff(shot,'ppf','efit/volm');
-          a=56.605.*wdia.*cr0.*rgeo./xip./volm./bvac;
-        end
-
-      case {'LIDR/Z','lidr/z','Lidr/Z','LIDR/Z?uid=jetppf+seq=0'}
-        % 1D but vs R instead of t
-        x=t;
-        t=[];
-        
-      end
-    
-    trace.data=a;
-    trace.x=x;
-    trace.t=t;
-    clear error
-    error=e;
-    if length(size(trace.data))==1 | (length(size(trace.data))==2 & size(trace.data,2)==1)
-      trace.dim=[{trace.t}];
-      trace.dimunits={'time [s]'};
-    elseif length(size(trace.data))==2
-      trace.dim=[{trace.x} ; {trace.t}];
-      trace.dimunits=[{'R [m] or rho=sqrt(psi_norm)'} ; {'time [s]'}];
-    else
-      disp('how to deal with 3D arrays?')
-      trace.dim=[{trace.x} ; {trace.t} ; {d}];
-      trace.dimunits=[{'R [m] or rho=sqrt(psi_norm)'} ; {'time [s]'} ; {'d'}];
-      trace.d=d;
-    end
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case KSTARkeywrdall{KSTARsig.iqrho}
-    %  q profile on sqrt(psi_norm)
-    ppftype='ppf';
-    if i_efitm
-      tracename=['eftm/q' name_ext];
-    else
-      tracename=['efit/q' name_ext];
-    end
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    trace.data=a;
-    trace.x=sqrt(x); % x is psi (? to test)
-    trace.t=t;
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'sqrt(\psi)'} ; {'time [s]'}];
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case KSTARkeywrdall{KSTARsig.idelta}
-    %  average of delatop and deltabot
-    ppftype='ppf';
-    tracename1=['efit/triu' name_ext];
-    tracename2=['efit/tril' name_ext];
-    [a1,x,t,d,e]=rda_eff(shot,ppftype,tracename1);
-    [a2,x,t,d,e]=rda_eff(shot,ppftype,tracename2);
-    trace.data=0.5.*(a1+a2);
-    trace.x=x;
-    trace.t=t;
-    trace.dim=[{trace.t}];
-    trace.dimunits=[{'time [s]'}];
-    trace.name=[ppftype '/' num2str(shot) '/efit/0.5(triu+tril)'];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {KSTARkeywrdall{KSTARsig.ine} , KSTARkeywrdall{KSTARsig.ite}}
-    %  ne, te raw data from LIDR vs R,t. Add error bars
-    ppftype='ppf';
-    if strcmp(KSTARkeywrdcase{index},KSTARkeywrdall{KSTARsig.ine})
-      tracename=['LIDR/NE' name_ext];
-    else
-      tracename=['LIDR/TE' name_ext];
-    end
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    trace.data=a;
-    trace.x=x;
-    trace.t=t;
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'R [m]'} ; {'time [s]'}];
-    trace.std=[];
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {KSTARkeywrdall{KSTARsig.inerho} , KSTARkeywrdall{KSTARsig.iterho}}
-    %  ne, te on rho mesh. use lid2, thus need chain2 to have been run. Add error bars
-    ppftype='ppf';
-    if strcmp(KSTARkeywrdcase{index},KSTARkeywrdall{KSTARsig.inerho})
-      tracename=['LID2/NEO' name_ext];
-    else
-      tracename=['LID2/TEO' name_ext];
-    end
-    [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-    trace.data=a;
-    trace.x=x;
-    trace.t=t;
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'rho=sqrt(psi)'} ; {'time [s]'}];
-    trace.std=[];
-    trace.name=[ppftype '/' num2str(shot) '/' tracename];
-    error=e;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'sxr','sxR'}
-    %  LOAD MULTI CHANNEL DATA    
-    %  load KSTAR soft x-ray data 
-    % parameters needed for correct convertion of KSTAR Sxr data
-    vconvert=   [1.379 1.311 1.249 1.191 1.139 1.093 1.049 ...
-          1.011 0.975 0.945 0.917 0.893 0.873 0.856 ...
-          0.842 0.829 0.821 0.815 0.821 0.829 0.842 ...
-          0.856 0.873 0.894 0.918 0.946 0.976 1.012 ...
-          1.050 1.094 1.141 1.193 1.251 1.313 1.382];
-    rconvert= [3.45 3.43 3.41 3.37 3.33 3.28 3.23 3.18 3.14 ...
-          3.09 3.05 3.00 2.94 2.89 2.83 2.77 2.72 2.68 2.63 ...
-          2.59 2.55 2.49 2.44 2.40 2.37 2.33 2.29 2.26 2.23 ...
-          2.19 2.14 2.12 2.10 2.08 2.06];
-    if  nargin>=3 & ~isempty(varargin{1})
-      starti=varargin{1}(1);
-      endi=varargin{1}(2);
-    else
-      starti=1;
-      endi=24;
-    end
-    if  nargin>=4 & ~isempty(varargin{2})
-      status=varargin{2};
-    else
-      status=ones(endi-starti+1,1);
-    end
-    trace.t=[];
-    trace.x=[];
-    iloaded_data=0;
-    for i=starti:endi
-      % Read channels from lowchannel to upchannel if necessary
-      if status(i)==1
-        iloaded_data=iloaded_data+1;
-        % Status=1 => Not Read Yet
-        % vertical SXR chords
-        ppftype='jpf';
-        tracename=['db/j3-sxr<v' num2str(i) '/1' name_ext];
-        if shot<48000
-          tracename=['db/j3-sxr<t' num2str(i) '/1' name_ext];
-          disp('Using T camera: Radius data probably wrong')
-        end
-        a=which('jpfdat');
-        if isempty(a)
-          [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-          % Convert from raw sxr data to W/m^2
-          % EDIT: on KSTAR a is not empty on error
-          if ~isempty(a)
-            if ~isempty(t)
-              trace.data(i,:) = a * vconvert(i);
-              trace.t=t;
-              if ~isempty(x)
-                trace.x(i,:)=x; 
-              end
-            end
-            error=e;
-          end  
-        else
-          disp(['Reading channel ' tracename]);
-          [a, t, nwds, title, unit, ier] = jpfdat(tracename, shot);
-          if ~ier
-            % Convert from raw sxr data to W/m^2
-            trace.data(i,:) = a' * vconvert(i);
-            trace.t=t';
-          end
-        end
-        trace.dim=[{[starti:endi]'} ; {trace.t}];
-        trace.dimunits=[{'channels'} ; {'time [s]'}];
-        trace.name=[ 'jpf/' num2str(shot) '/' 'db/j3-sxr<vXX' '/1' name_ext];
-      end
-    end
-    if isempty(trace.t)
-      disp(['no data in ' trace.name])
-      return
-    end
-  % calculating intersection of the view lines with magnetics axis 
-  if strcmp(data_type_eff_noext,'sxR')
-    if iloaded_data>0
-      if nargin>=5 & ~isempty(varargin{3})
-        zmag=varargin{3};
-      else
-        zmag=loadKSTARdata(shot,'zmag');
-      end
-      zmageff=interp1(zmag.t,zmag.data,trace.t);
-      for i=starti:endi
-        radius.data(i,:)=2.848 + (2.172-zmageff') .* tan(-5.0/180.*3.14159 - atan2(0.99.*(i-18),35.31));
-      end
-      iii=0;
-      if nargin>=8 & ~isempty(varargin{6})
-        iii=str2num(varargin{6});
-      end
-      if iii==1
-        for i=starti:endi
-          radius.data(i,:)=rconvert(i);
-        end
-        disp('uses B. Alper fixed R array for SXR R intersection')
-      end
-      radius.t=t;
-      varargout{1}={radius}; 
-      trace.R=radius.data;
-    else
-      varargout{1}={struct([])};
-      trace.R=[];
-    end
-  end
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'ece'
-    if  nargin>=3 & ~isempty(varargin{1})
-      starti=varargin{1}(1);
-      endi=varargin{1}(2);
-    else
-      starti=1;
-      endi=24;
-    end
-    if nargin>=4 & ~isempty(varargin{2})
-      status=varargin{2};
-    else
-      status=ones(endi,1);
-    end
-    % Read channels from lowchannel to upchannel if necessary     
-    for i=starti:endi
-      if status(i)==1
-        % ECE, te0
-        % Status=1 => Not Read Yet
-        ppftype='ppf';
-        tracename=['kk3/te' num2str(i,'%2.2d') name_ext];
-        disp(tracename)
-        a=which('ppfread');
-        if isempty(a) | ~isempty(name_ext)
-          [a,x,t,d,e]=rda_eff(shot,ppftype,tracename);
-          if isempty(a) & size(trace.data,2)>1
-            trace.data(i,:)=NaN;
-          else
-            trace.data(i,:)=a;
-            trace.t=t;
-          end
-          if ~isempty(x); trace.x(i,:)=x'; end;
-          error=e;
-        else
-          [a,x,t,unitd,unitx,unitt,comment,sequence,e]= ...
-              ppfread(shot,'KK3',['TE' num2str(i,'%2.2d')]);
-          if isempty(a) & size(trace.data,2)>1
-            trace.data(i,:)=NaN;
-          else
-            trace.data(i,:)=a';
-            trace.t=t';
-          end
-          if ~isempty(x); trace.x(i,:)=x; end;
-          error=e;
-        end
-        
-        ppftypeR='ppf';
-        tracenameR=['kk3/rc' num2str(i,'%2.2d') name_ext];
-        a=which('ppfdat');
-        if isempty(a) | ~isempty(name_ext)
-          [a,x,t,d,e]=rda_eff(shot,ppftypeR,tracenameR);
-          if isempty(a) & size(trace.data,2)>1
-            radius.data(i,:)=NaN;
-          else
-            radius.data(i,:)=a;
-            radius.t=t;
-            radius.x=x;
-          end
-        else
-          [a,x,t,unitd,unitx,unitt,comment,sequence,e]= ...
-              ppfread(shot,'KK3',['RC' num2str(i,'%2.2d')]);
-          if isempty(a) & size(trace.data,2)>1
-            radius.data(i,:)=NaN;
-          else
-            radius.data(i,:)=a';
-            radius.t=t';
-            radius.x=x';
-          end
-        end
-      end
-    end 
-    trace.dim=[{[starti:endi]'} ; {trace.t}];
-    trace.dimunits=[{'channels'} ; {'time [s]'}];
-    trace.name=[ 'ppf/' num2str(shot) '/' 'kk3/teXX' name_ext ];
-    if exist('radius')
-      varargout={{radius}}; 
-      for i=starti:endi
-        trace.R(i,:)=interp1(radius.t,radius.data(i,:),trace.t);
-      end
-    else
-      varargout={{struct([])}};
-      trace.R=[];
-    end
-
-  otherwise
-    disp('case not yet defined')
-    
-end
diff --git a/crpptbx_new/TCV/VsxrTCVradius.m b/crpptbx_new/TCV/VsxrTCVradius.m
deleted file mode 100644
index 38f1ce9f0cd0ec1b071a7d59612bdc9f844bcba9..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/VsxrTCVradius.m
+++ /dev/null
@@ -1,24 +0,0 @@
-function  radius=VsxrTCVradius(ymag,xchord,ychord)
-
-% get intersection of magnetics axis with chords
-% input:
-% Vsawtooth.shot : shot number
-% Vsawtooth.expdata.zmag : positions of the magnetic a 
-%        xchord:  two x-coordinates.
-%        ychord:  two y-coordinates. 
-%                 For each line (2xnl), they specify start + end pointsxis
-
-% Output :
-% Vsxr.radius : intersectionof magnetics axis with chords
-
-%parameter: start and end of each of the camera number 2
-
-
-% calculation intersections
-xchord=xchord/100;
-ychord=ychord/100;
-for i=1:size(xchord,2)
-  a=(ychord(1,i)-ychord(2,i))/(xchord(1,i)-xchord(2,i));
-  b=ychord(2,i)-a*xchord(2,i);
-  radius(:,i)= (ymag-b)/(a+eps);
-end
diff --git a/crpptbx_new/TCV/ece_te.m b/crpptbx_new/TCV/ece_te.m
deleted file mode 100755
index 32f05aa0a82665bd597661807c0bae1a3e3bf9c4..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/ece_te.m
+++ /dev/null
@@ -1,67 +0,0 @@
-function [TE_ECE,TE_ECE_ERR,RHO,R,T,TE_THOM,TE_THOM_ERR,Fcentral,CAL,NE_THOM]=ece_te(shot,Tc,T,SS)
-
-%	[TE_ECE,TE_ECE_ERR,RHO,R,T,TE_THOM,TE_THOM_ERR,Fcentral,CAL,NE_THOM]=ece_te(shot,Tc,T,SS)
-%	[TE_ECE,TE_ECE_ERR,RHO,R,T,TE_THOM,TE_THOM_ERR,Fcentral,CAL,NE_THOM]=ece_te(19314,[0.1 0.29],[0 1.5],10);
-%	
-%	Program that compute TE_ECE and TE_THOM profile over R or RHO
-%	for all the times T with the error matrices TE_ECE_ERR and TE_THOM_ERR.
-%	The calibration matrice CAL comes from the ece_calib.m program.
-%	Fcentral is the central frequency of the ECE working channels.		
-%	
-%	shot 	= shot number
-%	Tc	= [a b] temporal boundary on which we want the calibration on 
-%		thomson temperature. If you have no idea, put Tc=[0.1 0.29]
-%	T	= either
-%		-temporal vector
-%		-if T=10 => takes all the ECE times
-%		-if T=[c d];=> c and d are the temporal boundary for the output
-%	SS >= 1 	=> sampling rate SS if T=10 or T=[c d]
-%
-%	B est calcule avec la routine BandBres_allt de O.Sauter
-%	
-%	Blanchard  25.11.2000
-
-
-%-----------------------------------------------------------------------
-%	Recherche de la configuration de l'ECE
-%-----------------------------------------------------------------------
-[RHOece,Rece,Zece,Tece,Fcentralrho]=ece_rho(shot,T);
-[CAL,Fcentral]=ece_calib(shot,Tc);
-
-%-----------------------------------------------------------------------
-%	Recherches des signaux voulus
-%-----------------------------------------------------------------------
-[ECE,TECE,Fcentral]=ece_raw_signals(shot,T,SS);
-%[RHOece,Rece,Zece,Tece, Fcentralrho]=ece_rho(shot,T);
-%Zece=Zece*ones(size(Rece));
-[TEthom,NEthom,TEerr,NEerr,Tthom,RHOthom]=thom_rho(shot,6);
-if exist('TEthom')==0|length(TEthom) ==0
-   disp('Le profil Thomson proffit n''existe pas. On prend le profil direct') %(Tthom,Nbre de pts selon rho)
-
-  [TEthom,NEthom,TEerr,NEerr,Tthom,RHOthom]=thom_rho(shot,3); %(Tthom,Nbre de pts selon rho)
-end
-[t2,i3,i4]=common_ece(Fcentralrho,Fcentral);
-Rece=Rece(i3,:);Zece=Zece(i3,:);RHOece=RHOece(i3,:);
-TE_ECE=ECE.*repmat(CAL(2,:),length(TECE),1);
-T=repmat(TECE,1,length(Fcentral));
-if length(Tece)==1
-  RHO=repmat(RHOece,1,length(TECE));RHO=RHO';	
-  R=repmat(Rece,1,length(TECE));R=R';
-  X=size(RHOthom);
-else
-  %RHO=interp2(repmat(Fcentral,1,length(Tece))',repmat(Tece,length(Fcentral),1)', ...
-  %	    RHOece',repmat(Fcentral',length(TECE),1)',T');
-   RHO=interp2(repmat(Fcentral,1,length(Tece))',repmat(Tece',length(Fcentral),1)', ...
-	    RHOece',repmat(Fcentral',length(TECE),1)',T');
-  RHO=RHO';		
-  R=interp2(repmat(Fcentral,1,length(Tece))',repmat(Tece',length(Fcentral),1)', ...
-	    Rece',repmat(Fcentral',length(TECE),1),T);
-end
- 
-X=size(RHOthom);
-TE_THOM=griddata(repmat(Tthom,1,X(2)),RHOthom,TEthom,T,RHO);
-NE_THOM=griddata(repmat(Tthom,1,X(2)),RHOthom,NEthom,T,RHO);
-TE_THOM_ERR=griddata(repmat(Tthom,1,X(2)),RHOthom,TEerr,T,RHO);
-TE_ECE_ERR=CAL(4,:);T=T(:,1);
-
-
diff --git a/crpptbx_new/TCV/gdat_tcv.m b/crpptbx_new/TCV/gdat_tcv.m
deleted file mode 100644
index 269a3fb267f4063d1e9cd217304970e5da76d21f..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/gdat_tcv.m
+++ /dev/null
@@ -1,1170 +0,0 @@
-function [gdat_data,gdat_params,error_status,varargout] = gdat_tcv(shot,data_request,varargin)
-%
-% function [gdat_data,gdat_params,error_status,varargout] = gdat(shot,data_request,varargin)
-%
-% Aim: get data from a given machine using full path or keywords. 
-%      data_request are and should be case independent (transformed in lower case in the function and outputs)
-%
-% If no inputs are provided, return the list of available pre-defined data_request in gdat_data and default parameters gdat_params
-%
-% Inputs:
-%
-%    no inputs: return default parameters in a structure form in gdat_params
-%    shot: shot number
-%    data_request: keyword (like 'ip') or trace name or structure containing all parameters but shot number
-%    varargin{i},varargin{i+1},i=1:nargin-2: additional optional parameters given in pairs: param_name, param_value
-%                                            The optional parameters list might depend on the data_request
-%              examples of optional parameters:
-%                               'plot',1 (plot is set by default to 0)
-%                               'machine','TCV' (the default machine is the local machine)
-%
-%
-% Outputs:
-%
-% gdat_data: structure containing the data, the time trace if known and other useful information
-% gdat_data.t : time trace
-% gdat_data.data: requested data values
-% gdat_data.dim : values of the various coordinates related to the dimensions of .data(:,:,...)
-%                     note that one of the dim is the time, replicated in .t for clarity
-% gdat_data.dimunits : units of the various dimensions, 'dimensionless' if dimensionless
-% gdat_data.error_bar : if provided
-% gdat_data.gdat_call : list of parameters provided in the gdat call (so can be reproduced)
-% gdat_data.shot: shot number
-% gdat_data.machine: machine providing the data
-% gdat_data.gdat_request: keyword for gdat if relevant
-% gdat_data.data_fullpath: full path to the data node if known and relevant, or expression, or relevant function called if relevant
-% gdat_data.gdat_params: copy gdat_params for completeness
-% gdat_data.xxx: any other relevant information
-%
-%
-% Examples:
-% (should add working examples for various machines (provides working shot numbers for each machine...))
-% 
-%    [a1,a2]=gdat;
-%    a2.data_request = 'Ip';
-%    a3=gdat(48836,a2);  % gives input parameters as a structure, allows to call the same for many shots
-%    a4=gdat('opt1',123,'opt2',[1 2 3],'shot',48832,'data_request','Ip','opt3','aAdB'); % all in pairs
-%    a5=gdat(48836,'ip'); % standard call
-%    a6=gdat(48836,'ip','Opt1',123,'Doplot',1,'opt2','Abc'); % standard call with a few options (note all lowercase in output)
-
-%
-% Comments for local developer:
-% This gdat is just a "header routine" calling the gdat for the specific machine gdat_`machine`.m which can be called
-% directly, thus which should be able to treat the same type of input arguments
-%
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Prepare some variables, etc
-
-varargout{1}=cell(1,1);
-error_status=1;
-nverbose = 1;
-
-% construct default parameters structure
-gdat_params.data_request = '';
-default_machine = 'tcv';
-
-gdat_params.machine=default_machine;
-gdat_params.doplot = 0;
-gdat_params.liuqe = 1;
-
-% construct list of keywords from global set of keywords and specific TCV set
-% get data_request names from centralized function
-data_request_names = get_data_request_names;
-% add TCV specific to all:
-if ~isempty(data_request_names.tcv)
-  tcv_names = fieldnames(data_request_names.tcv);
-  for i=1:length(tcv_names)
-    data_request_names.all.(tcv_names{i}) = data_request_names.tcv.(tcv_names{i});
-  end
-end
-data_request_names_all = fieldnames(data_request_names.all);
-
-% $$$ data_request_names_all= [{'ip'} {'b0'} {'zmag'} {'rmag'} {'rcont'} {'zcont'} {'vol'} {'rhovol'} {'qrho'} {'q95'} {'kappa'} ...
-% $$$       {'delta'} {'deltatop'} {'deltabot'} {'neint'} {'nel'} ...
-% $$$       {'ne'} {'te'} {'nerho'} {'terho'}  {'ne_edge'} {'te_edge'} {'nerho_edge'} {'terho_edge'} {'nerhozshift'} {'terhozshift'} {'profnerho'} {'profterho'} ...
-% $$$       {'neft'} {'teft'} {'neftav'} {'teftav'} {'neft:trial'} {'teft:trial'} {'neftav:trial'} {'teftav:trial'}  ...
-% $$$       {'sxr'} {'sxr'} {'ece'} {'mpx'} {'ioh'} {'vloop'} {'pgyro'} {'jtor'} {'vi_tor'} {'vi_torfit'} {'vi_pol'} {'vi_polfit'} {'ti'} {'tifit'} {'ni'} {'nifit'} {'zeffcxrs'} {'zeffcxrsfit'}];
-
-% construct default output structure
-gdat_data.data = [];
-gdat_data.units = [];
-gdat_data.dim = [];
-gdat_data.dimunits = [];
-gdat_data.t = [];
-gdat_data.x = [];
-gdat_data.shot = [];
-gdat_data.gdat_request = [];
-gdat_data.gdat_params = gdat_params;
-gdat_data.data_fullpath = [];
-
-
-% Treat inputs:
-ivarargin_first_char = 3;
-data_request_eff = '';
-if nargin>=2 && ischar(data_request); data_request = lower(data_request); end
-
-gdat_data.gdat_request = data_request_names_all; % so if return early gives list of possible request names
-% no inputs
-if nargin==0
-  % return defaults and list of keywords
-  return
-end
-
-do_mdsopen_mdsclose = 1;
-% treat 1st arg
-if nargin>=1
-  if isempty(shot)
-    % means mdsopen(shot) already performed
-    shot = mdsipmex(2,'$SHOT');
-    gdat_data.shot = shot;
-    do_mdsopen_mdsclose = 0;
-  elseif isnumeric(shot)
-    gdat_data.shot = shot;
-  elseif ischar(shot)
-    ivarargin_first_char = 1;
-  else
-    warning('type of 1st argument unexpected, should be numeric or char')
-    error_status=2;
-    return
-  end
-  if nargin==1
-    % Only shot number given. If there is a default data_request set it and continue, otherwise return
-    return
-  end
-end
-% 2nd input argument if not part of pairs
-if nargin>=2 && ivarargin_first_char~=1
-  if isempty(data_request)
-    return
-  end
-  % 2nd arg can be a structure with all options except shot_number, or a string for the pathname or keyword, or the start of pairs string/value for the parameters
-  if isstruct(data_request)
-    if ~isfield(data_request,'data_request')
-      warning('expects field data_request in input parameters structure')
-      error_status=3;
-      return
-    end
-    data_request.data_request = lower(data_request.data_request);
-    data_request_eff = data_request.data_request;
-    gdat_params = data_request;
-  else
-    % since data_request is char check from nb of args if it is data_request or a start of pairs
-    if mod(nargin-1,2)==0
-      ivarargin_first_char = 2;
-    else
-      ivarargin_first_char = 3;
-      data_request_eff = data_request;
-    end
-  end
-end
-
-if ~isstruct(data_request)
-  gdat_params.data_request = data_request_eff;
-end
-
-% if start pairs from shot or data_request, shift varargin
-if ivarargin_first_char==1
-  varargin_eff{1} = shot;
-  varargin_eff{2} = data_request;
-  varargin_eff(3:nargin) = varargin(:);
-elseif ivarargin_first_char==2
-  varargin_eff{1} = data_request;
-  varargin_eff(2:nargin-1) = varargin(:);
-else
-  varargin_eff(1:nargin-2) = varargin(:);
-end
-
-% extract parameters from pairs of varargin:
-if (nargin>=ivarargin_first_char)
-  if mod(nargin-ivarargin_first_char+1,2)==0
-    for i=1:2:nargin-ivarargin_first_char+1
-      if ischar(varargin_eff{i})
-        % enforce lower case for any character driven input
-        if ischar(varargin_eff{i+1})
-          gdat_params.(lower(varargin_eff{i})) = lower(varargin_eff{i+1});
-        else
-          gdat_params.(lower(varargin_eff{i})) = varargin_eff{i+1};
-        end
-      else
-        warning(['input argument nb: ' num2str(i) ' is incorrect, expects a character string'])
-        error_status=401;
-        return
-      end
-    end
-  else
-    warning('number of input arguments incorrect, cannot make pairs of parameters')
-    error_status=402;
-    return
-  end
-end
-data_request_eff = gdat_params.data_request; % in case was defined in pairs
-
-% if it is a request_keyword copy it:
-ij=strmatch(data_request_eff,data_request_names_all,'exact');
-if ~isempty(ij); 
-  gdat_data.gdat_request = data_request_names_all{ij};
-  if isfield(data_request_names.all.(data_request_names_all{ij}),'description') && ~isempty(data_request_names.all.(data_request_names_all{ij}).description)
-    % copy description of keyword
-    gdat_data.request_description = data_request_names.all.(data_request_names_all{ij}).description;
-  end
-end
-
-% special treatment if shot and data_request given within pairs
-if isfield(gdat_params,'shot')
-  shot = gdat_params.shot; % should use only gdat_params.shot but change shot to make sure
-  gdat_data.shot = gdat_params.shot;
-  gdat_params=rmfield(gdat_params,'shot');
-end
-if ~isfield(gdat_params,'data_request') || isempty(gdat_params.data_request)
-  % warning('input for ''data_request'' missing from input arguments') % might be correct, asking for list of requests
-  error_status=5;
-  return
-end
-gdat_data.gdat_params = gdat_params;
-
-% re-assign main variables to make sure use the one in gdat_data structure
-shot = gdat_data.shot;
-data_request_eff = gdat_data.gdat_params.data_request;
-error_status = 6; % at least reached this level
-
-liuqe_version = 1;
-if isfield(gdat_data.gdat_params,'liuqe') && ~isempty(gdat_data.gdat_params.liuqe)
-  liuqe_version = gdat_data.gdat_params.liuqe;
-end
-substr_liuqe = '';
-if liuqe_version==2 || liuqe_version==3
-  substr_liuqe = ['_' num2str(liuqe_version)];
-end
-
-% special treatment for model shot=-1 or preparation shot >=100'000
-begstr = '';
-if shot==-1 || shot>=100000
-  % requires FBTE
-  liuqe_version = -1;
-  begstr = 'tcv_eq( "';
-  substr_liuqe = '", "FBTE" )';
-end
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% Specifications on how to get the data provided in tcv_requests_mapping
-mapping_for_tcv = tcv_requests_mapping(data_request_eff);
-gdat_data.label = mapping_for_tcv.label;
-
-ishot=NaN;
-if do_mdsopen_mdsclose
-  % mdsdefaultserver tcv1.epfl.ch; % should be in tcv general path, but set-it in the meantime...
-  if liuqe_version==-1
-    ishot = mdsopen('pcs', shot);
-  else
-    ishot = mdsopen(shot); % if ishot equal to shot, then mdsclose at the end
-  end
-  if ishot~=shot
-    warning(['cannot open shot= ' num2str(shot)])
-    return
-  end
-end
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% 1st treat the simplest method: "tdi" (and tdiliuqe)
-if strcmp(mapping_for_tcv.method(1:3),'tdi')
-  % need to treat liuqe2, model, etc from options....
-  substr_tdi = '';
-  if strcmp(mapping_for_tcv.method,'tdiliuqe'); substr_tdi = substr_liuqe; end
-  if iscell(mapping_for_tcv.expression)
-    if length(mapping_for_tcv.expression)>0
-      % series of arguments for tdi given in each cell
-      eval_expr = ['tdi(''' mapping_for_tcv.expression{1} substr_tdi ''''];
-      for i=2:length(mapping_for_tcv.expression)
-        eval_expr = [eval_expr ',''' mapping_for_tcv.expression{i} ''''];
-      end
-      eval_expr = [eval_expr ');'];
-      aatmp = eval(eval_expr);
-    else
-      % empty or wrong expression
-      error_status=701;
-      return
-    end
-  else
-    if liuqe_version==-1
-      mapping_for_tcv_expression_eff = mapping_for_tcv.expression;
-      if strcmp(lower(mapping_for_tcv.expression(1:8)),'\results')
-        mapping_for_tcv_expression_eff = mapping_for_tcv.expression(11:end);
-      end
-      eval_expr = ['tdi(''' begstr mapping_for_tcv_expression_eff substr_liuqe ''');']
-    else
-      eval_expr = ['tdi(''' mapping_for_tcv.expression substr_tdi ''');'];
-    end
-    aatmp=eval(eval_expr);
-  end
-  if isempty(aatmp.data) || isempty(aatmp.dim) % || ischar(aatmp.data) (to add?)
-    if (nverbose>=3); warning(['problems loading data for ' eval_expr ' for data_request= ' data_request_eff]); end
-    return
-  end
-  gdat_data.data = aatmp.data;
-  gdat_data.dim = aatmp.dim;
-  nbdims = length(gdat_data.dim);
-  if mapping_for_tcv.timedim==-1; 
-    mapping_for_tcv.timedim = nbdims;
-    if (size(gdat_data.data,nbdims)==1 && nbdims>1); mapping_for_tcv.timedim = nbdims-1; end
-  end
-  dim_nontim = setdiff([1:nbdims],mapping_for_tcv.timedim);
-  if ~isempty(dim_nontim)
-    % since most cases have at most 2d, copy as array if data is 2D and as cell if 3D or more
-    if length(dim_nontim)==1
-      gdat_data.x = gdat_data.dim{dim_nontim(1)};
-    else
-      gdat_data.x = gdat_data.dim(dim_nontim);
-    end
-  end
-  gdat_data.t = gdat_data.dim{mapping_for_tcv.timedim};
-  gdat_data.units = aatmp.units;
-  gdat_data.dimunits = aatmp.dimunits;
-  if mapping_for_tcv.gdat_timedim>0 && mapping_for_tcv.gdat_timedim ~= mapping_for_tcv.timedim
-    % shift timedim to gdat_timedim data(i,j,...itime,k,...) -> data(i,inewtime,j,...,k,...)
-    % note that this means that gdat_data.x and gdat_data.t are same and correct, 
-    % only .data, .dim and .dimunits need to be changed
-    iprev=[1:nbdims];
-    ij=find(dim_nontim>mapping_for_tcv.gdat_timedim-1);
-    inew=[1:mapping_for_tcv.gdat_timedim-1 mapping_for_tcv.timedim dim_nontim(ij)];
-    data_sizes = size(aatmp.data);
-    gdat_data.data = NaN*ones(data_sizes(inew));
-    abcol=ones(1,nbdims)*double(':'); abcomma=ones(1,nbdims)*double(',');
-    dimstr_prev=['(' repmat(':,',1,mapping_for_tcv.timedim-1) 'it,' ...
-                 repmat(':,',1,nbdims-mapping_for_tcv.timedim-1) ':)'];
-    dimstr_new=['(' repmat(':,',1,mapping_for_tcv.gdat_timedim-1) 'it,' ...
-                repmat(':,',1,nbdims-mapping_for_tcv.gdat_timedim-1) ':)'];
-    % eval gdat_data.data(;,:,...,it,...) = aatmp.data(:,:,:,it,...);
-    for it=1:size(aatmp.data,mapping_for_tcv.timedim)
-      shift_eval = ['gdat_data.data' dimstr_new ' = aatmp.data'  dimstr_prev ';'];
-      eval(shift_eval);
-    end
-    gdat_data.dim = aatmp.dim(inew);
-    gdat_data.dimunits = aatmp.dimunits(inew);
-  else
-    mapping_for_tcv.gdat_timedim = mapping_for_tcv.timedim;
-  end
-  gdat_data.data_fullpath=[mapping_for_tcv.expression substr_tdi];
-
-  % end of method "tdi"
-
-  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-elseif strcmp(mapping_for_tcv.method,'expression')
-  % 2nd: method="expression"
-  % assume expression contains function to call and which returns a structure into variable gdat_tmp
-  % we copy the structure, to make sure default nodes are defined and to avoid if return is an closed object like tdi
-  % eval_expr = [mapping_for_tcv.expression ';'];
-  eval([mapping_for_tcv.expression ';']);
-  if isempty(gdat_tmp) || (~isstruct(gdat_tmp) & ~isobject(gdat_tmp))
-    warning(['function expression does not return a structure: ' mapping_for_tcv.expression])
-    error_status=801;
-    return
-  end
-  tmp_fieldnames = fieldnames(gdat_tmp);
-  if sum(strcmp(tmp_fieldnames,'data'))==0 % note: cannot do isfield since gdat_tmp might be an object
-    warning(['function does not return a child name ''data'' for ' data_request_eff])
-  end
-  for i=1:length(tmp_fieldnames)
-    gdat_data.(tmp_fieldnames{i}) = gdat_tmp.(tmp_fieldnames{i});
-  end
-  % add .t and .x in case only dim is provided
-  % do not allow shifting of timedim since should be treated in the relevant function
-  ijdim=find(strcmp(tmp_fieldnames,'dim')==1);
-  if ~isempty(ijdim)
-    nbdims = length(gdat_data.dim);
-    if mapping_for_tcv.timedim==-1; 
-      mapping_for_tcv.timedim = nbdims;
-      if (size(gdat_data.data,nbdims)==1 && nbdims>1); mapping_for_tcv.timedim = nbdims-1; end
-    end
-    dim_nontim = setdiff([1:nbdims],mapping_for_tcv.timedim);
-    ijt=find(strcmp(tmp_fieldnames,'t')==1);
-    if isempty(ijt)
-      gdat_data.t = gdat_data.dim{mapping_for_tcv.timedim};
-    end
-    ijx=find(strcmp(tmp_fieldnames,'x')==1);
-    if isempty(ijx)
-      if ~isempty(dim_nontim)
-        % since most cases have at most 2d, copy as array if data is 2D and as cell if 3D or more
-        if length(dim_nontim)==1
-          gdat_data.x = gdat_data.dim{dim_nontim(1)};
-        else
-          gdat_data.x = gdat_data.dim(dim_nontim);
-        end
-      end
-    end
-    gdat_data.data_fullpath=mapping_for_tcv.expression;
-  end
-  % end of method "function"
-
-  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-elseif strcmp(mapping_for_tcv.method,'switchcase')
-  switch data_request_eff % not lower(...) since data_request_eff should be lower case already at this stage
-    % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-    % First the request names valid for "all" machines:
-    %
-   case {'a_minor','rgeom'}
-    % compute average minor or major radius (on z=zaxis normally)
-    nodenameeff=['\results::r_max_psi' substr_liuqe];
-    rmaxpsi=tdi(nodenameeff);
-    nodenameeff2=['\results::r_min_psi' substr_liuqe];
-    rminpsi=tdi(nodenameeff2);
-    ij=find(rmaxpsi.data<0.5 | rmaxpsi.data>1.2);
-    if ~isempty(ij); rmaxpsi.data(ij)=NaN; end
-    ij=find(rminpsi.data<0.5 | rminpsi.data>1.2);
-    if ~isempty(ij); rminpsi.data(ij)=NaN; end
-    if strcmp(data_request_eff,'a_minor')
-      gdat_data.data=0.5.*(rmaxpsi.data(end,:) - rminpsi.data(end,:));
-      gdat_data.data_fullpath=[nodenameeff ' - ' nodenameeff2 ' /2'];
-    elseif strcmp(data_request_eff,'rgeom')
-      gdat_data.data=0.5.*(rmaxpsi.data(end,:) + rminpsi.data(end,:));
-      gdat_data.data_fullpath=[nodenameeff ' + ' nodenameeff2 ' /2'];
-    else
-      disp(['should not be in this case with data_request_eff = ' data_request_eff])
-      return
-    end
-    gdat_data.dim = rmaxpsi.dim(2);    
-    gdat_data.t = gdat_data.dim{1};
-    if any(strcmp(fieldnames(rmaxpsi),'units'))
-      gdat_data.units = rmaxpsi.units;
-    end
-    gdat_data.dimunits = rmaxpsi.dimunits(2);
-    
-   case {'zgeom'}
-    % compute average minor or major radius (on z=zaxis normally)
-    nodenameeff=['\results::z_contour' substr_liuqe];
-    zcontour=tdi(nodenameeff);
-    if strcmp(data_request_eff,'zgeom')
-      gdat_data.data=0.5.*(max(zcontour.data,[],1) + min(zcontour.data,[],1));
-      gdat_data.data_fullpath=['(max+min)/2 of ' nodenameeff];
-      gdat_data.dim{1} = zcontour.dim{2};
-      gdat_data.dimunits{1} = zcontour.dimunits{2};
-    else
-      disp(['should not be in this case with data_request_eff = ' data_request_eff])
-      return
-    end
-    gdat_data.t = gdat_data.dim{mapping_for_tcv.gdat_timedim};
-    if any(strcmp(fieldnames(zcontour),'units'))
-      gdat_data.units = zcontour.units;
-    end
-    
-   case {'b0'}
-    % B0 at R0=0.88
-    R0EXP=0.88;
-    if liuqe_version==-1
-      nodenameeff = 'tcv_eq("BZERO","FBTE")';
-      tracetdi=tdi(nodenameeff);
-      gdat_data.data = tracetdi.data;
-    else
-      nodenameeff=['\magnetics::iphi'];
-      tracetdi=tdi(nodenameeff);
-      gdat_data.data=192.E-07 * 0.996 *tracetdi.data/R0EXP;
-    end
-    if isempty(tracetdi.data) || isempty(tracetdi.dim) % || ischar(tracetdi.data) (to add?)
-      warning(['problems loading data for ' nodenameeff ' for data_request= ' data_request_eff])
-      return
-    end
-    gdat_data.data_fullpath=[nodenameeff];
-    gdat_data.dim = tracetdi.dim;    
-    gdat_data.t = gdat_data.dim{1};
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      gdat_data.units = tracetdi.units;
-    end
-    gdat_data.dimunits = tracetdi.dimunits;
-    gdat_data.request_description = ['vacuum magnetic field at R0=' num2str(R0EXP) 'm; COCOS=17'];
-    
-   case {'betan'}
-    % 100*beta / |Ip[MA] * B0[T]| * a[m]
-    % get B0 from gdat_tcv, without re-opening the shot and using the same parameters except data_request
-    % easily done thanks to structure call for options
-    params_eff = gdat_data.gdat_params;
-    params_eff.data_request='b0'; 
-    b0=gdat_tcv([],params_eff); % note: no need to set .doplot=0 since gdat_tcv does not call gdat_plot in any case
-    params_eff.data_request='ip';
-    ip=gdat_tcv([],params_eff);
-    params_eff.data_request='beta';
-    beta=gdat_tcv([],params_eff);
-    params_eff.data_request='a_minor';
-    a_minor=gdat_tcv([],params_eff);
-    % use beta as time base
-    if isempty(b0.data) || isempty(b0.dim) || isempty(ip.data) || isempty(ip.dim) || isempty(a_minor.data) || isempty(a_minor.dim) || isempty(beta.data) || isempty(beta.dim)
-      warning(['problems loading data for ' nodenameeff ' for data_request= ' data_request_eff])
-      return
-    end
-    gdat_data.dim = beta.dim;
-    gdat_data.t = beta.dim{1};
-    gdat_data.data = beta.data;
-    ij=find(~isnan(ip.data));
-    ip_t = interp1(ip.dim{1}(ij),ip.data(ij),gdat_data.t);
-    ij=find(~isnan(b0.data));
-    b0_t = interp1(b0.dim{1}(ij),b0.data(ij),gdat_data.t);
-    ij=find(~isnan(a_minor.data));
-    a_minor_t = interp1(a_minor.dim{1}(ij),a_minor.data(ij),gdat_data.t);
-    gdat_data.data = 100.*beta.data ./ abs(ip_t).*1.e6 .* abs(b0_t) .* a_minor_t;
-    gdat_data.data_fullpath='100*beta/ip*1e6*b0*a_minor, each from gdat_tcv';
-    gdat_data.units = '';
-    gdat_data.dimunits{1} = 's';
-    
-   case {'cxrs'}
-    %not yet finished, just started
-    return
-    % load typical data from cxrs, Ti, ni, vtori and vpoli (if available), as well as zeff from cxrs
-    % if 'fit' option is added: 'fit',1, then the fitted profiles are returned
-    % 
-    sub_nodes = {'Ti','vi_tor','vi_pol','ni','zeff'}; % first node is also copied into data, choose "default' one
-    % sub_nodes_fit = {'Tifit','vi_torfit','vi_polfit','nifit','zefffit'};
-    params_eff = gdat_data.gdat_params;
-    % use A. Karpushov routine to get profiles and then copy the data or the fitted profiles
-    param_cxrs.k_plot=0; param_cxrs.k_debug=0;
-    cxrs_profiles = CXRS_get_profiles(48836,[],[],param_cxrs);
-    if isfield(params_eff,'fit') && params_eff.fit>0
-      sub_nodes_eff = sub_nodes_fit;
-    else
-      sub_nodes_eff = sub_nodes;
-    end
-
-
-    gdat_data.dim = beta.dim;
-    gdat_data.t = beta.dim{1};
-    gdat_data.data = beta.data;
-    ij=find(~isnan(ip.data));
-    ip_t = interp1(ip.dim{1}(ij),ip.data(ij),gdat_data.t);
-    ij=find(~isnan(b0.data));
-    b0_t = interp1(b0.dim{1}(ij),b0.data(ij),gdat_data.t);
-    ij=find(~isnan(a_minor.data));
-    a_minor_t = interp1(a_minor.dim{1}(ij),a_minor.data(ij),gdat_data.t);
-    gdat_data.data = 100.*beta.data ./ abs(ip_t).*1.e6 .* abs(b0_t) .* a_minor_t;
-    gdat_data.data_fullpath='100*beta/ip*1e6*b0*a_minor, each from gdat_tcv';
-    gdat_data.units = '';
-    gdat_data.dimunits = beta.dimunits;
-    
-   case {'eqdsk'}
-    %
-    time=1.; % default time
-    if isfield(gdat_data.gdat_params,'time') && ~isempty(gdat_data.gdat_params.time)
-      time = gdat_data.gdat_params.time;
-    else
-      disp(['"time" is expected as an option, choose default time = ' num2str(time)]);
-    end
-    gdat_data.gdat_params.time = time;
-    gdat_data.t = time;
-    zshift = 0.;
-    if isfield(gdat_data.gdat_params,'zshift') && ~isempty(gdat_data.gdat_params.zshift)
-      zshift = gdat_data.gdat_params.zshift;
-    end
-    gdat_data.gdat_params.zshift = zshift;
-    for itime=1:length(time)
-      time_eff = time(itime);
-      % use read_results updated to effectively obtain an eqdsk with sign correct with COCOS=2
-      [fnames_readresults]=read_results_for_chease(shot,time_eff,liuqe_version,3,[],[],[],zshift,0,1);
-      eqdskval=read_eqdsk(fnames_readresults{4},7,0,[],[],1); % LIUQE is 17 but read_results divided psi by 2pi thus 7
-      for i=1:length(fnames_readresults)
-        unix(['rm ' fnames_readresults{i}]);
-      end
-      % transform to cocos=2 since read_results originally assumed it was cocos=2
-      cocos_in = 2;
-      [eqdsk_cocos_in, eqdsk_cocosout_IpB0pos,cocos_inout]=eqdsk_cocos_transform(eqdskval,[7 cocos_in]);
-      fnamefull = fullfile(['/tmp/' getenv('USER')],['EQDSK_' num2str(shot) 't' num2str(time_eff,'%.4f')]);
-      % We still write COCOS=2 case, since closer to standard (in /tmp)
-      write_eqdsk(fnamefull,eqdsk_cocos_in,cocos_in,[],[],[],1);
-      % Now gdat_tcv should return the convention from LIUQE which is COCOS=17, except if specified in option
-      % create standard filename name from shot, time_eff (cocos will be added by write_eqdsk)
-      cocos_out = 17;
-      if isfield(gdat_data.gdat_params,'cocos') && ~isempty(gdat_data.gdat_params.cocos)
-        cocos_out = gdat_data.gdat_params.cocos;
-      end
-      [eqdsk_cocosout, eqdsk_cocosout_IpB0pos,cocos_inout]=eqdsk_cocos_transform(eqdsk_cocos_in,[cocos_in cocos_out]);
-      % for several times, use array of structure for eqdsks, 
-      % cannot use it for psi(R,Z) in .data and .x since R, Z might be different at different times,
-      % so project psi(R,Z) on Rmesh, Zmesh of 1st time
-      if length(time) > 1
-        gdat_data.eqdsk{itime} = write_eqdsk(fnamefull,eqdsk_cocosout,cocos_out);
-        if itime==1
-          gdat_data.data(:,:,itime) = gdat_data.eqdsk{itime}.psi;
-          gdat_data.dim{1} = gdat_data.eqdsk{itime}.rmesh;
-          gdat_data.dim{2} = gdat_data.eqdsk{itime}.zmesh;
-        else
-          aa=interpos2Dcartesian(gdat_data.eqdsk{itime}.rmesh,gdat_data.eqdsk{itime}.zmesh, ...
-          gdat_data.eqdsk{itime}.psi,repmat(gdat_data.dim{1}',1,129),repmat(gdat_data.dim{2},129,1),-1,-1);
-          gdat_data.data(:,:,itime) = aa;
-        end
-      else
-        gdat_data.eqdsk = write_eqdsk(fnamefull,eqdsk_cocosout,cocos_out);
-        gdat_data.data = gdat_data.eqdsk.psi;
-        gdat_data.dim{1} = gdat_data.eqdsk.rmesh;
-        gdat_data.dim{2} = gdat_data.eqdsk.zmesh;
-      end
-    end
-    gdat_data.dim{3} = gdat_data.t;
-    gdat_data.x = gdat_data.dim(1:2);
-    gdat_data.data_fullpath=['psi(R,Z) and eqdsk from read_eqdsk from LIUQE' num2str(liuqe_version) ';zshift=' num2str(zshift)];
-    gdat_data.units = 'T m^2';
-    gdat_data.dimunits = {'m','m','s'};
-    gdat_data.request_description = ['data=psi, x=(R,Z), eqdsk contains eqdsk structure with which ' ...
-                    'plot_eqdsk, write_eqdsk, read_eqdsk can be used'];
-    
-   case {'mhd'}
-    % load n=1, 2 and 3 Bdot from magnetic measurements
-    n1=tdi('abs(mhdmode("LFS",1,1))');
-    n2=tdi('abs(mhdmode("LFS",2,1))');
-    n3=tdi('abs(mhdmode("LFS",3,1))');
-    if ~isempty(n1.data)
-      gdat_data.data(:,1) = reshape(n1.data,length(n1.data),1);
-      if length(n2.data)==length(n1.data); gdat_data.data(:,2) = reshape(n2.data,length(n2.data),1); end
-      if length(n3.data)==length(n1.data); gdat_data.data(:,3) = reshape(n3.data,length(n3.data),1); end
-      gdat_data.dim{1} = n1.dim{1};
-      gdat_data.t = gdat_data.dim{1};
-      gdat_data.dim{2} = [1; 2; 3]; 
-      gdat_data.dimunits{1} = n1.dimunits{1};
-      gdat_data.dimunits{2} = 'n number';
-      gdat_data.units = 'T/s';
-      gdat_data.data_fullpath='abs(mhdmode("LFS",n,1))';
-      gdat_data.request_description = 'delta_Bdot from magnetic probes to get n=1, 2 and 3';
-    end
-    
-   case {'ne','te'}
-    % ne or Te from Thomson data on raw z mesh vs (z,t)
-    edge_str_ = '';
-    edge_str_dot = '';
-    if isfield(gdat_data.gdat_params,'edge') && ~isempty(gdat_data.gdat_params.edge) && ...
-          gdat_data.gdat_params.edge>0
-      edge_str_ = '_edge';
-      edge_str_dot = '.edge';
-    end
-    nodenameeff=['\results::thomson' edge_str_dot ':' data_request_eff];
-    tracetdi=tdi(nodenameeff);
-    tracestd=tdi(['\results::thomson' edge_str_dot ':' data_request_eff ':error_bar']);
-    gdat_data.data=tracetdi.data'; % Thomson data as (t,z)
-    gdat_data.error_bar=tracestd.data';
-    gdat_data.data_fullpath=[nodenameeff];
-    % add correct dimensions
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' data_request_eff])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' data_request_eff])
-      return
-    end
-    if strcmp(data_request_eff(1:2),'ne')
-      tracefirrat_data = get_fir_thom_rat_data(shot,['thomson' edge_str_],time);
-      gdat_data.data_abs = gdat_data.data * diag(tracefirrat_data);
-      gdat_data.error_bar_abs = gdat_data.error_bar * diag(tracefirrat_data);
-      gdat_data.firrat=tracefirrat_data;
-      gdat_data.data_fullpath=[gdat_data.data_fullpath ' ; _abs includes *firrat'];
-    end
-    z=mdsdata('\diagz::thomson_set_up:vertical_pos');
-    gdat_data.dim=[{z};{time}];
-    gdat_data.dimunits=[{'Z [m]'} ; {'time [s]'}];
-    gdat_data.x=z;
-    gdat_data.t=time;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus use fieldnames
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      gdat_data.units=tracetdi.units;
-    end
-    
-   case {'ne_rho', 'te_rho', 'nete_rho'}
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      warning(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' data_request_eff])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' data_request_eff])
-      return
-    end
-    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
-    edge_str_ = '';
-    edge_str_dot = '';
-    if isfield(gdat_data.gdat_params,'edge') && ~isempty(gdat_data.gdat_params.edge) && ...
-          gdat_data.gdat_params.edge>0
-      edge_str_ = '_edge';
-      edge_str_dot = '.edge';
-    end
-    % if nete_rho, do first ne, then Te later (so fir stuff already done)
-    if strcmp(data_request_eff,'ne_rho')  || strcmp(data_request_eff,'nete_rho')
-      nodenameeff=['\results::thomson' edge_str_dot ':ne'];
-      tracetdi=tdi(nodenameeff);
-      nodenameeff=['\results::thomson' edge_str_dot ':ne; error_bar ; fir_thom_rat; (ne,std)*fir_thom_rat'];
-      tracestd=tdi(['\results::thomson'  edge_str_dot ':ne:error_bar']);
-      tracefirrat_data = get_fir_thom_rat_data(shot,['thomson' edge_str_],time);
-    else
-      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']);
-    end
-    gdat_data.data=tracetdi.data'; % Thomson data as (t,z)
-    gdat_data.error_bar=tracestd.data';
-    gdat_data.data_fullpath=nodenameeff;
-    if strcmp(data_request_eff,'ne_rho')  || strcmp(data_request_eff,'nete_rho')
-      gdat_data.firrat=tracefirrat_data;
-      gdat_data.data_abs=gdat_data.data*diag(tracefirrat_data);
-      gdat_data.error_bar_abs=gdat_data.error_bar*diag(tracefirrat_data);
-      gdat_data.data_fullpath=[gdat_data.data_fullpath ' ; _abs includes *firrat'];
-    end
-    % add correct dimensions
-    % construct rho mesh
-    psi_max=tdi(['\results::thomson' edge_str_dot ':psi_max' substr_liuqe]);
-    psiscatvol=tdi(['\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
-          disp(' bad time dimension for zshift')
-          disp(['it should be 1 or ' num2str(length(psiscatvol.dim{1})) ' or ' num2str(length(psitdi.dim{3}))])
-      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
-      rho=NaN;
-    end
-    gdat_data.dim=[{rho};{time}];
-    gdat_data.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-    gdat_data.x=rho;
-    gdat_data.t=time;
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      gdat_data.units=tracetdi.units;
-    end
-    %%%%%%%%%%% add fitted profiles if 'fit'>=1
-    if isfield(gdat_data.gdat_params,'fit') && ~isempty(gdat_data.gdat_params.fit) && ...
-          gdat_data.gdat_params.fit>0
-      % default is from proffit:avg_time
-      def_proffit = '\results::proffit.avg_time';
-      if isfield(gdat_data.gdat_params,'fit_type') && ~isempty(gdat_data.gdat_params.fit_type)
-        if strcmp(gdat_data.gdat_params.fit_type,'local')
-          def_proffit = '\results::proffit.local_time';
-        else
-          gdat_data.gdat_params.fit_type = 'avg';
-        end
-      else
-        gdat_data.gdat_params.fit_type = 'avg';
-      end
-      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
-        disp(['should not be here: data_request_eff, data_request_eff(1:2)= ',data_request_eff, data_request_eff(1:2)]);
-      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)
-        gdat_data.fit.data = tracetdi.data;
-      else
-        if ~isempty(tracetdi.data) && size(tracetdi.data,3)>=trialindx+1
-          gdat_data.fit.data = tracetdi.data(:,:,trialindx+1);
-        else
-          gdat_data.fit.data = [];
-          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_tcv.timedim~=2 | mapping_for_tcv.gdat_timedim~=2
-        disp(['unexpected timedim in fit: data_request_eff= ' data_request_eff ...
-             ', mapping_for_tcv.timedim= ' mapping_for_tcv.timedim ...
-             ', mapping_for_tcv.gdat_timedim= ' mapping_for_tcv.gdat_timedim]);
-      end
-      gdat_data.dim=tracetdi.dim(1:2);
-      gdat_data.dimunits=tracetdi.dimunits(1:2);
-      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.units = gdat_data.fit.units;
-        nodenameeff = [def_proffit ':teft'];
-        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
-        if any(strcmp(fieldnames(tracetdi),'units'))
-          gdat_data.fit.te.units=tracetdi.units;
-        end
-        % 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 = 0;
-    end
-    %%%%%%%%%%%
-    % 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')
-      gdat_data.ne.data = gdat_data.data_abs;
-      gdat_data.ne.error_bar = gdat_data.error_bar_abs;
-      gdat_data.ne.firrat=gdat_data.firrat;
-      gdat_data.ne.units = 'm^{-3}';
-      gdat_data = rmfield(gdat_data,{'firrat','data_abs','error_bar_abs'});
-      %
-      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
-
-   case {'powers'}
-    % note: same time array for all main, ec, ohm, nbi, ...
-    % At this stage fill just ech, later add nbi
-    nodenameeff='\results::toray.input:p_gyro';
-    tracetdi=tdi(nodenameeff);
-    gdat_data.ec.data = tracetdi.data*1e3; % at this stage p_gyro is in kW'
-    gdat_data.ec.units = 'W';
-    gdat_data.ec.dim=tracetdi.dim;
-    gdat_data.ec.dimunits=tracetdi.dimunits;
-    gdat_data.ec.t=tracetdi.dim{1};
-    gdat_data.ec.x=tracetdi.dim{2};
-    gdat_data.ec.data_fullpath=[nodenameeff];
-    gdat_data.ec.label='P_{EC}';
-    % set ec time as reference
-    gdat_data.t = gdat_data.ec.t;
-    gdat_data.dim{1} = gdat_data.t;
-    gdat_data.dimunits{1} = 's';
-    gdat_data.units = 'W';
-    
-    % get ohmic power simply from vloop*Ip (minus sign for TCV)
-    ip=gdat([],'ip');
-    vloop=gdat([],'vloop');
-    tension = -1e5;
-    vloop_smooth=interpos(vloop.t,vloop.data,gdat_data.t,tension);
-    ip_t = interp1(ip.t,ip.data,gdat_data.t);
-    gdat_data.ohm.data = -vloop_smooth.*ip_t;
-    gdat_data.ohm.units = 'W';
-    gdat_data.ohm.dim=gdat_data.dim;
-    gdat_data.ohm.dimunits=gdat_data.dimunits;
-    gdat_data.ohm.t=gdat_data.t;
-    gdat_data.ohm.x=[];
-    gdat_data.ohm.data_fullpath=['-vloop(tens=' num2str(tension,'%.0e') ')*ip, from gdat'];
-    gdat_data.ohm.label='P_{OHM}';
-    
-    % total power from each and total
-    gdat_data.data(:,1) = gdat_data.ohm.data;
-    gdat_data.data(:,2) = gdat_data.ec.data(:,10);
-    gdat_data.data(:,3) = gdat_data.ec.data(:,10) + gdat_data.ohm.data;
-    gdat_data.dim{2} = [1:3];
-    gdat_data.dimunits{2} = 'Pohm;Pec;Ptot';
-    gdat_data.data_fullpath=['tot power from EC and ohm'];
-    gdat_data.label = 'P_{ohm};P_{EC};P_{tot}';
-
-   case {'q_rho'}
-    % q profile on psi from liuqe
-    nodenameeff=['\results::q_psi' substr_liuqe];
-    if liuqe_version==-1
-      nodenameeff=[begstr 'q_psi' substr_liuqe];
-    end
-    tracetdi=tdi(nodenameeff);
-    gdat_data.data = tracetdi.data;
-    gdat_data.dim = tracetdi.dim;
-    gdat_data.t = gdat_data.dim{2};
-    gdat_data.data_fullpath=[nodenameeff ' on rhopol'];
-    rhopol_eff = ones(size(tracetdi.dim{1}));
-    rhopol_eff(:) = sqrt(linspace(0,1,length(tracetdi.dim{1})));
-    gdat_data.dim{1} = rhopol_eff;
-    gdat_data.x = gdat_data.dim{1};
-    gdat_data.dimunits{1} = '';
-    gdat_data.dimunits{2} = 's';
-    gdat_data.units = '';
-    gdat_data.request_description = 'q(rhopol\_norm)';
-
-   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);
-    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 {'rhotor_edge','rhotor'}
-    % Phi(LCFS) = int(Bphi dSphi), can use Eq.(11) of "Tokamak coordinate conventions: COCOS" paper:
-    % O. Sauter, S.Yu. Medvedev, Comput. Phys. Commun. 184 (2013) 293–302
-    % since cocos=17 for LIUQE we get:
-    % q = -dPhi/dpsi => Phi = - int(q*dpsi) which should always have the sign of B0
-    params_eff = gdat_data.gdat_params;
-    params_eff.data_request='q_rho'; 
-    q_rho=gdat_tcv([],params_eff);
-    params_eff.data_request='psi_axis'; % psi_edge=0 with LIUQE
-    psi_axis=gdat_tcv([],params_eff);
-    params_eff.data_request='b0'; % psi_edge=0 with LIUQE
-    b0=gdat_tcv([],params_eff);
-    b0tpsi = interp1(b0.t,b0.data,psi_axis.t); %q_rho on same time base as psi_axis
-    if isempty(psi_axis.data) || isempty(psi_axis.dim) || isempty(q_rho.data) || isempty(q_rho.dim)
-      warning(['problems loading data for ' nodenameeff ' for data_request= ' data_request_eff])
-      return
-    end
-    rhoequal = linspace(0,1,length(q_rho.dim{1}));
-    if strcmp(data_request,'rhotor_edge')
-      gdat_data.data = psi_axis.data; % to have the dimensions correct
-      gdat_data.dim = psi_axis.dim;
-      gdat_data.t = gdat_data.dim{1};
-      gdat_data.data_fullpath='phi from q_rho, psi_axis and integral(-q dpsi)';
-      gdat_data.units = 'T m^2';
-      gdat_data.dimunits{1} = 's';
-    elseif strcmp(data_request,'rhotor')
-      gdat_data.data = q_rho.data; % to have the dimensions correct
-      gdat_data.dim{1} = ones(size(q_rho.dim{1}));
-      gdat_data.dim{1}(:) = rhoequal;
-      gdat_data.dim{2} = q_rho.dim{2};
-      gdat_data.t = gdat_data.dim{2};
-      gdat_data.data_fullpath='sqrt(phitor/phitor_edge), rhotor_edge=sqrt(phitor/B0/pi)';
-      gdat_data.units = '';
-      gdat_data.dimunits{1} = 'rhopol\_norm';
-      gdat_data.dimunits{2} = 's';
-    end
-    for it=1:length(psi_axis.data)
-      ij=find(~isnan(q_rho.data(:,it)));
-      if ~isempty(ij)
-        [qfit,~,~,phi]=interpos(q_rho.x(ij).^2,q_rho.data(ij,it),rhoequal.^2);
-        dataeff = sqrt(phi .* psi_axis.data(it) ./ b0tpsi(it) ./ pi) ; % Delta_psi = -psi_axis
-      else
-        dataeff = NaN;
-      end
-      if strcmp(data_request,'rhotor_edge')
-        gdat_data.data(it) = dataeff(end);
-      elseif strcmp(data_request,'rhotor')
-        gdat_data.data(:,it) = dataeff./dataeff(end);
-        gdat_data.rhotor_edge(it) = dataeff(end);
-      end
-      gdat_data.b0 = b0tpsi(it);
-    end
-    
-   case {'rhovol','volume_rho','volume'}
-    % volume_rho = vol(rho); volume = vol(LCFS) = vol(rho=1);
-    % rhovol = sqrt(vol(rho)/vol(rho=1));
-    nodenameeff='\results::psitbx:vol';
-    if liuqe_version==-1
-      nodenameeff=[begstr 'vol' substr_liuqe];
-    end
-    tracetdi=tdi(nodenameeff);
-    if isempty(tracetdi.data) || isempty(tracetdi.dim) 
-      return
-    end
-    gdat_data.units = tracetdi.units;
-    if strcmp(data_request,'volume')
-      gdat_data.data = tracetdi.data(end,:);
-      gdat_data.dim{1} = tracetdi.dim{2};
-      gdat_data.data_fullpath=['\results::psitbx:vol(end,:)'];
-      gdat_data.dimunits{1} = tracetdi.dimunits{2};
-      gdat_data.request_description = 'volume(LCFS)=volume(rhopol=1)';
-    else
-      gdat_data.data = tracetdi.data;
-      gdat_data.dim = tracetdi.dim;
-      gdat_data.dimunits = tracetdi.dimunits;
-      if strcmp(data_request,'volume_rho')
-        gdat_data.data_fullpath=['\results::psitbx:vol'];
-        gdat_data.request_description = 'volume(rho)';
-      elseif strcmp(data_request,'rhovol')
-        gdat_data.volume_edge = gdat_data.data(end,:);
-        gdat_data.data = sqrt(gdat_data.data./repmat(reshape(gdat_data.volume_edge,1,size(gdat_data.data,2)),size(gdat_data.data,1),1));
-        gdat_data.data_fullpath='sqrt(\results::psitbx:vol/vol_edge)';
-        gdat_data.request_description = 'sqrt(volume(rho)/volume(edge))';
-      else
-        disp(['should not be here in vol cases with data_request = ' data_request_eff]);
-        return
-      end
-    end
-      gdat_data.t = gdat_data.dim{mapping_for_tcv.gdat_timedim};
-    
-   case {'sxr'}
-    % sxr from Xtomo by default or dmpx if 'camera','dmpx' is provided
-
-   case {'profnerho','profterho'}
-    % for backward compatibility but corresponds to ne_rho with param.fit_type='auto' (TCV special)
-    % 
-    nodenameeff=['\results::THOMSON.PROFILES.AUTO:' data_request_eff(5:6)];
-    nodenameeff_vers = [nodenameeff ':version_num'];
-    avers = tdi(nodenameeff_vers);
-    if avers.data==0
-     % may be because nodes not yet filled in, so call once a node
-     ab=tdi(nodenameeff);
-     avers = tdi(nodenameeff_vers);
-    end
-    if avers.data>0
-      tracetdi=tdi(nodenameeff);
-      if avers.data < 2.99
-        % for earlier version the bug made it to have logically (rho,t)
-        gdat_data.data=tracetdi.data;
-        if ~isempty(tracetdi.dim) && ~ischar(tracetdi.data)
-          gdat_data.x=tracetdi.dim{1};
-          gdat_data.t=tracetdi.dim{2};
-          error_status=0;
-        else
-         error_status=2;
-          gdat_data.x=[];
-          gdat_data.t=[];
-        end
-      else
-        gdat_data.data=tracetdi.data'; % error in dimensions for autofits
-        if ~isempty(tracetdi.dim) && ~ischar(tracetdi.data)
-          if nverbose>=3; disp('assumes dim{2} for x in THOMSON.PROFILES.AUTO'); end
-          gdat_data.x=tracetdi.dim{2};
-          gdat_data.t=tracetdi.dim{1};
-          error_status=0;
-        else
-          gdat_data.x=[];
-          gdat_data.t=[];
-         error_status=2;
-        end
-      end
-    else
-      tracetdi=avers;
-      gdat_data.x=[];
-      gdat_data.t=[];
-    end
-    gdat_data.dim=[{gdat_data.x};{gdat_data.t}];
-    gdat_data.dimunits=[{'sqrt(psi\_norm)'} ; {'time [s]'}];
-    if ~isempty(gdat_data.t) && any(strcmp(fieldnames(tracetdi),'units'))
-      gdat_data.units=tracetdi.units;
-    end
-    gdat_data.request_description = 'quick autofits within thomson nodes, using version';
-    gdat_data.fullpath = ['Thomson autfits from ' nodenameeff];
-
-   otherwise
-    warning(['switchcase= ' data_request_eff ' not known in gdat_tcv'])
-    error_status=901;
-    return
-  end
-  
-else
-  warning(['TCV method=' mapping_for_tcv.method ' not known yet, contact Olivier.Sauter@epfl.ch'])
-  error_status=602;
-  return
-end
-
-if ishot==shot; mdsclose; end
-
-gdat_data.mapping_for.tcv = mapping_for_tcv;
-error_status=0;
-
-return
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-function [firthomratio] = get_fir_thom_rat_data(shot,maintracename,timebase);
-%
-% since depends on shot number for using auto fit and thomson or thomson edge, use tracename and function here
-%
-% maintracename = 'thomson' or 'thomson_edge
-%
-% return fir_to_thomson ratio on time=timebase
-%
-% normally should use "main" thomson one built from auto fit if possible
-% take edge one if need be
-%
-% default: maintracename = "thomson"
-%
-maintracename_eff = 'thomson';
-if exist('maintracename') && ~isempty(maintracename)
-  maintracename_eff = maintracename;
-end
-
-firthomratio = NaN;
-if ~exist('timebase') || isempty(timebase)
-  disp('need a timebase in get_fir_thom_rat_data')
-  return
-end
-firthomratio = NaN*ones(size(timebase));
-
-if strcmp(maintracename_eff,'thomson')
-  if shot>=23801
-    tracefirrat=tdi('\results::thomson.profiles.auto:fir_thom_rat'); %time base not same!!
-    if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-      disp('problem with \results::thomson.profiles.auto:fir_thom_rat: empty, use thomson:fir_thom_rat')
-      tracefirrat=tdi('\results::thomson:fir_thom_rat');
-    end
-  else
-    tracefirrat=tdi('\results::thomson:fir_thom_rat');
-    if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-      disp('problem with \results::thomson:fir_thom_rat: empty')
-    end
-  end
-elseif strcmp(maintracename_eff,'thomson_edge')
-  if shot>=23801
-    tracefirrat=tdi('\results::thomson.profiles.auto:fir_thom_rat'); %time base not same!!
-    if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-      disp('problem with \results::thomson.profiles.auto:fir_thom_rat: empty, use thomson:fir_thom_rat')
-      tracefirrat=tdi('\results::thomson:fir_thom_rat');
-    end
-  else
-    tracefirrat=tdi('\results::thomson_edge:fir_thom_rat');
-    if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-      disp('problem with \results::thomson_edge:fir_thom_rat: empty')
-    end
-  end
-else
-  disp('bad input in get_fir_thom_rat_data')
-  return
-end  
-  
-if ~isempty(tracefirrat.data) || ischar(tracefirrat.data)
-  firthomratio = interp1(tracefirrat.dim{1},tracefirrat.data,timebase);
-end
-
diff --git a/crpptbx_new/TCV/get_xtomo_data.m b/crpptbx_new/TCV/get_xtomo_data.m
deleted file mode 100755
index 0c0c69a47c7a4cba4689321d38e8c4ec3d61cfe8..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/get_xtomo_data.m
+++ /dev/null
@@ -1,496 +0,0 @@
-function [sig,t]=get_xtomo_data(shot,t1,t2,dt,fans,angfact,tag);
-
-%                                                                  -
-%[sig,t]=get_xtomo_data_m5(shot,t1,t2,dt,fans,angfact,tag);           
-%
-%	INPUT:
-%       shot:	   TCV shot
-%       t1:      start time
-%       t2:      stop time
-%       dt:	     timestep
-%       fans:    camera switch, e.g. [0 0 0 0 0 0 1 0 1 0];
-%       angfact: relative etendue, size:	[20 x 10]
-%                tag	'full' or 'brief', indicates if it is
-%                a slow or a fast Pentland acquisition
-%
-% OUTPUTS:
-%       sig:	    xtomo signals, size:	[sum(fans) x length(t)]
-%       t:       times
-%      
-%	ATTENTION: length(time) may be shorter than foreseen !!      
-%
-% This routine works on Matlab5.
-% Original routine for Matlab4 by Anton Mathias.  
-%
-% Last update: 25-08-1999
-%
-%-------------MAC:[FURNO.MATLAB5.XTOMO]----------------------------------
-
-
-%---- get  data and offsets ---------------------------------------------------
-
-	% set a flag if flattenign of noise 
-	% for channels with low signal
-
-
-	iflat=0;
-	minsiglevel=0.01;
-	satlevel=9.9;
-
-
-	st1=sprintf('%6.4f',t1);
-	st2=sprintf('%6.4f',t2);
-        sdt=num2str(dt);
-
-%	sdt=sprintf('%6.4f',dt); % modified from old version             
-
-      
-	if shot >= 13836 & shot <= 13848 
-		tstart=-0.02;tstop=-0.01;		%  this  one is to be used only for
-	else						%  shot=13836 to shot=13848
-        	tstart=-0.04;tstop=-0.01;
-        end
-	
-	ststart=num2str(tstart);
-	ststop=num2str(tstop);
-
-if nargin <=6 
-
-	shot=mdsopen(shot);
-	t=mdsdata(['dim_of(\base::xtomo:array_001[',st1,':',st2,':',sdt,',*])']);
-	S1=[];
-	S2=[];
-	S3=[];
-	S4=[];
-	S5=[];
-	S6=[];
-	S7=[];
-	S8=[];
-	S9=[];
-	S10=[];
-
-	if isempty(t)
-		disp('get_xtomo_data: sorry, nothing to be found for this shot ...')
-		return
-	else
-		disp('*-------------------------------------------*')
-		disp('| get_xtomo_data: getting data from MDS     |')
-		disp('*-------------------------------------------*')
-	end
-                                                                                               
-	if shot>6768
-
-		if fans(1)
-			S=mdsdata(['\base::xtomo:array_001[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_001[',ststart,':',ststop,',0:19]']);
-        		S1=S-repmat(mean(offset),length(t),1)';                       
-		end                                
-
-		if fans(2)
-		        S=mdsdata(['\base::xtomo:array_002[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_002[',ststart,':',ststop,',0:19]']);
-        		S2=S-repmat(mean(offset),length(t),1)';                       
-	      	end
-
-		if fans(3)
-			S=mdsdata(['\base::xtomo:array_003[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_003[',ststart,':',ststop,',0:19]']);
-        		S3=S-repmat(mean(offset),length(t),1)';                       
-	      	end
-
-		if fans(4)
-			S=mdsdata(['\base::xtomo:array_004[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_004[',ststart,':',ststop,',0:19]']);
-       	 		S4=S-repmat(mean(offset),length(t),1)';                       
-		end
-
-		if fans(5)
-			S=mdsdata(['\base::xtomo:array_005[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_005[',ststart,':',ststop,',0:19]']);
-        		S5=S-repmat(mean(offset),length(t),1)';                       
-		end
-
-		if fans(6)
-			S=mdsdata(['\base::xtomo:array_006[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_006[',ststart,':',ststop,',0:19]']);
-        		S6=S-repmat(mean(offset),length(t),1)';                       
-	      	end
-	
-		if fans(7)
-			S=mdsdata(['\base::xtomo:array_007[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_007[',ststart,':',ststop,',0:19]']);
-        		S7=S-repmat(mean(offset),length(t),1)';                       
-	        end
-	
-		if fans(8)
-			S=mdsdata(['\base::xtomo:array_008[',st1,':',st2,':',sdt,',0:19]'])';
-		       	offset=mdsdata(['\base::xtomo:array_008[',ststart,':',ststop,',0:19]']);
-        		S8=S-repmat(mean(offset),length(t),1)';                       
-	        end
-
-			if fans(9)
-			S=mdsdata(['\base::xtomo:array_009[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_009[',ststart,':',ststop,',0:19]']);
-        		S9=S-repmat(mean(offset),length(t),1)';                       
-	      	end
-
-		if fans(10)
-			S=mdsdata(['\base::xtomo:array_010[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_010[',ststart,':',ststop,',0:19]']);
-       			S10=S-repmat(mean(offset),length(t),1)';                       
-		end
-
-
-		sig=-[S1;S2;S3;S4;S5;S6;S7;S8;S9;S10];   
-		[satrow,satcol]=find(abs(sig)>satlevel);
-
-		if ~isempty(satcol)
-			i_tlimit=min(satcol(:));
-			if i_tlimit>1
-				sig=sig(:,1:i_tlimit-1);
-				t=t(1:i_tlimit-1);
-				disp(['get_xtomo_data WARNING: some channels saturated',......
-				', t2 changed to ',sprintf('%6.4f',max(t))]);
-	       		else
-		      		sig=[];
-				t=[];
-				disp('get_xtomo_data WARNING: saturations, no data returned');
-				return
-	       		end
-		end
-
-
-		angfact=angfact(:,find(fans));
-		angfact=angfact(:);
-		gains=get_xtomo_gains(shot);
-		% earlier than shot xxx:
-		perm=[1:180,[180+[2,1,4,3,6,5,8,7,10,9,12,11,14,13,16,15,18,17,20,19]]];
-		gains=gains(perm);
-		iact=find(fans);
-		nact=length(iact);
-		idetec=[];
-		for k=1:nact
-			idetec=[idetec,(iact(k)-1)*20+1:iact(k)*20];
-		end
-		gains=gains(idetec);
-		gains=gains(:);
-		fac=ones(size(gains))./gains;
-
-
-		sig=-sig.*(repmat(fac,1,length(t)));
-
-		if iflat
-			for ii=1:length(t)
-				imini=find( sig(:,ii) < minsiglevel*max(sig(:,ii)));
-				sig(imini,ii)=zeros(size(imini));
-			end			
-		end
-
-        	t=t';
-       		sig=sig.*(repmat(angfact,1,length(t)));                                           
-                                                                
-
-	else
-
-		if fans(9)
-			S=mdsdata(['\base::xtomo:array_001[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_001[',ststart,':',ststop,',0:19]']);
-               		V=S-repmat(mean(offset),length(t),1)';                       
-	        end
-		if fans(7)
-			S=mdsdata(['\base::xtomo:array_002[',st1,':',st2,':',sdt,',0:19]'])';
-       			offset=mdsdata(['\base::xtomo:array_002[',ststart,':',ststop,',0:19]']);
-        		H=S-repmat(mean(offset),length(t),1)';                      
-       		end
-
-		%---- read gains of the current shot ---------------------------------------
-	
-		gains=get_xtomo_gains(shot);
-		g1=gains(1:20)';
-		g2=gains(21:40)';
-
-       		%------ solid angle factors -----------------------
-
-		aom1=angfact(:,9);
-		aom2=angfact(:,7);
-
-
-		%-----  calculate correcting factors ---------------------------------------
-
-		fac1=(aom1./g1);
-		fac2=(aom2./g2);
-
-		%--- result: offset-, calibration- and angular-factor corrected data -------
-
-		V=-V.*(repmat(fac1,1,length(t))); % vertical camera:
-		H=-H.*(repmat(fac2,1,length(t))); % horizontal camera:
-
-
-		sig=[H;V];
-
-        	t=t';                                              
-                                                                              
-	end
-
-else
-
-        if (~strcmp(tag,'brief') & ~strcmp(tag,'full'))
-        	disp('Only full or brief accepted as tag')
-          	return	
-	end                                 
-	
-
-	trace_tree=['\atlas::t_rex3_' tag ':'];        
-	trace=[trace_tree 'signal_inp:p'];                                         
-	%shot=mdsopen('eltca1::tcv_shot',shot);             
- shot=mdsopen(shot);   
-	tref=mdsdata(['_tref=dim_of(' trace,'001)']);  %trace :p001      
-        dtref=mdsdata('_dtref = _tref[1]-_tref[0]');    
-             
-                                                                      
-	S1=[];
-	S2=[];
-	S3=[];
-	S4=[];
-	S5=[];
-	S6=[];
-	S7=[];
-	S8=[];
-	S9=[];
-	S10=[];
-
-        t_1=mdsdata('_t = dim_of(\atlas::t_rex3_full:signal_inp:p001)');
-        dt1=mdsdata('_dt = _t[1]-_t[0]');                    
-	npts=floor(mdsdata(['_npts=(',ststop,'-(',ststart,'))/_dt']));
-
-      
-                        
-if isempty(t_1)
-		disp('get_xtomo_data: sorry, nothing to be found for this shot ...')
-		return       
-	else
-		disp('*--------------------------------------------*')
-		disp('| getting Pentland acquisition: getting      *')
- if strcmp(tag,'brief')
-    disp('|         BRIEF data from MDS                *');
-	else
-		  disp('|         FULL   data from MDS               *');
-	end
-		disp('*--------------------------------------------*');
-	end
-
-
-                             
-	if ((dt - dtref) < 1e-7 | floor(dt/dtref) ==0)
-		step='1';
-	else 
-		step =num2str(dt/dtref);
-	end 
-
-	
-	ind1=find( abs(tref-t1) == min(abs(tref-t1)));   
-        npts1=floor(mdsdata(['_npts1=(',st2,'-(',st1,'))/_dtref']));
-        sind1=num2str(ind1);                                                              
-        sind2=num2str(npts1+ind1);                             
-        
-	t=mdsdata(['data(_tref)[',sind1,':',sind2,':', step, ']']); 
-                             
-        
-
-                                                                                      
-	if fans(1)
-		channel=['001';'002';'003';'004';'005';'006';'007';'008';'009';'010';...
-			'011';'012';'013';'014';'015';'016';'017';'018';'019';'020'];          
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-
-                       	
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':' , step,']'])'; 
-       	   	     	offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-			S1(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end
-
-        
-
-        if fans(2)
-		channel=['021';'022';'023';'024';'025';'026';'027';'028';'029';'030';...
-			 '031';'032';'033';'034';'035';'036';'037';'038';'039';'040'];
-		for i=1:20
-
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-                                                
-			
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':', step, ']'])'; 
-      	   	       	offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-			S2(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end                   
-         if fans(3)
-		
-		channel=['041';'042';'043';'044';'045';'046';'047';'048';'049';'050';...
-			'051';'052';'053';'054';'055';'056';'057';'058';'059';'060'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-                                                
-			
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':', step, ']'])';  
-        	       	offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-           		S3(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                            
-         end
-
-        if fans(4)
-		channel=['061';'062';'063';'064';'065';'066';'067';'068';'069';'070';...
-			 '071';'072';'073';'074';'075';'076';'077';'078';'079';'080'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-
-                       
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':', step, ']'])';  
-                      	offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-           		S4(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end
-         if fans(5)
-		channel=['081';'082';'083';'084';'085';'086';'087';'088';'089';'090';...
-			 '091';'092';'093';'094';'095';'096';'097';'098';'099';'100'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-
-			
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':',step,']'])';  
-                        offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-			S5(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end
-
-        if fans(6)
-		channel=['101';'102';'103';'104';'105';'106';'107';'108';'109';'110';...
-		  	 '111';'112';'113';'114';'115';'116';'117';'118';'119';'120'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace,channel(i,:),'[',st1,':',st2,':',sdt,':',step,']'])'
-   S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':', step, ']'])';  
-			offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-           		S6(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end
-        if fans(7)
-		channel=['121';'122';'123';'124';'125';'126';'127';'128';'129';'130';...
-		 	 '131';'132';'133';'134';'135';'136';'137';'138';'139';'140'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-
-			
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':',step,']'])';  
-			offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-           		S7(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end
-        if fans(8)
-		channel=['141';'142';'143';'144';'145';'146';'147';'148';'149';'150';...
-		 	 '151';'152';'153';'154';'155';'156';'157';'158';'159';'160'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-
-			
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':', step,']'])';  
-                        offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-           		S8(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end
-         if fans(9)
-		channel=['161';'162';'163';'164';'165';'166';'167';'168';'169';'170';...
-		 	 '171';'172';'173';'174';'175';'176';'177';'178';'179';'180'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-
-			
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':', step,']'])';  
-                        offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-			S9(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       	
-	end                                
-         end
-         if fans(10)
-%		channel=['181';'182';'183';'184';'185';'186';'187';'188';'189';'190';...
-%		 	 '191';'192';'193';'194';'195';'196';'197';'198';'199';'200'];
-
-% this permutation takes into account some not well defined (not yet)
-% hardware corrections. Are the gains to be permutated ?
-
-
-		channel=['182';'181';'184';'183';'186';'185';'188';'187';'190';'189';...
-		 	 '192';'191';'194';'193';'196';'195';'198';'197';'200';'199'];
-		for i=1:20
-%			S(i,:)=mdsdata([trace, channel(i,:),'[',st1,':',st2,':',sdt,']'])';
-
-			
-			S(i,:)=mdsdata(['data(',trace,channel(i,:),')[',sind1,':',sind2,':', step,']'])';  
-                        offset=mdsdata(['data(\atlas::t_rex3_full:signal_inp:p',channel(i,:),')[0:',num2str(npts),']' ]);
-			S10(i,:)=S(i,:)-repmat(mean(offset),length(t),1)';                       
-		end                                
-         end
-
-	sig=[S1;S2;S3;S4;S5;S6;S7;S8;S9;S10];   
-
-
-	[satrow,satcol]=find(abs(sig)>satlevel);
-
-		if ~isempty(satcol)
-			i_tlimit=min(satcol(:));
-			if i_tlimit>1
-				sig=sig(:,1:i_tlimit-1);
-				t=t(1:i_tlimit-1);
-				disp(['get_xtomo_data WARNING: some channels saturated',......
-				', t2 changed to ',sprintf('%6.4f',max(t))]);
-	       		else
-		      		sig=[];
-				t=[];
-				disp('get_xtomo_data WARNING: saturations, no data returned');
-				return
-	       		end
-		end
-
-
-	angfact=angfact(:,find(fans));
-	angfact=angfact(:);
-	gains=get_xtomo_gains(shot);
-	% earlier than shot xxx:
-	perm=[1:180,[180+[2,1,4,3,6,5,8,7,10,9,12,11,14,13,16,15,18,17,20,19]]];
-	gains=gains(perm);
-	iact=find(fans);
-	nact=length(iact);
-	idetec=[];
-		for k=1:nact
-			idetec=[idetec,(iact(k)-1)*20+1:iact(k)*20];
-		end
-	gains=gains(idetec);
-	gains=gains(:);
-	fac=ones(size(gains))./gains;
-
-
-	sig=sig.*(repmat(fac,1,length(t)));
-
-		if iflat
-			for ii=1:length(t)
-				imini=find( sig(:,ii) < minsiglevel*max(sig(:,ii)));
-				sig(imini,ii)=zeros(size(imini));
-			end			
-		end
-
-        t=t';
-       	sig=sig.*(repmat(angfact,1,length(t)));                                           
-                                                                
-
-end
-
-mdsclose
-
-
-return
-
-
-
-
-
-
diff --git a/crpptbx_new/TCV/loadTCVdata.m b/crpptbx_new/TCV/loadTCVdata.m
deleted file mode 100644
index cc7ef6baf950a7b9e23ceaef0f051e80fd654d43..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/loadTCVdata.m
+++ /dev/null
@@ -1,1423 +0,0 @@
- function [trace,error_status,varargout]=loadTCVdata(shot,data_type,varargin)
-%
-% Added option to load shot=-1 or >=100000
-% Added option shot=-9 to list keywords
-%
-% list of data_type currently available (when [_2,_3] is added, means can add _i to get Liuqe i):
-% if -1 is added, can also get it from FBTE with shot=-1, >=100000 or liuqe_version='_-1' (to get model file)
-%
-% 'Ip'[_2,_3]   =  current
-% 'B0'[_2,_3]   =  current
-% 'zmag'[_2,_3] =  vertical position of the center of the plasma (magnetic axis)
-% 'rmag'[_2,_3] =  radial position of the center of the plasma
-% 'rcont'[_2,_3] =  R of plama boundary vs time
-% 'zcont'[_2,_3] =  Z of plama boundary vs time
-% 'vol'[_2,_3] =  volume of flux surfaces
-% 'rhovol'[_2,_3] =  sqrt(V(:,t)/V(edge,t)), normalised rho variable based on volume of flux surfaces
-% 'qrho'[_2,_3] =  q profile on rho mesh
-% 'q95'[_2,_3] =  q95 vs time
-% 'kappa', 'elon'[_2,_3] =  edge elongation vs time
-% 'delta', 'triang'[_2,_3] =  edge averaged triangularity vs time
-% 'deltatop', 'triangtop'[_2,_3] =  edge upper (top) triangularity vs time
-% 'deltabot', 'triangbot'[_2,_3] =  edge lower (bottom) triangularity vs time
-% 'j_tor'[_2,_3] =  J_TOR vs (R,Z,time)
-% 'neint' =  line-integrated electron density [m/m^3]
-% 'nel' =  line-averaged electron density [1/m^3]
-% 'ne'= ne raw profile on (z,t). ADD error bars in .std
-% 'te'= Te raw profile on (z,t). ADD error bars in .std
-% 'nerho'[_2,_3]= ne profile on (rho=sqrt(psi),time) mesh.Note rho is a 2D array as depends on time. ADD error bars in .std
-% 'terho'[_2,_3]= Te profile on (rho=sqrt(psi),time) mesh.Note rho is a 2D array as depends on time. ADD error bars in .std
-% 'nerhozshift'[_2,_3]= same as nerho but allows for zshift [m] in equil given by varargin{1}
-% 'terhozshift'[_2,_3]= same as terho but allows for zshift [m] in equil given by varargin{1}
-% 'profnerho' =  ne smoothed or fitted , vs (rho,t) (from Thomson auto fit)
-% 'profterho' =  te smoothed or fitted , vs (rho,t) (from Thomson auto fit)
-% 'neft' =  ne fitted from data on rho mesh (from proffit.local_time:neft_abs)
-% 'neft:4' =  ne fitted from data on rho mesh (from proffit.local_time:neft_abs from trial:trial_indx=4)
-% 'teft' =  te fitted from data on rho mesh (from proffit.local_time:teft)
-% 'neftav' =  ne fitted from averaged over time data on rho mesh (from proffit.avg_time:neft_abs)
-% 'teftav' =  te fitted from averaged over time data on rho mesh (from proffit.avg_time:teft)
-% 'vtor'= Toroidal rotation of C raw profile on (rho,t). ADD error bars in .std, as well as time and rho error bars
-% 'vtorfit'= Toroidal rotation of C fitted profile on (rho,t)
-% 'vpol'= Poloidal rotation of C raw profile on (rho,t). ADD error bars in .std, as well as time and rho error bars
-% 'vpolfit'= Poloidal rotation of C fitted profile on (rho,t)
-% 'Ti' (or Tc), 'Tifit', 'ni' (or nC), 'nifit', 'zeffcxrs', 'zeffcxrsfit': similar to 'vtor' from CXRS
-% 'ece'  =  electron cyclotron emission
-% 'sxr'  =  soft x-ray emission
-% 'sxR'  =  soft x-ray emission with varargout{1} option (requires varargin{4}!)
-% 'MPX'  =  soft x-ray from wire chambers
-% 'IOH'  =  current in ohmic transformer coils IOH_1
-% 'vloop'  =  loop voltage
-% 'pgyro' =  ECH power for each gyro(1:9) and total (10)
-%
-% 'xx_2 or xx_3' for Liuqe2 or 3: same as above for xx related to equilibrium
-% 'xx_-1 or xx_-1' for FBTE values (model or shot=-1 or shot>=100000): same as above for xx related to equilibrium
-%
-% INPUT:
-% shot: shot number
-% data_type: type of the required data
-%
-% Definition of varargin depends on data_type:
-%
-% data_type=sxr or ece:
-%                  varargin{1}:  [i1 i2] : if not empty, assumes need many chords from i1 to i2
-%                  varargin{2}:  channel status 1= unread yet, 0= read
-%                                (for traces with many channel, enables to load additional channels,
-%                                 like SXR, ECE, etc.)
-%                  varargin{3}:  zmag for varargout{1} computation
-%                       (can have more inputs for AUG, but not used here)
-% data_type=nerhozshift or terhozshift:
-%                  varargin{1}:  zshift [m] constant or (t) : positive, moves equil up (that is thomson effective z down)
-%                                                time dependent: needs same time base as psitbx:psi
-%
-% OUTPUT:
-%
-% trace.data:   data
-% trace.t:      time of reference
-% trace.x:      space of reference
-% trace.dim:    cell array of grids, trace.dim{1}, {2}, ...
-% trace.dimunits: units of dimensions
-% trace.units:  units of data
-%
-% Additional Output arguments depending on data_type
-%
-% data_type=sxR, ece:
-%                varargout{1}: major radius: intersection/projection of the view lines with z=zmag
-% data_type=MPX:
-%                varargout{1}: te be determined
-%
-%
-% function needed: mds functions-xtomo_geometry-get_xtomo_data (Furno's routines)
-%                  VsxrTCVradius
-% Example:
-%         [ip,error_status]=loadTCVdata(shot,'Ip',1);
-%         [sxr,error_status,R]=loadTCVdata(shot,'sxR',1);
-%
-
-varargout{1}=cell(1,1);
-error_status=1;
-
-% To allow multiple ways of writing a specific keyword, use data_type_eff within this routine
-if exist('data_type') && ~isempty(data_type)
-  data_type_eff=data_type;
-else
-  data_type_eff=' ';
-end
-i_23=0;
-% LIUQE tree
-begstr = '\results::';
-endstr = '';
-liuqe_version = 1;
-if length(data_type_eff)>2
-  if strcmp(data_type_eff(end-1:end),'_2') | strcmp(data_type_eff(end-1:end),'_3')
-    i_23=2;
-    endstr=data_type_eff(end-1:end);
-    liuqe_version = str2num(data_type_eff(end:end));
-  elseif strcmp(upper(data_type_eff(end-2:end)),'_-1')
-    i_23=3;
-    begstr = 'tcv_eq( "';
-    endstr = '", "FBTE" )';
-    liuqe_version = -1;
-  end
-end
-if shot==-1 || shot>=100000
-  % requires FBTE
-  liuqe_version = -1;
-  begstr = 'tcv_eq( "';
-  endstr = '", "FBTE" )';
-end
-
-% use keyword without eventual _2 or _3 extension to check for multiple possibilities
-% Also remove ":4" for trial_indx specification
-jj=strfind(data_type_eff,':');
-trialindx=[];
-if ~isempty(jj)
-  ii=strmatch(data_type_eff(1:jj-1),[{'teft'},{'neft'},{'teftav'},{'neftav'}]);
-  if ~isempty(ii)
-    trialindx=str2num(data_type_eff(jj+1:end));
-    data_type_eff_noext=[data_type_eff(1:jj-1) ':trial'];
-  else
-    data_type_eff_noext=data_type_eff(1:end-i_23);
-  end
-else
-  data_type_eff_noext=data_type_eff(1:end-i_23);
-end
-
-if ~isempty(strmatch(data_type_eff_noext,[{'ip'} {'i_p'} {'xip'}],'exact'))
-  data_type_eff_noext='Ip';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'b0'} {'B_0'} {'Bgeom'} {'BGEOM'}],'exact'))
-  data_type_eff_noext='B0';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Te'} {'t_e'} {'TE'} {'T_e'}],'exact'))
-  data_type_eff_noext='te';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Te_edge'} {'TE_edge'}],'exact'))
-  data_type_eff_noext='te_edge';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Ne_edge'} {'NE_edge'}],'exact'))
-  data_type_eff_noext='ne';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Rcont'}],'exact'))
-  data_type_eff_noext='rcont';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Zcont'}],'exact'))
-  data_type_eff_noext='zcont';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Terho'}],'exact'))
-  data_type_eff_noext='terho';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Terhozshift'}],'exact'))
-  data_type_eff_noext='terhozshift';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'SXR'}],'exact'))
-  data_type_eff_noext='sxr';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'ECE'}],'exact'))
-  data_type_eff_noext='ece';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'VOL'} {'volume'}],'exact'))
-  data_type_eff_noext='vol';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'RHOVOL'}],'exact'))
-  data_type_eff_noext='rhovol';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'q_95'} {'Q95'}],'exact'))
-  data_type_eff_noext='q95';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'elongation'} {'elon'}],'exact'))
-  data_type_eff_noext='kappa';
-end
-if ~isempty(strmatch(lower(data_type_eff_noext),[{'j_tor'} {'jtor'} {'\results::j_tor'}],'exact'))
-  data_type_eff_noext='jtor';
-  data_type_eff = ['jtor' endstr];
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'triangularity'} {'triang'}],'exact'))
-  data_type_eff_noext='delta';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'deltaup'} {'deltau'} {'triangtop'} {'triangu'} {'triangup'}],'exact'))
-  data_type_eff_noext='deltatop';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'deltalow'} {'deltal'} {'triangbot'} {'triangl'} {'trianglow'}],'exact'))
-  data_type_eff_noext='deltabot';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Rmag'}],'exact'))
-  data_type_eff_noext='rmag';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Zmag'}],'exact'))
-  data_type_eff_noext='zmag';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'MPX'}],'exact'))
-  data_type_eff_noext='MPX';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'ioh'} {'Ioh'} {'iot'} {'IOT'}],'exact'))
-  data_type_eff_noext='IOH';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Vloop'} {'Vsurf'} {'vsurf'}],'exact'))
-  data_type_eff_noext='vloop';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'vtor'} {'v_tor'} {'vi'} {'vc'} {'v_i'} {'v_c'} {'VTOR'} {'V_TOR'} {'VI'} {'VC'} {'V_I'} {'V_C'}],'exact'))
-  data_type_eff_noext='vi_tor';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'vtorfit'} {'vtorft'} {'v_torfit'} {'vifit'} {'vcfit'} {'v_ifit'} {'v_cfit'} {'VTORfit'} {'V_TORfit'} {'VIfit'} {'VCfit'} {'V_Ifit'} {'V_Cfit'}],'exact'))
-  data_type_eff_noext='vi_torfit';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'vpol'} {'v_pol'} {'VPOL'} {'V_POL'}],'exact'))
-  data_type_eff_noext='vi_pol';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'vpolfit'} {'vpolft'} {'v_polfit'} {'VPOLfit'} {'V_POLfit'}],'exact'))
-  data_type_eff_noext='vi_polfit';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Ti'} {'ti'} {'TC'} {'tc'} {'T_C'} {'t_c'}],'exact'))
-  data_type_eff_noext='Ti';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Tifit'} {'tifit'} {'TCfit'} {'tcfit'} {'T_Cfit'} {'t_cfit'}],'exact'))
-  data_type_eff_noext='Tifit';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Ni'} {'ni'} {'NC'} {'nc'} {'N_C'} {'n_c'}],'exact'))
-  data_type_eff_noext='ni';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Nifit'} {'nifit'} {'NCfit'} {'ncfit'} {'N_Cfit'} {'n_cfit'}],'exact'))
-  data_type_eff_noext='nifit';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Zeffcxrs'} {'zeffcxrs'} {'Z_effcxrs'} {'z_effcxrs'} {'Zeff_cxrs'} {'zeff_cxrs'} {'Z_eff_cxrs'} {'z_eff_cxrs'}],'exact'))
-  data_type_eff_noext='zeffcxrs';
-end
-if ~isempty(strmatch(data_type_eff_noext,[{'Zeffcxrsfit'} {'zeffcxrsfit'} {'Z_effcxrsfit'} {'z_effcxrsfit'} {'Zeff_cxrsfit'} {'zeff_cxrsfit'} {'Z_eff_cxrsfit'} {'z_eff_cxrsfit'}],'exact'))
-  data_type_eff_noext='zeffcxrsfit';
-end
-
-% some defaults
-
-% nodes which have _2 and _3 equivalence, related to simpletdi case
-liuqe23=[{'\results::area'} {'\results::beta_pol'} {'\results::beta_tor'} ...
-	 {'\results::delta_95'} {'\results::delta_95_bot'} {'\results::delta_95_top'} ...
-	 {'\results::delta_edge'} {'\results::delta_ed_bot'} {'\results::delta_ed_top'} ...
-	 {'\results::diamag'} {'\results::i_p'} {'\results::j_tor'} ...
-	 {'\results::kappa_95'} {'\results::kappa_edge'} {'\results::kappa_zero'} ...
-	 {'\results::lambda'} {'\results::l_i'} {'\results::psi_axis'} {'\results::psi_values'} ...
-	 {'\results::q_95'} {'\results::q_edge'} {'\results::q_zero'} {'\results::rms_error'} ...
-	 {'\results::z_axis'} {'\results::r_axis'} {'\results::q_psi'} ...
-         {'\results::total_energy'} {'\results::tor_flux'} {'\results::volume'} ...
-         {'\results::r_contour'} {'\results::z_contour'} ...
-         {'\results::thomson:psiscatvol'} {'\results::thomson:psi_max'}];
-
-% nodes which have FBTE equivalence, related to simpletdi case
-liuqeFBTE=[{'\results::i_p'} {'\results::z_axis'} {'\results::r_axis'} {'\results::q_psi'} ...
-	   {'\results::beta_tor'} {'\results::beta_pol'} {'\results::q_95'} {'\results::l_i'}  {'\results::delta_95'} ...
-	   {'\results::kappa_95'} {'\results::r_contour'} {'\results::z_contour'} {'\results::psi_axis'}];
-
-% keywords which do not have FBTE equivalence and are returned empty
-noFBTE=[{'ne'} {'te'} {'nerho'} {'terho'} {'ne_edge'} {'te_edge'} {'nerho_edge'} {'terho_edge'} {'nerhozshift'} {'terhozshift'} {'profnerho'} {'profterho'} ...
-	{'neft'} {'neft:trial'} {'teft:trial'} {'neftav:trial'} {'teftav:trial'} {'sxr'} {'sxR'} {'ece'} {'MPX'} {'IOH'} {'vloop'} {'neint'} {'nel'} ...
-        {'vi_tor'} {'vi_torfit'} {'vi_pol'} {'vi_polfit'} {'Ti'} {'Tifit'} {'ni'} {'nifit'} {'zeffcxrs'} {'zeffcxrsfit'}];
-
-% all keywords and corresponding case to run below
-TCVkeywrdall=[{'Ip'} {'B0'} {'zmag'} {'rmag'} {'rcont'} {'zcont'} {'vol'} {'rhovol'} {'qrho'} {'q95'} {'kappa'} ...
-      {'delta'} {'deltatop'} {'deltabot'} {'neint'} {'nel'} ...
-      {'ne'} {'te'} {'nerho'} {'terho'}  {'ne_edge'} {'te_edge'} {'nerho_edge'} {'terho_edge'} {'nerhozshift'} {'terhozshift'} {'profnerho'} {'profterho'} ...
-      {'neft'} {'teft'} {'neftav'} {'teftav'} {'neft:trial'} {'teft:trial'} {'neftav:trial'} {'teftav:trial'}  ...
-      {'sxr'} {'sxR'} {'ece'} {'MPX'} {'IOH'} {'vloop'} {'pgyro'} {'jtor'} {'vi_tor'} {'vi_torfit'} {'vi_pol'} {'vi_polfit'} {'Ti'} {'Tifit'} {'ni'} {'nifit'} {'zeffcxrs'} {'zeffcxrsfit'}];
-
-TCVsig.iip=strmatch('Ip',TCVkeywrdall,'exact');
-TCVsig.iB0=strmatch('B0',TCVkeywrdall,'exact');
-TCVsig.izmag=strmatch('zmag',TCVkeywrdall,'exact');
-TCVsig.irmag=strmatch('rmag',TCVkeywrdall,'exact');
-TCVsig.ircont=strmatch('rcont',TCVkeywrdall,'exact');
-TCVsig.izcont=strmatch('zcont',TCVkeywrdall,'exact');
-TCVsig.ivol=strmatch('vol',TCVkeywrdall,'exact');
-TCVsig.irhovol=strmatch('rhovol',TCVkeywrdall,'exact');
-TCVsig.iqrho=strmatch('qrho',TCVkeywrdall,'exact');
-TCVsig.iq95=strmatch('q95',TCVkeywrdall,'exact');
-TCVsig.ikappa=strmatch('kappa',TCVkeywrdall,'exact');
-TCVsig.idelta=strmatch('delta',TCVkeywrdall,'exact');
-TCVsig.ideltatop=strmatch('deltatop',TCVkeywrdall,'exact');
-TCVsig.ideltabot=strmatch('deltabot',TCVkeywrdall,'exact');
-TCVsig.ineint=strmatch('neint',TCVkeywrdall,'exact');
-TCVsig.inel=strmatch('nel',TCVkeywrdall,'exact');
-TCVsig.ine=strmatch('ne',TCVkeywrdall,'exact');
-TCVsig.ite=strmatch('te',TCVkeywrdall,'exact');
-TCVsig.ine_edge=strmatch('ne_edge',TCVkeywrdall,'exact');
-TCVsig.ite_edge=strmatch('te_edge',TCVkeywrdall,'exact');
-TCVsig.inerho=strmatch('nerho',TCVkeywrdall,'exact');
-TCVsig.iterho=strmatch('terho',TCVkeywrdall,'exact');
-TCVsig.inerho_edge=strmatch('nerho_edge',TCVkeywrdall,'exact');
-TCVsig.iterho_edge=strmatch('terho_edge',TCVkeywrdall,'exact');
-TCVsig.inerhozshift=strmatch('nerhozshift',TCVkeywrdall,'exact');
-TCVsig.iterhozshift=strmatch('terhozshift',TCVkeywrdall,'exact');
-TCVsig.iprofnerho=strmatch('profnerho',TCVkeywrdall,'exact');
-TCVsig.iprofterho=strmatch('profterho',TCVkeywrdall,'exact');
-TCVsig.ineft=strmatch('neft',TCVkeywrdall,'exact');
-TCVsig.ineft_trial=strmatch('neft:trial',TCVkeywrdall);
-TCVsig.iteft=strmatch('teft',TCVkeywrdall,'exact');
-TCVsig.iteft_trial=strmatch('teft:trial',TCVkeywrdall);
-TCVsig.ineftav=strmatch('neftav',TCVkeywrdall,'exact');
-TCVsig.ineftav_trial=strmatch('neftav:trial',TCVkeywrdall);
-TCVsig.iteftav=strmatch('teftav',TCVkeywrdall,'exact');
-TCVsig.iteftav_trial=strmatch('teftav:trial',TCVkeywrdall);
-TCVsig.isxr=strmatch('sxr',TCVkeywrdall,'exact');
-TCVsig.isxR=strmatch('sxR',TCVkeywrdall,'exact');
-TCVsig.iece=strmatch('ece',TCVkeywrdall,'exact');
-TCVsig.iMPX=strmatch('MPX',TCVkeywrdall,'exact');
-TCVsig.iIOH=strmatch('IOH',TCVkeywrdall,'exact');
-TCVsig.ivloop=strmatch('vloop',TCVkeywrdall,'exact');
-TCVsig.ipgyro=strmatch('pgyro',TCVkeywrdall,'exact');
-TCVsig.ijtor=strmatch('jtor',TCVkeywrdall,'exact');
-TCVsig.ivi_tor=strmatch('vi_tor',TCVkeywrdall,'exact');
-TCVsig.ivi_torfit=strmatch('vi_torfit',TCVkeywrdall,'exact');
-TCVsig.ivi_pol=strmatch('vi_pol',TCVkeywrdall,'exact');
-TCVsig.ivi_polfit=strmatch('vi_polfit',TCVkeywrdall,'exact');
-TCVsig.iTi=strmatch('Ti',TCVkeywrdall,'exact');
-TCVsig.iTifit=strmatch('Tifit',TCVkeywrdall,'exact');
-TCVsig.ini=strmatch('ni',TCVkeywrdall,'exact');
-TCVsig.inifit=strmatch('nifit',TCVkeywrdall,'exact');
-TCVsig.izeffcxrs=strmatch('zeffcxrs',TCVkeywrdall,'exact');
-TCVsig.izeffcxrsfit=strmatch('zeffcxrsfit',TCVkeywrdall,'exact');
-
-% For each keyword, specify which case to use. As most common is 'simpletdi', fill in with this and change
-% only indices needed. Usually use name of case same as keyword name
-TCVkeywrdcase=cell(size(TCVkeywrdall));
-TCVkeywrdcase(:)={'simpletdi'};
-TCVkeywrdcase(TCVsig.iB0)=TCVkeywrdall(TCVsig.iB0); % through iphi
-TCVkeywrdcase(TCVsig.iqrho)=TCVkeywrdall(TCVsig.iqrho); % special as liuqe q_psi on psi
-TCVkeywrdcase(TCVsig.ivol)=TCVkeywrdall(TCVsig.ivol); % special as nodes _2 or _3 not existing with psitbx
-TCVkeywrdcase(TCVsig.irhovol)=TCVkeywrdall(TCVsig.irhovol); % idem vol
-TCVkeywrdcase(TCVsig.ine)=TCVkeywrdall(TCVsig.ine); % special as dimensions from other nodes
-TCVkeywrdcase(TCVsig.ite)=TCVkeywrdall(TCVsig.ite); % idem
-TCVkeywrdcase(TCVsig.ine_edge)=TCVkeywrdall(TCVsig.ine_edge); % special as dimensions from other nodes
-TCVkeywrdcase(TCVsig.ite_edge)=TCVkeywrdall(TCVsig.ite_edge); % idem
-TCVkeywrdcase(TCVsig.inerho)=TCVkeywrdall(TCVsig.inerho); % idem
-TCVkeywrdcase(TCVsig.inerho_edge)=TCVkeywrdall(TCVsig.inerho_edge); % idem
-TCVkeywrdcase(TCVsig.iteft_trial)=TCVkeywrdall(TCVsig.iteft_trial); % special to extract trial_indx if needed
-TCVkeywrdcase(TCVsig.ineft_trial)=TCVkeywrdall(TCVsig.ineft_trial); % special to extract trial_indx if needed
-TCVkeywrdcase(TCVsig.iteftav_trial)=TCVkeywrdall(TCVsig.iteftav_trial); % special to extract trial_indx if needed
-TCVkeywrdcase(TCVsig.ineftav_trial)=TCVkeywrdall(TCVsig.ineftav_trial); % special to extract trial_indx if needed
-TCVkeywrdcase(TCVsig.iterho)=TCVkeywrdall(TCVsig.iterho); % idem
-TCVkeywrdcase(TCVsig.iterho_edge)=TCVkeywrdall(TCVsig.iterho_edge); % idem
-TCVkeywrdcase(TCVsig.inerhozshift)=TCVkeywrdall(TCVsig.inerhozshift); % idem
-TCVkeywrdcase(TCVsig.iterhozshift)=TCVkeywrdall(TCVsig.iterhozshift); % idem
-TCVkeywrdcase(TCVsig.iprofnerho)=TCVkeywrdall(TCVsig.iprofnerho);
-TCVkeywrdcase(TCVsig.iprofterho)=TCVkeywrdall(TCVsig.iprofterho);
-TCVkeywrdcase(TCVsig.isxr)=TCVkeywrdall(TCVsig.isxr);
-TCVkeywrdcase(TCVsig.isxR)=TCVkeywrdall(TCVsig.isxR);
-TCVkeywrdcase(TCVsig.iece)=TCVkeywrdall(TCVsig.iece);
-TCVkeywrdcase(TCVsig.iMPX)=TCVkeywrdall(TCVsig.iMPX);
-TCVkeywrdcase(TCVsig.iIOH)=TCVkeywrdall(TCVsig.iIOH);
-TCVkeywrdcase(TCVsig.ivloop)=TCVkeywrdall(TCVsig.ivloop);
-TCVkeywrdcase(TCVsig.ipgyro)=TCVkeywrdall(TCVsig.ipgyro);
-TCVkeywrdcase(TCVsig.ijtor)=TCVkeywrdall(TCVsig.ijtor);
-TCVkeywrdcase(TCVsig.ivi_tor)=TCVkeywrdall(TCVsig.ivi_tor);
-TCVkeywrdcase(TCVsig.ivi_torfit)=TCVkeywrdall(TCVsig.ivi_torfit);
-TCVkeywrdcase(TCVsig.ivi_pol)=TCVkeywrdall(TCVsig.ivi_pol);
-TCVkeywrdcase(TCVsig.ivi_polfit)=TCVkeywrdall(TCVsig.ivi_polfit);
-TCVkeywrdcase(TCVsig.iTi)=TCVkeywrdall(TCVsig.iTi);
-TCVkeywrdcase(TCVsig.iTifit)=TCVkeywrdall(TCVsig.iTifit);
-TCVkeywrdcase(TCVsig.ini)=TCVkeywrdall(TCVsig.ini);
-TCVkeywrdcase(TCVsig.inifit)=TCVkeywrdall(TCVsig.inifit);
-TCVkeywrdcase(TCVsig.izeffcxrs)=TCVkeywrdall(TCVsig.izeffcxrs);
-TCVkeywrdcase(TCVsig.izeffcxrsfit)=TCVkeywrdall(TCVsig.izeffcxrsfit);
-
-% Information about which dimension has time, always return 2D data as (x,t) array
-% as most are 1D arrays with time as first index, fill in with ones and change only those needed
-TCVsigtimeindx=ones(size(TCVkeywrdall));
-
-% For the 'simpletdi' cases, we need the full node in case gdat was called with full location directly
-% for the other cases, leave this location empty
-TCVsiglocation=cell(size(TCVkeywrdall));
-TCVsiglocation(:)={''};
-TCVsiglocation(TCVsig.iip)={'\results::i_p'};
-TCVsiglocation(TCVsig.izmag)={'\results::z_axis'};
-TCVsiglocation(TCVsig.irmag)={'\results::r_axis'};
-TCVsiglocation(TCVsig.ircont)={'\results::r_contour'}; TCVsigtimeindx(TCVsig.ircont)=2;
-TCVsiglocation(TCVsig.izcont)={'\results::z_contour'}; TCVsigtimeindx(TCVsig.izcont)=2;
-TCVsiglocation(TCVsig.iq95)={'\results::q_95'};
-TCVsiglocation(TCVsig.ikappa)={'\results::kappa_edge'};
-TCVsiglocation(TCVsig.idelta)={'\results::delta_edge'};
-TCVsiglocation(TCVsig.ideltatop)={'\results::delta_ed_top'};
-TCVsiglocation(TCVsig.ideltabot)={'\results::delta_ed_bot'};
-TCVsiglocation(TCVsig.ineint)={'\results::fir:lin_int_dens'};
-TCVsiglocation(TCVsig.inel)={'\results::fir:n_average'};
-%TCVsiglocation(TCVsig.iprofnerho)={'\results::THOMSON.PROFILES.AUTO:ne'};
-%TCVsiglocation(TCVsig.iprofterho)={'\results::THOMSON.PROFILES.AUTO:te'};
-TCVsiglocation(TCVsig.ineft)={'\results::proffit.local_time:neft_abs'}; TCVsigtimeindx(TCVsig.ineft)=2;
-TCVsiglocation(TCVsig.iteft)={'\results::proffit.local_time:teft'}; TCVsigtimeindx(TCVsig.iteft)=2;
-TCVsiglocation(TCVsig.ineftav)={'\results::proffit.avg_time:neft_abs'}; TCVsigtimeindx(TCVsig.ineftav)=2;
-TCVsiglocation(TCVsig.iteftav)={'\results::proffit.avg_time:teft'}; TCVsigtimeindx(TCVsig.iteftav)=2;
-TCVsiglocation(TCVsig.ineft_trial)=TCVsiglocation(TCVsig.ineft); TCVsigtimeindx(TCVsig.ineft_trial)=2;
-TCVsiglocation(TCVsig.iteft_trial)=TCVsiglocation(TCVsig.iteft); TCVsigtimeindx(TCVsig.iteft_trial)=2;
-TCVsiglocation(TCVsig.ineftav_trial)=TCVsiglocation(TCVsig.ineftav); TCVsigtimeindx(TCVsig.ineftav_trial)=2;
-TCVsiglocation(TCVsig.iteftav_trial)=TCVsiglocation(TCVsig.iteftav); TCVsigtimeindx(TCVsig.iteftav_trial)=2;
-
-if shot==-9
-  clear trace
-  for i=1:length(TCVkeywrdall)
-    fieldname_eff = lower(TCVkeywrdall{i});
-    keyword_eff = TCVkeywrdall{i};
-    ij=findstr(fieldname_eff,':');
-    if ~isempty(ij);
-      fieldname_eff(ij)='_';
-      keyword_eff(ij:end+1)=[':i' keyword_eff(ij+1:end)] ;
-    end
-    trace.(fieldname_eff) = keyword_eff;
-  end
-  % add example for Ip trace full call
-  trace.ipfullcall = TCVsiglocation{TCVsig.iip};
-  % trace.data=[];
-  return
-end
-
-% initialize order of substructures and allows just a "return" if data empty
-trace.data=[];
-trace.x=[];
-trace.t=[];
-trace.dim=[];
-trace.dimunits=[];
-trace.units=[];
-iprintwarn=0;
-% find index of signal called upon
-if strcmp(data_type_eff(1:1),'\')
-  % in case full node name was given
-  index=strmatch(data_type_eff(1:end-i_23),TCVsiglocation,'exact');
-  if iprintwarn & isempty(index)
-    disp('********************')
-    disp('trace not yet registered.')
-    disp('If standard data, ask olivier.sauter@epfl.ch to create a keyqord entry for this data')
-%    eval(['!mail -s ''' data_type_eff ' ' num2str(shot) ' ' getenv('USER') ' TCV'' olivier.sauter@epfl.ch < /dev/null'])
-    disp('********************')
-  elseif isempty(index)
-    % temporarily add entry in arrays, so can work below
-    index=length(TCVkeywrdall)+1;
-    TCVkeywrdall(end+1)={'new'};
-    TCVkeywrdcase(end+1)={'simpletdi'};
-    TCVsiglocation(end+1)={data_type_eff(1:end-i_23)};
-    TCVsigtimeindx(end+1)=0;
-  elseif ~strcmp(TCVkeywrdcase{index},'simpletdi')
-    msgbox(['Problem in loadTCVdata with data_type_eff = ' data_type_eff ...
-          '. Full paths of nodes should only be for case simpletdi'],'in loadTCVdata','error')
-    error('in loadTCVdata')
-  end
-else
-  index=strmatch(data_type_eff_noext,TCVkeywrdall,'exact');
-  if isempty(index)
-    disp(' ')
-    disp('********************')
-    disp(['no such keyword: ' data_type_eff(1:end-i_23)])
-    disp(' ')
-    disp('Available keywords:')
-    TCVkeywrdall(:)
-    disp('********************')
-    return
-  end
-  if liuqe_version==-1 && ~isempty(strmatch(TCVkeywrdall{index},noFBTE,'exact'))
-    disp(['node ' TCVkeywrdall{index} ' not defined within FBTE'])
-    return
-  end
-end
-if iprintwarn
-  disp(['loading' ' ' data_type_eff_noext ' from TCV shot #' num2str(shot)]);
-  disp(['case ' TCVkeywrdcase{index}])
-end
-if i_23==2 & isempty(strmatch(TCVsiglocation(index),liuqe23,'exact')) & strcmp(TCVkeywrdcase{index},'simpletdi')
-  disp('********')
-  disp('Warning asks for liuqe 2 or 3 of a signal, but not in liuqe23 list in loadTCVdata')
-%  eval(['!mail -s ''' data_type_eff ' ' num2str(shot) ' ' getenv('USER') ' TCV: not in liuqe23 list'' olivier.sauter@epfl.ch < /dev/null'])
-  disp('********')
-end
-
-status=ones(1,100);
-zmag=cell(0,0);
-nargineff=nargin;
-if iprintwarn
-  disp('TCVsiglocation{index} in loadTCVdata')
-  TCVsiglocation{index}
-end
-
-switch TCVkeywrdcase{index}
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'simpletdi'
-
-    %  load TCV other data
-    if liuqe_version==-1
-      mdsopen( 'pcs', shot); %synthetic shot generated with FBT and MGAMS.
-    else
-      mdsopen(shot);
-      % test if node exists
-      error_status=1;
-      ij=findstr(TCVsiglocation{index},'[');
-      if isempty(ij); ij=length(TCVsiglocation{index})+1; end
-      if eval(['~mdsdata(''node_exists("\' TCVsiglocation{index}(1:ij-1) '")'')'])
-	disp(['node ' TCVsiglocation{index}(1:ij-1) ' does not exist for shot = ' num2str(shot)])
-	return
-% $$$     elseif eval(['mdsdata(''getnci("\' nodenameeff ':foo","length")'')==0'])
-% $$$       disp(['no data for node ' nodenameeff ' for shot = ' num2str(shot)])
-% $$$       return
-      end
-    end
-    if strcmp(TCVsiglocation{index}(1:9),'\psitbx::')
-      begstr = 'tcv_psitbx("';
-      nodenameeff=[begstr TCVsiglocation{index}(10:end) endstr];
-    elseif length(TCVsiglocation{index})>16 && strcmp(TCVsiglocation{index}(1:16),'\results::psitbx')
-      begstr = 'tcv_psitbx("';
-      nodenameeff=[begstr TCVsiglocation{index}(18:end) endstr];
-    elseif  strcmp(TCVsiglocation{index}(1:10),'\results::')
-      nodenameeff=[begstr TCVsiglocation{index}(11:end) endstr];
-    else
-      nodenameeff=TCVsiglocation{index};
-      disp(['should not have gone through here, mention this example to O. Sauter']);
-    end
-    tracetdi=tdi(nodenameeff);
-    mdsclose;
-    if isempty(tracetdi.data) || (~iscell(tracetdi.data) && isnan(tracetdi.data))
-      disp(['node ' nodenameeff ' is empty for shot = ' num2str(shot)])
-      return
-    end
-    trace.data=tracetdi.data;
-
-    if length(tracetdi.dim)==0
-      % scalar
-      trace.x=[];
-      trace.t=[];      
-      elseif TCVsigtimeindx(index)>0 | length(tracetdi.dim)==1
-      trace.t=tracetdi.dim{max(1,TCVsigtimeindx(index))};
-      ix=3-TCVsigtimeindx(index); % works only for 2D arrays
-    else
-      % if dim=41 assumes is x (usual for TCV)
-      if length(tracetdi.dim{1})==41
-        ix=1;
-        trace.t=tracetdi.dim{2};
-      elseif length(tracetdi.dim{2})==41
-        ix=2;
-        trace.t=tracetdi.dim{1};
-      elseif length(tracetdi.dim)==2
-        % if one has 2D or more and the other 1D, assume rho is 2D or more and time is 1D
-        if min(size(tracetdi.dim{1}))==1 && (min(size(tracetdi.dim{2}))>1 || length(size(tracetdi.dim{2}))>2)
-          ix=2;
-          trace.t=tracetdi.dim{1};
-          disp(['assumes time array is 1D array, so x from dim{' num2str(ix) '}'])
-        elseif min(size(tracetdi.dim{2}))==1 && (min(size(tracetdi.dim{1}))>1 || length(size(tracetdi.dim{1}))>2)
-          ix=1; 
-          trace.t=tracetdi.dim{2};
-          disp(['assumes time array is 1D array, so x from dim{' num2str(ix) '}'])
-        elseif tracetdi.dim{1}(end)<1.1 && tracetdi.dim{2}(end)>1.1
-          ix=1; 
-          trace.t=tracetdi.dim{2};
-          disp(['assumes x array is 1D array with max <1.1'])          
-        elseif tracetdi.dim{1}(end)>1.1 && tracetdi.dim{2}(end)<1.1
-          ix=2; 
-          trace.t=tracetdi.dim{1};
-          disp(['assumes x array is 1D array with max <1.1'])          
-        elseif length(size(tracetdi.dim{1}))==2 && min(size(tracetdi.dim{1}))==1 && length(size(tracetdi.dim{2}))==2 && min(size(tracetdi.dim{2}))==1
-          % if both are 1D arrays, assumes time array with values having most number of digits
-          ab1=num2str(tracetdi.dim{1}-fix(tracetdi.dim{1}));
-          ab2=num2str(tracetdi.dim{2}-fix(tracetdi.dim{2}));
-          if size(ab1,2)<size(ab2,2); 
-            ix=1; 
-            trace.t=tracetdi.dim{2};
-          else
-            ix=2;
-            trace.t=tracetdi.dim{1};
-          end
-          disp(['assumes time array has more digits, so x from dim{' num2str(ix) '}'])
-        end
-      end
-    end
-    if length(tracetdi.dim)==2
-      trace.x=tracetdi.dim{ix};
-      % make sure data is of (x,t)
-      if ix==2
-        % transpose data
-        trace.data=trace.data';
-      end
-    elseif length(tracetdi.dim)>2
-      msgbox(['data more than 2D (data_type_eff=' data_type_eff ...
-            '), check how to save it, contact andrea.scarabosio@epfl.ch or olivier.sauter@epfl.ch'],...
-          'in simpletdi','warn')
-      warning('in simpletdi of loadTCVdata')
-    else
-      if max(1,TCVsigtimeindx(index))~=1
-        disp('Problems in loadTCVdata, max(1,TCVsigtimeindx(index)) should be 1')
-      end
-    end
-    if length(tracetdi.dim)==1
-      trace.dim=[{trace.t}];
-      trace.dimunits=tracetdi.dimunits(1);
-    elseif length(tracetdi.dim)==2
-      trace.dim=[{trace.x} ; {trace.t}];
-      trace.dimunits=[tracetdi.dimunits(ix) ; tracetdi.dimunits((2-ix)+1)];
-    else
-      trace.dim=tracetdi.dim;
-      trace.dimunits=tracetdi.dimunits;
-    end
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    
-    trace.name=[num2str(shot) ';' nodenameeff];
-    error_status=0;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'ne','te'}
-    % ne or Te from Thomson data on raw z mesh vs (z,t)
-    mdsopen(shot);
-    if strcmp(TCVkeywrdcase{index},'ne')
-      nodenameeff='\results::thomson:ne';
-      tracetdi=tdi(nodenameeff);
-      tracestd=tdi('\results::thomson:ne:error_bar');
-    else
-      nodenameeff='\results::thomson:te';
-      tracetdi=tdi(nodenameeff);
-      tracestd=tdi('\results::thomson:te:error_bar');
-    end
-    trace.data=tracetdi.data'; % Thomson data as (t,z)
-    trace.std=tracestd.data';
-    trace.name=[num2str(shot) ';' nodenameeff];
-    % add correct dimensions
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    z=mdsdata('\diagz::thomson_set_up:vertical_pos');
-    trace.dim=[{z};{time}];
-    trace.dimunits=[{'Z [m]'} ; {'time [s]'}];
-    trace.x=z;
-    trace.t=time;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    mdsclose('mdsip');
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'ne_edge','te_edge'}
-    % ne or Te from Thomson.edge data on raw z mesh vs (z,t)
-    mdsopen(shot);
-    if strcmp(TCVkeywrdcase{index},'ne_edge')
-      nodenameeff='\results::thomson.edge:ne';
-      tracetdi=tdi(nodenameeff);
-      tracestd=tdi('\results::thomson.edge:ne:error_bar');
-      % trace_abs=tdi('\results::thomson.edge:fir_thom_rat');
-    else
-      nodenameeff='\results::thomson.edge:te';
-      tracetdi=tdi(nodenameeff);
-      tracestd=tdi('\results::thomson.edge:te:error_bar');
-    end
-    trace.data=tracetdi.data'; % Thomson.Edge data as (t,z)
-    trace.std=tracestd.data';
-    trace.name=[num2str(shot) ';' nodenameeff];
-    % add correct dimensions
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    z=mdsdata('\diagz::thomson_set_up.edge:vertical_pos');
-    trace.dim=[{z};{time}];
-    trace.dimunits=[{'Z [m]'} ; {'time [s]'}];
-    trace.x=z;
-    trace.t=time;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    mdsclose('mdsip');
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'nerho','terho'}
-    % ne or Te from Thomson data on rho=sqrt(psi_normalised) mesh: (rho,t)
-    mdsopen(shot);
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if strcmp(TCVkeywrdcase{index},'nerho')
-      nodenameeff='\results::thomson:ne';
-      tracetdi=tdi(nodenameeff);
-      if isempty(tracetdi.data)
-        ishot=mdsopen(shot)
-        tracetdi=tdi(nodenameeff)
-      end
-      nodenameeff='\results::thomson:ne; error_bar ; fir_thom_rat; (ne,std)*fir_thom_rat';
-      tracestd=tdi('\results::thomson:ne:error_bar');
-      if shot>=23801
-        tracefirrat=tdi('\results::thomson.profiles.auto:fir_thom_rat'); %time base not same!!
-        if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-          disp('problem with \results::thomson.profiles.auto:fir_thom_rat: empty')
-        end
-      else
-        tracefirrat=tdi('\results::thomson:fir_thom_rat');
-        if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-          disp('problem with \results::thomson.profiles.auto:fir_thom_rat: empty')
-          tracefirrat.dim{1}=[];
-        else
-          tracefirrat.dim{1}=time;
-        end
-      end
-      if ~isempty(tracefirrat.data) || ischar(tracefirrat.data)
-        tracefirrat_data=NaN*ones(size(tracetdi.dim{1}));
-        itim=iround(time,tracefirrat.dim{1});
-        tracefirrat_data(itim)=tracefirrat.data;
-      else
-        tracefirrat_data=NaN;
-      end
-    else
-      nodenameeff='\results::thomson:te';
-      tracetdi=tdi(nodenameeff);
-      nodenameeff='\results::thomson:te; error_bar';
-      tracestd=tdi('\results::thomson:te:error_bar');
-    end
-    trace.data=tracetdi.data'; % Thomson data as (t,z)
-    trace.std=tracestd.data';
-    if strcmp(TCVkeywrdcase{index},'nerho')
-      trace.firrat=tracefirrat_data;
-      trace.data_abs=trace.data*diag(tracefirrat_data);
-      trace.std_abs=trace.std*diag(tracefirrat_data);
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    % add correct dimensions
-    % construct rho mesh
-    psi_max=tdi(['\results::thomson:psi_max' endstr]);
-    psiscatvol=tdi(['\results::thomson:psiscatvol' endstr]);
-    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
-      rho=NaN;
-    end
-    trace.dim=[{rho};{time}];
-    trace.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-    trace.x=rho;
-    trace.t=time;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'nerho_edge','terho_edge'}
-    % ne or Te from Thomson.Edge data on rho=sqrt(psi_normalised) mesh: (rho,t)
-    mdsopen(shot);
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if strcmp(TCVkeywrdcase{index},'nerho_edge')
-      nodenameeff='\results::thomson.edge:ne';
-      tracetdi=tdi(nodenameeff);
-      if isempty(tracetdi.data) || ischar(tracetdi.data)
-        ishot=mdsopen(shot)
-        tracetdi=tdi(nodenameeff)
-      end
-      nodenameeff='\results::thomson.edge:ne; error_bar ; fir_thom_rat; (ne,std)*fir_thom_rat';
-      tracestd=tdi('\results::thomson.edge:ne:error_bar');
-      if shot>=23801
-        tracefirrat=tdi('\results::thomson.profiles.auto:fir_thom_rat'); %time base not same!!
-        if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-          disp('problem with \results::thomson.profiles.auto:fir_thom_rat: empty')
-        end
-      else
-        tracefirrat=tdi('\results::thomson.edge:fir_thom_rat');
-        tracefirrat.dim{1}=time;
-      end
-      if ~isempty(tracetdi.dim)
-        tracefirrat_data=NaN*ones(size(tracetdi.dim{1}));
-      else
-        tracefirrat_data=[];
-      end
-      if ~isempty(tracefirrat.data) && ~ischar(tracefirrat.data)
-        itim=iround(time,tracefirrat.dim{1});
-        tracefirrat_data(itim)=tracefirrat.data;
-      end
-    else
-      nodenameeff='\results::thomson.edge:te';
-      tracetdi=tdi(nodenameeff);
-      nodenameeff='\results::thomson.edge:te; error_bar';
-      tracestd=tdi('\results::thomson.edge:te:error_bar');
-    end
-    if ~ischar(tracetdi.data); trace.data=tracetdi.data'; end % Thomson.Edge data as (t,z)
-    trace.std=tracestd.data';
-    if strcmp(TCVkeywrdcase{index},'nerho')
-      trace.firrat=tracefirrat_data;
-      trace.data_abs=trace.data*diag(tracefirrat_data);
-      trace.std_abs=trace.std*diag(tracefirrat_data);
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    % add correct dimensions
-    % construct rho mesh
-    psi_max=tdi(['\results::thomson.edge:psi_max' endstr]);
-    psiscatvol=tdi(['\results::thomson.edge:psiscatvol' endstr]);
-    if ~isempty(psiscatvol.data) && ~ischar(psiscatvol.data)
-      for ir=1:length(psiscatvol.dim{2})
-        rho(ir,:)= sqrt(1.-psiscatvol.data(:,ir)./psi_max.data(:))';
-      end
-      trace.dim=[{rho};{time}];
-      trace.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-      trace.x=rho;
-      trace.t=time;
-      % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-      if any(strcmp(fieldnames(tracetdi),'units'))
-        trace.units=tracetdi.units;
-      end
-    else
-      trace.dim={};
-      trace.dimunits={};
-      trace.x=[];
-      trace.t=[];
-      trace.units={};
-    end
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'nerhozshift','terhozshift'}
-    % ne or Te from Thomson data on rho=sqrt(psi_normalised) mesh: (rho,t)
-    % allow for z shift of equil
-    if  nargin>=3 & ~isempty(varargin{1})
-      zshift=varargin{1};
-    else
-      zshift=0.;
-    end
-    mdsopen(shot);
-    try
-      time=mdsdata('\results::thomson:times');
-    catch
-      warning('Problems with \results::thomson:times')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if isempty(time) || ischar(time)
-      thomsontimes=time
-      warning('!!!!!!!!!!!!!!!!!!!!!!!!!\results::thomson:times  is empty? Check')
-      disp(['!!!!!!!!!!!!!!!!!!!!!!!!! cannot continue with ' TCVkeywrdcase{index}])
-      return
-    end
-    if strcmp(TCVkeywrdcase{index},'nerhozshift')
-      nodenameeff='\results::thomson:ne';
-      tracetdi=tdi(nodenameeff);
-      tracestd=tdi('\results::thomson:ne:error_bar');
-      if shot>=23801
-        tracefirrat=tdi('\results::thomson.profiles.auto:fir_thom_rat'); %time base not same!!
-        if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-          disp('problem with \results::thomson.profiles.auto:fir_thom_rat: empty')
-        end
-      else
-        tracefirrat=tdi('\results::thomson:fir_thom_rat');
-        if isempty(tracefirrat.data) || ischar(tracefirrat.data)
-          disp('problem with \results::thomson.profiles.auto:fir_thom_rat: empty')
-          tracefirrat.dim{1}=[];
-        else
-          tracefirrat.dim{1}=time;
-        end
-      end
-      if ~isempty(tracefirrat.data) || ischar(tracefirrat.data)
-        tracefirrat_data=NaN*ones(size(tracetdi.dim{1}));
-        itim=iround(time,tracefirrat.dim{1});
-        tracefirrat_data(itim)=tracefirrat.data;
-      else
-        tracefirrat_data=NaN;
-      end
-    else
-      nodenameeff='\results::thomson:te';
-      tracetdi=tdi(nodenameeff);
-      tracestd=tdi('\results::thomson:te:error_bar');
-    end
-    trace.data=tracetdi.data'; % Thomson data as (t,z)
-    trace.std=tracestd.data';
-    if strcmp(TCVkeywrdcase{index},'nerhozshift')
-      trace.firrat=tracefirrat_data;
-      trace.data_abs=trace.data*diag(tracefirrat_data);
-      trace.std_abs=trace.std*diag(tracefirrat_data);
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    % add correct dimensions
-    % construct rho mesh
-    if strcmp(endstr,'_-1')
-      error(['in ' TCVkeywrdcase{index} ' endstr should not be ' endstr]);
-    end
-    psi_max=tdi(['\results::thomson:psi_max' endstr]);
-    psiscatvol=tdi(['\results::thomson:psiscatvol' endstr]);
-    if abs(zshift)>1e-5
-      % calculate new psiscatvol
-      psitdi=tdi('\results::psi');
-      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
-          disp(' bad time dimension for zshift')
-          disp(['it should be 1 or ' num2str(length(psiscatvol.dim{1})) ' or ' num2str(length(psitdi.dim{3}))])
-      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
-      rho=NaN;
-    end
-    trace.dim=[{rho};{time}];
-    trace.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-    trace.x=rho;
-    trace.t=time;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'profnerho','profterho'}
-    % vol from psitbx
-    mdsopen(shot);
-    error_status=1;
-    if strcmp(TCVkeywrdcase{index},'profnerho')
-      nodenameeff=['\results::THOMSON.PROFILES.AUTO:ne'];
-      avers=tdi('\results::THOMSON.PROFILES.AUTO:ne:version_num');
-    end
-    if strcmp(TCVkeywrdcase{index},'profterho')
-      nodenameeff=['\results::THOMSON.PROFILES.AUTO:te'];
-      avers=tdi('\results::THOMSON.PROFILES.AUTO:te:version_num');
-    end
-    if avers.data==0
-     % may be because nodes not yet filled in, so call once a node
-     ab=tdi(nodenameeff);
-     avers=tdi([nodenameeff ':version_num']);
-    end
-    if avers.data>0
-      tracetdi=tdi(nodenameeff);
-      if avers.data < 2.99
-        % for earlier version the bug made it to have logically (rho,t)
-        if ~isempty(tracetdi.dim) && ~ischar(tracetdi.data)
-          trace.x=tracetdi.dim{1};
-          trace.t=tracetdi.dim{2};
-          error_status=0;
-        else
-         error_status=2;
-          trace.x=[];
-          trace.t=[];
-        end
-      else
-        trace.data=tracetdi.data'; % error in dimensions for autofits
-        if ~isempty(tracetdi.dim) && ~ischar(tracetdi.data)
-          disp('assumes dim{2} for x in THOMSON.PROFILES.AUTO')
-          trace.x=tracetdi.dim{2};
-          trace.t=tracetdi.dim{1};
-          error_status=0;
-        else
-          trace.x=[];
-          trace.t=[];
-         error_status=2;
-        end
-      end
-    else
-      tracetdi=avers;
-      trace.x=[];
-      trace.t=[];
-    end
-    trace.dim=[{trace.x};{trace.t}];
-    trace.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) '; Thomson autfits from ' nodenameeff ];
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'B0'}
-    % B0 at R0=0.88
-    if liuqe_version==-1
-      % mdsopen( 'pcs', shot); %synthetic shot generated with FBT and MGAMS.
-      mdsopen(shot)
-      nodenameeff = 'tcv_eq("BZERO","FBTE")';
-      tracetdi=tdi(nodenameeff);
-      trace.data = tracetdi.data;
-      trace.t = tracetdi.dim{1};
-      
-    else
-      mdsopen(shot);
-      nodenameeff=['\magnetics::iphi'];
-      tracetdi=tdi(nodenameeff);
-      R0EXP=0.88;
-      trace.data=192.E-07 * 0.996 *tracetdi.data/R0EXP;
-      trace.t=tracetdi.dim{1};
-    end
-    trace.x=[];
-%keyboard
-    trace.dim=[{trace.t}];
-    trace.dimunits=[{'time [s]'}];
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'qrho'}
-    % q profile on psi from liuqe
-    if liuqe_version==-1
-      mdsopen( 'pcs', shot); %synthetic shot generated with FBT and MGAMS.
-    else
-      mdsopen(shot);
-    end
-    nodenameeff=[begstr 'q_psi' endstr];
-    tracetdi=tdi(nodenameeff);
-    trace.data=tracetdi.data;
-    trace.x=sqrt(tracetdi.dim{1}/(length(tracetdi.dim{1})-1));
-    trace.t=tracetdi.dim{2};
-    trace.dim=[{trace.x};{trace.t}];
-    trace.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'vol'}
-    % vol from psitbx
-    if liuqe_version==-1
-      begstr = 'tcv_psitbx("';
-      mdsopen( 'pcs', shot); %synthetic shot generated with FBT and MGAMS.
-      nodenameeff=[begstr 'vol' endstr];
-      tracetdi=tdi(nodenameeff);
-    else
-      mdsopen(shot);
-      nodenameeff=['\results::psitbx:vol'];
-      tracetdi=tdi(nodenameeff);
-      if i_23==2
-	['LIUQE' endstr(2:2)]
-	psi=psitbxtcv(shot,'+0',['LIUQE' endstr(2:2)]);
-	fsd=psitbxp2p(psi,'FS');
-	fsg=psitbxfsg(fsd);
-	tracetdi.data = fsg.vol.x;
-	tracetdi.dim{1}=fsg.vol.grid.x{:}';
-	tracetdi.dim{2}=fsg.vol.grid.t';
-      end
-    end
-    trace.data=tracetdi.data;
-    if isempty(tracetdi.data) || ischar(tracetdi.data)
-      trace.x=tracetdi.dim;
-      trace.t=tracetdi.dim;
-      trace.dim=tracetdi.dim;
-    else
-      trace.x=tracetdi.dim{1};
-      trace.t=tracetdi.dim{2};
-      trace.dim=[{trace.x};{trace.t}];
-    end
-    trace.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff '_' num2str(liuqe_version)];
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'rhovol'}
-    % vol from psitbx
-    if liuqe_version==-1
-      begstr = 'tcv_psitbx("';
-      mdsopen( 'pcs', shot); %synthetic shot generated with FBT and MGAMS.
-      nodenameeff=[begstr 'vol' endstr];
-      tracetdi=tdi(nodenameeff);
-    else
-      mdsopen(shot);
-      nodenameeff=['\results::psitbx:vol'];
-      tracetdi=tdi(nodenameeff);
-      if i_23==2
-	['LIUQE' endstr(2:2)]
-	psi=psitbxtcv(shot,'+0',['LIUQE' endstr(2:2)]);
-	fsd=psitbxp2p(psi,'FS');
-	fsg=psitbxfsg(fsd);
-	tracetdi.data = fsg.vol.x;
-	tracetdi.dim{1}=fsg.vol.grid.x{:}';
-	tracetdi.dim{2}=fsg.vol.grid.t';
-      end
-    end
-    trace.data=tracetdi.data;
-    for i=1:size(tracetdi.data,2)
-      trace.data(:,i)=sqrt(tracetdi.data(:,i)./tracetdi.data(end,i));
-    end
-    trace.x=tracetdi.dim{1};
-    trace.t=tracetdi.dim{2};
-    trace.dim=[{trace.x};{trace.t}];
-    trace.dimunits=[{'sqrt(psi)'} ; {'time [s]'}];
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) '; sqrt(V/Va) from ' nodenameeff '_' num2str(liuqe_version)];
-    mdsclose;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'sxr','sxR'}
-    %  load TCV soft x-ray data
-    if  nargin>=3 & ~isempty(varargin{1})
-      i1=varargin{1}(1);
-      i2=varargin{1}(2);
-    else
-      i1=1;
-      i2=20;
-    end
-    if  nargin>=4 & ~isempty(varargin{2})
-      status=varargin{2};
-    else
-      status=ones(i2-i1+1,1);
-    end
-
-    % camera selection: 1-10. each camera has 20 channels
-    icamera=[0 1 0 0 0 0 0 0 0 0];  %index of the camera to use
-    if ~isempty(find(status(1:20*icamera*ones(10,1)) == 1))
-      [fans,vangle,xchord,ychord,aomega,angfact]=xtomo_geometry(1,icamera);
-      % calculating intersection of the view lines with magnetic axis
-      if strcmp(data_type_eff,'sxR')
-        if nargin>=5 & ~isempty(varargin{3})
-          zmag=varargin{3};
-        else
-          zmag=loadTCVdata(shot,['zmag' '_' num2str(liuqe_version)]);
-        end
-        t_1=zmag.t(1);
-        t_2=zmag.t(end);
-	[xtomo_signal,t]=get_xtomo_data(shot,t_1,t_2,13e-6*16,icamera,angfact);
-	data=interp1(zmag.t,zmag.data,t');
-	radius.data=VsxrTCVradius(data,xchord,ychord)';
-	radius.t=t';
-	varargout{1}={radius};
-        trace.R=radius.data;
-      else
-        t_1=0.001;
-        t_2=3;
-	[xtomo_signal,t]=get_xtomo_data(shot,t_1,t_2,13e-6*16, ...
-          icamera,angfact);
-      end
-    end
-    trace.data=xtomo_signal;
-    trace.x=[1:size(trace.data,1)]';
-    trace.t=t';
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'channel #'} ; {'time [s]'}];
-    trace.name=[num2str(shot) ';' 'get_xtomo_data'];
-    error_status=0;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'ece'
-    %  load TCV ECE data
-    % Status=1 => Not Read Yet
-    mdsopen(shot);
-    if ~isempty(find(status == 1))
-      if eval(['~mdsdata(''node_exists("\\RESULTS::ECE:rho")'')'])
-        disp(['node \RESULTS::ECE:rho does not exist for shot = ' num2str(shot)])
-        return
-      end
-      if eval(['mdsdata(''getnci("\\RESULTS::ECE:rho","length")'')==0'])
-        disp(['no data for \RESULTS::ECE:rho for shot = ' num2str(shot)])
-        return
-      end
-      [TE_ECE,TE_ECE_ERR,RHO,R,T,TE_THOM,TE_THOM_ERR,Fcentral,CAL]=ece_te ...
-          (shot,[0.1 0.29],10,10);
-    end
-    a=min(find(R(:,1)>=0));
-    b=max(find(R(:,1)>=0));
-    trace.data=TE_ECE(a:b,:)';
-    trace.t=T(a:b);
-    trace.x=[1:size(trace.data,1)]';
-    trace.dim=[{trace.x} ; {trace.t}];
-    trace.dimunits=[{'channel #'} ; {'time [s]'}];
-    trace.R=R(a:b,:)';
-    trace.name=[num2str(shot) ';' '\results::ece...'];
-    radius.data=trace.R;
-    radius.t=trace.t;
-    varargout{1}={radius};
-    error_status=0;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    mdsclose;
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'MPX'
-    %  load TCV MPX data
-    % Status=1 => Not Read Yet
-    if isempty(zmag)
-      zmag=loadTCVdata(shot,'zmag');
-    end
-    t_1=zmag.t(1);
-    t_2=zmag.t(end);
-    if ~isempty(find(status == 1))
-      mdsopen(shot);
-      keyboard
-      signal=get_mds_mio('MPX',[t_1 t_2]);
-      mdsclose;
-      trace.data=signal.data;
-      for i=1:size(signal.dim{2},2)
-        trace.t(:,i)=signal.dim{1};
-      end
-    end
-    trace.dim{1}={trace.t};
-    trace.dimunits={'time [s]'};
-    trace.name=[num2str(shot) ';' 'get_mds_mio(MPX)'];
-    [xchord,ychord]=mpx_geometry;
-    varargout{1}={VsxrTCVradius(zmag.data,xchord,ychord)};
-    error_status=0;
-
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'IOH'
-    %  Ohmic transformer current
-    mdsopen(shot);
-    nodenameeff=[{'\magnetics::ipol[*,$1]'} {'OH_001'}];
-    tracetdi=tdi(nodenameeff{:});
-    trace.data=tracetdi.data;
-    trace.x=[];
-    trace.t=tracetdi.dim{1};
-    trace.dim=tracetdi.dim;
-    trace.dimunits={'time [s]'};
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff{1} ',' nodenameeff{2}];
-    mdsclose;
-    error_status=0;
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'vloop'
-    %  Loop voltage
-    mdsopen(shot);
-    nodenameeff=[{'\magnetics::vloop[*,$1]'} {'001'}];
-    tracetdi=tdi(nodenameeff{:});
-    trace.data=tracetdi.data;
-    trace.x=[];
-    trace.t=tracetdi.dim{1};
-    trace.dim=tracetdi.dim;
-    trace.dimunits={'time [s]'};
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff{1} ',' nodenameeff{2}];
-    mdsclose;
-    error_status=0;
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'pgyro'
-    %  ECH power for each gyro(1:9) and total (10)
-    mdsopen(shot);
-    nodenameeff=[{'\results::toray.input:p_gyro'}];
-    tracetdi=tdi(nodenameeff{:});
-    trace.data=tracetdi.data;
-    trace.x=[];
-    trace.t=tracetdi.dim{1};
-    trace.dim=tracetdi.dim;
-    trace.dimunits=tracetdi.dimunits;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    mdsclose;
-    error_status=0;
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case 'jtor'
-    %  \results::j_tor , 3-D so need to specify time dim index
-    mdsopen(shot);
-    nodenameeff=[{'\results::j_tor'} endstr];
-    tracetdi=tdi(nodenameeff{:});
-    trace.data=tracetdi.data;
-    trace.x=tracetdi.dim{1};
-    trace.t=tracetdi.dim{3};
-    trace.dim=tracetdi.dim;
-    trace.dimunits=tracetdi.dimunits;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    mdsclose;
-    error_status=0;
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  case {'neft:trial','teft:trial','neftav:trial','teftav:trial'}
-    %  trial indx
-    mdsopen(shot);
-    eval(['nodenameeff={''' TCVsiglocation{index} ':trial''};']);
-    tracetdi=tdi(nodenameeff{:});
-    if isempty(trialindx)
-      error('trialindx should not be empty, check call or ask O. Sauter');
-    end
-    trace.data=tracetdi.data(:,:,trialindx+1);
-    trace.x=tracetdi.dim{1};
-    trace.t=tracetdi.dim{2};
-    trace.dim=tracetdi.dim(1:2);
-    trace.dimunits=tracetdi.dimunits(1:2);
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ' ; ' nodenameeff{:} ' ; trialindx=' num2str(trialindx) ];
-    mdsclose;
-    error_status=0;
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
- case {'vi_tor', 'vi_torfit', 'vi_pol', 'vi_polfit', 'Ti', 'Tifit', 'ni', 'nifit', 'zeffcxrs', 'zeffcxrsfit'}
-    proffit = '';
-    kwd_eff = TCVkeywrdcase{index};
-    ii=strfind(kwd_eff,'fit');
-    if ~isempty(ii); 
-      proffit = ':proffit';
-      kwd_eff = kwd_eff(1:ii-1);
-    end
-    if strcmp(kwd_eff,'zeffcxrs');  kwd_eff = 'zeff'; end
-    mdsopen(shot);
-    eval(['nodenameeff=''\results::cxrs' proffit ':' kwd_eff endstr ''';']);
-    tracetdi=tdi(nodenameeff);
-    trace.data=tracetdi.data;
-    if length(tracetdi.dim)>1;
-      trace.x=tracetdi.dim{1};
-      trace.t=tracetdi.dim{2};
-    else
-      trace.x=[];
-      trace.t=[];
-    end
-    trace.dim=tracetdi.dim;
-    trace.dimunits=tracetdi.dimunits;
-    % isfield does not work since tracetdi is not a 'struct' but a tdi object, thus isfield using isa does not work
-    if any(strcmp(fieldnames(tracetdi),'units'))
-      trace.units=tracetdi.units;
-    end
-    trace.name=[num2str(shot) ';' nodenameeff];
-    % add error bars
-    eval(['nodenameeff=''\results::cxrs' proffit ':' kwd_eff ':err' endstr ''';']);
-    nodenameeff=[{'\results::cxrs:vi_tor:err'} endstr];
-    tracetdi=tdi(nodenameeff{:});
-    trace.std = tracetdi.data;
-    if length(tracetdi.dim)>2;
-      trace.std_rho = tracetdi.dim{1};
-      trace.std_t = tracetdi.dim{2};
-    else
-      trace.std_rho = [];
-      trace.std_t = [];
-    end
-    mdsclose;
-    error_status=0;
-    
-  %&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
-  otherwise
-    % eval(['!mailto_Andrea ''from loadTCVdata, data_type_eff= ' data_type_eff ''''])
-    disp(['this data_type_eff' ' ' data_type_eff ' ' 'not yet programmed in loadTCVdata, ask Andrea.Scarabosio@epfl.ch']);
-
-end
diff --git a/crpptbx_new/TCV/private/angular_fact_1.mat b/crpptbx_new/TCV/private/angular_fact_1.mat
deleted file mode 100755
index 9643be7b4b3edd0f3734bc7b666c5eaa6373c0b2..0000000000000000000000000000000000000000
Binary files a/crpptbx_new/TCV/private/angular_fact_1.mat and /dev/null differ
diff --git a/crpptbx_new/TCV/private/bad_channels.mat b/crpptbx_new/TCV/private/bad_channels.mat
deleted file mode 100755
index 9933a3a72f2d4265b5e3a3fcb23ed94bc7a3b57a..0000000000000000000000000000000000000000
Binary files a/crpptbx_new/TCV/private/bad_channels.mat and /dev/null differ
diff --git a/crpptbx_new/TCV/private/common_ece.m b/crpptbx_new/TCV/private/common_ece.m
deleted file mode 100755
index 62bee6dabc6454b4198c12fcf81b3ecd33279675..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/common_ece.m
+++ /dev/null
@@ -1,75 +0,0 @@
-function [t,i1,i2,i12,t1no,t2no,i1no,i2no]=common_ece(t1,t2,tol,mode,bounds)
-% [t,i1,i2,i12,t1no,t2no,i1no,i2no]=common(t1,t2,[tol,mode,bounds])
-% extract elements that are common to t1 and t2 within tolerance tol
-% t:  elements of t1 which are within tol of an element of t2
-% i1: index to elements of t1 which are within tol of an element of t2
-% i2: index to elements of t2 which are within tol of (and closest to if 'n') an element of t1
-% i12:index in t2 for elements from t1 corresponding to (first) match in t2
-% t1(2)no: elements of t1(2) which are not matched in t2(1)
-% i1(2)no: index to elements in t1(2) which are not matched in t2(1)
-% mode: 'a' all or 'n' nearest matches
-% bounds: [bmin,bmax] limits search interval for t1
-
-if(nargin<3 || ~exist('tol','var'))
-    tol=eps;
-end
-if(nargin<4 || ~exist('bounds','var'))
-    bounds=[min([min(t1),min(t2)])-tol;
-    max([max(t2),max(t1)])+tol];
-end
-if(nargin<5 || ~exist('mode','var'))
-    mode='n';
-end
-
-i1=zeros(size(t1));
-i2=zeros(size(t2));
-t=[];
-i12=zeros(size(t1));
-
-t1no=[];
-t2no=[];
-
-match=0;
-
-for j=1:length(t1)
-    if(t1(j)>=bounds(1) && t1(j)<=bounds(2))
-        tt1=t1(j)*ones(size(t2));
-        ii2=find(abs(t2-tt1)<=tol);
-        if(strcmp(mode,'n') && ~isempty(ii2))
-            if (length(ii2)>1)
-                [~,ii2]=min(abs(t2-tt1));
-            end
-            match=match+1;
-            i2(ii2)=ii2;
-            i1(j)=ii2;
-            i12(j)=ii2;
-        end
-        if(strcmp(mode,'a') && ~isempty(ii2))
-            match=match+1;
-            i1(j)=j;
-            i12=ii2(1);
-            i2(ii2)=ii2;
-        end	
-    end
-end
-
-%disp(['matches found: ',int2str(match)])
-%keyboard
-
-i1no=find(i1==0);
-i2no=find(i2==0);
-i1=find(i1~=0);
-i2=find(i2~=0);
-if(~isempty(i1))
-    t=t1(i1);
-end
-if(~isempty(i1no))
-    t1no=t1(i1no);
-end
-if(~isempty(i2no))
-    t2no=t2(i2no);
-end
-
-%keyboard
-
-end
diff --git a/crpptbx_new/TCV/private/ece_bad_channels.m b/crpptbx_new/TCV/private/ece_bad_channels.m
deleted file mode 100755
index d7db31440ef336183908443eeecaa0ab7e4894a6..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/ece_bad_channels.m
+++ /dev/null
@@ -1,19 +0,0 @@
-function [N]=ece_bad_channels(shot)
-%	function [N]=ece_bad_channels(shot)
-%
-%	Fonction donnant la liste des cannaux  ne fonctionnant pas
-%	La numerotation est celle de la notice de l'ECE => comme dans MDS
-
-load bad_channels;
-if isempty(find(A(:,1)==shot))==1
-  if shot <=18628 
-    N=[1 23];
-  elseif shot > 18628 & shot<20000
-    N=[1 15 21 23];
-   elseif shot>20000
-    N=[15 21 23];
-  end
-else
-  N=A(find(A(:,1)==shot),2:20);
-  N=N(find(N>0));
-end
diff --git a/crpptbx_new/TCV/private/ece_calib.m b/crpptbx_new/TCV/private/ece_calib.m
deleted file mode 100755
index 171fe18bf369850765cd553f3f57b0b332200e0b..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/ece_calib.m
+++ /dev/null
@@ -1,155 +0,0 @@
-function [CALIBRATION,Fcentral]=ece_calib(shot,Tc)
-
-%	function [CALIBRATION,Fcentral]=ece_calib(shot,Tc)
-%	[CALIBRATION,Fcentral]=ece_calib(shot,[0.1 0.29])
-%
-%	Calculate the CALIBRATION matrix of ECE signals on Thomson temperature
-%	on times bounded by Tc=[a b] for the specified shot#.
-%	Fcentral is the central Frequency of the ECE channels
-%	
-%	Blanchard  09.06.2001
-
-%-----------------------------------------------------------------------
-%	Recherche de la configuration de l'ECE
-%-----------------------------------------------------------------------
-[W]=writeece;
-
-warning off
-mdsopen('tcv_shot',shot)
-L=mdsdata('GETNCI("\\results::ece:calibration","length")');
-LL=mdsdata('GETNCI("\\results::psi_axis:foo","length")');
-mdsclose
-if LL==0
- disp('----------------------------------')
- disp('\results::psi_axis not calculated')
- disp('----------------------------------')
- return 
-end
-
-if L==0 | L==28 |W==1
-  disp(' La trace \results::ece:calibration est vide ');
-  mdsopen('tcv_shot',shot)
-  Cntrl1= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D0"]');
-  Cntrl2= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D1"]');
-  Sw1= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D2"]');
-  Sw2= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D3"]');
-  mdsclose
-  i=[1,2];
-  if strcmp(Cntrl1(i),'ON')
-     L=2;
-  else
-     if strcmp(Cntrl2(i),'ON')
-	L=1;
-     else
-	L=0;
-     end
-  end
-
-  if strcmp(Sw1(i),'ON') 
-   if strcmp(Sw2(i),'ON') 
-    K=2;
-   else
-    K=3;
-   end
-  else
-   if strcmp(Sw2(i),'ON') 
-    K=4;
-   else
-    K=1;
-   end
-  end
-  clear Cntrl1 Cntrl2 Sw1 Sw2
-
-  %-----------------------------------------------------------------------
-  %	Appel des principales donnees
-  %-----------------------------------------------------------------------
-  [RHOece,Rece,Zece,Tece, Fcentralrho]=ece_rho(shot,Tc);Tece=Tece';
-  [TEthom,NEthom,TEerr,NEerr,Tthom,RHOthom]=thom_rho(shot,5); %(Tthom,Nbre de pts selon rho)
-  [A,B]=size(TEthom);
-  KK=0;
-  if exist('TEthom')==0|length(TEthom) ==0
-	KK=1;
-	disp('Le profil Thomson proffit n''existe pas. On essaye le profil direct') %(Tthom,Nbre de pts selon rho)
-	[TEthom,NEthom,TEerr,NEerr,Tthom,RHOthom]=thom_rho(shot,3);
-	[A,B]=size(TEthom);
-	if mean(TEthom)==-1| isstr(TEthom)==1
-	 	return
-	end
-  end
-  if A==0|B==0|B==10
-	disp('--------------------------')
-	disp('No Thomson acquisition')
-	disp('--------------------------')
-	TEthom
-	return
-  end
-  [t,i1,i2]=common(Tece,Tthom(:,1),0.005);
-  [ECE,TECE,Fcentral]=ece_raw_signals(shot,Tc,1);Fcentral=Fcentral';
-  [t2,i3,i4]=common(Fcentralrho,Fcentral);
-  Rece=Rece(i3,i1);Zece=Zece(i3,i1);RHOece=RHOece(i3,i1);
-  TEthom=TEthom(i2,:);TEerr=TEerr(i2,:);RHOthom=RHOthom(i2,:);
-  T1=Tece(i1);
-  clear NEthom Tthom Tece Zece Fcentralrho
-  disp(['Pour la calibration, nous allons considerer ', num2str(length(t)),' profils Thomson '])
-  disp(['Tcal = ',num2str(t')])              
-  %-----------------------------------------------------------------------
-  %	Mise a jour des signaux sur les memes bases temporelles
-  %	et RHO
-  %-----------------------------------------------------------------------
-  [T1,Fcentral]=meshgrid(T1,Fcentral);[T2,Fcentral2]=meshgrid(TECE,Fcentral(:,1));
-  RHOcalib=interp2(T1,Fcentral,RHOece,T2',Fcentral2');
-  TEthom=griddata(RHOthom,repmat(T1(1,:)',1,B),TEthom,RHOcalib,T2'); 
-  TEerr=griddata(RHOthom,repmat(T1(1,:)',1,B),TEerr,RHOcalib,T2');
-  %-----------------------------------------------------------------------
-  %	Calibration sur mesure Thomson
-  %-----------------------------------------------------------------------
-  if isempty(find(isnan(TEthom)))==0
-    NN=find(isnan(mean(TEthom))==1);   
-    for j=1:length(NN)
-      nj=find(isnan(TEthom(:,NN(j)))==1);
-      nNN=find(isnan(TEthom(:,NN(j)))==0); 
-      disp(['On a remplace ',num2str(length(nj)),' NaN dans la colonne ',num2str(NN(j))]); 
-      if min(nNN)<min(nj)
-        TEthom(nj,NN(j))=TEthom(min(nj)-1,NN(j));
-      else
-        disp(['probleme avec NaN : toute la colonne ',num2str(NN(j)),' vaut 0']);
-        TEthom(nj,NN(j))=0;
-      end
-    end
-  end  
- 
-  CAL(1,:)=Fcentral(:,1)';
-  c=TEthom./ECE;
-  if  max(size(find(c==0)))>1
-	  disp('On corrige les points valant 0')
-	  jj=min(find(mean(TEthom)>0));
-	  mm=min(find(c(:,3)>0));
-	  MM= max(find(c(:,3)>0));
-	  CAL(2,:)=mean(TEthom([mm:MM],:)./ECE([mm:MM],:));
-	  CAL(3,:)=std(TEthom([mm:MM],:)./ECE([mm:MM],:));CAL(4,:)=mean(TEerr([mm:MM],:)./ECE([mm:MM],:));
-	  CALIBRATION=CAL;CALIBRATION(5,[1:length(T1(1,:))])=T1(1,:);  
-  else
-	  CAL(2,:)=mean(TEthom./ECE);
-	  CAL(3,:)=std(TEthom./ECE);CAL(4,:)=mean(TEerr./ECE);
-	  CALIBRATION=CAL;CALIBRATION(5,[1:length(T1(1,:))])=T1(1,:);   
-  end
-  if W==2
-
-  else 
-	  mdsopen(shot) 
-	  mdsput('\results::ece:calibration',CALIBRATION,'f');
-	  mdsput('\results::ece:f_central',Fcentral(:,1),'f');
-	  mdsclose
-	  disp('On a enregistre la matrice de calibration et Fcentral dans MDS')
-	  clear RHOcalib TEthom T2 ECE Fcentral2 TECE 
-  end
- 
-else
-	disp('On va chercher la matrice \results::ece:CALIBRATION dans MDS!')
-	mdsopen('tcv_shot',shot)
-	CALIBRATION=mdsdata('\results::ece:calibration');
-	Fcentral=mdsdata('\results::ece:f_central');
-	mdsclose
-end
-
-warning on
diff --git a/crpptbx_new/TCV/private/ece_conf.m b/crpptbx_new/TCV/private/ece_conf.m
deleted file mode 100755
index 9c71c4c913d3d13319c54b69a9fdb5fbd27cac20..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/ece_conf.m
+++ /dev/null
@@ -1,85 +0,0 @@
-function [K,L]=ece_conf(shot,mode)
-
-%	function [K,L]=ece_conf(shot,mode)
-%	[K,L]=ece_conf(shot,0);
-%	if mode=0 => display some informations
-%	
-%	Give the configuration of the ECE radiometer for the specified shot.
-%	K=1 => high edge resolution (A)
-%	K=2 => high center resolution (B)
-%	K=3 => low resolution Lo1->IF2; Lo2->IF1 (C)
-% 	K=4 => low resolution Lo1->IF1; Lo2->IF2 (D)
-%
-%	L=0  	=> calibration
-%	L=1	=> Z=0
-%	L=2	=> Z=0.21 cm
-
-mdsopen('tcv_shot',shot)
-Cntrl1= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D0"]');
-Cntrl2= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D1"]');
-Sw1= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D2"]');
-Sw2= mdsdata('\vsystem::tcv_publicdb_b["ECE:PIO_D3"]');
-Att= mdsdata('\vsystem::tcv_publicdb_i["ECE:PIO_GAIN_2_IN"]');
-mdsclose
-
-if mode==0
-i=[1,2];
-
-if strcmp(Cntrl1(i),'ON')
-L=2;
-disp('ligne de visee Z = 21.3 cm')
-else
-if strcmp(Cntrl2(i),'ON')
-L=1;
-disp('ligne de visee Z=0')
-else
-L=0;
-disp('Calibration')
-end
-end
-
-if strcmp(Sw1(i),'ON') 
- if strcmp(Sw2(i),'ON') 
-  K=2;
-  disp('Configuration B')
- else
-  K=3;
-  disp('Configuration C')
- end
-else
- if strcmp(Sw2(i),'ON') 
-  K=4;
-  disp('Configuration D')
- else
-  K=1;
-  disp('Configuration A')
- end
-end
-disp(['Attenuation level = ',num2str(Att),' '])
-else
-i=[1,2];
-if strcmp(Cntrl1(i),'ON')
-L=2;
-else
-if strcmp(Cntrl2(i),'ON')
-L=1;
-else
-L=0;
-end
-end
-
-if strcmp(Sw1(i),'ON') 
- if strcmp(Sw2(i),'ON') 
-  K=2;
- else
-  K=3;
- end
-else
- if strcmp(Sw2(i),'ON') 
-  K=4;
- else
-  K=1;
- end
-end
-
-end
diff --git a/crpptbx_new/TCV/private/ece_d.m b/crpptbx_new/TCV/private/ece_d.m
deleted file mode 100755
index 17752b9d7456b19dfc7221514fc3f6000d2710f8..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/ece_d.m
+++ /dev/null
@@ -1,51 +0,0 @@
-% 	Fonction matlab  donnant la relation entre la frequence centrale des 
-%	cannaux du radiometre avec le no du cannal
-D=[  78.8500   12.0000
-   79.6000   13.0000
-   80.3500   11.0000
-   81.1000   14.0000
-   81.8500   10.0000
-   82.6000   15.0000
-   83.3500    9.0000
-   84.1000   16.0000
-   84.8500    8.0000
-   85.6000   17.0000
-   86.3500    7.0000
-   87.1000   18.0000
-   87.8500    6.0000
-   88.6000   19.0000
-   89.3500    5.0000
-   90.1000   20.0000
-   90.8500    4.0000
-   91.6000   21.0000
-   92.3500    3.0000
-   93.1000   22.0000
-   93.8500    2.0000
-   94.6000   23.0000
-   95.3500    1.0000
-   96.1000   24.0000
-   96.8500   12.0000
-   97.6000   13.0000
-   98.3500   11.0000
-   99.1000   14.0000
-   99.8500   10.0000
-  100.6000   15.0000
-  101.3500    9.0000
-  102.1000   16.0000
-  102.8500    8.0000
-  103.6000   17.0000
-  104.3500    7.0000
-  105.1000   18.0000
-  105.8500    6.0000
-  106.6000   19.0000
-  107.3500    5.0000
-  108.1000   20.0000
-  108.8500    4.0000
-  109.6000   21.0000
-  110.3500    3.0000
-  111.1000   22.0000
-  111.8500    2.0000
-  112.6000   23.0000
-  113.3500    1.0000
-  114.1000   24.0000            ];
-  
diff --git a/crpptbx_new/TCV/private/ece_mode.m b/crpptbx_new/TCV/private/ece_mode.m
deleted file mode 100755
index fd8a20f24d131bc87e8a9da52789cf2dc64004f6..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/ece_mode.m
+++ /dev/null
@@ -1,99 +0,0 @@
-function [Fcentral, Rcentral,No]=ece_mode(K,B)
-
-%	function [Fcentral, Rcentral,No]=ece_mode(K,B)
-%
-%	Programme calculant les frequences centrales, et la disposition 
-%	spatiale relative a ces frequences pour chaques cannaux dans les quatres 
-%	configurations possibles du radiometre ECE
-%
-%	K=1 => haute resol bord (8a)
-%	K=2 => haute resol centre (8b)
-%	K=3 => basse resolution Lo1->IF2; Lo2->IF1 (8c)
-%	K=4 => basse resolution Lo1->IF1; Lo2->IF2 (8d)
-%	B=champs magnetique
-%
-%	Fcentral = frequence centrale de chaque cannaux
-%	Rcentral = position selon R de l'emission a la frequence Fcentral
-%	No	 = correspondance Fcentral -> cannaux de l'ECE
-%
-%	Voir ece_conf.m
-
-%[Lo1,Lo2,cann1,cann2,cann,del,No1,No2]=ece_lo;
-Lo1=76.475;
-Lo2=94.475;
-cann1=[2.375:1.5:18.875]';
-No1=fliplr([1:12])';
-cann2=[3.125:1.5:19.625]';
-No2=([13:24]');
-cann=[2.375:0.75:19.625]'; 
-del=0.75;
-% introduce const constants from /mac/blanchard/matlab5/ece/public/const.m
-
-%	CONST.M
-%
-%	Constante physique						
-%									
-%	q, e, k, me, mp, h, hbar, c, epsilon0, mu0, G, Na
-%
-%	Unites SI
-%	Blanchard 07.97
-q=1.6022e-19;				% [C]
-e=1.6022e-19;				% [C]
-k=1.3807e-23;				% [J/K]
-me=9.1094e-31;				% [kg]
-mp=1.6726e-27;				% [kg]
-h=6.6261e-34;				% [Js]
-hbar=h/2/pi;				% [Js]
-c=2.9979e8;				% [m/s]
-epsilon0=8.8542e-12;			% [F/m]
-mu0=4e-7*pi;				% [H/m]
-G=6.6726e-11;				% [m^3/kg/s^2]
-Na=6.0221e23;				% [1/mol]
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-%
-%       Programme donnant les parametres importants de TCV
-%       R0=Grand rayon
-%       eptuile = distance paroi-bord tuile cote chambre
-%       a=distance centre-bord tuile
-R0=0.88;
-eptuile=0.024;
-a=0.56/2-eptuile;
-
-if K == 1
-	F=cann;
-	Fcentral=cann+Lo2;
-	Rcentral=2*e*R0/me*(1./Fcentral)*B/1e9/2/pi;
-	%Wce_central=2*e*R0*(1./Rcentral)*B/me;
-	No=[cann2+Lo2,No2];
-	No(13:24,:)=[cann1+Lo2,No1];
-	[No]=sortrows(No,1); 
-elseif K == 2
-	F=cann;
-	Fcentral=cann+Lo1;
-	Rcentral=2*e*R0/me*(1./Fcentral)*B/1e9/2/pi;
-	%Wce_central=2*e*R0.*(1./Rcentral)*B/me;
-	No=[cann2+Lo1,No2];
-	No(13:24,:)=[cann1+Lo1,No1];
-	[No]=sortrows(No,1); 
-elseif K == 3
-	F=cann1;
-	F(length(cann1)+1:length(cann1)+length(cann2))=cann2;
-	Fcentral=cann2+Lo1;
-	Fcentral(length(cann1)+1:length(cann1)+length(cann2))=cann1+Lo2;
-	Rcentral=2*e*R0/me*(1./Fcentral)*B/1e9/2/pi;
-	%Wce_central=2*e*R0.*(1./Rcentral)*B/me;
-	No=[cann1+Lo2,No1];
-	No(13:24,:)=[cann2+Lo1,No2];
-	[No]=sortrows(No,1); 
-elseif K == 4
-	F=cann1;
-	F(length(cann1)+1:length(cann1)+length(cann2))=cann2;
-	Fcentral=cann1+Lo1;
-	Fcentral(length(cann1)+1:length(cann1)+length(cann2))=cann2+Lo2;
-	Rcentral=2*e*R0/me*(1./Fcentral)*B/1e9/2/pi;
-	%Wce_central=2*e*R0.*(1./Rcentral)*B/me;
-	No=[cann1+Lo1,No1];
-	No(13:24,:)=[cann2+Lo2,No2];
-	[No]=sortrows(No,1); 
-end
diff --git a/crpptbx_new/TCV/private/ece_raw_signals.m b/crpptbx_new/TCV/private/ece_raw_signals.m
deleted file mode 100755
index 663ee5222045f6ee550dc4208dc86c89f14a782e..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/ece_raw_signals.m
+++ /dev/null
@@ -1,408 +0,0 @@
-function [ECE,Tece,Fcentral]=ece_raw_signals(shot,T,SS);
-
-%	function [ECE,Tece,Fcentral]=ece_raw_signals(shot,T,SS);
-%	
-%	Programme donnant les signaux ECE [V] non corriges par les 
-%	calibrations, pour le vecteur temporel T ou pour un sous 
-%	echantillonage SS
-%
-%	shot 	= no de tir a analyser
-%	T	= soit 
-%		-vecteur temporel croissant
-%		-si T=10 => tout les temps seront cherches
-%		-si T=[a b];=> a et b sont les bornes temporelles
-%	SS > 1 	=> sous echantillonage de facteur SS si T=10 ou T=[a b]
-%	Les 24 lignes de ECE correspondent aux frequences d'emissions
-%	classees par ordre croissant de frequence d'emission.
-%
-%	Blanchard  10.02.2000
-
-%------------------------------------------------------------------------------
-%	INFORMATION
-%
-%	Pour toutes les matrices, on aura la convention suivante:
-%	Les signaux temporels des 24 cannaux seront les 24 lignes,
-%------------------------------------------------------------------------------
-if shot>=20055
-
-	[K,L]=ece_conf(shot,1);
-	ece_d;
-	[Fcentral, Rcentral,No]=ece_mode(K,1.5);
-	[t,i1,i2]=common_ece(No(:,1),D(:,1));
-	D=D(i2,:);[D]=sortrows(D,1);
-	E=D(:,2);E(:,2)=[1:24]';[E]=sortrows(E,1);
-
-	%------------------------------------------------------------------------------
-	%	Appel des valeurs dans MDS
-	%	La matrice ECE a 24 lignes correspondant aux 24 cannaux
-	%	
-	%	La matrice est classee par ordre croissant des frequences cesntrales
-	%	des divers cannaux
-	%------------------------------------------------------------------------------
-	if length(T)==2
-	   mdsopen('tcv_shot',shot)
-	   Tece=mdsdata('dim_of(\atlas::dt100_northwest_001:channel_012)');   
-
-	   X=[1:SS:length(Tece)]';
-	   Tece=Tece(X);clear X
-
-	   del=Tece(2)-Tece(1);
-	   NN=Tece(1:max(find(Tece<0))); 
-	   N=find(Tece>=T(1) & Tece<=T(2));
-	   Tece=Tece(N); 
-	   ECE=zeros(length(Tece),24);
-	   ECE(:,E(1,2))=mdsdata('\atlas::dt100_northwest_001:channel_012[$]',Tece);
-	   ECE(:,E(2,2))=mdsdata('\atlas::dt100_northwest_001:channel_011[$]',Tece);
-	   ECE(:,E(3,2))=mdsdata('\atlas::dt100_northwest_001:channel_010[$]',Tece);
-	   ECE(:,E(4,2))=mdsdata('\atlas::dt100_northwest_001:channel_009[$]',Tece);
-	   ECE(:,E(5,2))=mdsdata('\atlas::dt100_northwest_001:channel_008[$]',Tece);
-	   ECE(:,E(6,2))=mdsdata('\atlas::dt100_northwest_001:channel_007[$]',Tece);
-	   ECE(:,E(7,2))=mdsdata('\atlas::dt100_northwest_001:channel_006[$]',Tece);
-	   ECE(:,E(8,2))=mdsdata('\atlas::dt100_northwest_001:channel_005[$]',Tece);
-	   ECE(:,E(9,2))=mdsdata('\atlas::dt100_northwest_001:channel_004[$]',Tece);
-	   ECE(:,E(10,2))=mdsdata('\atlas::dt100_northwest_001:channel_003[$]',Tece);
-	   ECE(:,E(11,2))=mdsdata('\atlas::dt100_northwest_001:channel_002[$]',Tece);
-	   ECE(:,E(12,2))=mdsdata('\atlas::dt100_northwest_001:channel_001[$]',Tece);
-	   ECE(:,E(13,2))=mdsdata('\atlas::dt100_northwest_001:channel_017[$]',Tece);
-	   ECE(:,E(14,2))=mdsdata('\atlas::dt100_northwest_001:channel_018[$]',Tece);
-	   ECE(:,E(15,2))=mdsdata('\atlas::dt100_northwest_001:channel_019[$]',Tece);
-	   ECE(:,E(16,2))=mdsdata('\atlas::dt100_northwest_001:channel_020[$]',Tece);
-	   ECE(:,E(17,2))=mdsdata('\atlas::dt100_northwest_001:channel_021[$]',Tece);
-	   ECE(:,E(18,2))=mdsdata('\atlas::dt100_northwest_001:channel_022[$]',Tece);
-	   ECE(:,E(19,2))=mdsdata('\atlas::dt100_northwest_001:channel_023[$]',Tece);
-	   ECE(:,E(20,2))=mdsdata('\atlas::dt100_northwest_001:channel_024[$]',Tece);
-	   ECE(:,E(21,2))=mdsdata('\atlas::dt100_northwest_001:channel_025[$]',Tece);
-	   ECE(:,E(22,2))=mdsdata('\atlas::dt100_northwest_001:channel_026[$]',Tece);
-	   ECE(:,E(23,2))=mdsdata('\atlas::dt100_northwest_001:channel_027[$]',Tece);
-	   ECE(:,E(24,2))=mdsdata('\atlas::dt100_northwest_001:channel_028[$]',Tece);
-	   M=zeros(length(NN),24);
-	   M(:,E(1,2))=mdsdata('\atlas::dt100_northwest_001:channel_012[$]',NN);
-	   M(:,E(2,2))=mdsdata('\atlas::dt100_northwest_001:channel_011[$]',NN);
-	   M(:,E(3,2))=mdsdata('\atlas::dt100_northwest_001:channel_010[$]',NN);
-	   M(:,E(4,2))=mdsdata('\atlas::dt100_northwest_001:channel_009[$]',NN);
-	   M(:,E(5,2))=mdsdata('\atlas::dt100_northwest_001:channel_008[$]',NN);
-	   M(:,E(6,2))=mdsdata('\atlas::dt100_northwest_001:channel_007[$]',NN);
-	   M(:,E(7,2))=mdsdata('\atlas::dt100_northwest_001:channel_006[$]',NN);
-	   M(:,E(8,2))=mdsdata('\atlas::dt100_northwest_001:channel_005[$]',NN);
-	   M(:,E(9,2))=mdsdata('\atlas::dt100_northwest_001:channel_004[$]',NN);
-	   M(:,E(10,2))=mdsdata('\atlas::dt100_northwest_001:channel_003[$]',NN);
-	   M(:,E(11,2))=mdsdata('\atlas::dt100_northwest_001:channel_002[$]',NN);
-	   M(:,E(12,2))=mdsdata('\atlas::dt100_northwest_001:channel_001[$]',NN);
-	   M(:,E(13,2))=mdsdata('\atlas::dt100_northwest_001:channel_017[$]',NN);
-	   M(:,E(14,2))=mdsdata('\atlas::dt100_northwest_001:channel_018[$]',NN);
-	   M(:,E(15,2))=mdsdata('\atlas::dt100_northwest_001:channel_019[$]',NN);
-	   M(:,E(16,2))=mdsdata('\atlas::dt100_northwest_001:channel_020[$]',NN);
-	   M(:,E(17,2))=mdsdata('\atlas::dt100_northwest_001:channel_021[$]',NN);
-	   M(:,E(18,2))=mdsdata('\atlas::dt100_northwest_001:channel_022[$]',NN);
-	   M(:,E(19,2))=mdsdata('\atlas::dt100_northwest_001:channel_023[$]',NN);
-	   M(:,E(20,2))=mdsdata('\atlas::dt100_northwest_001:channel_024[$]',NN);
-	   M(:,E(21,2))=mdsdata('\atlas::dt100_northwest_001:channel_025[$]',NN);
-	   M(:,E(22,2))=mdsdata('\atlas::dt100_northwest_001:channel_026[$]',NN);
-	   M(:,E(23,2))=mdsdata('\atlas::dt100_northwest_001:channel_027[$]',NN);
-	   M(:,E(24,2))=mdsdata('\atlas::dt100_northwest_001:channel_028[$]',NN);
-	   mdsclose
-	   N=min(find(Tece>0-del&Tece<0+del));
-	   M=mean(M);
-	   ECE=ECE-repmat(M,length(Tece),1);
-
-	elseif T==10
-	   mdsopen('tcv_shot',shot)
-	   Tece=mdsdata('dim_of(\atlas::dt100_northwest_001:channel_012)');   
-
-	   X=[1:SS:length(Tece)]';
-	   Tece=Tece(X);clear X
-
-	   ECE=zeros(length(Tece),24);
-	   ECE(:,E(1,2))=mdsdata('\atlas::dt100_northwest_001:channel_012[$]',Tece);
-	   ECE(:,E(2,2))=mdsdata('\atlas::dt100_northwest_001:channel_011[$]',Tece);
-	   ECE(:,E(3,2))=mdsdata('\atlas::dt100_northwest_001:channel_010[$]',Tece);
-	   ECE(:,E(4,2))=mdsdata('\atlas::dt100_northwest_001:channel_009[$]',Tece);
-	   ECE(:,E(5,2))=mdsdata('\atlas::dt100_northwest_001:channel_008[$]',Tece);
-	   ECE(:,E(6,2))=mdsdata('\atlas::dt100_northwest_001:channel_007[$]',Tece);
-	   ECE(:,E(7,2))=mdsdata('\atlas::dt100_northwest_001:channel_006[$]',Tece);
-	   ECE(:,E(8,2))=mdsdata('\atlas::dt100_northwest_001:channel_005[$]',Tece);
-	   ECE(:,E(9,2))=mdsdata('\atlas::dt100_northwest_001:channel_004[$]',Tece);
-	   ECE(:,E(10,2))=mdsdata('\atlas::dt100_northwest_001:channel_003[$]',Tece);
-	   ECE(:,E(11,2))=mdsdata('\atlas::dt100_northwest_001:channel_002[$]',Tece);
-	   ECE(:,E(12,2))=mdsdata('\atlas::dt100_northwest_001:channel_001[$]',Tece);
-	   ECE(:,E(13,2))=mdsdata('\atlas::dt100_northwest_001:channel_017[$]',Tece);
-	   ECE(:,E(14,2))=mdsdata('\atlas::dt100_northwest_001:channel_018[$]',Tece);
-	   ECE(:,E(15,2))=mdsdata('\atlas::dt100_northwest_001:channel_019[$]',Tece);
-	   ECE(:,E(16,2))=mdsdata('\atlas::dt100_northwest_001:channel_020[$]',Tece);
-	   ECE(:,E(17,2))=mdsdata('\atlas::dt100_northwest_001:channel_021[$]',Tece);
-	   ECE(:,E(18,2))=mdsdata('\atlas::dt100_northwest_001:channel_022[$]',Tece);
-	   ECE(:,E(19,2))=mdsdata('\atlas::dt100_northwest_001:channel_023[$]',Tece);
-	   ECE(:,E(20,2))=mdsdata('\atlas::dt100_northwest_001:channel_024[$]',Tece);
-	   ECE(:,E(21,2))=mdsdata('\atlas::dt100_northwest_001:channel_025[$]',Tece);
-	   ECE(:,E(22,2))=mdsdata('\atlas::dt100_northwest_001:channel_026[$]',Tece);
-	   ECE(:,E(23,2))=mdsdata('\atlas::dt100_northwest_001:channel_027[$]',Tece);
-	   ECE(:,E(24,2))=mdsdata('\atlas::dt100_northwest_001:channel_028[$]',Tece);
-	   mdsclose
-	   del=Tece(2)-Tece(1);
-	   N=min(find(Tece>0-del&Tece<0+del));
-	   M=mean(ECE([1:N],:));
-	   ECE=ECE-repmat(M,length(Tece),1);
-
-	elseif T~=10 | length(T)>2
-	   mdsopen('tcv_shot',shot)
-	   Tece=mdsdata('dim_of(\atlas::dt100_northwest_001:channel_012)');   
-	   
-	   NN=Tece(1:max(find(Tece<0))); 
-	   Tece=mdsdata('dim_of(\atlas::dt100_northwest_001:channel_012[$])',T);
-	   ECE=zeros(length(Tece),24);
-	   ECE(:,E(1,2))=mdsdata('\atlas::dt100_northwest_001:channel_012[$]',T);
-	   ECE(:,E(2,2))=mdsdata('\atlas::dt100_northwest_001:channel_011[$]',T);
-	   ECE(:,E(3,2))=mdsdata('\atlas::dt100_northwest_001:channel_010[$]',T);
-	   ECE(:,E(4,2))=mdsdata('\atlas::dt100_northwest_001:channel_009[$]',T);
-	   ECE(:,E(5,2))=mdsdata('\atlas::dt100_northwest_001:channel_008[$]',T);
-	   ECE(:,E(6,2))=mdsdata('\atlas::dt100_northwest_001:channel_007[$]',T);
-	   ECE(:,E(7,2))=mdsdata('\atlas::dt100_northwest_001:channel_006[$]',T);
-	   ECE(:,E(8,2))=mdsdata('\atlas::dt100_northwest_001:channel_005[$]',T);
-	   ECE(:,E(9,2))=mdsdata('\atlas::dt100_northwest_001:channel_004[$]',T);
-	   ECE(:,E(10,2))=mdsdata('\atlas::dt100_northwest_001:channel_003[$]',T);
-	   ECE(:,E(11,2))=mdsdata('\atlas::dt100_northwest_001:channel_002[$]',T);
-	   ECE(:,E(12,2))=mdsdata('\atlas::dt100_northwest_001:channel_001[$]',T);
-	   ECE(:,E(13,2))=mdsdata('\atlas::dt100_northwest_001:channel_017[$]',T);
-	   ECE(:,E(14,2))=mdsdata('\atlas::dt100_northwest_001:channel_018[$]',T);
-	   ECE(:,E(15,2))=mdsdata('\atlas::dt100_northwest_001:channel_019[$]',T);
-	   ECE(:,E(16,2))=mdsdata('\atlas::dt100_northwest_001:channel_020[$]',T);
-	   ECE(:,E(17,2))=mdsdata('\atlas::dt100_northwest_001:channel_021[$]',T);
-	   ECE(:,E(18,2))=mdsdata('\atlas::dt100_northwest_001:channel_022[$]',T);
-	   ECE(:,E(19,2))=mdsdata('\atlas::dt100_northwest_001:channel_023[$]',T);
-	   ECE(:,E(20,2))=mdsdata('\atlas::dt100_northwest_001:channel_024[$]',T);
-	   ECE(:,E(21,2))=mdsdata('\atlas::dt100_northwest_001:channel_025[$]',T);
-	   ECE(:,E(22,2))=mdsdata('\atlas::dt100_northwest_001:channel_026[$]',T);
-	   ECE(:,E(23,2))=mdsdata('\atlas::dt100_northwest_001:channel_027[$]',T);
-	   ECE(:,E(24,2))=mdsdata('\atlas::dt100_northwest_001:channel_028[$]',T);
-	   M=zeros(length(NN),24);
-	   M(:,E(1,2))=mdsdata('\atlas::dt100_northwest_001:channel_012[$]',NN);
-	   M(:,E(2,2))=mdsdata('\atlas::dt100_northwest_001:channel_011[$]',NN);
-	   M(:,E(3,2))=mdsdata('\atlas::dt100_northwest_001:channel_010[$]',NN);
-	   M(:,E(4,2))=mdsdata('\atlas::dt100_northwest_001:channel_009[$]',NN);
-	   M(:,E(5,2))=mdsdata('\atlas::dt100_northwest_001:channel_008[$]',NN);
-	   M(:,E(6,2))=mdsdata('\atlas::dt100_northwest_001:channel_007[$]',NN);
-	   M(:,E(7,2))=mdsdata('\atlas::dt100_northwest_001:channel_006[$]',NN);
-	   M(:,E(8,2))=mdsdata('\atlas::dt100_northwest_001:channel_005[$]',NN);
-	   M(:,E(9,2))=mdsdata('\atlas::dt100_northwest_001:channel_004[$]',NN);
-	   M(:,E(10,2))=mdsdata('\atlas::dt100_northwest_001:channel_003[$]',NN);
-	   M(:,E(11,2))=mdsdata('\atlas::dt100_northwest_001:channel_002[$]',NN);
-	   M(:,E(12,2))=mdsdata('\atlas::dt100_northwest_001:channel_001[$]',NN);
-	   M(:,E(13,2))=mdsdata('\atlas::dt100_northwest_001:channel_017[$]',NN);
-	   M(:,E(14,2))=mdsdata('\atlas::dt100_northwest_001:channel_018[$]',NN);
-	   M(:,E(15,2))=mdsdata('\atlas::dt100_northwest_001:channel_019[$]',NN);
-	   M(:,E(16,2))=mdsdata('\atlas::dt100_northwest_001:channel_020[$]',NN);
-	   M(:,E(17,2))=mdsdata('\atlas::dt100_northwest_001:channel_021[$]',NN);
-	   M(:,E(18,2))=mdsdata('\atlas::dt100_northwest_001:channel_022[$]',NN);
-	   M(:,E(19,2))=mdsdata('\atlas::dt100_northwest_001:channel_023[$]',NN);
-	   M(:,E(20,2))=mdsdata('\atlas::dt100_northwest_001:channel_024[$]',NN);
-	   M(:,E(21,2))=mdsdata('\atlas::dt100_northwest_001:channel_025[$]',NN);
-	   M(:,E(22,2))=mdsdata('\atlas::dt100_northwest_001:channel_026[$]',NN);
-	   M(:,E(23,2))=mdsdata('\atlas::dt100_northwest_001:channel_027[$]',NN);
-	   M(:,E(24,2))=mdsdata('\atlas::dt100_northwest_001:channel_028[$]',NN);
-	   mdsclose
-	   M=mean(M);
-	   ECE=ECE-repmat(M,length(Tece),1);
-	% SS=0;
-	end
-	%------------------------------------------------------------------------------
-	%	Correction des mauvais cannaux : met les cannaux non-existant a NaN
-	%------------------------------------------------------------------------------
-	[N]=ece_bad_channels(shot);
-	disp(['Pour le shot # ',num2str(shot),' les cannaux ECE qui ne vont pas sont: ',num2str(N)])
-	%N=input('Introduire les cannaux qui ne vont pas')
-	[t,i1,i2,i3,i4,i5,i6]=common_ece(E(N,2),[1:24]);
-	ECE=ECE(:,i5);Fcentral=Fcentral(i5);
-
-else
-
-	[K,L]=ece_conf(shot,1);
-	ece_d;
-	[Fcentral, Rcentral,No]=ece_mode(K,1.5);
-	[t,i1,i2]=common_ece(No(:,1),D(:,1));
-	D=D(i2,:);[D]=sortrows(D,1);
-	E=D(:,2);E(:,2)=[1:24]';[E]=sortrows(E,1);
-
-	%------------------------------------------------------------------------------
-	%	Appel des valeurs dans MDS
-	%	La matrice ECE a 24 lignes correspondant aux 24 cannaux
-	%	
-	%	La matrice est classee par ordre croissant des frequences cesntrales
-	%	des divers cannaux
-	%------------------------------------------------------------------------------
-	if length(T)==2
-	   mdsopen('tcv_shot',shot)
-	   Tece=mdsdata('\atlas::dt100_003:fast:time');
-	   
-	   X=[1:SS:length(Tece)]';
-	   Tece=Tece(X);clear X
-
-	   del=Tece(2)-Tece(1);
-	   NN=Tece(1:max(find(Tece<0))); 
-	   N=find(Tece>=T(1) & Tece<=T(2));
-	   Tece=Tece(N); 
-	   ECE=zeros(length(Tece),24);
-	   ECE(:,E(1,2))=mdsdata('\atlas::dt100_003:fast:channel_012[$]',Tece);
-	   ECE(:,E(2,2))=mdsdata('\atlas::dt100_003:fast:channel_011[$]',Tece);
-	   ECE(:,E(3,2))=mdsdata('\atlas::dt100_003:fast:channel_010[$]',Tece);
-	   ECE(:,E(4,2))=mdsdata('\atlas::dt100_003:fast:channel_009[$]',Tece);
-	   ECE(:,E(5,2))=mdsdata('\atlas::dt100_003:fast:channel_008[$]',Tece);
-	   ECE(:,E(6,2))=mdsdata('\atlas::dt100_003:fast:channel_007[$]',Tece);
-	   ECE(:,E(7,2))=mdsdata('\atlas::dt100_003:fast:channel_006[$]',Tece);
-	   ECE(:,E(8,2))=mdsdata('\atlas::dt100_003:fast:channel_005[$]',Tece);
-	   ECE(:,E(9,2))=mdsdata('\atlas::dt100_003:fast:channel_004[$]',Tece);
-	   ECE(:,E(10,2))=mdsdata('\atlas::dt100_003:fast:channel_003[$]',Tece);
-	   ECE(:,E(11,2))=mdsdata('\atlas::dt100_003:fast:channel_002[$]',Tece);
-	   ECE(:,E(12,2))=mdsdata('\atlas::dt100_003:fast:channel_001[$]',Tece);
-	   ECE(:,E(13,2))=mdsdata('\atlas::dt100_003:fast:channel_017[$]',Tece);
-	   ECE(:,E(14,2))=mdsdata('\atlas::dt100_003:fast:channel_018[$]',Tece);
-	   ECE(:,E(15,2))=mdsdata('\atlas::dt100_003:fast:channel_019[$]',Tece);
-	   ECE(:,E(16,2))=mdsdata('\atlas::dt100_003:fast:channel_020[$]',Tece);
-	   ECE(:,E(17,2))=mdsdata('\atlas::dt100_003:fast:channel_021[$]',Tece);
-	   ECE(:,E(18,2))=mdsdata('\atlas::dt100_003:fast:channel_022[$]',Tece);
-	   ECE(:,E(19,2))=mdsdata('\atlas::dt100_003:fast:channel_023[$]',Tece);
-	   ECE(:,E(20,2))=mdsdata('\atlas::dt100_003:fast:channel_024[$]',Tece);
-	   ECE(:,E(21,2))=mdsdata('\atlas::dt100_003:fast:channel_025[$]',Tece);
-	   ECE(:,E(22,2))=mdsdata('\atlas::dt100_003:fast:channel_026[$]',Tece);
-	   ECE(:,E(23,2))=mdsdata('\atlas::dt100_003:fast:channel_027[$]',Tece);
-	   ECE(:,E(24,2))=mdsdata('\atlas::dt100_003:fast:channel_028[$]',Tece);
-	   M=zeros(length(NN),24);
-	   M(:,E(1,2))=mdsdata('\atlas::dt100_003:fast:channel_012[$]',NN);
-	   M(:,E(2,2))=mdsdata('\atlas::dt100_003:fast:channel_011[$]',NN);
-	   M(:,E(3,2))=mdsdata('\atlas::dt100_003:fast:channel_010[$]',NN);
-	   M(:,E(4,2))=mdsdata('\atlas::dt100_003:fast:channel_009[$]',NN);
-	   M(:,E(5,2))=mdsdata('\atlas::dt100_003:fast:channel_008[$]',NN);
-	   M(:,E(6,2))=mdsdata('\atlas::dt100_003:fast:channel_007[$]',NN);
-	   M(:,E(7,2))=mdsdata('\atlas::dt100_003:fast:channel_006[$]',NN);
-	   M(:,E(8,2))=mdsdata('\atlas::dt100_003:fast:channel_005[$]',NN);
-	   M(:,E(9,2))=mdsdata('\atlas::dt100_003:fast:channel_004[$]',NN);
-	   M(:,E(10,2))=mdsdata('\atlas::dt100_003:fast:channel_003[$]',NN);
-	   M(:,E(11,2))=mdsdata('\atlas::dt100_003:fast:channel_002[$]',NN);
-	   M(:,E(12,2))=mdsdata('\atlas::dt100_003:fast:channel_001[$]',NN);
-	   M(:,E(13,2))=mdsdata('\atlas::dt100_003:fast:channel_017[$]',NN);
-	   M(:,E(14,2))=mdsdata('\atlas::dt100_003:fast:channel_018[$]',NN);
-	   M(:,E(15,2))=mdsdata('\atlas::dt100_003:fast:channel_019[$]',NN);
-	   M(:,E(16,2))=mdsdata('\atlas::dt100_003:fast:channel_020[$]',NN);
-	   M(:,E(17,2))=mdsdata('\atlas::dt100_003:fast:channel_021[$]',NN);
-	   M(:,E(18,2))=mdsdata('\atlas::dt100_003:fast:channel_022[$]',NN);
-	   M(:,E(19,2))=mdsdata('\atlas::dt100_003:fast:channel_023[$]',NN);
-	   M(:,E(20,2))=mdsdata('\atlas::dt100_003:fast:channel_024[$]',NN);
-	   M(:,E(21,2))=mdsdata('\atlas::dt100_003:fast:channel_025[$]',NN);
-	   M(:,E(22,2))=mdsdata('\atlas::dt100_003:fast:channel_026[$]',NN);
-	   M(:,E(23,2))=mdsdata('\atlas::dt100_003:fast:channel_027[$]',NN);
-	   M(:,E(24,2))=mdsdata('\atlas::dt100_003:fast:channel_028[$]',NN);
-	   mdsclose
-	   N=min(find(Tece>0-del&Tece<0+del));
-	   M=mean(M);
-	   ECE=ECE-repmat(M,length(Tece),1);
-
-	elseif T==10
-	   mdsopen('tcv_shot',shot)
-	   Tece=mdsdata('\atlas::dt100_003:fast:time');
-
-	   X=[1:SS:length(Tece)]';
-	   Tece=Tece(X);clear X
-
-	   ECE=zeros(length(Tece),24);
-	   ECE(:,E(1,2))=mdsdata('\atlas::dt100_003:fast:channel_012[$]',Tece);
-	   ECE(:,E(2,2))=mdsdata('\atlas::dt100_003:fast:channel_011[$]',Tece);
-	   ECE(:,E(3,2))=mdsdata('\atlas::dt100_003:fast:channel_010[$]',Tece);
-	   ECE(:,E(4,2))=mdsdata('\atlas::dt100_003:fast:channel_009[$]',Tece);
-	   ECE(:,E(5,2))=mdsdata('\atlas::dt100_003:fast:channel_008[$]',Tece);
-	   ECE(:,E(6,2))=mdsdata('\atlas::dt100_003:fast:channel_007[$]',Tece);
-	   ECE(:,E(7,2))=mdsdata('\atlas::dt100_003:fast:channel_006[$]',Tece);
-	   ECE(:,E(8,2))=mdsdata('\atlas::dt100_003:fast:channel_005[$]',Tece);
-	   ECE(:,E(9,2))=mdsdata('\atlas::dt100_003:fast:channel_004[$]',Tece);
-	   ECE(:,E(10,2))=mdsdata('\atlas::dt100_003:fast:channel_003[$]',Tece);
-	   ECE(:,E(11,2))=mdsdata('\atlas::dt100_003:fast:channel_002[$]',Tece);
-	   ECE(:,E(12,2))=mdsdata('\atlas::dt100_003:fast:channel_001[$]',Tece);
-	   ECE(:,E(13,2))=mdsdata('\atlas::dt100_003:fast:channel_017[$]',Tece);
-	   ECE(:,E(14,2))=mdsdata('\atlas::dt100_003:fast:channel_018[$]',Tece);
-	   ECE(:,E(15,2))=mdsdata('\atlas::dt100_003:fast:channel_019[$]',Tece);
-	   ECE(:,E(16,2))=mdsdata('\atlas::dt100_003:fast:channel_020[$]',Tece);
-	   ECE(:,E(17,2))=mdsdata('\atlas::dt100_003:fast:channel_021[$]',Tece);
-	   ECE(:,E(18,2))=mdsdata('\atlas::dt100_003:fast:channel_022[$]',Tece);
-	   ECE(:,E(19,2))=mdsdata('\atlas::dt100_003:fast:channel_023[$]',Tece);
-	   ECE(:,E(20,2))=mdsdata('\atlas::dt100_003:fast:channel_024[$]',Tece);
-	   ECE(:,E(21,2))=mdsdata('\atlas::dt100_003:fast:channel_025[$]',Tece);
-	   ECE(:,E(22,2))=mdsdata('\atlas::dt100_003:fast:channel_026[$]',Tece);
-	   ECE(:,E(23,2))=mdsdata('\atlas::dt100_003:fast:channel_027[$]',Tece);
-	   ECE(:,E(24,2))=mdsdata('\atlas::dt100_003:fast:channel_028[$]',Tece);
-	   mdsclose
-	   del=Tece(2)-Tece(1);
-	   N=min(find(Tece>0-del&Tece<0+del));
-	   M=mean(ECE([1:N],:));
-	   ECE=ECE-repmat(M,length(Tece),1);
-
-	elseif T~=10 | length(T)>2
-	   mdsopen('tcv_shot',shot)
-	   Tece=mdsdata('\atlas::dt100_003:fast:time');
-	   NN=Tece(1:max(find(Tece<0))); 
-	   Tece=mdsdata('dim_of(\atlas::dt100_003:fast:channel_012[$])',T);
-	   ECE=zeros(length(Tece),24);
-	   ECE(:,E(1,2))=mdsdata('\atlas::dt100_003:fast:channel_012[$]',T);
-	   ECE(:,E(2,2))=mdsdata('\atlas::dt100_003:fast:channel_011[$]',T);
-	   ECE(:,E(3,2))=mdsdata('\atlas::dt100_003:fast:channel_010[$]',T);
-	   ECE(:,E(4,2))=mdsdata('\atlas::dt100_003:fast:channel_009[$]',T);
-	   ECE(:,E(5,2))=mdsdata('\atlas::dt100_003:fast:channel_008[$]',T);
-	   ECE(:,E(6,2))=mdsdata('\atlas::dt100_003:fast:channel_007[$]',T);
-	   ECE(:,E(7,2))=mdsdata('\atlas::dt100_003:fast:channel_006[$]',T);
-	   ECE(:,E(8,2))=mdsdata('\atlas::dt100_003:fast:channel_005[$]',T);
-	   ECE(:,E(9,2))=mdsdata('\atlas::dt100_003:fast:channel_004[$]',T);
-	   ECE(:,E(10,2))=mdsdata('\atlas::dt100_003:fast:channel_003[$]',T);
-	   ECE(:,E(11,2))=mdsdata('\atlas::dt100_003:fast:channel_002[$]',T);
-	   ECE(:,E(12,2))=mdsdata('\atlas::dt100_003:fast:channel_001[$]',T);
-	   ECE(:,E(13,2))=mdsdata('\atlas::dt100_003:fast:channel_017[$]',T);
-	   ECE(:,E(14,2))=mdsdata('\atlas::dt100_003:fast:channel_018[$]',T);
-	   ECE(:,E(15,2))=mdsdata('\atlas::dt100_003:fast:channel_019[$]',T);
-	   ECE(:,E(16,2))=mdsdata('\atlas::dt100_003:fast:channel_020[$]',T);
-	   ECE(:,E(17,2))=mdsdata('\atlas::dt100_003:fast:channel_021[$]',T);
-	   ECE(:,E(18,2))=mdsdata('\atlas::dt100_003:fast:channel_022[$]',T);
-	   ECE(:,E(19,2))=mdsdata('\atlas::dt100_003:fast:channel_023[$]',T);
-	   ECE(:,E(20,2))=mdsdata('\atlas::dt100_003:fast:channel_024[$]',T);
-	   ECE(:,E(21,2))=mdsdata('\atlas::dt100_003:fast:channel_025[$]',T);
-	   ECE(:,E(22,2))=mdsdata('\atlas::dt100_003:fast:channel_026[$]',T);
-	   ECE(:,E(23,2))=mdsdata('\atlas::dt100_003:fast:channel_027[$]',T);
-	   ECE(:,E(24,2))=mdsdata('\atlas::dt100_003:fast:channel_028[$]',T);
-	   M=zeros(length(NN),24);
-	   M(:,E(1,2))=mdsdata('\atlas::dt100_003:fast:channel_012[$]',NN);
-	   M(:,E(2,2))=mdsdata('\atlas::dt100_003:fast:channel_011[$]',NN);
-	   M(:,E(3,2))=mdsdata('\atlas::dt100_003:fast:channel_010[$]',NN);
-	   M(:,E(4,2))=mdsdata('\atlas::dt100_003:fast:channel_009[$]',NN);
-	   M(:,E(5,2))=mdsdata('\atlas::dt100_003:fast:channel_008[$]',NN);
-	   M(:,E(6,2))=mdsdata('\atlas::dt100_003:fast:channel_007[$]',NN);
-	   M(:,E(7,2))=mdsdata('\atlas::dt100_003:fast:channel_006[$]',NN);
-	   M(:,E(8,2))=mdsdata('\atlas::dt100_003:fast:channel_005[$]',NN);
-	   M(:,E(9,2))=mdsdata('\atlas::dt100_003:fast:channel_004[$]',NN);
-	   M(:,E(10,2))=mdsdata('\atlas::dt100_003:fast:channel_003[$]',NN);
-	   M(:,E(11,2))=mdsdata('\atlas::dt100_003:fast:channel_002[$]',NN);
-	   M(:,E(12,2))=mdsdata('\atlas::dt100_003:fast:channel_001[$]',NN);
-	   M(:,E(13,2))=mdsdata('\atlas::dt100_003:fast:channel_017[$]',NN);
-	   M(:,E(14,2))=mdsdata('\atlas::dt100_003:fast:channel_018[$]',NN);
-	   M(:,E(15,2))=mdsdata('\atlas::dt100_003:fast:channel_019[$]',NN);
-	   M(:,E(16,2))=mdsdata('\atlas::dt100_003:fast:channel_020[$]',NN);
-	   M(:,E(17,2))=mdsdata('\atlas::dt100_003:fast:channel_021[$]',NN);
-	   M(:,E(18,2))=mdsdata('\atlas::dt100_003:fast:channel_022[$]',NN);
-	   M(:,E(19,2))=mdsdata('\atlas::dt100_003:fast:channel_023[$]',NN);
-	   M(:,E(20,2))=mdsdata('\atlas::dt100_003:fast:channel_024[$]',NN);
-	   M(:,E(21,2))=mdsdata('\atlas::dt100_003:fast:channel_025[$]',NN);
-	   M(:,E(22,2))=mdsdata('\atlas::dt100_003:fast:channel_026[$]',NN);
-	   M(:,E(23,2))=mdsdata('\atlas::dt100_003:fast:channel_027[$]',NN);
-	   M(:,E(24,2))=mdsdata('\atlas::dt100_003:fast:channel_028[$]',NN);
-	   mdsclose
-	   M=mean(M);
-	   ECE=ECE-repmat(M,length(Tece),1);
-	% SS=0;
-	end
-	%------------------------------------------------------------------------------
-	%	Correction des mauvais cannaux : met les cannaux non-existant a NaN
-	%------------------------------------------------------------------------------
-	[N]=ece_bad_channels(shot);
-	disp(['Pour le shot # ',num2str(shot),' les cannaux ECE qui ne vont pas sont: ',num2str(N)])
-	%N=input('Introduire les cannaux qui ne vont pas')
-	[t,i1,i2,i3,i4,i5,i6]=common_ece(E(N,2),[1:24]);
-	ECE=ECE(:,i5);Fcentral=Fcentral(i5);
-
-
-
-end
-
diff --git a/crpptbx_new/TCV/private/ece_rho.m b/crpptbx_new/TCV/private/ece_rho.m
deleted file mode 100755
index 4ada961ff60d309f4ec5362795ab0081d8ed73ce..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/ece_rho.m
+++ /dev/null
@@ -1,129 +0,0 @@
-function [RHO,R,Z,tpsi,Fcentral]=ece_rho(shot,t)
-
-%	[RHO,R,Z,tbtot,Fcentral]=ece_rho(shot,t)
-%
-%	Fonction calculant les rayons normalise rho pour l'ECE
-%	pour tous les temps tpsi de psitbx appartenant a t=[a b]
-%	Si t=10 => tous les temps seront recherche.
-%	Pour le calcul de Btot, on utilise une routine de O.Sauter
-%	intitulee BandBres_allt.m
-%
-%	rho = rayon normalise pour la ligne de visee de l'ECE
-%	R   = Grand rayon du tore correspondant a RHO
-%		
-
-mdsopen('tcv_shot',shot)
-L=mdsdata('GETNCI("\\results::ece:rho","length")');
-LL=mdsdata('GETNCI("\\results::psi_axis:foo","length")');
-mdsclose
-if LL==0
- disp('----------------------------------')
- disp('\results::psi_axis not calculated')
- disp('----------------------------------')
- return 
-end
-
-[W]=writeece;
-if L==0 | L==28 |W==1
-	disp(' La trace \results::ece:rho est vide ');
-
-	[K,L]=ece_conf(shot,1);
-	if L==1
-	 	Z=0;
-	elseif L==2
-	 	Z=0.21;
-	end
-	[Fcentral,Rcentral,No]=ece_mode(K,1.45); 
-	tt=[0:0.05:3];
-	psi=psitbxtcv(shot,tt,'01');
-	tpsi=psi.psitbxfun.t;
-	if length(t)==2
-		 if min(tpsi)>t(2)
-			  disp('-------------------------------')
-			  disp('No Psitbx for these times')
-			  disp('-------------------------------')
-			  return
-		 end
-	end
-	
-	if length(tpsi)==0
-		 disp('psitbxtcv(shot,tt,''01'') est vide');
-		 return
-	end
-	
-	[Rbtot,Zbtot,BTOT,ttt]=bandbres_allt(shot,tpsi,Fcentral*1e9,2,[]);
-	
-	%-----------------------------------------------------------------
-	%	definition de la ligne de visee en r,z,phi de longueur 50
-	j=50;
-	r=linspace(min(Rcentral)*0.9,max(Rcentral)*1.1,j);
-	rzphiline={r,Z,NaN};
-	GridEceCyl=psitbxgrid('Cylindrical','Grid',rzphiline);%clear R Z rzphiline K L No
-	%-----------------------------------------------------------------
-	%	definition de la grille de psi en rho,theta,phi
-	%psi=psitbxtcv(shot,tbtot,'01');
-	%tpsi=psi.psitbxfun.t; 
-	%GridFluxPsi=psitbxgrid('Flux','Grid','Default',psi);  
-	GridBtotCyl=psitbxgrid('Cylindrical','Grid',{Rbtot,Zbtot,NaN});
-	%-----------------------------------------------------------------
-	%	definition de la ligne de visee en rho,theta,phi
-	GridEcePsi=psitbxg2g(GridEceCyl,'Flux',psi);  
-	%-----------------------------------------------------------------
-	%	Calcul de Btot sur la grille GridFluxPsi
-	%BTOT=reshape(BTOT,41,129,length(tbtot));
-	FTOT=2*1.6022e-19*BTOT/9.1094e-31/2/pi/1e9;clear BTOT Rbtot Zbtot
-	FtotFun=psitbxfun(FTOT,GridBtotCyl,tpsi);clear FTOT
-	%-----------------------------------------------------------------
-	%	Calcul de Ftot sur la grille GridEcePsi
-	FtotLineEcePsi=psitbxf2f(FtotFun,GridEceCyl);   
-	FtotLineEce=FtotLineEcePsi.x; 
-	FtotLineEce(find(isnan(FtotLineEce)))=0;
-	T=repmat(tpsi,1,j)';r=repmat(r,length(tpsi),1)';
-	rho=GridEcePsi.x{1};
-	%error('err')
-	for i=1:length(tpsi)
-	 	jj=find(FtotLineEce(:,i)~=0);
-		R(:,i)=interp1(FtotLineEce(jj,i),r(jj,i),Fcentral);
-		RHO(:,i)=interp1(r(jj,i),rho(jj,1,i),R(:,i));
-        end
-        Z=Z*ones(size(R));
-	if W==2
-		
-       	else
-	       mdsopen('results',shot)   
-	       mdsput('\results::ece:rho',RHO,'f');
-	       mdsput('\results::ece:r',R,'f');
-	       mdsput('\results::ece:z',Z,'f');
-	       mdsput('\results::ece:times',tpsi,'f');
-	       mdsclose
-	       disp('On a remplis les matrices \results::ece:rho,r,z,times')
-	       disp(['Size(RHO) = ',num2str(size(RHO))])
-	end
-       
-else
-      disp('On vas chercher les traces \results::ece:rho,z,r,times dans MDS')
-      mdsopen('results',shot)   
-      RHO=mdsdata('\results::ece:rho');
-      R=mdsdata('\results::ece:r');
-      Z=mdsdata('\results::ece:z');
-      tbtot=mdsdata('\results::ece:times');
-      mdsclose
-      [K,L]=ece_conf(shot,1);
-      [Fcentral, Rcentral,No]=ece_mode(K,1.5);
-      Z=mean(mean(Z))*ones(size(R));
-      tpsi=tbtot;
-end
-
-if t~=10
-	NT=find(tpsi>t(1)-0.005  & tpsi <t(2)+0.005);
-	if isempty(NT)
-		NT=max(find(tpsi<t(2)));
-		disp('Nous n''avons aucun points de T_psi compris dans le vecteur t')
-		disp('Nous avons pris le temps le plus proche')
-	elseif NT(1)==1 & length(NT)~=length(tpsi)
-		NT=[1:max(NT)];
-	elseif length(NT)~=length(tpsi)
-		NT=[min(NT):max(NT)];
-	end
-	RHO=RHO(:,NT);R=R(:,NT);tpsi=tpsi(NT);Z=Z(:,NT);
-end
diff --git a/crpptbx_new/TCV/private/get_xtomo_gains.m b/crpptbx_new/TCV/private/get_xtomo_gains.m
deleted file mode 100755
index c9c2a2309d08a94368316d061b3fca346e6307e0..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/get_xtomo_gains.m
+++ /dev/null
@@ -1,87 +0,0 @@
-function gains = get_xtomo_gains(shot);
-
-%     [gains] = get_xtomo_gains(shot);
-%
-%  emerged from MJD's  XTOMOSEQ/XTOMO_LOAD_GAINS 
-%  purpose: load gains of a certain shot nr. from the database
-%  usage:   'gains' is a row vector containing the gains of 
-%           [array_001(det.1..020), array_002, det. 001...020 etc]
-%
-%
-% This routine works on Matlab5.
-% Original routine for Matlab4 by Anton Mathias.  
-%
-% Last update: 25-08-1999
-%
-%-------------MAC:[FURNO.MATLAB5.XTOMO]----------------------------------
-
-
-
-if nargin~=1
-   shot=0;
-end
-
-
-MAX_DET = 20; 
-
-if isempty(mdsopen('vsystem',shot));
-	  mdsclose
-   info = sprintf('Shot #%.0f not found',shot);
-   return
-end
-
-if shot<=6768
-	% narray =2 for the prototype system only
-	narray=2;
-else
-	narray=10;
-end
-
-
-temp = isempty(mdsdata('_v=\diag2db_i'));
-if temp
-     info = sprintf('Vista database not available for shot #%.0f',shot);
-     mdsclose;
-     return
-end
-
-mdsdata(['_p="_"//translate(text(build_range(1,' int2str(MAX_DET) '),3),"0"," ");']);
-
-G=[];
-info=[];
-for sig=1:narray
-     G=[G, mdsdata(['_s="XTOMO_AMP:' sprintf('%03.0f',sig) '"//_p;_v[_s]'])'];
-end
-
-if isempty(info)
-  info = sprintf('Gains loaded from shot #%.0f',shot);
-else
-  info(1) = '';
-end
-
-disp(info)
-        	
-% G contains log10 of the real gains, so...
-
-gains=(10*ones(size(G))).^G;
-
-% This is the modification after the TCV HSUT down in 1998
-% due to the incorrect insatllation of the camera #2
-if shot>13884  
-	permute=20:-1:1;
-	dummy=gains(21:40);
-	gains(21:40)=dummy(permute);
-end
-
-
-mdsclose
-return
-
-permute=[2,1,4,3,6,5,8,7,10,9,12,11,14,13,16,15,18,17,20,19];
-dummy=gains(181:200);
-gains(181:200)=dummy(permute);
-
-
-	
-
-
diff --git a/crpptbx_new/TCV/private/tcv_vesc1.mat b/crpptbx_new/TCV/private/tcv_vesc1.mat
deleted file mode 100644
index 85f9d33a1e61bdb183f766825358e927713cb698..0000000000000000000000000000000000000000
Binary files a/crpptbx_new/TCV/private/tcv_vesc1.mat and /dev/null differ
diff --git a/crpptbx_new/TCV/private/thom_rho.m b/crpptbx_new/TCV/private/thom_rho.m
deleted file mode 100755
index e866b767182cc102d706499c53401a50b2741445..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/thom_rho.m
+++ /dev/null
@@ -1,255 +0,0 @@
-function [TEthom,NEthom,TEbar,NEbar,Tthom,RHOthom]=thom_rho(shot,mode)
-
-%	[TEthom,NEthom,TEbar,NEbar,Tthom,RHOthom]=thom_rho(shot,mode);
-% 	 	
-%	Fonction calculant le profil de Te et ne provenant de Thomson
-%	en fonction de rho(psi)
-%	mode =	1 => profil fitte \results::th_prof_te
-%		2 => profil brut 2 demi-profil
-%		3 => profil brut 1 demi-profil superieur
-%		4 => profil brut 1 demi-profil inferieur
-%		5 => profil proffit local_time
-%		6 => profil proffit avg_time
-%		7 => profil brut corrige selon z
-%		8 => profil TS_FITDATA
-%		9 => profil TS_RAWDATA
-
-%
-
-if mode ==1
-	mdsopen('tcv_shot',shot)
-	L=mdsdata('GETNCI("\\results::th_prof_te","length")');
-	LL=mdsdata('GETNCI("\\results::thomson:te","length")');
-	if L==0
-	  mdsclose
-	  disp('No Thomson \results::th_prof_te node acquisition')
-	  if LL~=0
-	    disp('but Thomson results::thomson:te node exist!')
-	  end
-	  return 
-	end
-	TEthom=mdsdata('\results::th_prof_te');
-	NEthom=mdsdata('\results::th_prof_ne');
-	Tt=mdsdata('dim_of(\results::th_prof_te)');
-	Tn=mdsdata('dim_of(\results::th_prof_ne)');
-	TEbar=mdsdata('\results::th_prof_te:std_error');
-	NEbar=mdsdata('\results::th_prof_ne:std_error');
-	mdsclose
-	if length(Tt)~=length(Tn)
-	 [t,i1,i2]=common(Tt,Tn);
-	 Tthom=t;TEthom=TEthom(i1,:);NEthom=NEthom(i1,:);
-	 TEbar=TEbar(i1,:);NEbar=NEbar(i1,:);
-	else
-	 Tthom=Tn;
-	end
-	RHOthom=linspace(0,1,41);
-	RHOthom=repmat(RHOthom,length(Tthom),1);
-
-elseif mode >=2 & mode <=4
-
-	mdsopen('tcv_shot',shot)
-	L=mdsdata('GETNCI("\\results::thomson:te","length")');
-	if L==0
-	  mdsclose
-	  disp('No Thomson acquisition')
-	  return 
-	end
-	TEthom=mdsdata('\results::thomson:te');
-	if isstr(TEthom)==1
-	 disp('---------------------------------------')
-	 disp('No data with Thomson')
-	 disp('---------------------------------------')
-	 return
-	end	
-	TEbar=mdsdata('\results::thomson:te:error_bar');
-	NEthom=mdsdata('\results::thomson:ne');
-	NEbar=mdsdata('\results::thomson:ne:error_bar');
-	Tthom=mdsdata('\results::thomson:times');
-	Zthom=mdsdata('\diagz::thomson_set_up:vertical_pos')';
-	Rthom=mdsdata('\diagz::thomson_set_up:radial_pos')'; 
-	Psithom=mdsdata('\results::thomson:psiscatvol');   
-	Psithommax=mdsdata('\results::thomson:psi_max'); 
-	mdsclose
-	Ste=size(TEthom);Spsi=size(Psithom);
-	if Ste(2)~=Spsi(2)
-	 	 disp('ATTENTION: on doit corriger des longueurs car')
-		 disp('TEthom ~= Psithom')
-		 ms=min([Ste(2) Spsi(2)]);
-		 TEbar=TEbar(:,1:ms);NEbar=NEbar(:,1:ms);
-		 TEthom=TEthom(:,1:ms);NEthom=NEthom(:,1:ms);
-		 Rthom=Rthom(1:ms);
-		 Psithom=Psithom(:,1:ms);
-	end
-	
-	LTE=length(find(TEthom==-1));LNE=length(find(NEthom==-1));
-	if LTE>0 | LNE >0
-	  disp(['ATTENTION ',num2str(LTE),' points de mdsdata(''\results::thomson:te'') valent -1']) 
-	  disp(['ATTENTION ',num2str(LNE),' points de mdsdata(''\results::thomson:ne'') valent -1']) 
-	end
-	J=0;
-	if isempty(NEthom)
-	  disp('----------------------')
-	  disp('No Thomson acquisition')
-	  disp('----------------------')
-	  J=1;
-	end
-	if isstr(Psithommax)
-	  disp('----------------------')
-	  disp(Psithommax) 
-	  disp('----------------------')
-	  J=1;
-	end
-	if J==1
-	  return
-	end
-
-	RHOTHOM=sqrt(1-Psithom./repmat(Psithommax,1,length(Zthom)));
-	RHOTHOM(isnan(RHOTHOM))=0; 
-
-	if mode ==2
-	  [RHO,I] = sort(RHOTHOM');
-	  NN=size(RHO);
-	  TEthom=TEthom';TEbar=TEbar';
-	  NEthom=NEthom';NEbar=NEbar';
-	  for j = 1:NN(2)
-	    TE(:,j) = TEthom(I(:,j),j); NE(:,j) = NEthom(I(:,j),j);
-	    TE_bar(:,j) = TEbar(I(:,j),j); NE_bar(:,j) = NEbar(I(:,j),j);
-	  end
-	  TEthom=TE';TEbar=TE_bar';
-	  NEthom=NE';NEbar=NE_bar';
-	  RHOthom=RHO';
-	elseif mode==3
-	  nn=round(mean(mod(find(diff(sign(diff(RHOTHOM')))>0),length(Rthom)-2)))+1;
-	  RHOthom=RHOTHOM(:,[1:nn]);NEthom=NEthom(:,[1:nn]);TEthom=TEthom(:,[1:nn]);
-	  NEbar=NEbar(:,[1:nn]);TEbar=TEbar(:,[1:nn]);
-	  Zthom=Zthom([1:nn]);
-	elseif mode==4
-	  nn=round(mean(mod(find(diff(sign(diff(RHOTHOM')))>0),length(Rthom)-2)))+1;
-	  L=length(RHOTHOM(1,:));
-	  RHOthom=RHOTHOM(:,[nn:L]);NEthom=NEthom(:,[nn:L]);TEthom=TEthom(:,[nn:L]);
-	  NEbar=NEbar(:,[nn:L]);TEbar=TEbar(:,[nn:L]);
-	  Zthom=Zthom([nn:L]);
-	end
-
-elseif mode==5
-	mdsopen('tcv_shot',shot)
-	L=mdsdata('GETNCI("\\results::proffit.local_time:teft","length")');
-	LL=mdsdata('GETNCI("\\results::thomson:te","length")');
-
-	if L==0
-		  mdsclose
-		  disp('No Thomson \results::proffit.local_time:teft node acquisition')
-		  if LL~=0
-	    		disp('but Thomson results::thomson:te node exist!')
-		  end
-		  return 
-	end
-	TEthom=mdsdata('\results::proffit.local_time:teft')';
-	NEthom=mdsdata('\results::proffit.local_time:neft')';
-	Tthom=mdsdata('dim_of(\results::proffit.local_time:teft,1)');
-	RHOthom=mdsdata('dim_of(\results::proffit.local_time:teft,0)')';
-	TEbar=mdsdata('\results::proffit.local_time:teft_std')';
-	NEbar=mdsdata('\results::proffit.local_time:neft_std')';
-	mdsclose
-	RHOthom=repmat(RHOthom,length(Tthom),1);
-elseif mode==6
-	mdsopen('tcv_shot',shot)
-	L=mdsdata('GETNCI("\\results::proffit.avg_time:teft","length")');
-	LL=mdsdata('GETNCI("\\results::thomson:te","length")');
-	if L==0
-	  mdsclose
-	  disp('No Thomson \results::th_prof_te node acquisition')
-	  if LL~=0
-	    disp('but Thomson results::thomson:te node exist!')
-	  end
-	  return 
-	end
-	TEthom=mdsdata('\results::proffit.avg_time:teft')';
-	NEthom=mdsdata('\results::proffit.avg_time:neft')';	
-	Tthom=mdsdata('dim_of(\results::proffit.avg_time:teft,1)');
-	RHOthom=mdsdata('dim_of(\results::proffit.avg_time:teft,0)')';
-	TEbar=mdsdata('\results::proffit.avg_time:teft_std')';
-	NEbar=mdsdata('\results::proffit.avg_time:neft_std')';
-	mdsclose
-	RHOthom=repmat(RHOthom,length(Tthom),1);
-elseif mode==7
-        del=0.03;
-	J=0;
-	mdsopen('tcv_shot',shot)
-	L=mdsdata('GETNCI("\\results::psi_axis:foo","length")');
-	if L==0
-	  disp('----------------------------------')
-	  disp('\results::psi_axis not calculated')
-	  disp('----------------------------------')
-	  mdsclose
-	  return 
-	end
-	TEthom=mdsdata('\results::thomson:te');
-	TEbar=mdsdata('\results::thomson:te:error_bar');
-	NEthom=mdsdata('\results::thomson:ne');
-	NEbar=mdsdata('\results::thomson:ne:error_bar');
-	Tthom=mdsdata('\results::thomson:times');
-	Zthom=mdsdata('\diagz::thomson_set_up:vertical_pos')'+del;
-	Rthom=mdsdata('\diagz::thomson_set_up:radial_pos')'; 
-	PSIMAG = mdsdata('\results::psi_axis');
-	Tpsimag=mdsdata('dim_of(\results::psi_axis)');
-	mdsclose
-	PSI=psitbxtcv(shot);
-	if  exist('PSI')
-	  X=PSI.psitbxfun.x;
-	  T=PSI.psitbxfun.t;
-	  RG=PSI.psitbxfun.grid.x{1}';
-	  ZG=PSI.psitbxfun.grid.x{2}';
-	else
-	  disp('No psitbxtcv ')
-	  return
-	end
-	[t,i1,i2]=common(T,Tthom,0.005);        
-	T=T(i1);X=X(:,:,i1);
-	TEbar=TEbar(i2,:);NEbar=NEbar(i2,:);NEthom=NEthom(i2,:);TEthom=TEthom(i2,:);
-	[t,i1,i2]=common(Tthom(i2),Tpsimag,0.005); 
-	PSIMAG=PSIMAG(i2);
-	%-------------------------------------------------------------
-	%	Psi...= profil de psi pour tous les temps T
-	%-------------------------------------------------------------
-	PSIMAG1=repmat(PSIMAG,1,length(ZG));
-	Psi=X(min(find(RG>=mean(Rthom))),:,:);
-	Psi=reshape(Psi,length(ZG),length(T));
-	rho=sqrt(1-(Psi)./PSIMAG1');
-	[RHOthom]=griddata(repmat(ZG,1,length(T)),repmat(T,length(ZG),1),rho,...
-			repmat(Zthom',1,length(T)),repmat(T,length(Zthom),1));
-	RHOthom=RHOthom';Tthom=T';
-elseif mode==8
-	mdsopen('tcv_shot',shot)
-	ncode='TS_FITDATA("ne","psi",1,1)';
-	tcode='TS_FITDATA("te","psi",1,1)';
-	NEthom=mdsdata(ncode);
-	TEthom=mdsdata(tcode);
-	Tthom=mdsdata(['dim_of(' tcode ',0)']);
-	RHOthom=mdsdata(['dim_of(' tcode ',1)']);
-	mdsclose
-	elseif mode==9
-	mdsopen('tcv_shot',shot)
-	ncode='TS_RAWDATA("ne","psi",1,1)';
-	tcode='TS_RAWDATA("te","psi",1,1)';
-	NEthom=mdsdata(ncode);
-	TEthom=mdsdata(tcode);
-	Tthom=mdsdata(['dim_of(' tcode ',0)']);
-	RHOthom=mdsdata(['dim_of(' tcode ',1)']);
-	mdsclose
-end
-
-[A,B]=size(TEthom);
-
-if mean(TEthom)==-1
-	disp('---------------------------------------------')
-	disp('Toutes les valeurs de Thomson valent -1')
-	disp('---------------------------------------------')
-elseif A==0|B==0
-	disp('---------------------------------------------')
-	disp('No Thomson acquisition') 
-	disp('---------------------------------------------')
-end
-
-
-
diff --git a/crpptbx_new/TCV/private/writeece.m b/crpptbx_new/TCV/private/writeece.m
deleted file mode 100755
index e8f3efea993557a3f8d3c02307e395b9290171a8..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/private/writeece.m
+++ /dev/null
@@ -1,8 +0,0 @@
-function [W]=writeece
-
-%Si W=2 Si MDS est rempli, on va chercher dans MDS sinon
-%	on calcule tout ce qui faut sans ecrire dans MDS
-%Si W=1 on force a tout recalculer et on ecrit dans MDS
-%Si W=0 Si MDS est rempli, on va chercher dans MDS sinon
-%	on calcule tout ce qui faut et on ecrit dans MDS
-W=0;
diff --git a/crpptbx_new/TCV/tcv_requests_mapping.m b/crpptbx_new/TCV/tcv_requests_mapping.m
deleted file mode 100644
index 94fe43f84ec911e3a1ac24f2eb73dcf8a9b20ad6..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/tcv_requests_mapping.m
+++ /dev/null
@@ -1,275 +0,0 @@
-function mapping = tcv_requests_mapping(data_request)
-%
-% Information pre-defined for gdat_tcv, you can add cases here to match official cases in gdat_tcv, allowing backward compatibility
-%
-
-% Defaults
-mapping = struct(...
-    'label', '', ...
-    'method', '', ...
-    'expression','', ...
-    'timedim', -1, ...     % dim which is the time is the database, to copy in .t, the other dims are in .x (-1 means last dimension)
-    'gdat_timedim',[], ...  % if need to reshape data and dim orders to have timedim as gdat_timedim (shifting time to gdat_timedim)
-    'min', -inf, ...
-    'max', inf);
-% Note that gdat_timedim is set to timedim at end of this function if empty
-% gdat_timedim should have effective index of the time dimension in gdat
-
-if ~exist('data_request') || isempty(data_request)
-  return
-end
-
-% default label: data_request keyword itself
-mapping.label = data_request;
-
-% for TCV, following choices are set so far:
-% method = 'tdi' and then expression is the string within tdi (usual case when there is a direct link to an existing signal)
-%                with tdi, if expression cell array, call tdi(cell{1},cell{2},...)
-% method = 'tdiliuqe': same as tdi but adds "_2" or "_3" if 'liuqe',2 or 3 is asked for in options
-% method = 'expression', then expression is executed and it should provide the structure gdat_tmp, which fields are copied to gdat_data
-% method = 'switchcase', then there will be a specific case within gdat_tcv (usual case when not directly a signal)
-%
-% label is used for plotting
-switch lower(data_request)
- case 'a_minor'
-  mapping.timedim = 1;
-  mapping.label = 'a(LCFS)';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'b0'
-  mapping.timedim = 1;
-  mapping.label = 'B_0';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'beta'
-  mapping.timedim = 1;
-  mapping.label = '\beta';
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::beta_tor';
- case 'betan'
-  mapping.timedim = 1;
-  mapping.label = '\beta_N';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'betap'
-  mapping.timedim = 1;
-  mapping.label = '\beta_p';
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::beta_pol';
- case 'cxrs'
-  mapping.timedim = 2;
-  mapping.label = 'cxrs';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'delta'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::delta_edge';
-  % mapping.method = 'expression';
-  % mapping.expression = ['tdi(''\results::q_psi'');']; % for tests
- case 'delta_bottom'
-  mapping.timedim = 1;
-  mapping.label = 'delta\_bottom';
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::delta_ed_bot';
- case 'delta_top'
-  mapping.timedim = 1;
-  mapping.label = 'delta\_top';
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::delta_ed_top';
- case 'ece'
-  mapping.timedim = 2;
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'eqdsk'
-  mapping.timedim = 0;
-  mapping.method = 'switchcase'; % could use function make_eqdsk directly?
-  mapping.expression = '';
- case 'halpha'
-  mapping.timedim = 1;
-  mapping.label = 'Halpha';
-  mapping.method = 'tdi';
-  mapping.expression = '\base::pd:pd_011';
- case 'ioh'
-  mapping.timedim = 1;
-  mapping.label = 'I ohmic transformer';
-  mapping.method = 'tdi';
-  mapping.expression = [{'\magnetics::ipol[*,$1]'} {'OH_001'}];
- case 'ip'
-  mapping.timedim = 1;
-  mapping.label = 'Plasma current';
-  mapping.method = 'tdi';
-  mapping.expression = '\magnetics::iplasma:trapeze';
- case 'kappa'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::kappa_edge';
- case 'mhd'
-  mapping.timedim = 1;
-  mapping.label = 'n=1,2, etc';
-  mapping.method = 'switchcase';
-  mapping.expression = '';
- case 'ne'
-  mapping.timedim = 2;
-  mapping.method = 'switchcase';
- case 'neint'
-  mapping.timedim = 1;
-  mapping.label = 'line integrated el. density';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::fir:lin_int_dens';
- case 'nel'
-  mapping.timedim = 1;
-  mapping.label = 'line-averaged el. density';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::fir:n_average';
- case 'ne_rho'
-  mapping.timedim = 2;
-  mapping.label = 'ne';
-  mapping.method = 'switchcase';
- case 'neft'
-  mapping.timedim = 2;
-  mapping.label = 'ne';
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=''ne_rho''; ' ...
-                    'params_eff.fit=1;params_eff.fit_type=''avg'';gdat_tmp=gdat_tcv([],params_eff);'];
- case 'nete_rho'
-  mapping.timedim = 2;
-  mapping.label = 'ne and Te';
-  mapping.method = 'switchcase';
- case 'ni'
-  mapping.timedim = 2;
-  mapping.method = 'switchcase'; % especially since might have option fit, etc
- case 'powers'
-  mapping.timedim = 1;
-  mapping.label = 'various powers';
-  mapping.method = 'switchcase';
- case 'psi_axis'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::psi_axis';
- case 'psi_edge'
-  mapping.timedim = 1;
-  mapping.method = 'switchcase'; % is set to zero, so not in tree nodes
-  mapping.label = 'psi\_edge';
- case 'q0'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::q_zero';
- case 'q95'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::q_95';
- case 'qedge'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::q_edge';
- case 'q_rho'
-  mapping.timedim = 2;
-  mapping.label = 'q';
-  mapping.method = 'switchcase';
- case 'r_contour'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::r_contour';
- case 'rgeom'
-  mapping.timedim = 1;
-  mapping.label = 'Rgeom';
-  mapping.method = 'switchcase';
- case 'rhotor_edge'
-  mapping.timedim = 1;
-  mapping.label = 'rhotor\_edge=sqrt(Phi/pi/B0)';
-  mapping.method = 'switchcase'; % from conf if exist otherwise computes it
- case 'rhotor'
-  mapping.timedim = 2;
-  mapping.label = 'rhotor\_norm';
-  mapping.method = 'switchcase'; % from conf if exist otherwise computes it
- case 'rhovol'
-  mapping.timedim = 2;
-  mapping.label = 'rhovol\_norm';
-  mapping.method = 'switchcase'; % from conf if exist otherwise computes it
- case 'rmag'
-  mapping.timedim = 1;
-  mapping.label = 'R\_magaxis';
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::r_axis';
- case 'sxr'
-  mapping.timedim = 2;
-  mapping.method = 'switchcase';
- case 'te'
-  mapping.timedim = 2;
-  mapping.label = 'Te';
-  mapping.method = 'switchcase';
- case 'te_rho'
-  mapping.timedim = 2;
-  mapping.label = 'Te';
-  mapping.method = 'switchcase';
- case 'teft'
-  mapping.timedim = 2;
-  mapping.label = 'ne';
-  mapping.method = 'expression';
-  mapping.expression = ['params_eff = gdat_data.gdat_params;params_eff.data_request=''te_rho''; ' ...
-                    'params_eff.fit=1;params_eff.fit_type=''avg'';gdat_tmp=gdat_tcv([],params_eff);'];
- case 'ti'
-  mapping.timedim = 2;
-  mapping.label = 'Ti';
-  mapping.method = 'switchcase';
- case 'transp'
-  mapping.label = 'transp output';
-  mapping.method = 'switchcase';
- case 'vloop'
-  mapping.timedim = 1;
-  mapping.label = 'Vloop';
-  mapping.method = 'tdi';
-  mapping.expression = [{'\magnetics::vloop[*,$1]'} {'001'}];
- case 'volume'
-  mapping.timedim = 1;
-  mapping.label = 'Volume\_LCFS';
-  mapping.method = 'switchcase';
- case 'volume_rho'
-  mapping.timedim = 2;
-  mapping.label = 'Volume(\rho)';
-  mapping.method = 'switchcase';
-  % mapping.expression = '\results::psitbx:vol'; (if exists for liuqe2 and 3 as well)
- case 'z_contour'
-  mapping.timedim = 1;
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::z_contour';
- case 'zeff'
-  mapping.timedim = 1;
-  mapping.label = 'zeff from Ip-Ibs';
-  mapping.method = 'tdi';
-  mapping.expression = '\results::ibs:z_eff';
- case 'zgeom'
-  mapping.timedim = 1;
-  mapping.label = 'Zgeom';
-  mapping.method = 'switchcase';
- case 'zmag'
-  mapping.timedim = 1;
-  mapping.label = 'Zmagaxis';
-  mapping.method = 'tdiliuqe';
-  mapping.expression = '\results::z_axis';
-  % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-  % extra TCV cases (not necessarily in official data_request name list)
-  % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-  %
- case {'profnerho','profterho'}
-  mapping.timedim = 1;
-  mapping.label = data_request;
-  mapping.method = 'switchcase';
-  mapping.expression = '';
-  
-% $$$  case ''
-% $$$   mapping.timedim = 1;
-% $$$   mapping.label = data_request;
-% $$$   mapping.method = 'tdi';
-% $$$   mapping.expression = '';
- otherwise
-  mapping.label = data_request;
-  mapping.method = 'tdi'; % assume a full tracename is given, so just try with tdi (could check there are some ":", etc...)
-  mapping.expression = data_request;
-  
-end
-
-if isempty(mapping.gdat_timedim)
-  mapping.gdat_timedim = mapping.timedim;
-end
diff --git a/crpptbx_new/TCV/xtomo_geometry.m b/crpptbx_new/TCV/xtomo_geometry.m
deleted file mode 100644
index a809b9e65cca29d8df8eff407eaac96d7b7ebc4c..0000000000000000000000000000000000000000
--- a/crpptbx_new/TCV/xtomo_geometry.m
+++ /dev/null
@@ -1,402 +0,0 @@
-function [fans,vangle,xchord,ychord,aomega,angfact]=xtomo_geometry(i_detec,fans)
-
-% ----[anton.public]
-%
-% function 
-%
-% [fans,vangle,xchord,ychord,aomega,angfact]=xtomo_geometry(i_detec,fans);
-% 
-%	inputs: 
-%
-%  i_detec:	=2: Xtomo prototype cameras (shot# < 6768)
-%		=1: Xtomo 9-cameras	    (shot# > 682x)
-%
-%	outputs:
-%
-%  fans:    camera switch, 1=on,0=off (1x10)
-%  vangle:  angle between detect. surface normal and pos. x-axis (1x10)
-%  xchord:  two x-coordinates (2xnl) and
-%  ychord:  two y-coord. for each line (2xnl), they specify start + end points
-%  aomega:  etendue in mm^2 x steradians
-%  angfact: angular factors, inverse of relative etendue (throughput) (20x10)
-%
-%	uses:
-%		AOMEGA=etendue_n2(b1x,b1y,b1z,b2x,b2y,b2z,z01,z02,X0,cw);
-%		angular_fact_*.mat , '*'=i_detec
-%  
-%
-%---------------- M.Anton 14/3/95 -------------------------------------------
-
-disp('*----------------------------*')
-disp('|   this is xtomo_geometry   |')
-disp('*----------------------------*')
-
-global xap yap xdet ydet
-global ae da
-% ======== tokamak parameters ================================================
-
-load tcv_vesc1
-
-
-
-
-xcont=rzvin(:,1);
-ycont=rzvin(:,2);
-xmin=min(xcont);
-ymin=min(ycont);
-xmax=max(xcont);
-ymax=max(ycont);
-xedge=100;
-yedge=60;
-          
-
-
-
-% =========  detector parameters =============================================
-
-if i_detec==2
-
-	cw=1;                         % detector numbers cw=1:clockwise cw=0:ccw
-
-	if nargin<2
-		fans=[0 0 0 0 0 0 1 0 1 0];   % camera switch
-	end
-
-	vangle=[90 90 90 0 0 0 0 -90 -90 -90];
-                                % angle of detector surface normal 
-	xpos=[0 0 0 0 0 0  118.05 0 87.84 0]; 
-                                % x position of the diaphragmas in [cm]
-	ypos=[0 0 0 0 0 0 -46 0 -80.45 0];
-                                % y position of the diaphragmas in [cm]
-	ae=[0 0 0 0 0 0 -2.5 0 -0.1 0]/10; 
-				%excentricity array/diaphragm in [cm]
-	da=[0 0 0 0 0 0 10.1  0 -11.7 0]/10;   
-                                 % diaphragma-array distance in [cm]
-	da2=da;
-
-	d1=0.950;                     % detector width      in mm
-	d2=4.050;                     % detector length     in mm
-	b1=1.000;                     % aperture width      in mm
-	b2=4.000*ones(1,10);          % aperture length     in mm
-	b3x=0;                        % aperture thickness  in mm
-	b3y=0;
-
-elseif i_detec==1
-
-   cw=1;                         % detector numbers cw=1:clockwise cw=0:ccw
-
-   if nargin<2	
-   	fans=[1 1 1 1 1 1 1 1 0 1];   % camera switch
-   end
-
-   vangle=[90 90 90 0 0 0 0 -90 -90 -90];
-                                 % angle of detector surface normal 
-   xpos=[71.5 87.7 103.9 123.1  123.1 123.1 123.1 104.04 87.84 71.64]; 
-                                 % x position of the diaphragmas in [cm]
-   ypos=[80.35 80.35 80.35 48.1 1.95 -2.45 -48.6 -80.35 -80.35 -80.35];
-                                 % y position of the diaphragmas in [cm]
-   ae=[-8 0 8 5 9 -9 -5 8 0 -8]/10; %excentricity array/diaphragm [cm]
-
-
-  ae= ae + [-0.0915 0   0.1361    0.2123    0.0923   -0.0994   ...
- 		 0.0872   -0.1520  0  0.9410 ]/10;
-  ae(1)=ae(1)+0.1/10;
-  ae(3)=8/10+0.14/10;
-  ae(4)=4.9/10;
-  ae(5)=9/10+0.2/10;
-  ae(6)=ae(6)-0.2/10;
-  ae(7)=-4.9/10;
-  ae(10)=-7.1/10;
-
-   da=   [12.4 9.9 12.4 9.9 13.4 13.4  9.9   -12.4  -9.9 -12.4]/10;
-                                 % diaphragma-array distance in [cm] (poloidal)
-   da2=[37 34.4 37 55.9 59.4 59.4 55.9 37 34.4 37]/10;
-                                 % dist to diaphragm in toroidal direction [cm];
-   deltada=[   -0.0311 0  -0.0458   -0.1179   -0.0615   -0.1105 ...
-			  -0.0510   -0.0515  0  -0.3223]/10;
-  deltada(4)=0;
-  deltada(6)=0;
-                                                                 
-
-   da=da+ deltada;
-
-   da2=da2+deltada;
-
-
-   d1=0.90;			 % detector width      in mm
-   d2=4.0;			 % detector length     in mm
-   b1=0.800;			 % aperture width      in mm (pol.)
-   b2=[8 8 8 15 15 15 15 8 8 8];			 
-				 % aperture length     in mm (tor.)
-   b3x=0.020;			 % aperture thickness  in mm (poloidal)
-   b3y=0;			 % aperture thickness  in mm (toroidal)
-end
-
-
-
-%======== calculation of the chords of view ===================================
-
-nact=sum(fans);
-iact=find(fans);
-ndet=20;
-ncam=10;
-
-
-
-% ---- apertures: ------------------
-
-xap=ones(ndet,1)*xpos(iact);
-xap=xap(:)';
-yap=ones(ndet,1)*ypos(iact);
-yap=yap(:)';
-
-% ---- detectors: ------------------
-
-vorz(find(vangle==90))=(-1)^(cw+1)*ones(size(find(vangle==90)));
-vorz(find(vangle==0))=(-1)^cw*ones(size(find(vangle==0)));
-vorz(find(vangle==-90))=(-1)^cw*ones(size(find(vangle==-90)));
-
-
-dete=(-9.025:0.950:9.025)'/10*vorz(iact)+ones(ndet,1)*ae(iact);
-
-dum_ae=dete(:)';
-
-dum_vangle=ones(ndet,1)*vangle(iact);
-dum_vangle=dum_vangle(:)';
-
-
-
-ivert=find(dum_vangle==90 | dum_vangle==-90);
-ihori=find(dum_vangle==0);
-
-dum_da=ones(ndet,1)*da(iact);
-dum_da=dum_da(:)';
-
-dxd=zeros(1,ndet*nact);
-dyd=zeros(1,ndet*nact);
-
-dxd(ivert)=dum_ae(ivert);
-dxd(ihori)=dum_da(ihori);
-
-dyd(ivert)=dum_da(ivert);
-dyd(ihori)=dum_ae(ihori);
-
-xdet=xap+dxd;
-ydet=yap+dyd;
-
-
-%plot_vessel(rzvin,rzvout)
-%hold on
-% plot(xap,yap,'.g',xdet,ydet,'.m')
-
-
-% ---- calculate the equations of lines of sight
-
-m=(ydet-yap)./(xdet-xap);
-b=ydet-m.*xdet;
-
-nl=length(xdet);
-xchord=zeros(2,nl);
-ychord=zeros(2,nl);
-
-
-xchord(1,:)=xdet;ychord(1,:)=ydet;
-
-iup=find(dum_vangle==90);
-isi=find(dum_vangle==0);
-ido=find(dum_vangle==-90);
-
-if ~isempty(iup)
-ychord(2,iup)=ymin*ones(size(iup));
-xchord(2,iup)=(ychord(2,iup)-b(iup))./m(iup);
-end
-if ~isempty(ido)
-ychord(2,ido)=ymax*ones(size(ido));
-xchord(2,ido)=(ychord(2,ido)-b(ido))./m(ido);
-end
-if ~isempty(isi)
-xchord(2,isi)=xmin*ones(size(isi));
-ychord(2,isi)=m(isi).*xchord(2,isi)+b(isi);
-end
-
-ileft=find(xchord(2,:)<xmin);
-
-if ~isempty(ileft)
-xchord(2,ileft)=xmin*ones(size(ileft));
-ychord(2,ileft)=m(ileft).*xchord(2,ileft)+b(ileft);
-end
-irig=find(xchord(2,:)>xmax);
-if ~isempty(irig)
-xchord(2,irig)=xmax*ones(size(irig));
-ychord(2,irig)=m(irig).*xchord(2,irig)+b(irig);
-end
-
-
-
-%======== prepare output ======================================================
-
-vangle=vangle(iact);
-
-%======== calculation of angular correction factors, if necessary =============
-
-if i_detec==2 & exist('angular_fact_2.mat')==2
-
-		disp('loading angular_fact_2')
-		load angular_fact_2
-
-
-elseif i_detec==1 & exist('angular_fact_1.mat')==2
-
-		disp('loading angular_fact_1')
-		load angular_fact_1
-
-else
-
-		aomega=zeros(ndet,ncam);
-		angfact=ones(ndet,ncam);
-
-
-		for l=1:sum(fans)
-
-%		Z0X=abs(da(iact(l))*10)
-%	 	Z0Y=abs(da2(iact(l))*10)
-%		X0=ae(iact(l))*10 % back to mm, sorry about that...
-%		X0=X0*vorz(iact(l))
-%		B2=b2(iact(l))
-%		AOMEGA=etendue_n(b1,B2,b3x,b3y,Z0X,Z0Y,X0,cw);
-
-		b1x=0.8;
-		b1y=6;
-		b1z=0.02;
-		b2x=10000000;
-		b2y=b2(iact(l));
-		b2z=0;
-		z01=abs(da(iact(l))*10);
-		z02=abs(da2(iact(l))*10);
-		X0=ae(iact(l))*10*vorz(iact(l));
-keyboard
-		AOMEGA=etendue_n2(b1x,b1y,b1z,b2x,b2y,b2z,z01,z02,X0,cw);
-
-			aomega(:,iact(l))=AOMEGA(:,1);
-
-		
-		end
-
-
-		indm=min(find(aomega==max(aomega(:))));
-		aomegan=aomega/aomega(indm);
-		nonz=find(aomega);
-		angfact(nonz)=ones(size(nonz))./aomegan(nonz);
-
-		angfact=round(1000*angfact)/1000;
-
-
-		unitstring='units aomega: mm^2 * sterad';
-
-		if i_detec==1
-			save angular_fact_1 angfact aomega unitstring
-		elseif i_detec==2
-			save angular_fact_2 angfact aomega unitstring
-		end
-
-end
-return
-
-th=atan(diff(ychord)./diff(xchord));
-thp=th;
-neg=find(thp<0);
-thp(neg)=180+thp(neg);
-thdet=ones(1,20*sum(fans));
-for k=1:sum(fans)
-     thdet((k-1)*20+1:k*20)=vangle(k)*ones(1,20);
-end
-angles=thdet-thp;
-mist=find(angles<0 & abs(angles)>90);
-angles(mist)=angles(mist)+180;
-th_inc=angles*pi/180;
-
-
-% ---- correct for the edges of tcv ( some chords may be too long )
-
-
-
-
-
-	down=find(xcont>xedge & ycont<-yedge);
-	up=find(xcont>xedge & ycont>yedge);
-	cd=polyfit(xcont(down),ycont(down),1);
-	cu=polyfit(xcont(up),ycont(up),1);
-
-
-	iu1=find(xchord(1,:)>xedge & ychord(1,:)>0 & dum_vangle==-90 );
-	if ~isempty(iu1)
-		xchord(1,iu1)=-(b(iu1)-cu(2))./(m(iu1)-cu(1)+eps);
-		ychord(1,iu1)=m(iu1).*xchord(1,iu1)+b(iu1);
-	end
-
-	iu2=find(xchord(2,:)>xedge & ychord(2,:)>0 & ychord(1,:) & ....
-			dum_vangle==-90);
-	if ~isempty(iu2)
-		xchord(2,iu2)=-(b(iu2)-cu(2))./(m(iu2)-cu(1)+eps);
-		ychord(2,iu2)=m(iu2).*xchord(2,iu2)+b(iu2);
-	end
-
-	id1=find(xchord(1,:)>xedge & ychord(1,:)<0 & dum_vangle==90);
-	if ~isempty(id1)
-		xchord(1,id1)=-(b(id1)-cd(2))./(m(id1)-cd(1)+eps);
-		ychord(1,id1)=m(id1).*xchord(1,id1)+b(id1);
-	end
-
-	id2=find(xchord(2,:)>xedge & ychord(2,:)<0 & dum_vangle==90);
-	if ~isempty(id2)
-		xchord(2,id2)=-(b(id2)-cd(2))./(m(id2)-cd(1)+eps);
-		ychord(2,id2)=m(id2).*xchord(2,id2)+b(id2);
-	end
-
-	ilow=find(ychord(1,:)<ymin);
-	ihig=find(ychord(1,:)>ymax);
-	ilef=find(xchord(1,:)<xmin);
-	irig=find(xchord(1,:)>xmax);
-	if ~isempty(ilow)
-		ychord(1,ilow)=ymin*ones(size(ilow));
-		xchord(1,ilow)=ymin./m(ilow)-b(ilow)./m(ilow);
-	end
-	if ~isempty(ihig)
-		ychord(1,ihig)=ymax*ones(size(ihig));
-		xchord(1,ihig)=ymax./m(ihig)-b(ihig)./m(ihig);
-	end
-	if ~isempty(ilef)
-		xchord(1,ilef)=xmin*ones(size(ilef));
-		ychord(1,ilef)=m(ilef)*xmin+b(ilef);
-	end
-	if ~isempty(irig)
-		xchord(1,irig)=xmax*ones(size(irig));
-		ychord(1,irig)=m(irig)*xmax+b(irig);
-	end
-
-
-	ilow=find(ychord(2,:)<ymin);
-	ihig=find(ychord(2,:)>ymax);
-	ilef=find(xchord(2,:)<xmin);
-	irig=find(xchord(2,:)>xmax);
-	if ~isempty(ilow)
-		ychord(2,ilow)=ymin*ones(size(ilow));
-		xchord(2,ilow)=ymin./m(ilow)-b(ilow)./m(ilow);
-	end
-	if ~isempty(ihig)
-		ychord(2,ihig)=ymax*ones(size(ihig));
-		xchord(2,ihig)=ymax./m(ihig)-b(ihig)./m(ihig);
-	end
-	if ~isempty(ilef)
-		xchord(2,ilef)=xmin*ones(size(ilef));
-		ychord(2,ilef)=m(ilef)*xmin+b(ilef);
-	end
-	if ~isempty(irig)
-		xchord(2,irig)=xmax*ones(size(irig));
-		ychord(2,irig)=m(irig)*xmax+b(irig);
-	end
-
-
-
-
-
diff --git a/crpptbx_new/examples.m b/crpptbx_new/examples.m
deleted file mode 100644
index e501d265931836990b2a6f6b10b0af70171d162d..0000000000000000000000000000000000000000
--- a/crpptbx_new/examples.m
+++ /dev/null
@@ -1,54 +0,0 @@
->>[a0,b0]=gdat
-a0 =
-
-                t: []
-             data: []
-              dim: []
-         dimunits: []
-        error_bar: []
-             shot: []
-          machine: []
-     gdat_keyword: {'kwd1'  'kwd2'}
-      gdat_params: [1x1 struct]
-    data_fullpath: []
-        gdat_call: 'gdat;'
-
-
-b0 =
-
-    data_request: ''
-         machine: 'tcv'
-          doplot: 0
-
-          
->>[a1, b1]=gdat(48836,'ip','Opt1',123,'Doplot',1,'opt2','Abc')
-a1 =
-
-                t: []
-             data: []
-              dim: []
-         dimunits: []
-        error_bar: []
-             shot: 48836
-          machine: []
-     gdat_keyword: []
-      gdat_params: [1x1 struct]
-    data_fullpath: []
-        gdat_call: 'gdat(48836,'ip','Opt1',123,'Doplot',1,'opt2','Abc');'
-
-b1 =
-
-    data_request: 'ip'
-         machine: 'tcv'
-          doplot: 1
-            opt1: 123
-            opt2: 'abc'
-
->> b1.newopt=[1 2 34];
->> [a2 b2]=gdat(48836,b1);
-
-the "calling string can be used to rerun the call:
-
->> eval(['[a3 b3]=' a2.gdat_call]);
-
-a3 is the same as a2
diff --git a/crpptbx_new/gdat.m b/crpptbx_new/gdat.m
deleted file mode 100644
index 5b4804f92047887a358ae9e08a254817341d9e6c..0000000000000000000000000000000000000000
--- a/crpptbx_new/gdat.m
+++ /dev/null
@@ -1,181 +0,0 @@
-function [gdat_data,gdat_params,error_status,varargout] = gdat(shot,data_request,varargin)
-%
-% function [gdat_data,gdat_params,error_status,varargout] = gdat(shot,data_request,varargin)
-%
-% Aim: get data from a given machine using full path or keywords. 
-%      Keywords should be the same for different machines, otherwise add "_machinname" to the keyword if specific
-%      Keywords are and should be case independent (transformed in lower case in the function and outputs)
-%
-% If no inputs are provided, return the list of available keywords in gdat_data and default parameters gdat_params
-%
-% Inputs:
-%
-%    no inputs: return default parameters in a structure form in gdat_params
-%    shot: shot number
-%    data_request: keyword (like 'ip') or trace name or structure containing all parameters but shot number
-%    varargin{i},varargin{i+1},i=1:nargin-2: additional optional parameters given in pairs: param_name, param_value
-%                                            The optional parameters list might depend on the data_request
-%              examples of optional parameters:
-%                               'plot',1 (plot is set by default to 0)
-%                               'machine','TCV' (the default machine is the local machine)
-%
-%
-% Outputs:
-%
-% gdat_data: structure containing the data, the time trace if known and other useful information
-% gdat_data.t : time trace
-% gdat_data.data: requested data values
-% gdat_data.dim : values of the various coordinates related to the dimensions of .data(:,:,...)
-%                     note that one of the dim is the time, replicated in .t for clarity
-% gdat_data.dimunits : units of the various dimensions, 'dimensionless' if dimensionless
-% gdat_data.error_bar : if provided
-% gdat_data.gdat_call : list of parameters provided in the gdat call (so can be reproduced)
-% gdat_data.shot: shot number
-% gdat_data.machine: machine providing the data
-% gdat_data.gdat_request: keyword for gdat if relevant
-% gdat_data.data_fullpath: full path to the data node if known and relevant, or expression, or relevant function called if relevant
-% gdat_data.gdat_params: copy gdat_params for completeness
-% gdat_data.xxx: any other relevant information
-%
-%
-% Examples:
-% (should add working examples for various machines (provides working shot numbers for each machine...))
-% 
-%    [a1,a2]=gdat;
-%    a2.data_request = 'Ip';
-%    a3=gdat(48836,a2);  % gives input parameters as a structure, allows to call the same for many shots
-%    a4=gdat('opt1',123,'opt2',[1 2 3],'shot',48832,'data_request','Ip','opt3','aAdB'); % all in pairs
-%    a5=gdat(48836,'ip'); % standard call
-%    a6=gdat(48836,'ip','Opt1',123,'Doplot',1,'opt2','Abc'); % standard call with a few options (all lowercase in output)
-
-
-%
-% Comments for local developer:
-% This gdat is just a "header routine" calling the gdat for the specific machine gdat_`machine`.m which can be called
-% directly, thus which should be able to treat the same type of input arguments
-%
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Prepare some variables, etc
-
-% for backward compatibility (with most recent simple call ala: gdat(shot,'data_request',doplot,machine) )
-% if nargin<=4 and >2 and 1st and 3rd are numeric, assume this is an old call and transform it to:
-% gdat(shot,'data_request','doplot',doplot','machine',machine)
-% and a warning
-if nargin>2
-  varargin_eff = varargin;
-  if nargin>=3 && nargin<=4  && isnumeric(shot) && isnumeric(varargin{1})
-    % assume old call: gdat(shot,'data_request',doplot[,machine])
-    varargin_eff{1} = 'doplot';
-    varargin_eff{end+1} = varargin{1};
-    if nargin==4
-      varargin_eff{end+1} = 'machine';
-      varargin_eff{end+1} = varargin{2};
-    end
-  end
-end
-
-% construct default parameters structure
-gdat_params.data_request = '';
-fusion_machine_defaultname=getenv('FUSION_MACHINE_DEFAULTNAME');
-default_machine = '';
-if ~isempty(fusion_machine_defaultname)
-  default_machine = lower(fusion_machine_defaultname);
-else
-  hostname=getenv('HOSTNAME');
-  if ~isempty(regexpi(hostname,'epfl'))
-    default_machine = 'tcv';
-  elseif ~isempty(regexpi(hostname,'rzg.mpg'))
-    default_machine = 'aug';
-  end
-end
-machine_eff = default_machine;
-
-% do not treat inputs here but in subsequent gdat_machine.m function, however, need to extract machine name if provided:
-if nargin>=2 % need at least 2 inputs to have 'machine','aug' as arguments (to ask specific list of requests)
-  % in case start directly with pairs of options
-  if ischar(shot) && ischar(data_request)
-    machine_eff = data_request;
-  elseif isstruct(shot) && isfield(shot,'machine')
-    machine_eff = shot.machine;
-  elseif isstruct(data_request) && isfield(data_request,'machine')
-    machine_eff = data_request.machine;
-  elseif nargin>=3
-    imachine=[];
-    for i=1:length(varargin_eff)
-      if ischar(varargin_eff{i})
-        ii = strmatch(varargin_eff{i},'machine','exact');
-        if ~isempty(ii); imachine = i; end
-      end
-    end
-    if ~isempty(imachine) && length(varargin_eff)>=imachine+1 && ~isempty(varargin_eff{imachine+1})
-      machine_eff = varargin_eff{imachine+1};
-    end
-  end
-end
-
-% add paths to each machine which are in subdirectory of gdat and working
-% add only given machine directory using machine_eff...
-gdat_path = mfilename('fullpath');
-eval(['addpath ' gdat_path(1:end-4) upper(machine_eff)]);
-
-% copy gdat present call:
-if nargin==0
-  subcall=['gdat;'];
-elseif nargin>=1
-  if isnumeric(shot)
-    subcall=['gdat(' num2str(shot) ];
-  elseif ischar(shot)
-    subcall=['gdat(' shot ];
-  else
-    warning('type of 1st argument unexpected, should be numeric or char')
-    gdat_data.gdat_call = [];
-    return
-  end
-  if nargin>=2
-    if isempty(data_request)
-      subcall = [subcall ',[]'];
-    else
-      substring = subcall_all2str(data_request);
-      subcall = [subcall substring];
-    end
-    if nargin>=3
-      substring = subcall_all2str(varargin_eff{:});
-      subcall = [subcall substring];
-    end
-  end
-  % ... to continue
-  subcall = [subcall ');'];
-end
-
-% Note: would need to check nargout to make call consistent, but to avoid this, each gdat_xxx should return at least an empty varargout: varargout{1}=cell(1);
-try
-  if nargin==0
-    eval(['[gdat_data,gdat_params,error_status,varargout] = gdat_' lower(machine_eff) ';']);
-  elseif nargin==1
-    eval(['[gdat_data,gdat_params,error_status,varargout] = gdat_' lower(machine_eff) '(shot);']);
-  elseif nargin==2  
-    eval(['[gdat_data,gdat_params,error_status,varargout] = gdat_' lower(machine_eff) '(shot,data_request);']);
-  else
-    eval(['[gdat_data,gdat_params,error_status,varargout] = gdat_' lower(machine_eff) '(shot,data_request,varargin_eff{:});']);
-  end
-catch
-  warning(['problems calling gdat_' lower(machine_eff)]);
-  return
-end
-
-% copy subcall here so is last subnode
-gdat_data.gdat_call = [subcall ' % nargout = ' num2str(nargout)];
-
-if ~isfield(gdat_data.gdat_params,'doplot')
-  gdat_data.gdat_params.doplot = 0;
-end
-
-if gdat_data.gdat_params.doplot
-  % plot gdat_data versus 1st dim by default, if nb_dims<=2, otherwise do not plot
-  if length(varargout)==0 || isempty(varargout{1})
-    varargout{1} = gdat_plot(gdat_data); % return handle to figure
-  else
-    varargout{end+1} = gdat_plot(gdat_data); % return handle to figure
-  end
-end
diff --git a/crpptbx_new/gdat_data_request_names.xlsx b/crpptbx_new/gdat_data_request_names.xlsx
deleted file mode 100644
index 966dc80b3f5fc6c3c97ef18d07e468cf2f17784b..0000000000000000000000000000000000000000
Binary files a/crpptbx_new/gdat_data_request_names.xlsx and /dev/null differ
diff --git a/crpptbx_new/gdat_data_request_names_rho.xlsx b/crpptbx_new/gdat_data_request_names_rho.xlsx
deleted file mode 100644
index 74f47e6263dadbe5c0879ab7e22d0c00441094c4..0000000000000000000000000000000000000000
Binary files a/crpptbx_new/gdat_data_request_names_rho.xlsx and /dev/null differ
diff --git a/crpptbx_new/gdat_plot.m b/crpptbx_new/gdat_plot.m
deleted file mode 100644
index 04a3c9b4c4a07e91d50ea8400cd1ccfc36019fb7..0000000000000000000000000000000000000000
--- a/crpptbx_new/gdat_plot.m
+++ /dev/null
@@ -1,41 +0,0 @@
-function [fighandle]=gdat_plot(gdat_data,varargin);
-%
-% choices from doplot in gdat_data.gdat_params.doplot:
-%     doplot = 0: no plot
-%            = 1: new figure created
-%            = -1: add to current figure (with hold all)
-%            > 1: create new figure with this number, adding clf
-%            <-1: add to figure number abs(doplot) (with hold all)
-%
-if ~isfield(gdat_data.gdat_params,'doplot') || gdat_data.gdat_params.doplot ==0
-  return
-end
-
-fighandle = get(0,'CurrentFigure');
-
-if prod(isfield(gdat_data,{'data','t'})) && ~isempty(gdat_data.data) && ~isempty(gdat_data.t)
-  if gdat_data.gdat_params.doplot == 1
-    fighandle = figure;
-  elseif gdat_data.gdat_params.doplot > 1
-    fighandle = figure(gdat_data.gdat_params.doplot);
-    clf;
-  elseif gdat_data.gdat_params.doplot == -1
-    hold all
-  elseif gdat_data.gdat_params.doplot < -1
-    fighandle = figure(abs(gdat_data.gdat_params.doplot));
-    hold all
-  end
-  if any(find(size(gdat_data.data)==length(gdat_data.t)))
-    plot(gdat_data.t,gdat_data.data);
-    title([gdat_data.gdat_params.machine ' #' num2str(gdat_data.shot)]);
-    if isfield(gdat_data,'mapping_for')
-      xlabel(['time [' gdat_data.dimunits{gdat_data.mapping_for.(gdat_data.gdat_params.machine).gdat_timedim} ']']);
-    else
-      xlabel(['time']);
-    end
-    ylabel([gdat_data.label '[' gdat_data.units ']']);
-    zoom on;
-  end
-else
-  disp('cannot plot gdat_data, has empty data or t field')
-end
diff --git a/crpptbx_new/get_data_request_names.m b/crpptbx_new/get_data_request_names.m
deleted file mode 100644
index 7ff6504e0ee9a08e6bf26da5f3096b43eeef4709..0000000000000000000000000000000000000000
--- a/crpptbx_new/get_data_request_names.m
+++ /dev/null
@@ -1,45 +0,0 @@
-function [data_request_names] = get_data_request_names;
-%
-% get list of presently available data_request names grouped and with description
-%
-% at this stage using first 3 columns of file gdat_data_request_names.xlsx
-%
-
-expected_machines = [{'aug'}, {'jet'}, {'tcv'}]; % substrutures created for these at this stage (all means all of these)
-for j=1:length(expected_machines)
-  data_request_names.(expected_machines{j}) = [];
-end
-
-filename='gdat_data_request_names_rho.xlsx';
-
-[numeric_struct,text_struct,raw_struct]=xlsread(filename);
-
-% use text structure
-[n1,n2]=size(text_struct);
-if prod(n1,n2)==0 || n2<3
-  disp(['problems with file ' filename])
-  return
-end
-
-% assume 1st column has data_request names with the headline "data_request"
-ij=find(strcmp('data_request',strtrim(lower(text_struct{1,1})))==1);
-if isempty(ij) || ij+1>=n1
-  disp(['problems with file ' filename '; ''data_request'' not found in 1st column or no extra lines'])
-  return
-end
-
-ij_1strow = ij+1;
-for iline=ij+1:n1
-  if isempty(text_struct{iline,1}); keyboard; end
-  % extra machine
-  validity = text_struct{iline,3};
-  if ~isempty(regexpi(validity,'all'))
-    data_request_names.all.(strtrim(lower(text_struct{iline,1}))).description = strtrim(text_struct{iline,2});
-  else
-    for j=1:length(expected_machines)
-      if ~isempty(regexpi(validity,expected_machines{j}))
-        data_request_names.(lower(expected_machines{j})).(strtrim(lower(text_struct{iline,1}))).description = strtrim(text_struct{iline,2});
-      end
-    end
-  end
-end
diff --git a/crpptbx_new/subcall_all2str.m b/crpptbx_new/subcall_all2str.m
deleted file mode 100644
index a87eff3a3767bb855d26d6f42cd6d92ff5524838..0000000000000000000000000000000000000000
--- a/crpptbx_new/subcall_all2str.m
+++ /dev/null
@@ -1,59 +0,0 @@
-function subcall_string = subcall_all2str(varargin)
-%
-% subcall_string = subcall_all2str(varargin)
-%
-% create a string from varargin allowing following types:
-%
-% char: varargin is just copied
-% numeric: if scalar use num2str, if 1 or 2-D array add relevant '[' and ']', else mark a string multi-D
-% structure: explode structure as field,value
-%
-
-% to be taken from above and include this call in above
-
-if nargin==0
-  subcall_string = '';
-  return
-end
-
-subcall = '';
-for i_in=1:length(varargin)
-  var_to_treat = varargin{i_in};
-  if isstruct(var_to_treat)
-    % explode structure into 'childname',childvalues
-    param_names = fieldnames(var_to_treat);
-    for i=1:length(param_names)
-      subcall = [subcall ',''' param_names{i} ''''];
-      if ischar(var_to_treat.(param_names{i}))
-        subcall = [subcall ',''' var_to_treat.(param_names{i}) ''''];
-      elseif isnumeric(var_to_treat.(param_names{i}))
-        aa_values = var_to_treat.(param_names{i});
-        if prod(size(aa_values))~= length(aa_values)
-          % multi-D input, do not treat it yet
-          subcall = [subcall ',''multi-D input'''];
-        elseif length(aa_values) > 1
-          % array
-          subcall = [subcall ',[' num2str(reshape(aa_values,1,length(aa_values))) ']'];
-        else
-          subcall = [subcall ',' num2str(aa_values) ''];
-        end
-      else
-        % to treat extra cases
-      end
-    end
-  elseif isnumeric(var_to_treat)
-    if prod(size(var_to_treat))~= length(var_to_treat)
-      % multi-D input, do not treat it yet
-      subcall = [subcall ',''multi-D input'''];
-    elseif length(var_to_treat) > 1
-      % array
-      subcall = [subcall ',[' num2str(var_to_treat) ']'];
-    else
-      subcall = [subcall ',' num2str(var_to_treat) ''];
-    end
-  elseif ischar(var_to_treat)
-    subcall = [subcall ',''' var_to_treat ''''];
-  end
-end
-
-subcall_string = subcall;
diff --git a/crpptbx_new/test_all_requestnames.m b/crpptbx_new/test_all_requestnames.m
deleted file mode 100644
index ff449dbb6ebe8256394d963343b27e5fc153fd51..0000000000000000000000000000000000000000
--- a/crpptbx_new/test_all_requestnames.m
+++ /dev/null
@@ -1,12 +0,0 @@
-
-machine='TCV';
-shot=48836;
-aa=gdat('machine',machine);
-all_request_names = aa.gdat_request
-%break
-istart=1;
-for irequest=istart:length(all_request_names)
-  request=all_request_names{irequest}
-  ab{irequest} = gdat(shot,request,'machine',machine,'doplot',1);
-  pause
-end