Milestone 2: investigation phase
Our goal with fluidsimfoam is to provide a "better API" to describe sets of potential similar simulations (a Fluidsim solver) and work with simulations.
We would like to support (i) all OpenFOAM examples, (ii) swak4FOAM and (iii) SedFOAM.
Warning: big difference between a "fluidsim solver" and an "OpenFOAM solver" (should be clearly explicit in our doc).
We need to think:
-
How a fluidsim solver based on OpenFOAM should be represented as a Python package? For Milestone 1, we use simple Jinja template, but it is clearly suboptimal.
-
How an OpenFOAM file should be represented in fluidsimfoam (with a Parameter object)?
-
Correspondence between OpenFOAM file "types" (https://www.openfoam.com/documentation/user-guide/2-openfoam-cases/2-2-basic-inputoutput-file-format) and Python types?
-
how to write a good parser for OpenFOAM file (with grammar rules?)
This milestone is a lot about studying, thinking and writing developer documentation in doc/dev
.
Note: It should be easy to extend and modify a fluidsimfoam solver.