Conjugate Gradient
cg_impls.h
Go to the documentation of this file.
1 #ifndef __CG_IMPLS_H_
2 #define __CG_IMPLS_H_
3 
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 
23 typedef void (*Aop)(void *, int, const double *, int, double *, int);
24 
25 int rb_dcgsv(int, Aop, void *, const double *, double *);
26 void rb_dscal(int, double, double *, int);
27 void rb_daxpy(int, double, const double *, int, double *, int);
28 double rb_damax(int, const double *, int);
29 double rb_ddot(int, const double *, int, const double *, int);
30 void rb_dsub(int, const double *, int, const double *, int, \
31  double *, int);
32 void rb_dcopy(int, const double *, int, double *, int);
33 
34 
35 #ifdef __cplusplus
36 }
37 #endif
38 
39 #endif
void rb_dsub(int, const double *, int, const double *, int, double *, int)
Perform vector substraction, i.e. .
Definition: cg_impls.c:191
void rb_dcopy(int, const double *, int, double *, int)
Copy a vector to another.
Definition: cg_impls.c:171
double rb_damax(int, const double *, int)
Finds the element in X which has the maximum absolute value.
Definition: cg_impls.c:125
void rb_daxpy(int, double, const double *, int, double *, int)
Scale a vector X by a constant add add it to another vector Y. .
Definition: cg_impls.c:107
void rb_dscal(int, double, double *, int)
Scales a vector by a constant. .
Definition: cg_impls.c:87
void(* Aop)(void *, int, const double *, int, double *, int)
The prototype of all matrix-vector operators. It requires six parameters and has no return value...
Definition: cg_impls.h:23
double rb_ddot(int, const double *, int, const double *, int)
Perform inner product .
Definition: cg_impls.c:151
int rb_dcgsv(int, Aop, void *, const double *, double *)
Solves a linear system using conjugate method.
Definition: cg_impls.c:32