Zonal approach for coupling CFD simulation (OpenFOAM) and Galerkin-free ROM (Python) [1] using preCICE [2].
In order to perform the coupled simulation, the following order of directories must be followed:
run.simulation_snapshots
- OpenFOAM case directory for data generation to be used in the subsequent steps.pod
- Performs snapshot POD on the snapshot data generated in the previous step.run.precice.overlap
- Contains the high- and low-fidelity components; performs the zonal coupled simulation. Refer the README in each directory for more information.
Figure: The instantaneous velocity magnitude at run.simulation_snapshots
is shown in the background.
The subdomains for the coupled simulation to be performed in the directory run.precice.overlap
are also indicated.
The point cloud represents the sampling location of the snapshot data generation.
Refer [1] for more information on subdomains.
NOTE: As shown in the figure, this case considers the low fidelity domains to be exactly same as the overlap domain,
- preCICE 2.4.0
- OpenFOAM 6
- Python 3.10.8
- preCICE OpenFOAM adapter 1.2.0 -- forked repo
- pyprecice 2.4.0.0
- parallel-pod forked repo
- Open MPI 4.1.1
- mpi4py 3.1.1
- jq 1.6
NOTE: preciceFoam
appearing in the slurm scripts refers to the name of the spack environment used to install preCICE and dependencies.
[1] Bergmann, M., Ferrero, A., Iollo, A., Lombardi, E., Scardigli, A., & Telib, H. (2018). A zonal Galerkin-free POD model for incompressible flows. Journal of Computational Physics, 352, 301-325.
[2] Bungartz, H.J., Lindner, F., Gatzhammer, B., Mehl, M., Scheufele, K., Shukaev, A. & Uekermann, B. (2016). preCICE–a fully parallel library for multi-physics surface coupling. Computers & Fluids, 141, 250-258.