HOM3 logo

High-Order Multiphysics Multiscale Methods

Getting started

Hom3 requires a fairly modern version of clang (git-HEAD) and libc++ as well as the latest version of cmake, boost (in particular: Range, MPI, Filesystem, Units, and their dependencies), eigen, hdf5, doxygen, tbb, thrust, and mpich. The latest gtest version is automatically fetched from svn (an internet connection is required).

./configure.sh -d && make && ctest # should configure, compile, and run all hom3 tests

If configure fails you might need to tweak the configure.sh script to tell cmake about your local library paths.

The configure script can set up debug (-d) and release (-r) builds as well as sanitizer builds: -a for address sanitizer, -m for memory sanitizer, and -t for thread sanitizer. For more help, see: ./configure.sh -h.

To generate the documentation: make docs. To check for style-guide conformance: make style.