ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libBASS/Globals.hpp
Revision: 474
Committed: Mon Apr 7 21:42:19 2003 UTC (21 years, 3 months ago) by gezelter
File size: 4573 byte(s)
Log Message:
Fixes for NPT and 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 getTauRelax( void ) { return tau_relax; }
32 char* getEnsemble( void ) { return ensemble; }
33 double getDt( void ) { return dt; }
34 double getRunTime( void ) { return run_time; }
35
36 char* getInitialConfig( void ) { return initial_config; }
37 char* getFinalConfig( void ) { return final_config; }
38 int getNMol( void ) { return n_mol; }
39 double getDensity( void ) { return density; }
40 double getBox( void ) { return box; }
41 double getBoxX( void ) { return box_x; }
42 double getBoxY( void ) { return box_y; }
43 double getBoxZ( void ) { return box_z; }
44 double getSampleTime( void ) { return sample_time; }
45 double getStatusTime( void ) { return status_time; }
46 double getThermalTime( void ) { return thermal_time; }
47 double getDielectric( void ) { return dielectric; }
48 double getECR( void) { return ecr; }
49 double getEST( void) { return est; }
50 int getTempSet( void ) { return tempSet; }
51 int getPBC( void ) { return usePBC;}
52 int getUseRF( void ) { return useRF;}
53 char* getMixingRule( void) { return mixingRule;}
54
55 short int haveInitialConfig( void ) { return have_initial_config; }
56 short int haveFinalConfig( void ) { return have_final_config; }
57 short int haveNMol( void ) { return have_n_mol; }
58 short int haveDensity( void ) { return have_density; }
59 short int haveBox( void ) { return have_box; }
60 short int haveBoxX( void ) { return have_box_x; }
61 short int haveBoxY( void ) { return have_box_y; }
62 short int haveBoxZ( void ) { return have_box_z; }
63 short int haveSampleTime( void ) { return have_sample_time; }
64 short int haveStatusTime( void ) { return have_status_time; }
65 short int haveThermalTime( void ) { return have_thermal_time; }
66 short int haveECR( void ) { return have_ecr; }
67 short int haveEST( void ) { return have_est; }
68 short int haveDielectric( void ) { return have_dielectric; }
69 short int haveTempSet( void ) { return have_tempSet; }
70 short int haveTargetPressure( void ){ return have_target_pressure; }
71 short int haveQmass( void ) { return have_q_mass; }
72 short int haveTauRelax( void ) { return have_tau_relax;}
73
74 /* other accessors */
75 Component** getComponents( void ) { return components; }
76
77 private:
78
79 static const int hash_size = 23;
80 static const int hash_shift = 4;
81 int hash( char* text );
82 void addHash( char* text, int token );
83 LinkedCommand** command_table;
84
85 char* checkMe( void );
86
87 Component* current_component;
88 Component** components; // the array of components
89 char force_field[100];
90 int n_components;
91 double target_temp;
92 double target_pressure;
93 char ensemble[100];
94 char mixingRule[100];
95 double dt;
96 double run_time;
97 char initial_config[120];
98 char final_config[120];
99 int n_mol;
100 double density;
101 double box;
102 double box_x, box_y, box_z;
103 double sample_time;
104 double status_time;
105 double thermal_time;
106 double ecr;
107 double est;
108 double dielectric;
109 int tempSet;
110 int usePBC;
111 int useRF;
112 double q_mass;
113 double tau_relax;
114
115 //required arguments
116 short int have_force_field, have_n_components, have_target_temp;
117 short int have_target_pressure, have_ensemble, have_dt, have_run_time;
118
119 // optional arguments
120 short int have_initial_config, have_final_config, have_n_mol;
121 short int have_density, have_box, have_box_x, have_box_y, have_box_z;
122 short int have_sample_time, have_status_time, have_ecr, have_dielectric;
123 short int have_tempSet, have_thermal_time, have_est, have_q_mass;
124 short int have_tau_relax;
125
126
127 };
128
129 #endif