Skip to content

ECOGEN v6.0

Latest

Choose a tag to compare

@kevinschmidmayer kevinschmidmayer released this 10 Nov 10:58
· 4 commits to devel since this release

From now on, when using one of the latest ECOGEN version, please cite not only the original paper but as well the following reference to acknowledge the work of all contributors:

@misc{schmidmayer2026ecogen,
  url = {https://hal.science/hal-05023172},
  title = {{ECOGEN}},
  author = {Schmidmayer, K. and Petitpas, F. and Froehly, A. and Cazé, J. and Daniel, E. and Favrie, N. and Dorschner, B. and Taglialatela, F. E. and Martin de Fourchambault, L. and Didierlaurent, Q. and Ade-Onojobi, A. and Le Martelot, S. and Gadiri, F. Z. and Schropff, S.},
  howpublished = {HAL},
  year = {2026}
}

Major points

  • New model for total non-equilibrium flow (NEq and NEqDEM) added. NEqDEM uses the Discrete Equation Method based on the work of Abgrall & Saurel (2003) [https://doi.org/10.1016/S0021-9991(03)00011-1] and NEq uses either the HLLAC Riemann solver of Lochon et al. (2016) [https://doi.org/10.1016/j.jcp.2016.09.015], the HLLC-type Riemann solver of Furfaro & Saurel (2015) [https://doi.org/10.1016/j.compfluid.2015.01.016], or the HLL/Rusanov Riemann solver of Saurel & Abgrall (1999) [https://doi.org/10.1006/jcph.1999.6187] with different closure laws. The DEM can be used for IG, SG and NASG EOS with a HLLC Riemann-problem solver. An exact Riemann-problem solver can also be used but only for IG and SG EOS, and for non-reflecting boundary conditions. Infinite relaxations of velocities and pressures, as well as axi-symmetry terms are implemented. The DEM can work for N phases using either Paula et al. (2023) [https://doi.org/10.1016/j.jcp.2023.112371] or Chinnayya (2002) [https://theses.fr/2002AIX11066] algorithm. The DEM can work with a second-order scheme, for now only for Cartesian N phases without interface interaction with any boundary conditions.
  • New 1D model added: extended Navier-Stokes-Korteweg model (ExtendedNavierStokesKorteweg1D). This model allows to consider compressible flows with capillarity and liquid-vapour phase transition Didierlaurent et al. (2026) "Numerical investigation of a Navier-Stokes-Korteweg system through an extended Lagrangian formulation: nonclassical waves and phase transition problems" & Didierlaurent et al. (2025) [https://doi.org/https://doi.org/10.1111/sapm.70005]. From this generic model, one can choose different equations of state to obtain particular models lying in different fields. For example, the hydrodynamic form of the Defocusing Nonlinear Schrödinger (NLS) equation Dhaouadi et al. (2019) [https://doi.org/https://doi.org/10.1111/sapm.12238], or to describe the dynamics of a bistable tape spring Bourgeois et al. [https://doi.org/https://doi.org/10.1016/j.ijsolstr.2020.09.031] by choosing polynomial EOS, or finally to describe the dynamics of phase transition by considering the van der Waals EOS Didierlaurent et al. (2026) "Numerical investigation of a Navier-Stokes-Korteweg system through an extended Lagrangian formulation: nonclassical waves and phase transition problems". 3 EOS were therefore added to complement this model.
  • Turbulence static Smagorinsky model in the context of Large Eddy Simulations (LES). This model is currently implemented on the Euler model with viscosity, corresponding to the Navier-Stokes equations, and validated using a homogeneous isotropic decaying turbulence simulation.
  • New output format based on HDF5 (VTKHDF) for high performance computations using high number of MPI processes. An xdmf file is used as well for optimised Cartesian outputs.
  • Adds periodic boundary conditions for Cartesian meshes (no AMR, yet).
  • Adds non-slip moving wall boundary conditions following an oscillatory behaviour (sinus) for all meshes. One can model a constant piston velocity if frequency is null and offset is pi/2.

Minor points

  • Second-order and gradient XML elements (tags) from main.xml files have been moved to model.xml files. This change therefore induces an {-incompatibility of the input files with the previous version-}. A warning message is shown when one of the elements is mentioned in the main.xml file of your running test case.
  • Clear distinction now between slip and non-slip walls. A slip wall is modelled as a symmetry while a non-slip wall is modelled as a wall.
  • ECOGEN can now be used as a shared library, e.g. for easy linkage with C or python codes.
  • Add a volume-fraction threshold value for activating or not the infinite pressure relaxation when null volume fractions are allowed in the simulation. Default is what it was before (1.e-5).
  • Default gradient computation set to Green-Gauss.
  • Adds Koren limiter, Vreugdenhil & Koren (1993) Numerical Methods for Advection--diffusion Problems, for MUSCL scheme.
  • Remove useless mesh-info files from results and use centralise AMR tree-structure outputs when using VTKHDF output file format (useful for high performance computations using high number of MPI processes).
  • Remove useless errors and warning files that were always created. Now they are created only if errors or warnings occur. In the case of VTKHDF output file format, centralised parallel writing is done.
  • Adds a coloured warning message if at least one MPI process raised a warning and colours the already printed error message in case of error. One can disable coloured outputs is needed.
  • Improve mesh stretching setup and documentation. Now, instead of providing the number of cells in the mesh stretching areas, the user has to provide: the size of the reference cell (refCellSize tag), and the position of the reference cell (refCellPos tag). The number of cells is computed from these data with the mesh stretching factor being applied from the reference cell position to the other extremity of the region. The stretching factor provided by the user may be modified in order to end up with an exact number of cells covering the stretch region. Furthermore, eventual warnings are printed at execution when needed. Note that this change induces an {-incompatibility of the mesh input file with the previous version-} (for Cartesian meshes using mesh stretching).
  • Add new compile flags -Wundef -Wshadow -Wuninitialized (in addition to existing -Wall -Wextra -Wpedantic) to help guaranteeing a clean code is produced.
  • Improve time recording during simulations and add information about output writing time.

Fixes

  • Correct compilation warnings on some of the latest compiler versions.
  • Correct error on run-time information when resuming a simulation.
  • Correction of a bug that happened when a second-order parallel simulation was having very small cell sizes.
  • Correct a bug with C++ MPI headers on linux.
  • Correct a terminal printing bug when showing progress pourcentage of the construction of unstructured meshes for large number of cells.
  • Correct a segfault error for parallel runs with missing input files.
  • Add missing description of infoCalcul.out file in the documentation.
  • Remove unused SVD tierce library.