pymor.algorithms.pod
¶
Module Contents¶
- pymor.algorithms.pod.pod(A, product=None, modes=None, rtol=1e-07, atol=0.0, l2_err=0.0, method='method_of_snapshots', orth_tol=1e-10)[source]¶
Proper orthogonal decomposition of
A
.Viewing the
VectorArray
A
as aA.dim
xlen(A)
matrix, the return values of this method are theVectorArray
of left singular vectors and aNumPy array
of singular values of the singular value decomposition ofA
, where the inner product on R^(dim(A)
) is given byproduct
and the inner product on R^(len(A)
) is the Euclidean inner product.Parameters
- A
The
VectorArray
for which the POD is to be computed.- product
Inner product
Operator
w.r.t. which the POD is computed.- modes
If not
None
, at most the firstmodes
POD modes (singular vectors) are returned.- rtol
Singular values smaller than this value multiplied by the largest singular value are ignored.
- atol
Singular values smaller than this value are ignored.
- l2_err
Do not return more modes than needed to bound the l2-approximation error by this value. I.e. the number of returned modes is at most
argmin_N { sum_{n=N+1}^{infty} s_n^2 <= l2_err^2 }
where
s_n
denotes the n-th singular value.- method
Which SVD method from
svd_va
to use ('method_of_snapshots'
or'qr_svd'
).- orth_tol
POD modes are reorthogonalized if the orthogonality error is above this value.
Returns
- POD
VectorArray
of POD modes.- SVALS
One-dimensional
NumPy array
of singular values.