A review of the OpenFOAM adapter using the contributing guidelines. This is a work-in-progress that will eventually be moved.
The OpenFOAM adapter conforms to most of the preCICE best practices and fulfills many of the additional criteria.
Metadata:
- M.1: OpenFOAM
- M.2: https://precice.org/adapter-openfoam-overview.html
- M.3: GPL-3.0
- M.4: Gerasimos Chourdakis
<gerasimos.chourdakis ipvs.uni-stuttgart.de>
, David Schneider<david.schneider ipvs.uni-stuttgart.de>
- M.5: https://doi.org/10.51560/ofj.v3.88
- M.6: library
Required best practices:
- R.1: Several application cases are available as tutorials. The application cases list is not yet available.
- R.2:
README.md
- R.3:
LICENSE
- R.4: GitHub project (public)
- R.5: versioning scheme
- R.6:
CHANGELOG.md
- R.7: issue tracker on GitHub
- R.8:
.clang-format
- R.9: See, for example, https://github.com/precice/openfoam-adapter/blob/develop/Adapter.H
- R.10: Still requires porting of single fields, e.g.
preciceConfig
→preciceConfigFileName
. - R.11: See call to
setMeshVertices
in https://github.com/precice/openfoam-adapter/blob/develop/Interface.C
Additional criteria:
- A.1: GPL-3.0
- A.2: repository is publicly accessible
- A.3: on precice.org
- A.4: yes, but only at compile-time
- A.5: reference paper
- A.6:
CONTRIBUTING.md
- A.7:
pull_request_template.md
- A.8: documentation on extending the adapter
- A.9: There are no unit tests
- A.10: Already integrated into the system tests
- A.11: Spack package
of-precice