DOLFIN
DOLFIN C++ interface
Loading...
Searching...
No Matches
dolfin::VectorSpaceBasis Class Reference

#include <VectorSpaceBasis.h>

Public Member Functions

 VectorSpaceBasis (const std::vector< std::shared_ptr< GenericVector > > basis)
 Constructor.
 ~VectorSpaceBasis ()
 Destructor.
void orthonormalize (double tol=1.0e-10)
bool is_orthonormal (double tol=1.0e-10) const
 Test if basis is orthonormal.
bool is_orthogonal (double tol=1.0e-10) const
 Test if basis is orthogonal.
void orthogonalize (GenericVector &x) const
 Orthogonalize x with respect to basis.
std::size_t dim () const
 Number of vectors in the basis.
std::shared_ptr< const GenericVectoroperator[] (std::size_t i) const
 Get a particular basis vector.

Detailed Description

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.

Member Function Documentation

◆ orthonormalize()

void VectorSpaceBasis::orthonormalize ( double tol = 1.0e-10)

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.


The documentation for this class was generated from the following files: