19#ifndef ACTION_CHOLESKY
20#define ACTION_CHOLESKY
22#include "STL_interface.hh"
30template<
class Interface>
39 MESSAGE(
"Action_cholesky Ctor");
42 init_matrix_symm<pseudo_random>(X_stl,_size);
43 init_matrix<null_function>(C_stl,_size);
46 for (
int i=0;
i<_size; ++
i)
47 X_stl[
i][
i] = std::abs(X_stl[
i][
i]) * 1e2 + 100;
50 Interface::matrix_from_stl(X_ref,X_stl);
51 Interface::matrix_from_stl(X,X_stl);
52 Interface::matrix_from_stl(
C,C_stl);
55 for (
int j=0;
j<_size; ++
j)
57 double r = std::max(_size -
j -1,0);
66 INFOS(
"illegal call to Action_cholesky Copy Ctor");
74 MESSAGE(
"Action_cholesky Dtor");
77 Interface::free_matrix(X_ref,_size);
78 Interface::free_matrix(X,_size);
79 Interface::free_matrix(
C,_size);
84 static inline std::string
name(
void )
86 return "cholesky_"+Interface::name();
94 Interface::copy_matrix(X_ref,X,_size);
98 Interface::cholesky(X,
C,_size);
117 typename Interface::stl_matrix X_stl;
118 typename Interface::stl_matrix C_stl;
120 typename Interface::gene_matrix X_ref;
121 typename Interface::gene_matrix X;
122 typename Interface::gene_matrix
C;
int i
Definition BiCGSTAB_step_by_step.cpp:9
Scalar Scalar int size
Definition benchVecAdd.cpp:17
Definition action_cholesky.hh:31
static std::string name(void)
Definition action_cholesky.hh:84
Action_cholesky(int size)
Definition action_cholesky.hh:37
Action_cholesky(const Action_cholesky &)
Definition action_cholesky.hh:64
void calculate(void)
Definition action_cholesky.hh:97
void initialize(void)
Definition action_cholesky.hh:93
double nb_op_base(void)
Definition action_cholesky.hh:89
void check_result(void)
Definition action_cholesky.hh:101
~Action_cholesky(void)
Definition action_cholesky.hh:72
std::ptrdiff_t j
Definition tut_arithmetic_redux_minmax.cpp:2
#define INFOS(chain)
Definition utilities.h:22
#define MESSAGE(chain)
Definition utilities.h:76