ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/Globals.hpp
Revision: 659
Committed: Thu Jul 31 15:38:08 2003 UTC (20 years, 11 months ago) by tim
File size: 5181 byte(s)
Log Message:
added z-constraint parameters to the globals

File Contents

# User Rev Content
1 mmeineke 377 #ifndef __GLOBALS_H__
2     #define __GLOBALS_H__
3    
4     #include <cstdlib>
5 tim 659 #include <vector>
6 mmeineke 377
7     #include "BASS_interface.h"
8     #include "Component.hpp"
9     #include "LinkedCommand.hpp"
10     #include "MakeStamps.hpp"
11    
12 tim 659 using namespace std;
13    
14 mmeineke 377 class Globals{
15    
16     public:
17    
18     Globals();
19     ~Globals();
20    
21     int newComponent( event* the_event );
22     int componentAssign( event* the_event );
23     int componentStartIndex( event* the_event );
24     int componentEnd( event* the_event );
25    
26     int globalAssign( event* the_event );
27     int globalEnd( event* the_event );
28    
29     char* getForceField( void ) { return force_field; }
30     int getNComponents( void ) { return n_components; }
31     double getTargetTemp( void ) { return target_temp; }
32 gezelter 465 double getTargetPressure( void ) { return target_pressure; }
33 gezelter 474 double getQmass( void ) { return q_mass; }
34 gezelter 481 double getTauThermostat( void ) { return tau_thermostat; }
35     double getTauBarostat( void ) { return tau_barostat; }
36 mmeineke 377 char* getEnsemble( void ) { return ensemble; }
37     double getDt( void ) { return dt; }
38     double getRunTime( void ) { return run_time; }
39    
40     char* getInitialConfig( void ) { return initial_config; }
41     char* getFinalConfig( void ) { return final_config; }
42     int getNMol( void ) { return n_mol; }
43     double getDensity( void ) { return density; }
44     double getBox( void ) { return box; }
45     double getBoxX( void ) { return box_x; }
46     double getBoxY( void ) { return box_y; }
47     double getBoxZ( void ) { return box_z; }
48     double getSampleTime( void ) { return sample_time; }
49     double getStatusTime( void ) { return status_time; }
50     double getThermalTime( void ) { return thermal_time; }
51     double getDielectric( void ) { return dielectric; }
52 gezelter 394 double getECR( void) { return ecr; }
53     double getEST( void) { return est; }
54 mmeineke 377 int getTempSet( void ) { return tempSet; }
55     int getPBC( void ) { return usePBC;}
56 gezelter 394 int getUseRF( void ) { return useRF;}
57 mmeineke 377 char* getMixingRule( void) { return mixingRule;}
58 tim 659 double getZConsTime(void) { return zcons_time;}
59     vector<int> getIndexOfAllZConsMols(void){ return zconsMolIndex;}
60 mmeineke 377
61     short int haveInitialConfig( void ) { return have_initial_config; }
62     short int haveFinalConfig( void ) { return have_final_config; }
63     short int haveNMol( void ) { return have_n_mol; }
64     short int haveDensity( void ) { return have_density; }
65     short int haveBox( void ) { return have_box; }
66     short int haveBoxX( void ) { return have_box_x; }
67     short int haveBoxY( void ) { return have_box_y; }
68     short int haveBoxZ( void ) { return have_box_z; }
69     short int haveSampleTime( void ) { return have_sample_time; }
70     short int haveStatusTime( void ) { return have_status_time; }
71     short int haveThermalTime( void ) { return have_thermal_time; }
72 gezelter 394 short int haveECR( void ) { return have_ecr; }
73     short int haveEST( void ) { return have_est; }
74 mmeineke 377 short int haveDielectric( void ) { return have_dielectric; }
75     short int haveTempSet( void ) { return have_tempSet; }
76 gezelter 474 short int haveTargetPressure( void ){ return have_target_pressure; }
77     short int haveQmass( void ) { return have_q_mass; }
78 gezelter 481 short int haveTauThermostat( void ) { return have_tau_thermostat;}
79     short int haveTauBarostat( void ) { return have_tau_barostat;}
80 tim 659 short int haveZConsTime(void) { return have_zcons_time;}
81     short int haveIndexOfAllZConsMols() { return have_index_of_all_zcons_mols;}
82    
83 mmeineke 377
84     /* other accessors */
85     Component** getComponents( void ) { return components; }
86    
87     private:
88    
89     static const int hash_size = 23;
90     static const int hash_shift = 4;
91     int hash( char* text );
92     void addHash( char* text, int token );
93     LinkedCommand** command_table;
94    
95     char* checkMe( void );
96    
97     Component* current_component;
98     Component** components; // the array of components
99     char force_field[100];
100     int n_components;
101     double target_temp;
102 gezelter 465 double target_pressure;
103 mmeineke 377 char ensemble[100];
104     char mixingRule[100];
105     double dt;
106     double run_time;
107     char initial_config[120];
108     char final_config[120];
109     int n_mol;
110     double density;
111     double box;
112     double box_x, box_y, box_z;
113     double sample_time;
114     double status_time;
115     double thermal_time;
116 gezelter 394 double ecr;
117     double est;
118 mmeineke 377 double dielectric;
119     int tempSet;
120     int usePBC;
121 gezelter 394 int useRF;
122 gezelter 474 double q_mass;
123 gezelter 481 double tau_thermostat;
124     double tau_barostat;
125 tim 659 double zcons_time;
126     vector<int> zconsMolIndex;
127 mmeineke 377
128     //required arguments
129     short int have_force_field, have_n_components, have_target_temp;
130 gezelter 465 short int have_target_pressure, have_ensemble, have_dt, have_run_time;
131 mmeineke 377
132     // optional arguments
133     short int have_initial_config, have_final_config, have_n_mol;
134     short int have_density, have_box, have_box_x, have_box_y, have_box_z;
135 gezelter 394 short int have_sample_time, have_status_time, have_ecr, have_dielectric;
136 gezelter 474 short int have_tempSet, have_thermal_time, have_est, have_q_mass;
137 gezelter 481 short int have_tau_thermostat, have_tau_barostat;
138 tim 659 short int have_zcons_time, have_index_of_all_zcons_mols;
139 mmeineke 377
140     };
141    
142     #endif