Update documentation

This commit is contained in:
2023-09-24 16:02:40 +02:00
parent 58c58a97af
commit 3b1c42cf2d
8 changed files with 69 additions and 28 deletions

View File

@@ -13,6 +13,11 @@
#include <armadillo>
/** @brief Create a tridiagonal matrix.
*
* create_tridiagonal creates a tridiagonal matrix by first creating a matrix,
* filled with zeros, of size NxN where N is the size of the main diagonal
* matrix. Then it will fill all the values from the vector parameters into
* the matrix and return it.
*
* @param a Vector for the lower diagonal of size N-1
* @param d Vector for the main diagonal of size N
@@ -26,6 +31,11 @@ arma::mat create_tridiagonal(
const arma::vec& e);
/** @brief Create a tridiagonal matrix.
*
* This is an overload that takes doubles for the diagonals instead of
* vectors. It will create 3 vectors that are filled with the signature
* provided in the arguments, and then call create_tridiagonal with the
* vectors as the arguments.
*
* @param n The dimensions of the tridiagonal matrix
* @param a The signature for the lower diagonal
@@ -37,6 +47,9 @@ arma::mat create_tridiagonal(
arma::mat create_tridiagonal(int n, double a, double d, double e);
/** @brief Create a symmetric tridiagonal matrix.
*
* create_symmetric_tridiagonal creates a symmetric tridiagonal matrix by
* calling create_tridiagonal with the same signature for the off-diagonals.
*
* @param n The dimensions of the tridiagonal matrix
* @param a The signature for the off diagonals
@@ -47,6 +60,11 @@ arma::mat create_tridiagonal(int n, double a, double d, double e);
arma::mat create_symmetric_tridiagonal(int n, double a, double d);
/** @brief Find the off-diagonal element with the largest absolute value.
*
* max_offdiag_symmetric find the element with the largest absolute value
* that isn't in the diagonal. Since this function assumes that the matrix
* that is given is symmetrical, we only need to loop through the upper
* diagonals of the matrix.
*
* @param A Symmetric matrix
* @param k Variable to store the row of the return value