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

Improved Euler time integration scheme. More...

Include dependency graph for improved_euler.cl:

Functions

__kernel void predictor (__global int *imove, __global vec *r, __global vec *u, __global vec *dudt, __global float *rho, __global float *drhodt, __global vec *r_in, __global vec *u_in, __global vec *dudt_in, __global float *rho_in, __global float *drhodt_in, usize N, float dt)
 Improved Euler time integration scheme predictor stage.
__kernel void corrector (__global int *imove, __global unsigned int *iset, __global vec *r, __global vec *u, __global vec *dudt, __global float *rho, __global float *drhodt, __global vec *dudt_in, __global float *drhodt_in, usize N, float dt)
 Improved Euler time integration scheme corrector stage.

Detailed Description

Improved Euler time integration scheme.

Time integration is based in the following quasi-second order Predictor-Corrector integration scheme:

  • \( \mathbf{u}_{n+1} = \mathbf{u}_{n} + \frac{\Delta t}{2} \left( \left. \frac{\mathrm{d}\mathbf{u}}{\mathrm{d}t} \right\vert_{n+1/2} + \left. \frac{\mathrm{d}\mathbf{u}}{\mathrm{d}t} \right\vert_{n-1/2} \right) \)
  • \( \mathbf{r}_{n+1} = \mathbf{r}_{n} + \Delta t \, \mathbf{u}_{n} + \frac{\Delta t^2}{4} \left( \left. \frac{\mathrm{d}\mathbf{u}}{\mathrm{d}t} \right\vert_{n+1/2} + \left. \frac{\mathrm{d}\mathbf{u}}{\mathrm{d}t} \right\vert_{n-1/2} \right) \)
  • \( \rho_{n+1} = \rho_{n} + \frac{\Delta t}{2} \left( \left. \frac{\mathrm{d}\rho}{\mathrm{d}t} \right\vert_{n+1/2} + \left. \frac{\mathrm{d}\rho}{\mathrm{d}t} \right\vert_{n-1/2} \right) \)