ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/Globals.hpp
Revision: 1091
Committed: Tue Mar 16 19:22:56 2004 UTC (20 years, 4 months ago) by tim
File size: 8253 byte(s)
Log Message:
ZConstraint now can support sequential moving. Refactorying is needed to support SMD in ZConstraint

File Contents

# Content
1 #ifndef __GLOBALS_H__
2 #define __GLOBALS_H__
3
4 #include <iostream>
5
6 #include <stdlib.h>
7 #include <vector>
8
9 #include "BASS_interface.h"
10 #include "Component.hpp"
11 #include "LinkedCommand.hpp"
12 #include "MakeStamps.hpp"
13 #include "ZconStamp.hpp"
14
15 using namespace std;
16
17 class Globals{
18
19 public:
20
21 Globals();
22 ~Globals();
23
24 int newComponent( event* the_event );
25 int componentAssign( event* the_event );
26 int componentEnd( event* the_event );
27
28 int newZconstraint( event* the_event );
29 int zConstraintAssign( event* the_event );
30 int zConstraintEnd( event* the_event );
31
32 int globalAssign( event* the_event );
33 int globalEnd( event* the_event );
34
35 char* getForceField( void ) { return force_field; }
36 int getNComponents( void ) { return n_components; }
37 double getTargetTemp( void ) { return target_temp; }
38 double getTargetPressure( void ) { return target_pressure; }
39 double getQmass( void ) { return q_mass; }
40 double getTauThermostat( void ) { return tau_thermostat; }
41 double getTauBarostat( void ) { return tau_barostat; }
42 char* getEnsemble( void ) { return ensemble; }
43 double getDt( void ) { return dt; }
44 double getRunTime( void ) { return run_time; }
45
46
47 int getNzConstraints( void ) { return n_zConstraints; }
48 char* getInitialConfig( void ) { return initial_config; }
49 char* getFinalConfig( void ) { return final_config; }
50 int getNMol( void ) { return n_mol; }
51 double getDensity( void ) { return density; }
52 double getBox( void ) { return box; }
53 double getBoxX( void ) { return box_x; }
54 double getBoxY( void ) { return box_y; }
55 double getBoxZ( void ) { return box_z; }
56 double getSampleTime( void ) { return sample_time; }
57 double getStatusTime( void ) { return status_time; }
58 double getResetTime( void ) { return resetTime; }
59 double getThermalTime( void ) { return thermal_time; }
60 double getDielectric( void ) { return dielectric; }
61 double getECR( void) { return ecr; }
62 double getEST( void) { return est; }
63 int getTempSet( void ) { return tempSet; }
64 int getUseInitTime( void ) { return useInitTime; }
65 int getUseInitXSstate( void ) { return useInitXSstate; }
66 double getOrthoBoxTolerance(void) { return orthoBoxTolerance; }
67 int getPBC( void ) { return usePBC;}
68 int getUseRF( void ) { return useRF;}
69 char* getMixingRule( void) { return mixingRule;}
70 double getZconsTime(void) { return zcons_time;}
71 double getZconsTol(void) { return zcons_tol;}
72 char* getZconsForcePolicy(void) { return zconsForcePolicy;}
73 double getZconsGap(void) {return zcons_gap;}
74 double getZconsFixtime(void) {return zcons_fixtime;}
75
76 int getSeed(void) { return seed;}
77 double getLJrcut(void) { return LJrcut;}
78
79 char* getMinimizer(void) { return minimizer_name;}
80 int getMinMaxIter(void) {return minimizer_maxiteration;}
81 int getMinWriteFrq(void) {return minimizer_writefrq;}
82 double getMinStepSize(void) {return minimizer_stepsize;}
83 double getMinFTol(void) {return minimizer_ftol;}
84 double getMinGTol(void) {return minimizer_gtol;}
85 double getMinLSTol(void) {return minimizer_ls_tol;}
86 int getMinLSMaxIter(void) {return minimizer_ls_maxiteration;}
87
88
89 short int haveInitialConfig( void ) { return have_initial_config; }
90 short int haveFinalConfig( void ) { return have_final_config; }
91 short int haveNMol( void ) { return have_n_mol; }
92 short int haveDensity( void ) { return have_density; }
93 short int haveBox( void ) { return have_box; }
94 short int haveBoxX( void ) { return have_box_x; }
95 short int haveBoxY( void ) { return have_box_y; }
96 short int haveBoxZ( void ) { return have_box_z; }
97 short int haveSampleTime( void ) { return have_sample_time; }
98 short int haveResetTime( void ) { return have_reset_time; }
99 short int haveStatusTime( void ) { return have_status_time; }
100 short int haveThermalTime( void ) { return have_thermal_time; }
101 short int haveECR( void ) { return have_ecr; }
102 short int haveEST( void ) { return have_est; }
103 short int haveDielectric( void ) { return have_dielectric; }
104 short int haveTempSet( void ) { return have_tempSet; }
105 short int haveTargetPressure( void ){ return have_target_pressure; }
106 short int haveQmass( void ) { return have_q_mass; }
107 short int haveTauThermostat( void ) { return have_tau_thermostat;}
108 short int haveTauBarostat( void ) { return have_tau_barostat;}
109 short int haveZconstraintTime(void) { return have_zcons_time; }
110 short int haveZconstraints( void ) { return have_zConstraints;}
111 short int haveZconsTol(void) { return have_zcons_tol;}
112 short int haveZconsForcePolicy(void){ return have_zcons_force_policy;}
113 short int haveZConsGap(void) {return have_zcons_gap;}
114 short int haveZConsFixTime(void) {return have_zcons_fixtime;}
115
116 short int haveSeed(void) { return have_seed;}
117 short int haveLJrcut(void) { return have_ljrcut;}
118 short int haveMinimizer(void) { return have_minimizer;}
119 short int haveMinMaxIter(void) {return have_minimizer_maxiteration;}
120 short int haveMinWriteFrq(void) {return have_minimizer_writefrq;}
121 short int haveMinStepSize(void) {return have_minimizer_stepsize;}
122 short int haveMinFTol(void) {return have_minimizer_ftol;}
123 short int haveMinGTol(void) {return have_minimizer_gtol;}
124 short int haveMinLSTol(void) {return have_minimizer_ls_tol;}
125 short int haveMinLSMaxIter(void) {return have_minimizer_ls_maxiteration;}
126 /* other accessors */
127 Component** getComponents( void ) { return components; }
128 ZconStamp** getZconStamp( void ) { return zConstraints; }
129
130 private:
131
132 int hash_size;
133 int hash_shift;
134 int hash( char* text );
135 void addHash( char* text, int token );
136 LinkedCommand** command_table;
137
138 char* checkMe( void );
139
140 Component* current_component;
141 Component** components; // the array of components
142
143 ZconStamp* current_zConstraint;
144 ZconStamp** zConstraints; // the array of zConstraints
145
146 char force_field[100];
147 int n_components;
148 int n_zConstraints;
149 double target_temp;
150 double target_pressure;
151 char ensemble[100];
152 char mixingRule[100];
153 double dt;
154 double run_time;
155 char initial_config[120];
156 char final_config[120];
157 int n_mol;
158 double density;
159 double box;
160 double box_x, box_y, box_z;
161 double sample_time;
162 double status_time;
163 double resetTime;
164 double orthoBoxTolerance;
165 double thermal_time;
166 double ecr;
167 double est;
168 double dielectric;
169 int tempSet;
170 int useInitTime;
171 int useInitXSstate;
172 int usePBC;
173 int useRF;
174 double q_mass;
175 double tau_thermostat;
176 double tau_barostat;
177 double zcons_time;
178 double zcons_tol;
179 char zconsForcePolicy[100];
180 double zcons_gap;
181 double zcons_fixtime;
182
183 int seed;
184 double LJrcut;
185 char minimizer_name[100];
186 int minimizer_maxiteration;
187 int minimizer_writefrq;
188 double minimizer_stepsize;
189 double minimizer_ftol;
190 double minimizer_gtol;
191 double minimizer_ls_tol;
192 int minimizer_ls_maxiteration;
193 //required arguments
194 short int have_force_field, have_n_components, have_target_temp;
195 short int have_target_pressure, have_ensemble, have_dt, have_run_time;
196
197 // optional arguments
198 short int have_initial_config, have_final_config, have_n_mol;
199 short int have_density, have_box, have_box_x, have_box_y, have_box_z;
200 short int have_sample_time, have_status_time, have_ecr, have_dielectric;
201 short int have_tempSet, have_thermal_time, have_est, have_q_mass;
202 short int have_tau_thermostat, have_tau_barostat;
203 short int have_zcons_time, have_zConstraints, have_n_zConstraints;
204 short int have_zcons_tol, have_seed, have_ljrcut;
205 short int have_zcons_force_policy, have_reset_time;
206 short int have_zcons_gap, have_zcons_fixtime;
207 short int have_minimizer, have_minimizer_maxiteration;
208 short int have_minimizer_writefrq, have_minimizer_stepsize;
209 short int have_minimizer_ftol, have_minimizer_gtol;
210 short int have_minimizer_ls_tol, have_minimizer_ls_maxiteration;
211 };
212
213 #endif