4 |
|
class MinimizerBase{ |
5 |
|
public: |
6 |
|
|
7 |
+ |
virtual void Init() = 0; |
8 |
|
virtual void Minimize() = 0; |
9 |
|
virtual int step() = 0; |
10 |
< |
virtual bool testConvergence() = 0; |
10 |
> |
virtual int testConvergence() = 0; |
11 |
> |
|
12 |
|
|
13 |
|
virtual bool isSolvable() = 0; |
14 |
|
|
15 |
|
void double setFTol(double tol); |
16 |
|
void double setGradTol(double gradTol); |
17 |
|
|
18 |
< |
void setStepSize(double step); |
19 |
< |
double getStepSize(); |
18 |
> |
void setStepSize(double step) { stepSize = step;} |
19 |
> |
double getStepSize() { return stepSize;} |
20 |
|
|
21 |
< |
void setMaxStep(); |
22 |
< |
double getMaxStep(); |
21 |
> |
void setMaxStep(double step) { maxStep = step;} |
22 |
> |
double getMaxStep() {return maxStep;} |
23 |
|
|
24 |
< |
const string& getMethodName(); |
25 |
< |
void setMethodName(const string& name); |
24 |
> |
const string& getMethodName() {return methodName;} |
25 |
> |
void setMethodName(const string& name) { methodName = name;} |
26 |
|
|
25 |
– |
void setObjFunctor(); |
26 |
– |
void getObjFunctor(); |
27 |
– |
|
28 |
– |
/* |
29 |
– |
void setUpdateFunctor(); |
30 |
– |
void getUpdateFunctor(); |
31 |
– |
|
32 |
– |
void setSearchFunctor(); |
33 |
– |
void getSearchFunctor(); |
34 |
– |
*/ |
35 |
– |
|
27 |
|
protected: |
28 |
|
|
29 |
|
double stepSize; |
31 |
|
double fTol; |
32 |
|
double gradTol; |
33 |
|
string methodName; |
43 |
– |
|
44 |
– |
bool hasObjFunctor; |
45 |
– |
|
46 |
– |
/* |
47 |
– |
bool hasUpdateFunctor; |
48 |
– |
|
49 |
– |
bool hasSearchFunctor; |
50 |
– |
*/ |
51 |
– |
|
34 |
|
}; |
35 |
|
#endif |