ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/mdtools/headers/SimSetup.hpp
Revision: 253
Committed: Thu Jan 30 15:20:21 2003 UTC (21 years, 5 months ago) by chuckv
File size: 1443 byte(s)
Log Message:
Added a generic util code directory and moved Linux_ifc_machdep to it.
MPI changes to compile MPI modules.

File Contents

# User Rev Content
1 mmeineke 10 #ifndef __SIMSETUP_H__
2     #define __SIMSETUP_H__
3    
4     #include "MakeStamps.hpp"
5     #include "Globals.hpp"
6     #include "ForceFields.hpp"
7     #include "SimInfo.hpp"
8     #include "ReadWrite.hpp"
9    
10     // this routine is defined in BASS_interface.cpp
11     void set_interface_stamps( MakeStamps* ms, Globals* g );
12    
13     class SimSetup{
14    
15     public:
16     SimSetup();
17     ~SimSetup();
18    
19     void setSimInfo( SimInfo* the_simnfo ) { simnfo = the_simnfo; }
20     void parseFile( char* fileName );
21     void createSim( void );
22    
23 chuckv 131
24     #ifdef IS_MPI
25 mmeineke 164 void testMe(void);
26 chuckv 125 #endif
27 mmeineke 10
28 chuckv 125
29     private:
30    
31 mmeineke 164 #ifdef IS_MPI
32     void receiveParse(void);
33     #endif
34    
35 mmeineke 10 void makeAtoms( void );
36     void makeBonds( void );
37     void makeBends( void );
38     void makeTorsions( void );
39    
40     void initFromBass( void );
41     void makeElement( double x, double y, double z );
42    
43     MakeStamps* stamps;
44     Globals* globals;
45     char* inFileName;
46 chuckv 125
47 mmeineke 10 SimInfo* simnfo;
48 chuckv 125
49 mmeineke 10 int n_components;
50    
51     char force_field[100];
52     char ensemble[100];
53     Component** the_components;
54    
55     int* components_nmol;
56     MoleculeStamp** comp_stamps; //the stamps matching the components
57     int tot_nmol;
58     int tot_atoms;
59     int tot_bonds;
60     int tot_bends;
61     int tot_torsions;
62     int tot_SRI;
63    
64     Atom** the_atoms;
65     SRI** the_sris;
66     LRI* longRange;
67     ex_pair *the_excludes;
68     Molecule* the_molecules;
69     ForceFields* the_ff;
70    
71     // needed by makeElement
72    
73     int current_mol;
74     int current_comp_mol;
75     int current_comp;
76     int current_atom_ndx;
77 chuckv 253
78     #ifdef IS_MPI
79     int* globalIndex;
80     #endif //is_mpi
81    
82 mmeineke 10 };
83     #endif