`pymor.reductors.mt`¶

Module Contents¶

class pymor.reductors.mt.MTReductor(fom, mu=None)[source]

Modal Truncation reductor.

See Section 9.2 in [Ant05].

Parameters

fom

The full-order `LTIModel` to reduce.

mu

Methods

 `reconstruct` Reconstruct high-dimensional vector from reduced vector `u`. `reduce` Modal Truncation.
reconstruct(u)[source]

Reconstruct high-dimensional vector from reduced vector `u`.

reduce(r=None, decomposition='samdp', projection='orth', symmetric=False, which='NR', method_options=None, allow_complex_rom=False)[source]

Modal Truncation.

Parameters

r

Order of the reduced model.

decomposition

Algorithm used for the decomposition:

• `'eig'`: scipy.linalg.eig algorithm

• `'samdp'`: find dominant poles using `samdp` algorithm

projection

Projection method used:

• `'orth'`: projection matrices are orthogonalized with respect to the Euclidean inner product

• `'biorth'`: projection matrices are biorthogolized with respect to the E product

symmetric

If `True`, assume A is symmetric and E is symmetric positive definite.

which

A string specifying which `r` eigenvalues and eigenvectors to compute. Possible values are:

• `'SM'`: select eigenvalues with smallest magnitude (only for decomposition with eig)

• `'LR'`: select eigenvalues with largest real part (only for decomposition with eig)

• `'NR'`: select eigenvalues with largest norm(residual) / abs(Re(pole))

• `'NS'`: select eigenvalues with largest norm(residual) / abs(pole)

• `'NM'`: select eigenvalues with largest norm(residual)

method_options

Optional dict with more options for the samdp algorithm.

allow_complex_rom

If `True`, the reduced model is complex when the poles of the reduced model are not closed under complex conjugation.

Returns

rom

Reduced-order model.