1 |
OOPSE |
2 |
|
3 |
OOPSE is an open-source Object-Oriented Parallel Simulation Engine. |
4 |
It is a mongrel code which uses no less than 5 programming languages |
5 |
(although it is primarily written in C++ and Fortran95). Input files |
6 |
are handled using the (included) Bizarre Atom Simulation Syntax (BASS) |
7 |
library. The BASS library can handle atoms that don't fit the |
8 |
standard picture of what the rest of the world uses for atoms |
9 |
(i.e. our atoms can be "lumpy"; they have orientational degrees of |
10 |
freedom). We can also handle some transition metal simulations using |
11 |
the Embedded Atom Method (EAM) and other similar force fields. OOPSE |
12 |
doesn't yet do force fields with charges, although it does handles |
13 |
dipoles quite handily. |
14 |
|
15 |
What you need to compile and use OOPSE: |
16 |
|
17 |
0) A strong stomach. Mixed-language code can get ugly. |
18 |
|
19 |
1) *Good* C++ and Fortran95 compilers. We've built and tested OOPSE |
20 |
using the Intel compilers (ifc and icc) on Linux machines. Outside |
21 |
of our setup, you're pretty much on your own... |
22 |
|
23 |
2) MPI. We like MPICH. Other implementations might work, but we |
24 |
haven't tried. You can get MPICH here: |
25 |
http://www-unix.mcs.anl.gov/mpi/mpich/ |
26 |
|
27 |
3) The f90 bindings for MPI. These are built by MPICH if it finds a |
28 |
f90 compiler. There might be others out there for other |
29 |
implementations, but we haven't tested. Try starting here: |
30 |
http://duvel.lowtem.hokudai.ac.jp/~jim/software/f90_mpi_lib.html |
31 |
|
32 |
4) The Scalable Parallel Random Number Generators Library (SPRNG). You |
33 |
can obtain SPRNG here: |
34 |
http://archive.ncsa.uiuc.edu/Apps/CMP/RNG/RNG-home.html |
35 |
|
36 |
INSTRUCTIONS |
37 |
|
38 |
1) Get, build, and test the required pieces above. |
39 |
2) ./configure |
40 |
3) make |
41 |
4) make install |
42 |
|
43 |
That's it. Documentation is for wimps. |