AQUAgpusph 5.0.4
Loading...
Searching...
No Matches
GradP.cl File Reference

Compute the gradient of the pressure at the boundary to impose the Neumann BC. More...

Include dependency graph for GradP.cl:

Functions

__kernel void freeslip (const __global uint *iset, const __global int *imove, const __global float *shepard, const __global float *rho, const __global vec *lap_u, const __global vec *dudt, __global vec *grad_p, __constant float *visc_dyn, __constant float *refd, usize N, vec g)
 Compute the gradient of the pressure at the boundary to impose the free-slip BC, i.e.

Detailed Description

Compute the gradient of the pressure at the boundary to impose the Neumann BC.

Function Documentation

◆ freeslip()

__kernel void freeslip ( const __global uint * iset,
const __global int * imove,
const __global float * shepard,
const __global float * rho,
const __global vec * lap_u,
const __global vec * dudt,
__global vec * grad_p,
__constant float * visc_dyn,
__constant float * refd,
usize N,
vec g )

Compute the gradient of the pressure at the boundary to impose the free-slip BC, i.e.

\( \left. \frac{d\mathbf{u}}{dt} \right\vert_{\partial \Omega} \cdot \mathbf{n} = \left. \frac{d\mathbf{u}}{dt} \right\vert_{\partial \Omega} \cdot \mathbf{n}\).

Such that the pressure can be computed from the Momentum Equation.

Parameters
isetSet of particles index.
imoveMoving flags.
  • imove > 0 for regular fluid particles.
  • imove = 0 for sensors.
  • imove < 0 for boundary elements/particles.
shepardShepard term \( \gamma(\mathbf{x}) = \int_{\Omega} W(\mathbf{y} - \mathbf{x}) \mathrm{d}\mathbf{x} \).
rhoDensity \( \rho \).
pPressure \( p \).
rhoDensity \( \rho_{n+1} \).
lap_uVelocity laplacian \( \Delta \mathbf{u} \).
dudtVelocity rate of change \( \frac{d \mathbf{u}}{d t} \).
grad_pPressure gradient \( \frac{\nabla p}{rho} \).
visc_dynDynamic viscosity \( \mu \).
refdDensity of reference \( \rho_0 \).
NNumber of particles.
gGravity acceleration \( \mathbf{g} \).