From 152ba4d3a51b1c5f0aeef1e0dc784ae055e2246a Mon Sep 17 00:00:00 2001
From: Olivier Sauter <olivier.sauter@epfl.ch>
Date: Wed, 30 Jan 2019 17:10:49 +0000
Subject: [PATCH] fix minor bugs now ok up to profiles_1d of main ones

git-svn-id: https://spcsvn.epfl.ch/repos/TCV/gdat/trunk@11357 d63d8f72-b253-0410-a779-e742ad2e26cf
---
 .../TCV_IMAS/get_ids_equilibrium_fixed_boundary.m  | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/crpptbx/TCV_IMAS/get_ids_equilibrium_fixed_boundary.m b/crpptbx/TCV_IMAS/get_ids_equilibrium_fixed_boundary.m
index e6868de8..2f10dbc8 100644
--- a/crpptbx/TCV_IMAS/get_ids_equilibrium_fixed_boundary.m
+++ b/crpptbx/TCV_IMAS/get_ids_equilibrium_fixed_boundary.m
@@ -231,7 +231,7 @@ profiles_1d.dpressure_dpsi = gdat(params_equilibrium.shot,'pprime');
 % dvolume_dpsi = gdat(params_equilibrium.shot,'dvolume_dpsi');
 % dvolume_drho_tor = gdat(params_equilibrium.shot,'dvolume_drho_tor');
 % elongation = gdat(params_equilibrium.shot,'elongation');
-profiles_1d.f_df_dpsi = gdat(params_equilibrium.shot,'ffprime');
+profiles_1d.f_df_dpsi = gdat(params_equilibrium.shot,'ttprime');
 profiles_1d.f = gdat(params_equilibrium.shot,'rbphi_rho');
 % geometric_axis = gdat(params_equilibrium.shot,'geometric_axis');
 % gm1 = gdat(params_equilibrium.shot,'gm1');
@@ -272,8 +272,11 @@ for it=1:length(ids_equilibrium.time)
   for i=1:length(profiles_1d_fieldnames)
     if ~any(strcmp(profiles_1d_fieldnames{i},special_fields))
       if ~isstruct(ids_equilibrium.time_slice{it}.profiles_1d.(profiles_1d_fieldnames{i}))
-        ids_equilibrium.time_slice{it}.profiles_1d.(profiles_1d_fieldnames{i}) = ...
-            profiles_1d.(profiles_1d_fieldnames{i}).data(:,it);
+        if ~ischar(profiles_1d.(profiles_1d_fieldnames{i}).data) && ~isempty(profiles_1d.(profiles_1d_fieldnames{i}).data) ...
+              && size(profiles_1d.(profiles_1d_fieldnames{i}).data,2)>=it
+          ids_equilibrium.time_slice{it}.profiles_1d.(profiles_1d_fieldnames{i}) = ...
+              profiles_1d.(profiles_1d_fieldnames{i}).data(:,it);
+        end
       else
         special_fields{end+1} = profiles_1d_fieldnames{i};
       end
@@ -287,8 +290,7 @@ ntime = length(temp.psi_axis.data);
 for it=1:length(ids_equilibrium.time)
   ids_equilibrium.time_slice{it}.profiles_1d.rho_tor_norm = ids_equilibrium.time_slice{it}.profiles_1d.rho_tor./ ...
       ids_equilibrium.time_slice{it}.profiles_1d.rho_tor(end);
-  ids_equilibrium.time_slice{it}.profiles_1d.psi = ...
-      reshape(1-profiles_1d.rho_tor.x.^2,nrho,1)*reshape(temp.psi_axis.data,1,ntime) + ...
-      ones(nrho,1)*reshape(global_quantities.psi_boundary.data,1,ntime);
+  ids_equilibrium.time_slice{it}.profiles_1d.psi = (1-profiles_1d.rho_tor.x.^2).*temp.psi_axis.data(it) + ...
+      global_quantities.psi_boundary.data(it);
 end
 
-- 
GitLab