This is an open-source version of the FMS90 code by Todd Martínez et al
The code is based on the FMS-TeraChem-Simple branch, and has been significantly pruned and refactored.
It currently contains the MPI interface to TeraChem and various analytical (toy) potentials.
To compile the code and run the test suite, the following sequence should work on a typical unix machine with GCC toolchain intalled.
./configure.sh
make -j
make unittest
make testNote: The configure.sh script is very barebones, you might need to tweak the CONFIGFMS file that it generates.
In the default (zero) compilation target, only the analytical model potentials are available.
To compile with TeraChem interface, run:
./configure.sh tcIn this case, the compiler needs to be changed to mpif90 using the MPI implementation
that is matching the version that was used to compile TeraChem (typically MPICH or IntelMPI).
To compile MPICH, we recommend using the included .github/install_mpich.sh script.
Note that MPICH version >=4.0 is strongly encouraged as earlier versions
contained bugs that were affecting the TeraChem interface.
The current interface with TeraChem utilizes the MPI protocol
to connect the OpenFMS and TeraChem processes. It is crucial that both TeraChem and OpenFMS are compiled
with the same MPI library. Even then, succesfully establishing the connection between the two processes
might be tricky. We highly recommend using the provided run_fms_tc.sh script for this purpose.
Please see the Contribution Guide.