Skip to content
Snippets Groups Projects
Commit a2fcdbf9 authored by Antonia Frank's avatar Antonia Frank
Browse files

Add core transport ids

parent 8d39fd16
No related branches found
No related tags found
1 merge request!137Add quantities to ids for MRE
function [ids_core_transport,ids_core_transport_description,varargout] = ...
tcv_get_ids_core_transport(shot,ids_equil_empty,gdat_params,varargin)
%
% [ids_core_profiles,ids_core_profiles_description,varargout] = ...
% tcv_get_ids_core_profiles(shot,ids_equil_empty,gdat_params,varargin);
%
%
% gdat_params: gdat_data.gdat_params to get all params passed from original call
%
machine = 'tcv';
tens_time = -1;
tens_rho = -0.1;
if exist('gdat_params','var')
[ids_core_transport, params_core_transport] = ...
tcv_ids_headpart(shot,ids_equil_empty,'cores_profiles','gdat_params',gdat_params,varargin{:});
else
[ids_core_transport, params_core_transport] = ...
tcv_ids_headpart(shot,ids_equil_empty,'cores_profiles',varargin{:});
aa=gdat_tcv;
gdat_params = aa.gdat_params; % to get default params
end
params_eff_ref = gdat_params; params_eff_ref.doplot=0;
try params_eff_ref=rmfield(params_eff_ref,'source');catch;end % make sure no source (from ids def)
% initialize description
ids_core_transport_description = [];
%%
% setup empty model structs (up to 3 for now)
ids_core_transport.model(1:3) = ids_core_transport.model(1);
% fill model(3) [name: transport solver, desc: output from transport solver]
% setup model and profiles_1d
comment = 'Output from a transport solver';
ids_core_transport.model{3}.comment = comment;
ids_core_transport.model{3}.name = comment;
ids_core_transport.model{3}.identifier.index = 2;
ids_core_transport.model{3}.name = 'transport_solver';
% read data and setup time
params_eff.data_request='\results::conf:chie';
temp_1d.chie = gdat(params_core_transport.shot,params_eff.data_request);
temp_1d_desc.chie = params_eff.data_request;
if isempty(temp_1d.chie.t)
warning('no data in chie node, might need to rerun anaprofs')
return
end
ids_core_transport.time = temp_1d.chie.t;
ids_core_transport_description.time = ['from node' params_eff.data_request];
ct.cids_core_transport.model{3}.profiles_1d(1:length(ids_core_transport.time)) = ...
ids_core_transport.model{3}.profiles_1d(1);
%% fill profiles_1d
for it=1:length(ids_core_transport.time)
ids_core_transport.model{3}.profiles_1d{it}.time = ids_core_transport.time(it);
ids_core_transport.model{3}.profiles_1d{it}.conductivity_parallel = temp_1d.chie.data(:,it);
temp_1d_desc.conductivity_parallel = temp_1d.chie.label;
end
%% add descriptions for profiles_1d
ids_core_transport_description.profiles_1d = temp_1d_desc;
%%
if nargin <= 2
ids_core_transport.code.name = ['tcv_get_ids_core_transport, within gdat, with shot= ' num2str(params_core_transport.shot) ];
else
ids_core_transport.code.name = ['tcv_get_ids_core_transport, within gdat, with shot= ' num2str(params_core_transport.shot) '; varargin: ' varargin{:}];
end
ids_core_transport_description.code.name = ids_core_transport.code.name;
ids_core_transport.code.output_flag = zeros(size(ids_core_transport.time));
% cocos automatic transform
if ~isempty(which('ids_generic_cocos_nodes_transformation_symbolic'))
[ids_core_transport,cocoscoeff]=ids_generic_cocos_nodes_transformation_symbolic(ids_core_transport,'core_transport',gdat_params.cocos_in, ...
gdat_params.cocos_out,gdat_params.ipsign_out,gdat_params.b0sign_out,gdat_params.ipsign_in,gdat_params.b0sign_in, ...
gdat_params.error_bar,gdat_params.nverbose);
end
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment