From 98f78fb7f43dd7df081dea169b66d7bf44abf951 Mon Sep 17 00:00:00 2001 From: Olivier Sauter <olivier.sauter@epfl.ch> Date: Thu, 14 Jun 2018 07:41:14 +0000 Subject: [PATCH] small bugs fixed and use spline interpolation for rho(Thomson) to maintain precision git-svn-id: https://spcsvn.epfl.ch/repos/TCV/gdat/trunk@10170 d63d8f72-b253-0410-a779-e742ad2e26cf --- crpptbx/JET/gdat_jet.m | 7 ++++++- crpptbx/TCV/gdat_tcv.m | 7 +++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/crpptbx/JET/gdat_jet.m b/crpptbx/JET/gdat_jet.m index e5eccc52..5a17ffba 100644 --- a/crpptbx/JET/gdat_jet.m +++ b/crpptbx/JET/gdat_jet.m @@ -1349,8 +1349,13 @@ elseif strcmp(mapping_for_jet.method,'switchcase') params_eff.data_request = {'ppf','bolo','tobu'}; rad_bulk2=gdat_jet(shot,params_eff); gdat_data.rad_bulk_u = rad_bulk2.data; - gdat_data.rad_bulk_avg = 0.5.*(rad_bulk1.data+rad_bulk2.data); gdat_data.rad_bulk_t = rad_bulk1.t; + if numel(rad_bulk1.data) == numel(rad_bulk2.data) + gdat_data.rad_bulk_avg = 0.5.*(rad_bulk1.data+rad_bulk2.data); + else + abc=interpos(rad_bulk2.t,rad_bulk2.data,gdat_data.rad_bulk_t,-0.1); + gdat_data.rad_bulk_avg = 0.5.*(rad_bulk1.data+abc); + end end gdat_data.t = rad.t; gdat_data.dim{1} = gdat_data.t; diff --git a/crpptbx/TCV/gdat_tcv.m b/crpptbx/TCV/gdat_tcv.m index 5623d3e2..be0d65bc 100644 --- a/crpptbx/TCV/gdat_tcv.m +++ b/crpptbx/TCV/gdat_tcv.m @@ -1148,8 +1148,8 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') itpsitdi=iround_os(psitdi.dim{3},gdat_data.t(it)); psirz=psitdi.data(:,:,itpsitdi); %psiscatvol0=interp2(rmesh,zmesh,psirz',0.9*ones(size(zthom)),zthom-zeffshift(itpsitdi),'spline'); % faster with interpos - %psiscatvol0=interpos2Dcartesian(rmesh,zmesh,psirz,0.9*ones(size(zthom)),zthom-zeffshift(itpsitdi),-0.1,-0.1); - psiscatvol0=interp2(rmesh,zmesh,psirz',0.9*ones(size(zthom)),zthom-zeffshift(itpsitdi),'linear'); + psiscatvol0=interpos2Dcartesian(rmesh,zmesh,psirz,0.9*ones(size(zthom)),zthom-zeffshift(itpsitdi),-0.1,-0.1); + %psiscatvol0=interp2(rmesh,zmesh,psirz',0.9*ones(size(zthom)),zthom-zeffshift(itpsitdi),'linear'); psiscatvol.data(it,:)=psiscatvol0; % since take closest psi(R,Z) from psitdi, should also take closest for psi_max and not interpolating itpsiaxis = iround_os(psiaxis.dim{1},gdat_data.t(it)); @@ -1380,7 +1380,7 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') else for i=1:length(gdat_data.gdat_params.source) gdat_data.gdat_params.source{i} = lower(gdat_data.gdat_params.source{i}); - if ~any(strmatch(gdat_data.gdat_params.sourc{i},elower(sources_avail))) + if ~any(strmatch(gdat_data.gdat_params.source{i},lower(sources_avail))) if gdat_data.gdat_params.nverbose>=1 warning(['source = ' gdat_data.gdat_params.source{i} ' not expected with data_request= ' data_request_eff]) end @@ -1390,7 +1390,6 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') % always start from ohmic so can use this time as base time since should yield full shot % get ohmic power simply from vloop*Ip (minus sign for TCV), neglect dWp/dt could add it later, see chie_tcv_to_nodes % thus should take it from conf if present - mdsopen(shot); ptot_ohm = tdi('\results::conf:ptot_ohm'); if ~isempty(ptot_ohm.data) && ~ischar(ptot_ohm.data) && ~isempty(ptot_ohm.dim) -- GitLab