From 24e09745649bdd70bdd1f1ea039fea22030ca912 Mon Sep 17 00:00:00 2001
From: Olivier Sauter <olivier.sauter@epfl.ch>
Date: Fri, 24 Jun 2011 16:08:47 +0000
Subject: [PATCH] avoid error if ne edge thomson is empty

git-svn-id: https://spcsvn.epfl.ch/repos/TCV/gdat/trunk@2873 d63d8f72-b253-0410-a779-e742ad2e26cf
---
 crpptbx/TCV/loadTCVdata.m | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/crpptbx/TCV/loadTCVdata.m b/crpptbx/TCV/loadTCVdata.m
index 9c3ef996..b87b6c90 100644
--- a/crpptbx/TCV/loadTCVdata.m
+++ b/crpptbx/TCV/loadTCVdata.m
@@ -635,7 +635,7 @@ switch TCVkeywrdcase{index}
     if strcmp(TCVkeywrdcase{index},'nerho_edge')
       nodenameeff='\results::thomson.edge:ne';
       tracetdi=tdi(nodenameeff);
-      if isempty(tracetdi.data)
+      if isempty(tracetdi.data) || ischar(tracetdi.data)
         ishot=mdsopen(shot)
         tracetdi=tdi(nodenameeff)
       end
@@ -643,15 +643,19 @@ switch TCVkeywrdcase{index}
       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)
+        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
-      tracefirrat_data=NaN*ones(size(tracetdi.dim{1}));
-      if ~isempty(tracefirrat.data)
+      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
@@ -661,7 +665,7 @@ switch TCVkeywrdcase{index}
       nodenameeff='\results::thomson.edge:te; error_bar';
       tracestd=tdi('\results::thomson.edge:te:error_bar');
     end
-    trace.data=tracetdi.data'; % Thomson.Edge data as (t,z)
+    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;
-- 
GitLab