2 properties (SetAccess=
private, Dependent)
6 properties (Access = private)
7 data_injection_path = [];
10 properties (Access = private)
16 function eitpbg = EiTpart(child_basis_generation)
17 eitpbg = eitpbg@
Greedy.Interface(child_basis_generation.model);
18 eitpbg.child = child_basis_generation;
19 eitpbg.tpart_map = [0 child_basis_generation.model.T];
22 function set_trainingsset(this, paramset)
23 set_trainingsset(this.child, paramset);
26 function update_trainingsset(this, paramset)
27 update_trainingsset(this.child, paramset);
30 function set_validation_generator(this, val_gen)
31 set_validation_generator(this.child, val_gen);
34 function prepare(this, model_data)
35 prepare(this.child, model_data);
38 function detailed_data = gen_detailed_data(this, detailed_data)
41 function detailed_data = init_basis(this, model_data)
42 detailed_data = init_basis(this.child, model_data);
43 detailed_data = inject_tpart_into_detailed_data(this, detailed_data);
44 injected_ei_dd = get_injected_detailed_data(this, detailed_data);
48 methods (Access = private)
49 function detailed_data = inject_tpart_into_detailed_data(this, detailed_data)
50 ei_child = detailed_data;
51 if isempty(this.injection_path)
53 if length(ei_child) > 1
55 '
EiTpart is not allows to be used on top of another',...
56 'basis generation algorithm paritioning the EI bases.');
57 elseif isequal(this.child.generated_basis_type, 'ei')
59 elseif isequal(this.child.generated_basis_type, 'eirb')
61 ei_child = ei_child.ei;
63 ei_child = get(ei_child, 1);
64 this.injection_path = [this.injection_path, 1];
66 elseif isequal(this.child.generated_basis_type, 'rb')
68 'You tried to use
EiTpart on top of a basis generation', ...
69 'algorithm producing no empirical interpolation basis');
73 injected_dd_ei =
Greedy.
DataTree.Detailed.TpartNode(ei_child, tpart_map);
Interface class for all kind of reduced basis generation algorithms
Customizable implementation of an abstract greedy algorithm.