VectorSpaceBasis

class dolfin.cpp.la.VectorSpaceBasis

Bases: object

This class defines a basis for vector spaces, typically used for expressing nullspaces of singular operators and ‘near nullspaces’ used in smoothed aggregation algebraic multigrid.

Constructor.

Parameters:std::vector< std::shared_ptr< GenericVector >> basis (const) –
dim()

Number of vectors in the basis.

Return type:std::size_t
is_orthogonal()

Test if basis is orthogonal.

Parameters:tol (double) –
Return type:bool
is_orthonormal()

Test if basis is orthonormal.

Parameters:tol (double) –
Return type:bool
orthogonalize()

Orthogonalize x with respect to basis.

Parameters:& x (GenericVector) –
Return type:void
orthonormalize()

Apply the Gram-Schmidt process to orthonormalize the basis. Throws an error if a (near) linear dependency is detected. Error is thrown if <x_i, x_i> < tol.

Parameters:tol (double) –
Return type:void
thisown

The membership flag