rbmatlab  1.13.10
 All Classes Namespaces Files Functions Variables Groups Pages
lin_evol_primal_dual_gen_reduced_data.m
Go to the documentation of this file.
1 function reduced_data = lin_evol_primal_dual_gen_reduced_data(model, detailed_data)
2 %reduced_data = lin_evol_primal_dual_gen_reduced_data(model, detailed_data)
3 %
4 % function generating both primal improved and dual reduced_data. Further
5 % writes both reduced_data_primal_improved and reduced_data_dual into one
6 % structure: reduced_data.
7 % Used for the improved output and output estimator using the dual problem.
8 
9 % Domink Garmatter 06.09 2012
10 
11 
12 % extract the dual detailed_data out of the connected detailed_data
13 [~, detailed_data_dual] = lin_evol_split_detailed_data(detailed_data);
14 % generate dual reduced_data
15 model.want_dual = 1;
16 model.want_improved_output = 0;
17 reduced_data_dual = lin_evol_gen_reduced_data_primal_dual(model, detailed_data_dual);
18 % generated primal improved reduced_data using the connected detailed_data
19 model.want_dual = 0;
20 model.want_improved_output = 1;
21 reduced_data_primal_improved = lin_evol_gen_reduced_data_primal_dual(model, detailed_data);
22 % connect both reduced data
23 reduced_data = [];
24 reduced_data = structcpy(reduced_data, reduced_data_dual); % simply copy the dual reduced_data
25 % and write alle the primal improved reduced_data - these fields are always like this
26 reduced_data.primal_improved_LL_I = reduced_data_primal_improved.LL_I;
27 reduced_data.primal_improved_LL_E = reduced_data_primal_improved.LL_E;
28 reduced_data.primal_improved_bb = reduced_data_primal_improved.bb;
29 reduced_data.primal_improved_K_II = reduced_data_primal_improved.K_II;
30 reduced_data.primal_improved_K_IE = reduced_data_primal_improved.K_IE;
31 reduced_data.primal_improved_K_EE = reduced_data_primal_improved.K_EE;
32 reduced_data.primal_improved_m_I = reduced_data_primal_improved.m_I;
33 reduced_data.primal_improved_m_E = reduced_data_primal_improved.m_E;
34 reduced_data.primal_improved_m = reduced_data_primal_improved.m;
35 reduced_data.primal_improved_LL_I_correct = reduced_data_primal_improved.LL_I_correct;
36 reduced_data.primal_improved_LL_E_correct = reduced_data_primal_improved.LL_E_correct;
37 reduced_data.primal_improved_bb_correct = reduced_data_primal_improved.bb_correct;
38 reduced_data.primal_improved_N = reduced_data_primal_improved.N;
39 reduced_data.primal_improved_a0 = reduced_data_primal_improved.a0;
40 reduced_data.primal_improved_s_RB = reduced_data_primal_improved.s_RB;
41 if isfield(reduced_data_primal_improved, 'scm_offline_data')
42  reduced_data.primal_improved_scm_offline_data = reduced_data_primal_improved.scm_offline_data;
43 end