2 %
interface for
GreedyPlugin.Interface implementations generating an empirical
8 % boolean flag specifying whether after the final extension step the
9 % Lebesgue constant shall be computed and stored in the
11 compute_lebesgue = true;
15 function eiei = EICommon(generator)
16 % function eiei = EICommon(generator)
17 % constructor for an EICommon instance
21 % dimensional) basis functions, i.e. operator or function
23 assert(isa(generator, 'SnapshotsGenerator.SpaceOpEvals'));
27 function [max_errs, max_err_sequence, max_mu_index] = error_estimators(this, rmodel, detailed_data, M_train)
28 % function [max_errs, max_err_sequence, max_mu_index] = error_estimators(this, rmodel, detailed_data, M_train)
37 % @note This method is not implemented for empirical interpolation. There
38 % is no known a posteriori error estimator.
40 error(['No error estimators available for empirical interpolation. Use', ...
41 'indicator_mode = ''error''']);
44 function detailed_data = finalize(this, rmodel, detailed_data)
45 % function detailed_data = finalize(this, rmodel, detailed_data)
57 % This function actually computes the Lebesgue constant if indicated by
58 % 'compute_lebesgue' and stores it in info fields.
59 if this.compute_lebesgue
60 QM = detailed_data.QM;
61 BM = detailed_data.BM;
63 detailed_data.XI = XI;
64 set_field(detailed_data, 'lebesgue', max(sum(abs(XI),2)));
65 set_field(detailed_data, 'max_lebesgue', 2^size(BM,2) - 1);
69 function merged = horzcat(this, varargin)
70 % function merged = horzcat(varargin)
74 % @sa SnapshotsGenerator.Cached.plus()
77 % @code ei_ext_merged = [ ei_ext1, ei_ext2, ei_ext3 ]; @endcode
85 mergedgen = this.generator;
86 for i = 1:length(varargin)
87 mergedgen = mergedgen + varargin{i}.
generator;
89 %! \todo substitute the next line by some copy command
93 function summed = vertcat(
this, varargin)
94 %
function merged = vertcat(varargin)
100 % Usage is like
this:
101 % @code ei_ext_sum = [ ei_ext1; ei_ext2; ei_ext3 ];
@endcode
115 %
function cop = copy(
this);
116 % makes a deep copy of
this extension instance
119 % cop: a
new instance of type EICommon which is a deep copy of
this
Interface for the storage and generation of detailed data that can be used to build reduced basis fun...
virtual function Greedy.User.IDetailedData detailed_data = finalize(Greedy.User.IReducedModel rmodel,Greedy.User.IDetailedData detailed_data)
function called after the last extension process
Implementation of a SnapshotsGenerator.Cached for empirical basis generation. The generate() method r...
Specialization plugins for the greedy algorithm.
SnapshotsGenerator.Cached generator
an object generating possible (high dimension) basis functions
This is the interface for a reduced model providing methods to compute low dimensional reduced simula...
Plugin for the Greedy.Algorithm class generating a collateral reduced basis space plus interpolation ...
virtual function [ max_errs , max_err_sequence , max_mu_index ] = error_estimators(Greedy.User.IReducedModel rmodel,Greedy.User.IDetailedData detailed_data, M_train)
computes a posteriori error estimators for the reduced simulations for every parameter vector from a ...
detailed data node implementation storing a collateral reduced basis space and interpolation DOFs ...
Default implementation of a Greedy.Plugin.Interface interface class.
Customizable implementation of an abstract greedy algorithm.
Plugin for the Greedy.Algorithm class generating collateral reduced basis space plus interpolation DO...