ASCOT5
Toggle main menu visibility
Loading...
Searching...
No Matches
wall.h
Go to the documentation of this file.
1
9
#ifndef WALL_H
10
#define WALL_H
11
12
#include "
ascot5.h
"
13
#include "offload.h"
14
#include "
wall/wall_2d.h
"
15
#include "
wall/wall_3d.h
"
16
20
typedef
enum
wall_type
{
21
wall_type_2D
,
22
wall_type_3D
,
23
}
wall_type
;
24
31
typedef
struct
{
32
wall_type
type
;
33
wall_2d_data
w2d
;
34
wall_3d_data
w3d
;
35
}
wall_data
;
36
37
void
wall_free
(
wall_data
* data);
38
void
wall_offload
(
wall_data
* data);
39
GPU_DECLARE_TARGET_SIMD_UNIFORM(w)
40
int
wall_hit_wall
(
real
r1,
real
phi1,
real
z1,
real
r2,
real
phi2,
real
z2,
41
wall_data
* w,
real
* w_coll);
42
DECLARE_TARGET_END
43
GPU_DECLARE_TARGET_SIMD_UNIFORM(w)
44
int
wall_get_n_elements
(
wall_data
* w);
45
DECLARE_TARGET_END
46
GPU_DECLARE_TARGET_SIMD_UNIFORM(w)
47
int
wall_get_flag
(
wall_data
* w,
int
idx);
48
DECLARE_TARGET_END
49
GPU_DECLARE_TARGET_SIMD_UNIFORM(w)
50
int
wall_get_n_elements
(
wall_data
* w);
51
DECLARE_TARGET_END
52
#endif
ascot5.h
Main header file for ASCOT5.
real
double real
Definition
ascot5.h:85
wall_2d_data
2D wall data parameters
Definition
wall_2d.h:15
wall_3d_data
3D wall data parameters
Definition
wall_3d.h:16
wall_data
Wall model simulation data.
Definition
wall.h:31
wall_data::type
wall_type type
Definition
wall.h:32
wall_data::w3d
wall_3d_data w3d
Definition
wall.h:34
wall_data::w2d
wall_2d_data w2d
Definition
wall.h:33
wall_get_flag
int wall_get_flag(wall_data *w, int idx)
Return the flag of a wall element.
Definition
wall.c:126
wall_offload
void wall_offload(wall_data *data)
Offload data to the accelerator.
Definition
wall.c:46
wall_get_n_elements
int wall_get_n_elements(wall_data *w)
Return the number of wall elements.
Definition
wall.c:104
wall_hit_wall
int wall_hit_wall(real r1, real phi1, real z1, real r2, real phi2, real z2, wall_data *w, real *w_coll)
Check if a given directed line segment intersects the wall.
Definition
wall.c:80
wall_free
void wall_free(wall_data *data)
Free allocated resources.
Definition
wall.c:29
wall_type
wall_type
Wall model types.
Definition
wall.h:20
wall_type_2D
@ wall_type_2D
Definition
wall.h:21
wall_type_3D
@ wall_type_3D
Definition
wall.h:22
wall_2d.h
Header file for wall_2d.c.
wall_3d.h
Header file for wall_3d.c.
Generated on
for ASCOT5 by
1.18.0