Implemented general algorithm
This commit is contained in:
parent
6cff40e678
commit
c26b788503
@ -7,7 +7,21 @@ arma::vec* general_algorithm(
|
|||||||
arma::vec* g_vec
|
arma::vec* g_vec
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
int n = main_diag->n_elem;
|
||||||
|
double d;
|
||||||
|
|
||||||
|
for (int i = 1; i < n; i++) {
|
||||||
|
d = (*sub_diag)(i-1) / (*main_diag)(i-1);
|
||||||
|
(*main_diag)(i) -= d*(*sup_diag)(i-1);
|
||||||
|
(*g_vec)(i) -= d*(*g_vec)(i-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
(*g_vec)(n-1) /= (*main_diag)(n-1);
|
||||||
|
|
||||||
|
for (int i = n-2; i >= 0; i--) {
|
||||||
|
(*g_vec)(i) = ((*g_vec)(i) - (*sup_diag)(i) * (*g_vec)(i+1)) / (*main_diag)(i);
|
||||||
|
}
|
||||||
|
return g_vec;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user