pymor.reductors.interpolation
¶
Module Contents¶
- class pymor.reductors.interpolation.DelayBHIReductor(fom, mu=None)[source]¶
Bases:
GenericBHIReductor
Bitangential Hermite interpolation for
LinearDelayModels
.Parameters
- fom
The full-order
LinearDelayModel
to reduce.- mu
- class pymor.reductors.interpolation.GenericBHIReductor(fom, mu=None)[source]¶
Bases:
pymor.core.base.BasicObject
Generic bitangential Hermite interpolation reductor.
This is a generic reductor for reducing any linear
Model
that has a transfer function that is aFactorizedTransferFunction
(see [BG09]). The interpolation here is limited to only up to the first derivative. Interpolation points are assumed to be pairwise distinct.In particular, given:
interpolation points \(\sigma_i\),
right tangential directions \(b_i\), and
left tangential directions \(c_i\),
for \(i = 1, 2, \ldots, r\), which are closed under conjugation (if \(\sigma_i\) is real, then so are \(b_i\) and \(c_i\); if \(\sigma_i\) is complex, there is \(\sigma_j\) such that \(\sigma_j = \overline{\sigma_i}\), \(b_j = \overline{b_i}\), \(c_j = \overline{c_i}\)), this reductor finds a transfer function \(\hat{H}\) such that
\[\begin{split}H(\sigma_i) b_i & = \hat{H}(\sigma_i) b_i, \\ c_i^T H(\sigma_i) & = c_i^T \hat{H}(\sigma_i), \\ c_i^T H'(\sigma_i) b_i & = c_i^T \hat{H}'(\sigma_i) b_i,\end{split}\]for all \(i = 1, 2, \ldots, r\).
Parameters
- fom
The full-order
Model
to reduce.- mu
Methods
Reconstruct high-dimensional vector from reduced vector
u
.Bitangential Hermite interpolation.
- reduce(sigma, b, c, projection='orth')[source]¶
Bitangential Hermite interpolation.
Parameters
- sigma
Interpolation points (closed under conjugation), sequence of length
r
.- b
Right tangential directions,
NumPy array
of shape(r, fom.dim_input)
.- c
Left tangential directions,
NumPy array
of shape(r, fom.dim_output)
.- projection
Projection method:
'orth'
: projection matrices are orthogonalized with respect to the Euclidean inner product'biorth'
: projection matrices are biorthogolized with respect to the E product
Returns
- rom
Reduced-order model.
- class pymor.reductors.interpolation.LTIBHIReductor(fom, mu=None)[source]¶
Bases:
GenericBHIReductor
Bitangential Hermite interpolation for
LTIModels
.Parameters
- fom
The full-order
LTIModel
to reduce.- mu
Methods
Bitangential Hermite interpolation.
- reduce(sigma, b, c, projection='orth')[source]¶
Bitangential Hermite interpolation.
Parameters
- sigma
Interpolation points (closed under conjugation), sequence of length
r
.- b
Right tangential directions,
NumPy array
of shape(r, fom.dim_input)
.- c
Left tangential directions,
NumPy array
of shape(r, fom.dim_output)
.- projection
Projection method:
'orth'
: projection matrices are orthogonalized with respect to the Euclidean inner product'biorth'
: projection matrices are biorthogolized with respect to the E product'arnoldi'
: projection matrices are orthogonalized using the rational Arnoldi process (available only for SISO systems).
Returns
- rom
Reduced-order model.
- class pymor.reductors.interpolation.SOBHIReductor(fom, mu=None)[source]¶
Bases:
GenericBHIReductor
Bitangential Hermite interpolation for
SecondOrderModels
.Parameters
- fom
The full-order
SecondOrderModel
to reduce.- mu
- class pymor.reductors.interpolation.TFBHIReductor(fom, mu=None)[source]¶
Bases:
pymor.core.base.BasicObject
Loewner bitangential Hermite interpolation reductor.
See [BG12].
Parameters
- fom
TransferFunction
orModel
with atransfer_function
attribute.- mu
Methods
Reconstruct high-dimensional vector from reduced vector
u
.Realization-independent tangential Hermite interpolation.
- reduce(sigma, b, c)[source]¶
Realization-independent tangential Hermite interpolation.
Parameters
- sigma
Interpolation points (closed under conjugation), sequence of length
r
.- b
Right tangential directions,
NumPy array
of shape(r, fom.dim_input)
.- c
Left tangential directions,
NumPy array
of shape(r, fom.dim_output)
.
Returns
- lti
The reduced-order
LTIModel
interpolating the transfer function offom
.