Gyselalib++
 
Loading...
Searching...
No Matches
matrix_pds_tridiag.hpp
1#ifndef MATRIX_PDS_BANDED_H
2#define MATRIX_PDS_BANDED_H
3
4#include <memory>
5
6#include "sll/matrix.hpp"
7
9{
10 /*
11 * Represents a real symmetric positive definite matrix
12 * stored in a block format
13 * */
14public:
15 Matrix_PDS_Tridiag(int n);
16 virtual double get_element(int i, int j) const override;
17 virtual void set_element(int i, int j, double a_ij) override;
18
19protected:
20 virtual int factorize_method() override;
21 virtual int solve_inplace_method(double* b, char transpose, int n_equations) const override;
22 std::unique_ptr<double[]> d; // diagonal
23 std::unique_ptr<double[]> l; // lower diagonal
24};
25
26#endif // MATRIX_SYMMETRIC_BANDED_H
Definition matrix_pds_tridiag.hpp:9
Definition matrix.hpp:9