ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/SimSetup.hpp
Revision: 407
Committed: Wed Mar 26 20:22:02 2003 UTC (21 years, 3 months ago) by mmeineke
File size: 1408 byte(s)
Log Message:
I'm overhauling the molecule class to contain it's own bonds, bends, and torsions.

may god have mercy on my soul.

File Contents

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