diff --git a/crpptbx/TCV_IMAS/get_ids_equilibrium_fixed_boundary.m b/crpptbx/TCV_IMAS/get_ids_equilibrium_fixed_boundary.m index e6868de889a812184de6286b5d108e33ae5144b6..2f10dbc8bb18603c5e95b859a1ad9fc04560aed7 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