HalleyChebyAD
Main Page
Classes
Files
File List
File Members
All
Classes
Files
Functions
Variables
Friends
ConjugateGradients.h
1
#include <adolc/adolc.h>
2
#include "
SimpleVector.hpp
"
3
4
template
<
class
Vector>
5
class
ConjugateGradients
{
6
public
:
7
enum
{ BELOW_TOLERANCE, REACHED_MAX_ITER, NOT_FINISHED, NEGATIVE_CURVATURE, ZERO_CURVATURE };
8
string
EnumStrings[5];
// = { "REACHED_MAX_ITER", "BELOW_TOLERANCE", "NOT_FINISHED"};
9
string
getTextForEnum(
int
enumVal )
10
{
11
return
EnumStrings[enumVal];
12
}
13
int
iterations;
14
const
int
max_iterations;
15
double
tol;
16
double
resid;
17
Vector x;
18
ConjugateGradients
(
const
int
_max_iterations,
const
double
_tol,
const
Vector &Ax,
const
Vector &_x,
const
Vector &b, Vector &p,
bool
print_system_solve);
19
~
ConjugateGradients
();
20
int
step(Vector &Ax, Vector &p);
21
void
print();
22
void
activate_printing(
bool
b);
23
int
get_state()
const
{
return
(state);}
24
private
:
25
ConjugateGradients
(
ConjugateGradients
& other );
//Prohibit copy construct.
26
int
state;
27
int
print_multiple;
28
int
print_count;
29
bool
print_on;
30
double
normr0;
31
Vector b;
32
Vector r;
33
Vector temp;
34
};
35
ConjugateGradients
Definition:
ConjugateGradients.h:5
SimpleVector.hpp
include
ConjugateGradients.h
Generated on Tue Nov 25 2014 19:16:02 for HalleyChebyAD by
1.8.6