This class represents a parameter dependent block diagonal matrix. The parameter is typically the time \( t \). The time dependence is represented through a Chebyshev interpolation.
|
|
| BlockDiagonalCheb () |
| | Constructs an empty interpolation object.
|
| |
|
| BlockDiagonalCheb (BlockDiagonalCheb &&other) noexcept |
| | Move constructor.
|
| |
|
| BlockDiagonalCheb (const BlockDiagonalCheb &other) |
| | Copy constructor.
|
| |
|
BlockDiagonalCheb & | operator= (BlockDiagonalCheb &&other) noexcept |
| | Move assignment operator.
|
| |
|
BlockDiagonalCheb & | operator= (const BlockDiagonalCheb &other) |
| | Copy assignment operator.
|
| |
| | BlockDiagonalCheb (const std::function< MatrixType(int, SciCore::Real)> &f, int nBlocks, SciCore::Real a, SciCore::Real b, SciCore::Real epsAbs, SciCore::Real epsRel, SciCore::Real hMin, bool *ok=nullptr) |
| | Creates a piecewise Chebyshev interpolation of the function \(f(t)\) with \(t\in[a,b]\).
|
| |
| | BlockDiagonalCheb (const std::function< MatrixType(int, SciCore::Real)> &f, int nBlocks, SciCore::Real a, SciCore::Real b, SciCore::Real epsAbs, SciCore::Real epsRel, SciCore::Real hMin, tf::Executor &executor, bool *ok=nullptr) |
| | Creates a piecewise Chebyshev interpolation of the function \(f(t)\) with \(t\in[a,b]\) in parallel.
|
| |
|
bool | operator== (const BlockDiagonalCheb &other) const |
| | Equality comparison operator.
|
| |
|
bool | operator!= (const BlockDiagonalCheb &other) const |
| | Inequality comparison operator.
|
| |
|
int | numBlocks () const noexcept |
| | Returns the number of matrix blocks.
|
| |
|
SciCore::Real | lowerLimit () const |
| | Lower limit of the interplation interval.
|
| |
|
SciCore::Real | upperLimit () const |
| | Upper limit of the interplation interval.
|
| |
|
BlockDiagonalMatrix | operator() (SciCore::Real t) const |
| | Returns the full interpolated matrix at time \( t \).
|
| |
|
MatrixType | operator() (int i, SciCore::Real t) const |
| | Returns block i of the interpolated matrix at time \( t \).
|
| |
|
const SciCore::ChebAdaptive< MatrixType > & | block (int i) const |
| | Returns the interpolation object for block i.
|
| |
|
BlockDiagonalCheb | diff () const |
| | Computes the derivative of the represented function and returns it as a new object.
|
| |
|
BlockDiagonalCheb | integrate () const |
| | Computes the integral of the represented function and returns it as a new object.
|
| |