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 GenericVector > | operator[] (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:

- /build/dolfin-lFBzDh/dolfin-2019.2.0~legacy20240219.1c52e83/dolfin/la/VectorSpaceBasis.h
- /build/dolfin-lFBzDh/dolfin-2019.2.0~legacy20240219.1c52e83/dolfin/la/VectorSpaceBasis.cpp