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
8
class
Matrix_PDS_Tridiag
:
public
Matrix
9
{
10
/*
11
* Represents a real symmetric positive definite matrix
12
* stored in a block format
13
* */
14
public
:
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
19
protected
:
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
Matrix_PDS_Tridiag
Definition
matrix_pds_tridiag.hpp:9
Matrix
Definition
matrix.hpp:9
vendor
sll
include
sll
matrix_pds_tridiag.hpp
Generated by
1.9.8