rbmatlab  1.16.09
 All Classes Namespaces Files Functions Variables Modules Pages
RB_extension_lin_stat_default.m
1 function [RBext,dummy] = RB_extension_lin_stat_default(model, detailed_data)
2 %function RBext = RB_extension_lin_stat_default(model, detailed_data)
3 %
4 %
5 % function for basis extension in stationary cases.
6 % A detailed simulation is performed and the solution is orthogonalised to
7 % the existing basis.
8 %
9 
10 % Markus Dihlmann 06.11.2012
11 
12 dummy = [];
13 
14 sim_data = detailed_simulation(model, detailed_data);
15 vec = model.get_dofs_from_sim_data(sim_data);
16 
17 %orthonormalize
18 A = model.get_inner_product_matrix(detailed_data);
19 ovec = vec - detailed_data.RB * (detailed_data.RB'*A*vec);
20 %norm
21 n=sqrt(max(ovec'*A*ovec,0));
22 onvec = ovec./n;
23 
24 %return orthonormal vector
25 RBext = onvec;
26