slm: OpenCL code base  0.1
Functions
integrationfns.cl File Reference

Adaptive 1st or 2nd order Runge-Kutta single-stepping functions. More...

Go to the source code of this file.

Functions

static bool runge_kutta_step_record (float *dt, float *dl, float *l_trajectory, float2 *dxy1_vec, float2 *dxy2_vec, float2 *vec, float2 *prev_vec, float2 *next_vec, uint *n_steps, uint *idx, uint *prev_idx, __global char2 *trajectory_vec)
 Compute a single step of 2nd-order Runge-Kutta numerical integration of a streamline given precomputed 1st and 2nd order step vectors. More...
 
static void euler_step_record (float *dt, float *dl, float *l_trajectory, const float2 uv_vec, float2 *vec, const float2 prev_vec, uint *n_steps, __global char2 *trajectory_vec)
 Compute a single Euler integration step of of a streamline. More...
 
static bool runge_kutta_step_write_sl_data (float *dt, float *dl, float *l_trajectory, float2 *dxy1_vec, float2 *dxy2_vec, float2 *vec, float2 *prev_vec, const float2 next_vec, uint *n_steps, uint *idx, uint *prev_idx, __global const bool *mask_array, __global uint *slt_array, __global uint *slc_array)
 Compute a single step of 2nd-order Runge-Kutta numerical integration of a streamline given precomputed 1st and 2nd order step vectors. More...
 
static void euler_step_write_sl_data (float *dt, float *dl, float *l_trajectory, const float2 uv_vec, float2 *vec, const float2 prev_vec, uint *n_steps, uint *idx, uint *prev_idx, __global const bool *mask_array, __global uint *slt_array, __global uint *slc_array)
 Compute a single Euler integration step of of a streamline. More...
 
static bool connect_runge_kutta_step_record (float *dt, float *dl, float *l_trajectory, float2 *dxy1_vec, float2 *dxy2_vec, float2 *vec, float2 *prev_vec, float2 *next_vec, uint *n_steps, uint *idx, uint *prev_idx, __private char2 *trajectory_vec)
 Compute a single step of 2nd-order Runge-Kutta numerical integration of a streamline given precomputed 1st and 2nd order step vectors. More...
 
static void channelheads_runge_kutta_step (float *dt, float *dl, float2 *dxy1_vec, float2 *dxy2_vec, float2 *vec, float2 *next_vec, uint *n_steps, uint *idx)
 Compute a single step of 2nd-order Runge-Kutta numerical integration of a streamline given precomputed 1st and 2nd order step vectors. More...
 
static bool countlink_runge_kutta_step (float *dt, float *dl, float2 *dxy1_vec, float2 *dxy2_vec, float2 *vec, float2 *next_vec, uint *idx, __global uint *mapping_array)
 Compute a single step of 2nd-order Runge-Kutta numerical integration of a streamline given precomputed 1st and 2nd order step vectors. More...
 
static bool segment_runge_kutta_step (float *dt, float *dl, float2 *dxy1_vec, float2 *dxy2_vec, float2 *vec, float2 *next_vec, uint *n_steps, uint *idx)
 Compute a single step of 2nd-order Runge-Kutta numerical integration of a streamline given precomputed 1st and 2nd order step vectors. More...
 
static bool lengths_runge_kutta_step (float *dt, float *dl, float *l_trajectory, float2 *dxy1_vec, float2 *dxy2_vec, float2 *vec, float2 *prev_vec, float2 *next_vec, uint *n_steps, uint *idx)
 Compute a single step of 2nd-order Runge-Kutta numerical integration of a streamline given precomputed 1st and 2nd order step vectors. More...
 

Detailed Description

Adaptive 1st or 2nd order Runge-Kutta single-stepping functions.

Author
CPS
Bug:
No known bugs

Definition in file integrationfns.cl.