|
Extension: Matrix functions
#include "dg/matrix/matrix.h"
|
\(T^{-1}\) More...
Classes | |
| class | dg::mat::TridiagInvHMGTI< real_type > |
| Compute the inverse of a general tridiagonal matrix. More... | |
| class | dg::mat::TridiagInvDF< real_type > |
| USE THIS ONE Compute the inverse of a general tridiagonal matrix. The algorithm does not rely on the determinant. More... | |
| class | dg::mat::TridiagInvD< real_type > |
| Compute the inverse of a general tridiagonal matrix. More... | |
Functions | |
| template<class value_type > | |
| value_type | dg::mat::compute_Tinv_m1 (const dg::TriDiagonal< thrust::host_vector< value_type > > &T, unsigned size) |
| Computes the value of \( (T^{-1})_{m1} = \langle \vec e_m, T^{-1}\vec e_1\rangle\) via a Thomas algorithm. | |
| template<class value_type > | |
| void | dg::mat::compute_Tinv_y (const dg::TriDiagonal< thrust::host_vector< value_type > > &T, thrust::host_vector< value_type > &x, const thrust::host_vector< value_type > &y, value_type a=1., value_type d=0.) |
| Computes the value of \( x = ((aT+dI)^{-1})y \) via Thomas algorithm. | |
| template<class value_type > | |
| void | dg::mat::invert (const dg::TriDiagonal< thrust::host_vector< value_type > > &T, dg::SquareMatrix< value_type > &Tinv) |
| Invert a tridiagonal matrix. | |
| template<class value_type > | |
| dg::SquareMatrix< value_type > | dg::mat::invert (const dg::TriDiagonal< thrust::host_vector< value_type > > &T) |
| Invert a tridiagonal matrix. | |
| template<class value_type > | |
| std::array< value_type, 2 > | dg::mat::compute_extreme_EV (const dg::TriDiagonal< thrust::host_vector< value_type > > &T) |
| Compute extreme Eigenvalues of a symmetric tridiangular matrix. | |
\(T^{-1}\)
| std::array< value_type, 2 > dg::mat::compute_extreme_EV | ( | const dg::TriDiagonal< thrust::host_vector< value_type > > & | T | ) |
Compute extreme Eigenvalues of a symmetric tridiangular matrix.
| value_type | real type |
| T | symmetric tridiangular matrix |
| value_type dg::mat::compute_Tinv_m1 | ( | const dg::TriDiagonal< thrust::host_vector< value_type > > & | T, |
| unsigned | size ) |
Computes the value of \( (T^{-1})_{m1} = \langle \vec e_m, T^{-1}\vec e_1\rangle\) via a Thomas algorithm.
| value_type | real type |
| T | The tridiagonal matrix |
| size | the parameter m |
| void dg::mat::compute_Tinv_y | ( | const dg::TriDiagonal< thrust::host_vector< value_type > > & | T, |
| thrust::host_vector< value_type > & | x, | ||
| const thrust::host_vector< value_type > & | y, | ||
| value_type | a = 1., | ||
| value_type | d = 0. ) |
Computes the value of \( x = ((aT+dI)^{-1})y \) via Thomas algorithm.
| value_type | real type |
| T | The tridiagonal matrix |
| x | contains the solution (resized if necessary) |
| y | the right hand side |
| a | optional scaling factor of T |
| d | optional addition to diagonal of T |
| dg::SquareMatrix< value_type > dg::mat::invert | ( | const dg::TriDiagonal< thrust::host_vector< value_type > > & | T | ) |
Invert a tridiagonal matrix.
This is a convenience shortcut for
| value_type | real type |
| T |
| void dg::mat::invert | ( | const dg::TriDiagonal< thrust::host_vector< value_type > > & | T, |
| dg::SquareMatrix< value_type > & | Tinv ) |
Invert a tridiagonal matrix.
This is a convenience shortcut for
| value_type | real type |
| T | |
| Tinv | (gets resized if necessary) |