AQUAgpusph 5.0.4
|
Pressure gradient and velocity divergence updating with the boundary integrals. More...
#include "resources/Scripts/types/types.h"
Functions | |
__kernel void | entry (const __global int *imove, const __global float *rho, const __global float *p, const __global vec *u, const __global vec *grad_w_bi, const __global float *div_u_bi, __global vec *grad_p, __global float *div_u, usize N) |
Pressure gradient and velocity divergence updating with the boundary integrals. | |
__kernel void | filter_press (const __global uint *iset, const __global int *imove, __global float *p, unsigned int forces_iset, usize N) |
Filter out other boundaries from the pressure. | |
__kernel void | force_press (const __global int *imove, const __global vec *r, const __global vec *normal, const __global float *m, const __global float *p, __global vec *force_p, __global vec4 *moment_p, vec forces_r, usize N) |
Compute the force and torque at the boundary. |
Pressure gradient and velocity divergence updating with the boundary integrals.
__kernel void entry | ( | const __global int * | imove, |
const __global float * | rho, | ||
const __global float * | p, | ||
const __global vec * | u, | ||
const __global vec * | grad_w_bi, | ||
const __global float * | div_u_bi, | ||
__global vec * | grad_p, | ||
__global float * | div_u, | ||
usize | N ) |
Pressure gradient and velocity divergence updating with the boundary integrals.
imove | Moving flags.
|
rho | Density \( \rho_{n+1} \). |
p | Pressure \( p \). |
u | Velocity \( \mathbf{u} \). |
grad_w_bi | Gradient of constant fields due to the boundary integral \( \langle \nabla 1 \rangle^{\partial \Omega} \). |
div_u | Velocity divergence \( \nabla \cdot \mathbf{u} \). Actually this is just the part that has to do with the boundary element velocity |
grad_p | Pressure gradient \( \frac{\nabla p}{rho} \). |
div_u | Velocity divergence \( \rho \nabla \cdot \mathbf{u} \). |
N | Number of particles. |
__kernel void filter_press | ( | const __global uint * | iset, |
const __global int * | imove, | ||
__global float * | p, | ||
unsigned int | forces_iset, | ||
usize | N ) |
Filter out other boundaries from the pressure.
This is used to compute the force on an specific iset
iset | Particle set |
imove | Moving flags.
|
p | Pressure of the boundary element \( p \). |
forces_iset | Particles set of interest. |
N | Number of particles. |
__kernel void force_press | ( | const __global int * | imove, |
const __global vec * | r, | ||
const __global vec * | normal, | ||
const __global float * | m, | ||
const __global float * | p, | ||
__global vec * | force_p, | ||
__global vec4 * | moment_p, | ||
vec | forces_r, | ||
usize | N ) |
Compute the force and torque at the boundary.
imove | Moving flags.
|
r | Position \( \mathbf{r} \). |
normal | Normal \( \mathbf{n} \). |
m | Area of the boundary element \( s \). |
p | Pressure of the boundary element \( p \). |
force_p | Pressure force on the boundary element |
moment_p | Pressure moment on the boundary element |
forces_r | Point with respect the moments are computed \( \mathbf{r}_0 \). |
N | Number of particles. |