ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/Globals.hpp
Revision: 1137
Committed: Wed Apr 28 21:39:12 2004 UTC (20 years, 2 months ago) by gezelter
File size: 8644 byte(s)
Log Message:
useMolecularCutoffs added to Globals

File Contents

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