ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/SimSetup.hpp
Revision: 498
Committed: Mon Apr 14 21:22:54 2003 UTC (21 years, 2 months ago) by mmeineke
File size: 1312 byte(s)
Log Message:
working on the system builder

File Contents

# Content
1 #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 extern 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
24 private:
25
26 #ifdef IS_MPI
27 void receiveParse(void);
28 #endif
29
30 void makeMolecules( void );
31
32 void initFromBass( void );
33 void makeElement( double x, double y, double z );
34
35 MakeStamps* stamps;
36 Globals* globals;
37 char* inFileName;
38
39 SimInfo* simnfo;
40
41 int n_components;
42
43 char force_field[100];
44 char ensemble[100];
45 Component** the_components;
46
47 int* components_nmol;
48 MoleculeStamp** comp_stamps; //the stamps matching the components
49 int tot_nmol;
50 int tot_atoms;
51 int tot_bonds;
52 int tot_bends;
53 int tot_torsions;
54 int tot_SRI;
55
56 Atom** the_atoms;
57 SRI** the_sris;
58 Exclude** the_excludes;
59 Molecule* the_molecules;
60 ForceFields* the_ff;
61
62 // needed by makeElement
63
64 int current_mol;
65 int current_comp_mol;
66 int current_comp;
67 int current_atom_ndx;
68
69 #ifdef IS_MPI
70 int* globalIndex;
71 #endif //is_mpi
72
73 };
74 #endif