ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/src/oopse.cpp
Revision: 892
Committed: Mon Dec 22 21:27:04 2003 UTC (20 years, 6 months ago) by chuckv
File size: 1651 byte(s)
Log Message:
Fixes to profile code.

File Contents

# Content
1 #ifdef IS_MPI
2 #include <iostream>
3 #include <fstream>
4 #include <cstdlib>
5 #include <cmath>
6 #include <cstring>
7 #include <mpi.h>
8
9 #ifdef PROFILE
10 #include "mdProfile.hpp"
11 #endif // PROFILE
12
13 #include "simError.h"
14 #include "SimSetup.hpp"
15 #include "SimInfo.hpp"
16 #include "Atom.hpp"
17 #include "Integrator.hpp"
18 #include "Thermo.hpp"
19 #include "ReadWrite.hpp"
20
21 char* program_name;
22 using namespace std;
23
24 int main(int argc,char* argv[]){
25
26 char* in_name;
27 SimSetup* startMe;
28 SimInfo* entry_plug;
29
30
31 // first things first, all of the initializations
32
33 MPI_Init( &argc, &argv ); // the MPI communicators
34
35 initSimError(); // the error handler
36 srand48( 1337 ); // the random number generator.
37
38 #ifdef PROFILE
39 initProfile();
40 #endif //profile
41
42 // check command line arguments, and set the input file
43
44 program_name = argv[0]; // save the program name in case we need it
45
46 if( worldRank == 0 ){
47 if( argc < 2 ){
48 strcpy( painCave.errMsg, "Error, bass file is needed to run.\n" );
49 painCave.isFatal = 1;
50 simError();
51 }
52 }
53
54 in_name = argv[1];
55
56 strcpy( checkPointMsg, "Successful number of arguments" );
57 MPIcheckPoint();
58
59
60 // create the simulation objects, and get the show on the road
61
62 entry_plug = new SimInfo;
63 startMe = new SimSetup;
64
65 startMe->setSimInfo( entry_plug );
66
67
68 startMe->parseFile( in_name );
69
70
71 startMe->createSim();
72
73 delete startMe;
74
75
76 entry_plug->the_integrator->integrate();
77
78 #ifdef PROFILE
79 writeProfiles();
80 #endif //profile
81
82 strcpy( checkPointMsg, "Oh what a lovely Tea Party!" );
83 MPIcheckPoint();
84
85 MPI_Finalize();
86 return 0 ;
87 }
88
89 #endif