ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-3.0/src/minimizers/MinimizerParameterSet.hpp
Revision: 1884
Committed: Tue Dec 14 19:08:44 2004 UTC (19 years, 8 months ago) by tim
File size: 2571 byte(s)
Log Message:
more fix in MPI version

File Contents

# User Rev Content
1 tim 1826 #ifndef _MININIZERPARAMETERSET_H_
2    
3     #define _MININIZERPARAMETERSET_H_
4    
5 tim 1884 namespace oopse {
6 tim 1826
7     // base class of minimizer's parameter set
8    
9 tim 1884 class MinimizerParameterSet {
10     public:
11 tim 1826
12 tim 1884 MinimizerParameterSet() {
13     setDefaultParameter();
14     }
15 tim 1826
16 tim 1884 MinimizerParameterSet(MinimizerParameterSet &param) {
17     * this = param;
18     }
19 tim 1826
20 tim 1884 void operator =(MinimizerParameterSet &param) {
21     maxIteration = param.maxIteration;
22 tim 1826
23 tim 1884 stepSize = param.stepSize;
24 tim 1826
25 tim 1884 stepTol = param.stepTol;
26 tim 1826
27 tim 1884 fTol = param.fTol;
28 tim 1826
29 tim 1884 gTol = param.gTol;
30 tim 1826
31 tim 1884 writeFrq = param.writeFrq;
32 tim 1826
33 tim 1884 lsMaxIteration = param.lsMaxIteration;
34 tim 1826
35 tim 1884 lsTol = param.lsTol;
36     }
37 tim 1826
38 tim 1884 virtual void setDefaultParameter() {
39     maxIteration = 200;
40 tim 1826
41 tim 1884 stepSize = 0.01;
42 tim 1826
43 tim 1884 stepTol = DEFAULTTOLERANCE;
44 tim 1826
45 tim 1884 fTol = DEFAULTTOLERANCE;
46 tim 1826
47 tim 1884 gTol = DEFAULTTOLERANCE;
48 tim 1826
49 tim 1884 writeFrq = maxIteration;
50 tim 1826
51 tim 1884 lsMaxIteration = 50;
52 tim 1826
53 tim 1884 lsTol = DEFAULTTOLERANCE;
54     }
55 tim 1826
56 tim 1884 void setStepTol(double tol) {
57     stepTol = tol;
58     }
59 tim 1826
60 tim 1884 double getStepTol() {
61     return stepTol;
62     }
63 tim 1826
64 tim 1884 void setStepSize(double size) {
65     stepSize = size;
66     }
67 tim 1826
68 tim 1884 double getStepSize() {
69     return stepSize;
70     }
71 tim 1826
72 tim 1884 void setMaxIteration(int iter) {
73     maxIteration = iter;
74     }
75 tim 1826
76 tim 1884 int getMaxIteration() {
77     return maxIteration;
78     }
79 tim 1826
80 tim 1884 void setFTol(double tol) {
81     fTol = tol;
82     }
83 tim 1826
84 tim 1884 double getFTol() {
85     return fTol;
86     }
87 tim 1826
88 tim 1884 void setGTol(double tol) {
89     gTol = tol;
90     }
91 tim 1826
92 tim 1884 double getGTol() {
93     return gTol;
94     }
95 tim 1826
96 tim 1884 void setLineSearchTol(double tol) {
97     lsTol = tol;
98     }
99 tim 1826
100 tim 1884 double getLineSearchTol() {
101     return lsTol;
102     }
103 tim 1826
104 tim 1884 void setLineSearchMaxIteration(int iter) {
105     lsMaxIteration = iter;
106     }
107 tim 1826
108 tim 1884 int getLineSearchMaxIteration() {
109     return lsMaxIteration;
110     }
111 tim 1826
112 tim 1884 void setWriteFrq(int frq) {
113     writeFrq = frq;
114     }
115 tim 1826
116 tim 1884 int getWriteFrq() {
117     return writeFrq;
118     }
119 tim 1826
120 tim 1884 protected:
121 tim 1826
122 tim 1884 int maxIteration;
123 tim 1826
124 tim 1884 double stepTol;
125 tim 1826
126 tim 1884 double fTol;
127 tim 1826
128 tim 1884 double gTol;
129 tim 1826
130 tim 1884 double stepSize;
131 tim 1826
132 tim 1884 int lsMaxIteration;
133 tim 1826
134 tim 1884 double lsTol;
135 tim 1826
136 tim 1884 int writeFrq;
137 tim 1826
138 tim 1884 static const double DEFAULTTOLERANCE = 1.0e-8;
139 tim 1826
140     };
141    
142 tim 1884 }
143 tim 1826 #endif

Properties

Name Value
svn:executable *