ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-3.0/src/minimizers/MinimizerParameterSet.hpp
(Generate patch)

Comparing:
trunk/OOPSE-3.0/src/minimizers/MinimizerParameterSet.hpp (file contents), Revision 1490 by gezelter, Fri Sep 24 04:16:43 2004 UTC vs.
branches/new_design/OOPSE-3.0/src/minimizers/MinimizerParameterSet.hpp (file contents), Revision 1884 by tim, Tue Dec 14 19:08:44 2004 UTC

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

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines