All benchmarks, examples and applications cases to be run by Kratos. Note that unit tests are in Kratos repository and NOT here
Author: Marc Núñez Corbacho
Kratos version: 8.1
MMG version: 5.5.2
ParMMG version: 1.3.0
Source files: MPI Body-fitted cylinder 3D
Application dependencies: FluidDynamicsApplication
, LinearSolversApplications
, MappingApplication
, MeshingApplication
, MetisApplication
, StatisticsApplication
, TrilinosApplication
To run this example execute:
export OMP_NUM_THREADS=1
mpirun -n nprocs python3 MainKratos.py
Where nprocs
is the number of processors to use in the MPI run.
Initial mesh:
Final mesh after 4 iterations:
This test case solves and remeshes and MPI parallel fluid dynamic problem iteratively using ParMMG. It uses a Hessian approach, based on:
Frédéric Alauzet. Metric-Based Anisotropic Mesh Adaptation. Course material, CEA-EDF-INRIA Schools. Numerical Analysis Summer School. https://www.rocq.inria.fr/gamma/Frederic.Alauzet/cours/cirm.pdf
Pascal Tremblay 2-D, 3-D and 4-D Anisotropic Mesh Adaptation for the Time-Continuous Space-Time Finite Element Method with Applications to the Incompressible Navier-Stokes Equations. PhD thesis Ottawa-Carleton Institute for Mechanical and Aerospace Engineering, Department of Mechanical Engineering, University of Ottawa. 2007. http://aix1.uottawa.ca/~ybourg/thesis/PhDThesis_Pascal_Tremblay_Final.pdf
Which allows to use the fields of previous simulations to adaptively refine the mesh by using its Hessian.
Some of the main settings to control and customize are:
“perform_mapping_between_steps” if it is set to True
, it will map the solution on step n
to the mesh n+1
. Set it to False
to start the simulation from rest at every new step.
If “perform_mapping_between_steps” is True
VELOCITY
: This will use the velocity at each time step, starting from the start_time_control_value.PRESSURE
: This will use the pressure at each time step, starting from the start_time_control_value.AVERAGE_VELOCITY
: This will use the AVERAGE velocity across the simulation, starting from the statistics_start_point_control_value.AVERAGE_PRESSURE
: This will use the AVERAGE pressure across the simulation, starting from the statistics_start_point_control_value.“start_time_control_value” to set the starting time to start computing the metrics if VELOCITY
or PRESSURE
are chosen as variables to remesh the variables of the old mesh to be used to remesh the new mesh.