rbmatlab  1.16.09
 All Classes Namespaces Files Functions Variables Modules Pages
lin_evol_split_detailed_data.m
Go to the documentation of this file.
1 function [detailed_data_primal, detailed_data_dual] = lin_evol_split_detailed_data(detailed_data)
2 %[detailed_data_primal, detailed_data_dual] = lin_evol_split_detailed_data(detailed_data)
3 %
4 % function that splits detailed_data into detailed_data_primal and
5 % detailed_data_dual. This is important in case you are interested in an
6 % improved output and therefore use a dual problem.
7 %
8 % See lin_evol_primal_dual_gen_detailed_data.m on how to construct and
9 % connect dual and primal detailed_data so this function works properly.
10 %
11 % This function is mainly used by lin_evol_primal_dual_gen_reduced_data and
13 
14 % Dominik Garmatter 23.07 2012
15 
16 
17 % first extract all fields corresponding to the dual detailed_data by hand
18 % also remove all the fields that get extracted
19 detailed_data_dual = [];
20 detailed_data_dual.grid = detailed_data.grid;
21 detailed_data_dual.W = detailed_data.W;
22 detailed_data_dual.RB = detailed_data.dual_RB;
23 detailed_data_dual.RB_info = detailed_data.dual_RB_info;
24 detailed_data_dual.N = detailed_data.dual_N;
25 if isfield(detailed_data, 'dual_L_I_comp')
26  detailed_data_dual.L_I_comp = detailed_data.dual_L_I_comp;
27  detailed_data = rmfield(detailed_data,'dual_L_I_comp');
28 end
29 if isfield(detailed_data, 'dual_L_E_comp')
30  detailed_data_dual.L_E_comp = detailed_data.dual_L_E_comp;
31  detailed_data = rmfield(detailed_data,'dual_L_E_comp');
32 end
33 if isfield(detailed_data, 'dual_b_comp')
34  detailed_data_dual.b_comp = detailed_data.dual_b_comp;
35  detailed_data = rmfield(detailed_data,'dual_b_comp');
36 end
37 detailed_data = rmfield(detailed_data,'dual_RB');
38 detailed_data = rmfield(detailed_data,'dual_RB_info');
39 detailed_data = rmfield(detailed_data,'dual_N');
40 % now copy the remaining fields, i.e. all the fields corresponding to the
41 % primal detailed_data
42 detailed_data_primal = [];
43 detailed_data_primal = structcpy(detailed_data_primal, detailed_data);
function reduced_data = lin_evol_primal_dual_gen_reduced_data(model, detailed_data)
reduced_data = lin_evol_primal_dual_gen_reduced_data(model, detailed_data)
function [ LL_I , LL_E , bb , K_II , K_IE , K_EE , m_I , m_E , m , K_IdId , K_IdE , LL_I_correct , LL_E_correct , bb_correct , scm_offline_data ] = lin_evol_rb_operators_primal_dual(model, detailed_data)
[LL_I, LL_E, bb, K_II, K_IE, K_EE, m_I, m_E, m, K_IdId, K_IdE, LL_I_correct, LL_E_correct, bb_correct, scm_offline_data] = ... lin_evol_rb_operators_primal_dual(model, detailed_data)
function s1 = structcpy(s1, s2)
copies the fields of structure s2 into structure s1. If the field to be copied does not exist in s1 y...
Definition: structcpy.m:17
function [ detailed_data_primal , detailed_data_dual ] = lin_evol_split_detailed_data(detailed_data)
[detailed_data_primal, detailed_data_dual] = lin_evol_split_detailed_data(detailed_data) ...
function detailed_data = lin_evol_primal_dual_gen_detailed_data(model, model_data)
detailed_data = lin_evol_primal_dual_gen_detailed_data(model, model_data)