rbmatlab  1.16.09
 All Classes Namespaces Files Functions Variables Modules Pages
RB_init_data_basis.m
1 function RBinit = RB_init_data_basis(model,detailed_data)
2 %function RBinit = RB_init_data_basis(model,detailed_data)
3 %
4 % function generating an initial reduced basis by varying all mu-values
5 % in the columns of M and collecting the init-states.
6 % detailed_data is assumed to contain the list of parameters in
7 % detailed_data.RB_info.M_train
8 %
9 % required fields of model:
10 % init_values_algorithm : name of function computing the
11 % initial values
12 % inner_product_matrix_algorithm : function giving the inner-product matrix
13 
14 % Bernard Haasdonk 27.3.2007
15 
16 %grid = detailed_data.grid;
17 
18 % generate RBinit: all initial data constellations
19 RBinit = [];
20 M = detailed_data.RB_info.M_train;
21 model.decomp_mode = 0;
22 
23 for i = 1:size(M,2)
24  model = model.set_mu(model,M(:,i));
25  % use detailed_data as model_data here:
26  U0 = model.init_values_algorithm(model,detailed_data);
27  RBinit = [RBinit, U0];
28 end;
29 
30 RBinit = model.orthonormalize(model, detailed_data, RBinit);
31 % RBinit = delzerocolumns(RBinit);
32 
33 % start with very simple RBinit if none was found yet
34 if(size(RBinit, 2) == 0)
35  RBinit = ones(size(RBinit,1), 1);
36 end
37 disp(['found ',num2str(size(RBinit,2)),' basis functions for',...
38  ' init data variation.']);
39 
function Xdel = delzerocolumns(X, epsilon, A)
function deleting zero-columns from matrix X.