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

# Content
1 #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 double getTargetPressure( void ) { return target_pressure; }
30 double getQmass( void ) { return q_mass; }
31 double getTauThermostat( void ) { return tau_thermostat; }
32 double getTauBarostat( void ) { return tau_barostat; }
33 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 double getECR( void) { return ecr; }
50 double getEST( void) { return est; }
51 int getTempSet( void ) { return tempSet; }
52 int getPBC( void ) { return usePBC;}
53 int getUseRF( void ) { return useRF;}
54 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 short int haveECR( void ) { return have_ecr; }
68 short int haveEST( void ) { return have_est; }
69 short int haveDielectric( void ) { return have_dielectric; }
70 short int haveTempSet( void ) { return have_tempSet; }
71 short int haveTargetPressure( void ){ return have_target_pressure; }
72 short int haveQmass( void ) { return have_q_mass; }
73 short int haveTauThermostat( void ) { return have_tau_thermostat;}
74 short int haveTauBarostat( void ) { return have_tau_barostat;}
75
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 double target_pressure;
95 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 double ecr;
109 double est;
110 double dielectric;
111 int tempSet;
112 int usePBC;
113 int useRF;
114 double q_mass;
115 double tau_thermostat;
116 double tau_barostat;
117
118 //required arguments
119 short int have_force_field, have_n_components, have_target_temp;
120 short int have_target_pressure, have_ensemble, have_dt, have_run_time;
121
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 short int have_sample_time, have_status_time, have_ecr, have_dielectric;
126 short int have_tempSet, have_thermal_time, have_est, have_q_mass;
127 short int have_tau_thermostat, have_tau_barostat;
128
129
130 };
131
132 #endif