Skip to content

danxuZhang/icon-isc24

Repository files navigation

muphys-cpp

Description

C++ prototypes of muphys project using heterogeneous libraries and C extensions.

Documentation

Online documentation is generated automatically using doxygen, there are 2 ways to generate the documention using doxygen

  1. CLI
  • Configure Doxyfile with output format (default is only HTML), input and output dir (liines 12 & 128)
  • Run doxygen Doxyfile
  1. Doxygen GUI wizard
  • Add the icon image, directory path, and output path
  • Check "scan recrusively"
  • Check "All entities"
  • Modify output format and output settings
  • Run

Installation

Dependencies

Other dependency like googletest is built in-tree from github archives.

Available compile options

  • Implementation - The sequential implementation is selected by default. The user can choose of the following options:
    • MU_IMPL=seq - C++ serial implementation
  • Precision (default is double)
  • MU_ENABLE_SINGLE - to switch to float
  • Unit-test - compile tests together with the main executable (default is true)
    • MU_ENABLE_TESTS

Compile the project (with default flags and Seq frontend)

cmake -DMU_IMPL=seq -B build -S .

cmake --build build

Usage

./build/bin/graupel input_file.nc

Automated tests

  • Run tests manually: cd build && ctest

License

muphys-cpp is available under a BSD 3-clause license. See LICENSES/ for license information and AUTHORS.TXT for a list of authors.