NasCar
Loading...
Searching...
No Matches
Macros | Functions
Penalisation.c File Reference

The penalisation is used to take into account the bodies in the Navier-Stokes equations. More...

#include "petscdmda.h"
#include "petscksp.h"
#include "petscpc.h"
#include "struct.h"
#include "Penalisation.h"
#include "Lins.h"
#include "Vectors.h"
Include dependency graph for Penalisation.c:

Macros

#define __FUNCT__   "immersed_boundary"
 
#define __FUNCT__   "penalisation"
 
#define __FUNCT__   "remove_fresh_points"
 

Functions

PetscErrorCode immersed_boundary (Simu simu, Grid grid, Proc proc, Fields vec, Arrays arr, Obs obs)
 
PetscErrorCode penalisation (Simu simu, Grid grid, Proc proc, Fields vec, Arrays arr, Obs obs)
 
PetscErrorCode remove_fresh_points (Simu simu, Grid grid, Proc proc, Fields vec, Arrays arr, Obs obs)
 

Detailed Description

The penalisation is used to take into account the bodies in the Navier-Stokes equations.

Note
It inclludes the IPC approach proposed in
[7] M. Bergmann, J. Hovnanian and A. Iollo, An Accurate Cartesian Method for Incompressible Flows with Moving Boundaries, Commun. Comput. Phys. Vol. 15, No. 5, pp. 1266-1290, 2014.
DOI: https://doi.org/10.4208/cicp.220313.111013a
And the 1st order Penalization originally introduce in [1], and for instance presented in
[4] Bergmann M. & Iollo A., Modeling and simulation of fish like swimming, J. Comput. Physics, 230 (2), (2011)
DOI: https://doi.org/10.1016/j.jcp.2010.09.017
Version
0.0
Author
Michel Bergmann
Date
2023-03-03

Function Documentation

◆ immersed_boundary()

PetscErrorCode immersed_boundary ( Simu  simu,
Grid  grid,
Proc  proc,
Fields  vec,
Arrays  arr,
Obs  obs 
)

This is the IPC 2nd Order Volume Penalisation [7]

Note
M. Bergmann, J. Hovnanian and A. Iollo
An Accurate Cartesian Method for Incompressible Flows with Moving Boundaries,
Commun. Comput. Phys. Vol. 15, No. 5, pp. 1266-1290, 2014.
DOI: https://doi.org/10.4208/cicp.220313.111013a

◆ penalisation()

PetscErrorCode penalisation ( Simu  simu,
Grid  grid,
Proc  proc,
Fields  vec,
Arrays  arr,
Obs  obs 
)

This is the classical 1st Order Volume Penalisation [4]

Note
Bergmann M. & Iollo A.
Modeling and simulation of fish like swimming,
J. Comput. Physics, 230 (2), (2011)
DOI: https://doi.org/10.1016/j.jcp.2010.09.017

◆ remove_fresh_points()

PetscErrorCode remove_fresh_points ( Simu  simu,
Grid  grid,
Proc  proc,
Fields  vec,
Arrays  arr,
Obs  obs 
)

This remove the possible non-pysical fresh points, i.e. the points passing from solid the fluid state between iteration n and n+1.