Module Contents

class pymor.algorithms.lincomb.AssembleLincombRules(coefficients, solver_options, name)[source]

Bases: pymor.algorithms.rules.RuleTable

Define algorithm by a table of match conditions and corresponding actions.

RuleTable manages a table of rules, stored in the rules attributes, which can be applied to given objects.

A new table is created by subclassing RuleTable and defining new methods which are decorated with match_class, match_generic or another rule subclass. The order of the method definitions determines the order in which the defined rules are applied.



If True, cache results of apply.


list of all defined rules.

action_BlockDiagonalOperator(self, ops)[source]
action_BlockOperatorBase(self, ops)[source]
action_BlockSpaceIdentityOperator(self, ops)[source]
action_IdentityOperator(self, ops)[source]
action_SecondOrderModelOperator(self, ops)[source]
action_VectorArrayOperator(self, ops)[source]
action_ZeroOperator(self, ops)[source]
action_call_assemble_lincomb_method(self, ops)[source]
action_merge_into_low_rank_updated_operator(self, ops)[source]
action_merge_low_rank_operators(self, ops)[source]
action_return_lincomb(self, ops)[source]
action_zero_coeff(self, ops)[source]
pymor.algorithms.lincomb.assemble_lincomb(operators, coefficients, solver_options=None, name=None)[source]

Try to assemble a linear combination of the given operators.

Returns a new Operator which represents the sum

c_1*O_1 + ... + c_N*O_N

where O_i are Operators and c_i scalar coefficients.

This function is called in the assemble method of LincombOperator and is not intended to be used directly.

To form the linear combination of backend Operators (containing actual matrix data), _assemble_lincomb will be called on the first Operator in the linear combination.



List of Operators O_i whose linear combination is formed.


List of the corresponding linear coefficients c_i.


solver_options for the assembled operator.


Name of the assembled operator.


The assembled Operator.