AQUAgpusph 4.1.2
|
Mirroring process for the symmetry boundary condition. More...
#include "resources/Scripts/types/types.h"
Functions | |
unsigned int | cell (vec r, vec r_min, float h, uivec4 n_cells) |
Compute the cell where the particle is allocated. | |
__kernel void | mirror (__global vec *r, __global int *imirrored, __global unsigned int *icell, unsigned int N, vec portal_in_r, vec portal_out_r, vec portal_n, vec r_min, float h, uivec4 n_cells) |
Compute the mirrored position of the fluid particles. | |
Mirroring process for the symmetry boundary condition.
Compute the cell where the particle is allocated.
r | Position \( \mathbf{r} \) |
r_min | Minimum of r (considering all the particles). |
n_cells | Number of cells at each direction, and the total number of allocated cells. |
__kernel void mirror | ( | __global vec * | r, |
__global int * | imirrored, | ||
__global unsigned int * | icell, | ||
unsigned int | N, | ||
vec | portal_in_r, | ||
vec | portal_out_r, | ||
vec | portal_n, | ||
vec | r_min, | ||
float | h, | ||
uivec4 | n_cells | ||
) |
Compute the mirrored position of the fluid particles.
The mirrored particles (the ones close enough to the out portal plane) will be marked with imirrored = 1.
r | Position \( \mathbf{r} \) |
imirrored | 0 if the particle has not been mirrored, 1 otherwise. |
icell | Cell where each particle is allocated. |
N | Number of particles |
portal_in_r | In portal infinite plane position |
portal_out_r | Out portal infinite plane position |
portal_n | Portal infinite planes normal |
r_min | Minimum of r. |
n_cells | Number of cells at each direction, and the total number of allocated cells. |