ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/tags/export/OOPSE-1.0/libBASS/Globals.hpp
Revision: 1335
Committed: Fri Jul 16 18:58:04 2004 UTC (20 years, 1 month ago)
File size: 9378 byte(s)
Log Message:
This commit was manufactured by cvs2svn to create tag 'export'.

File Contents

# User Rev Content
1 gezelter 1334 #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     int getNzConstraints( void ) { return n_zConstraints; }
47     char* getInitialConfig( void ) { return initial_config; }
48     char* getFinalConfig( void ) { return final_config; }
49     int getNMol( void ) { return n_mol; }
50     double getDensity( void ) { return density; }
51     double getBox( void ) { return box; }
52     double getBoxX( void ) { return box_x; }
53     double getBoxY( void ) { return box_y; }
54     double getBoxZ( void ) { return box_z; }
55     double getSampleTime( void ) { return sample_time; }
56     double getStatusTime( void ) { return status_time; }
57     double getResetTime( void ) { return resetTime; }
58     double getThermalTime( void ) { return thermal_time; }
59     double getDielectric( void ) { return dielectric; }
60     double getRcut( void ) { return rcut; }
61     double getRsw( void ) { return rsw; }
62     int getTempSet( void ) { return tempSet; }
63     int getUseInitTime( void ) { return useInitTime; }
64     int getUseInitXSstate( void ) { return useInitXSstate; }
65     double getOrthoBoxTolerance(void) { return orthoBoxTolerance; }
66     int getPBC( void ) { return usePBC; }
67     int getUseRF( void ) { return useRF; }
68     char* getMixingRule( void) { return mixingRule; }
69     double getZconsTime(void) { return zcons_time; }
70     double getZconsTol(void) { return zcons_tol; }
71     char* getZconsForcePolicy(void) { return zconsForcePolicy; }
72     double getZconsGap(void) { return zcons_gap; }
73     double getZconsFixtime(void) { return zcons_fixtime; }
74     int getZconsUsingSMD(void) { return zcons_using_smd; }
75     int getSeed(void) { return seed; }
76     char* getMinimizer(void) { return minimizer_name; }
77     int getMinMaxIter(void) { return minimizer_maxiteration; }
78     int getMinWriteFrq(void) { return minimizer_writefrq; }
79     double getMinStepSize(void) { return minimizer_stepsize; }
80     double getMinFTol(void) { return minimizer_ftol; }
81     double getMinGTol(void) { return minimizer_gtol; }
82     double getMinLSTol(void) { return minimizer_ls_tol; }
83     int getMinLSMaxIter(void) { return minimizer_ls_maxiteration; }
84     int getUseSolidThermInt(void) { return useSolidThermInt; }
85     int getUseLiquidThermInt(void) { return useLiquidThermInt; }
86     double getThermIntLambda(void) { return thermodynamic_integration_lambda; }
87     double getThermIntK(void) { return thermodynamic_integration_k; }
88     char* getForceFieldVariant( void ) { return forcefield_variant; }
89    
90     short int haveInitialConfig( void ) { return have_initial_config; }
91     short int haveFinalConfig( void ) { return have_final_config; }
92     short int haveNMol( void ) { return have_n_mol; }
93     short int haveDensity( void ) { return have_density; }
94     short int haveBox( void ) { return have_box; }
95     short int haveBoxX( void ) { return have_box_x; }
96     short int haveBoxY( void ) { return have_box_y; }
97     short int haveBoxZ( void ) { return have_box_z; }
98     short int haveSampleTime( void ) { return have_sample_time; }
99     short int haveResetTime( void ) { return have_reset_time; }
100     short int haveStatusTime( void ) { return have_status_time; }
101     short int haveThermalTime( void ) { return have_thermal_time; }
102     short int haveRcut( void ) { return have_rcut; }
103     short int haveRsw( void ) { return have_rsw; }
104     short int haveDielectric( void ) { return have_dielectric; }
105     short int haveTempSet( void ) { return have_tempSet; }
106     short int haveTargetPressure( void ){ return have_target_pressure; }
107     short int haveQmass( void ) { return have_q_mass; }
108     short int haveTauThermostat( void ) { return have_tau_thermostat; }
109     short int haveTauBarostat( void ) { return have_tau_barostat; }
110     short int haveZconstraintTime(void) { return have_zcons_time; }
111     short int haveZconstraints( void ) { return have_zConstraints; }
112     short int haveZconsTol(void) { return have_zcons_tol; }
113     short int haveZconsForcePolicy(void){ return have_zcons_force_policy; }
114     short int haveZConsGap(void) { return have_zcons_gap; }
115     short int haveZConsFixTime(void) { return have_zcons_fixtime; }
116     short int haveZConsUsingSMD(void) { return have_zcons_using_smd; }
117     short int haveSeed(void) { return have_seed; }
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     short int haveThermIntLambda(void) { return have_thermodynamic_integration_lambda; }
127     short int haveThermIntK(void) { return have_thermodynamic_integration_k; }
128     short int haveForceFieldVariant(void) { return have_forcefield_variant; }
129    
130     /* other accessors */
131     Component** getComponents( void ) { return components; }
132     ZconStamp** getZconStamp( void ) { return zConstraints; }
133    
134     private:
135    
136     int hash_size;
137     int hash_shift;
138     int hash( char* text );
139     void addHash( char* text, int token );
140     LinkedCommand** command_table;
141    
142     char* checkMe( void );
143    
144     Component* current_component;
145     Component** components; // the array of components
146    
147     ZconStamp* current_zConstraint;
148     ZconStamp** zConstraints; // the array of zConstraints
149    
150     char force_field[100];
151     int n_components;
152     int n_zConstraints;
153     double target_temp;
154     double target_pressure;
155     char ensemble[100];
156     char mixingRule[100];
157     double dt;
158     double run_time;
159     char initial_config[120];
160     char final_config[120];
161     int n_mol;
162     double density;
163     double box;
164     double box_x, box_y, box_z;
165     double sample_time;
166     double status_time;
167     double resetTime;
168     double orthoBoxTolerance;
169     double thermal_time;
170     double rcut;
171     double rsw;
172     double dielectric;
173     int tempSet;
174     int useInitTime;
175     int useInitXSstate;
176     int usePBC;
177     int useRF;
178     double q_mass;
179     double tau_thermostat;
180     double tau_barostat;
181     double zcons_time;
182     double zcons_tol;
183     char zconsForcePolicy[100];
184     double zcons_gap;
185     double zcons_fixtime;
186     int zcons_using_smd;
187    
188     int seed;
189     char minimizer_name[100];
190     int minimizer_maxiteration;
191     int minimizer_writefrq;
192     double minimizer_stepsize;
193     double minimizer_ftol;
194     double minimizer_gtol;
195     double minimizer_ls_tol;
196     int minimizer_ls_maxiteration;
197     int useSolidThermInt;
198     int useLiquidThermInt;
199     double thermodynamic_integration_lambda;
200     double thermodynamic_integration_k;
201     char forcefield_variant[100];
202    
203     //required arguments
204     short int have_force_field, have_n_components, have_target_temp;
205     short int have_target_pressure, have_ensemble, have_dt, have_run_time;
206    
207     // optional arguments
208     short int have_initial_config, have_final_config, have_n_mol;
209     short int have_density, have_box, have_box_x, have_box_y, have_box_z;
210     short int have_sample_time, have_status_time, have_rcut, have_dielectric;
211     short int have_tempSet, have_thermal_time, have_rsw, have_q_mass;
212     short int have_tau_thermostat, have_tau_barostat;
213     short int have_zcons_time, have_zConstraints, have_n_zConstraints;
214     short int have_zcons_tol, have_seed;
215     short int have_zcons_force_policy, have_reset_time;
216     short int have_zcons_gap, have_zcons_fixtime;
217     short int have_zcons_using_smd;
218     short int have_minimizer, have_minimizer_maxiteration;
219     short int have_minimizer_writefrq, have_minimizer_stepsize;
220     short int have_minimizer_ftol, have_minimizer_gtol;
221     short int have_minimizer_ls_tol, have_minimizer_ls_maxiteration;
222     short int have_thermodynamic_integration_lambda;
223     short int have_thermodynamic_integration_k;
224     short int have_forcefield_variant;
225     };
226    
227     #endif