Fem operators can be obtained from stored components.
This class helps storing Fem system components for accelerating the operator evaluation, if it is done multiple times. Since the compontents are accessible, it is also useful for the reduced data generation. Note that this is compatible with the function Fem.Assembly.operator.
The components can be assembled with the method assemble_components(). If "operators" is a Fem.OperatorsDefault object, the components are stored in operators.A_comp and operators.f_comp. To obtain the Fem system simply call [A, f] = operators(model, model_data).
In stokes problems, it can only be used for linear terms.
Definition at line 18 of file OperatorsDefault.m.
Public Member Functions | |
OperatorsDefault () | |
Only initializing new object. | |
function
varargout = | evaluate (model,ModelData model_data) |
Operator evaluation. Returns a full Fem system. More... | |
function this = | assemble_components (model,ModelData model_data) |
Calls the assembly routine of model and stores all components. More... | |
function this = | clear_components () |
Deletes all components. More... | |
function
varargout = | subsref (S) |
Overloads subsref. More... | |
Public Attributes | |
A_comp = {""} | |
f_comp = {""} | |
componentsAssembled = 0 | |
function this = Fem.OperatorsDefault.assemble_components | ( | model, | |
ModelData | model_data | ||
) |
Calls the assembly routine of model and stores all components.
model | model |
model_data | Matlab structure storing (possibly) high dimensional data needed by IDetailedModel.detailed_simulation(). |
this | this |
operators —
operatorscomponentsAssembled —
componentsAssembled Definition at line 124 of file OperatorsDefault.m.
function this = Fem.OperatorsDefault.clear_components | ( | ) |
Deletes all components.
this | this |
A_comp —
A comp f_comp —
f comp componentsAssembled —
componentsAssembled Definition at line 149 of file OperatorsDefault.m.
function varargout = Fem.OperatorsDefault.evaluate | ( | model, | |
ModelData | model_data | ||
) |
Operator evaluation. Returns a full Fem system.
If the components are stored, the system is computed via linear combinations of the components, else the assembly routine of model is called.
model | model |
model_data | Matlab structure storing (possibly) high dimensional data needed by IDetailedModel.detailed_simulation(). |
varargout | The first output represents the system matrix, the second output (only if requested) the right-hand side vector. The field model.decomp_mode has no influence. |
operators —
operators has_nonlinearity —
has nonlinearity matrix_nonlin_indices —
matrix nonlin indices dirichlet_values —
dirichlet valuesbc_info.dirichlet_dof_vector_components —
bc info.dirichlet dof vector components bc_info.dirichlet_gids —
bc info.dirichlet gids df_info.ndofs —
df info.ndofs Definition at line 63 of file OperatorsDefault.m.
function varargout = Fem.OperatorsDefault.subsref | ( | S | ) |
Overloads subsref.
This enables an operator evaluation via operators(model, model_data), if "operators" is a Fem.OperatorsDefault object.
S | S |
varargout | varargout |
Definition at line 167 of file OperatorsDefault.m.