pymor.reductors.coercive

Module Contents

class pymor.reductors.coercive.CoerciveRBEstimator(residual, residual_range_dims, coercivity_estimator, projected_output_adjoint=None)[source]

Bases: pymor.core.base.ImmutableObject

Instantiated by CoerciveRBReductor.

Not to be used directly.

estimate_error(self, U, mu, m)[source]
estimate_output_error(self, U, mu, m, return_vector=False)[source]
restricted_to_subbasis(self, dim, m)[source]
class pymor.reductors.coercive.CoerciveRBReductor(fom, RB=None, product=None, coercivity_estimator=None, check_orthonormality=None, check_tol=None)[source]

Bases: pymor.reductors.basic.StationaryRBReductor

Reduced Basis reductor for StationaryModels with coercive linear operator.

The only addition to StationaryRBReductor is an error estimator which evaluates the dual norm of the residual with respect to a given inner product. For the reduction of the residual we use ResidualReductor for improved numerical stability [BEOR14].

Parameters

fom

The Model which is to be reduced.

RB

VectorArray containing the reduced basis on which to project.

product

Inner product for the orthonormalization of RB, the projection of the Operators given by vector_ranged_operators and for the computation of Riesz representatives of the residual. If None, the Euclidean product is used.

coercivity_estimator

None or a ParameterFunctional returning a lower bound for the coercivity constant of the given problem. Note that the computed error estimate is only guaranteed to be an upper bound for the error when an appropriate coercivity estimate is specified.

assemble_error_estimator(self)[source]
assemble_error_estimator_for_subbasis(self, dims)[source]
class pymor.reductors.coercive.SimpleCoerciveRBEstimator(estimator_matrix, coercivity_estimator, output_estimator_matrices, output_functional_coeffs)[source]

Bases: pymor.core.base.ImmutableObject

Instantiated by SimpleCoerciveRBReductor.

Not to be used directly.

estimate_error(self, U, mu, m)[source]
estimate_output_error(self, U, mu, m, return_vector=False)[source]
restricted_to_subbasis(self, dim, m)[source]
class pymor.reductors.coercive.SimpleCoerciveRBReductor(fom, RB=None, product=None, coercivity_estimator=None, check_orthonormality=None, check_tol=None)[source]

Bases: pymor.reductors.basic.StationaryRBReductor

Reductor for linear StationaryModels with affinely decomposed operator and rhs.

Note

The reductor CoerciveRBReductor can be used for arbitrary coercive StationaryModels and offers an improved error estimator with better numerical stability.

The only addition is to StationaryRBReductor is an error estimator, which evaluates the norm of the residual with respect to a given inner product.

Parameters

fom

The Model which is to be reduced.

RB

VectorArray containing the reduced basis on which to project.

product

Inner product for the orthonormalization of RB, the projection of the Operators given by vector_ranged_operators and for the computation of Riesz representatives of the residual. If None, the Euclidean product is used.

coercivity_estimator

None or a ParameterFunctional returning a lower bound for the coercivity constant of the given problem. Note that the computed error estimate is only guaranteed to be an upper bound for the error when an appropriate coercivity estimate is specified.

assemble_error_estimator(self)[source]
assemble_error_estimator_for_subbasis(self, dims)[source]
assemble_output_error_estimator(self)[source]