ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/Globals.hpp
Revision: 481
Committed: Tue Apr 8 21:35:49 2003 UTC (21 years, 3 months ago) by gezelter
File size: 4763 byte(s)
Log Message:
Fixes for NPT / NVT

File Contents

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