24GPU_DECLARE_TARGET_SIMD_UNIFORM(w)
27GPU_DECLARE_TARGET_SIMD_UNIFORM(w)
30GPU_DECLARE_TARGET_SIMD_UNIFORM(w)
Main header file for ASCOT5.
void wall_2d_offload(wall_2d_data *data)
Offload data to the accelerator.
int wall_2d_find_intersection(real r1, real z1, real r2, real z2, wall_2d_data *w, real *w_coll)
Find intersection between the wall element and line segment.
int wall_2d_inside(real r, real z, wall_2d_data *w)
Check if coordinates are within 2D polygon wall.
DECLARE_TARGET_END int wall_2d_hit_wall(real r1, real phi1, real z1, real r2, real phi2, real z2, wall_2d_data *w, real *w_coll)
Check if trajectory from (r1, phi1, z1) to (r2, phi2, z2) intersects the wall.
void wall_2d_free(wall_2d_data *data)
Free allocated resources.
int wall_2d_init(wall_2d_data *data, int nelements, real *r, real *z)
Load 2D wall data and prepare parameters.