A review of the OpenDiHu adapter using the contributing guidelines. This is a work-in-progress that will eventually be moved.

The OpenDiHu adapter conforms to many of the preCICE best practices and fulfills a few of the additional criteria.

Metadata:

  • M.1: OpenDiHu
  • M.2: https://opendihu.readthedocs.io/en/latest/settings/precice_adapter.html
  • M.3: MIT license
  • M.4: Carme Homs-Pons <carme.homs-pons ipvs.uni-stuttgart.de>
  • M.5: Reference academic publication by Maier et al.
  • M.6: Integrated

Required best practices:

  • R.1: An application case has been accepted for publication. A link will be added soon.
  • R.2: Since this is an integrated adapter, there is a solver documentation page about the adapter.
  • R.3: MIT license
  • R.4: The adapter is hosted on GitHub, as part of the OpenDiHu repository(public)
  • R.5: It follows the OpenDiHu versioning scheme, e.g., v1.5
  • R.6: Only release notes are available. A CHANGELOG.md file will be added soon (see the respective issue).
  • R.7: See label precice-adapter on GitHub issues
  • R.8: .clang-format
  • R.9: See, for example, https://github.com/opendihu/opendihu/blob/develop/core/src/control/precice/checkpoint.tpp
  • R.10: The adapter is configured directly inside the solver configuration files, see "PreciceAdapter" in https://github.com/opendihu/opendihu/blob/develop/examples/electrophysiology/fibers/fibers_contraction/with_tendons_precice/dirichlet_neumann/settings_muscle_dirichlet_neumann.py (see an issue for making the adapter configurable via a configuration file)
  • R.11: See call to setMeshVertices in https://github.com/opendihu/opendihu/blob/develop/core/src/control/precice/initialize.tpp

Additional criteria:

  • A.1: MIT license
  • A.2: repository is publicly accessible
  • A.3: Yes, on readthedocs
  • A.4: “release” or “debug” logging can be selected at compile time
  • A.5: There is no validation study available yet.
  • A.6: Some guidelines are specified in the OpenDiHu documentation
  • A.7: pull_request_template.md
  • A.8: There are no explicit guidelines for the adapter. Some useful information is given in the OpenDiHu documentation
  • A.9: There are no unit tests
  • A.10: No, because of the automatic installation of dependencies via SCons
  • A.11: No package of the adapter is currently available