ASCOT5
Loading...
Searching...
No Matches
plasma.h
Go to the documentation of this file.
1
8#ifndef PLASMA_H
9#define PLASMA_H
10
11#include "ascot5.h"
12#include "error.h"
13#include "plasma/plasma_1D.h"
14#include "plasma/plasma_1Dt.h"
15#include "plasma/plasma_1DS.h"
16
29
30
47
63
65 real** offload_array);
67 real** offload_array);
68
70 real* offload_array);
71GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
72a5err plasma_eval_temp(real* temp, real rho, real r, real phi, real z, real t,
73 int species, plasma_data* pls_data);
74DECLARE_TARGET_END
75GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
76a5err plasma_eval_dens(real* dens, real rho, real r, real phi, real z, real t,
77 int species, plasma_data* pls_data);
78DECLARE_TARGET_END
79GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
81 real r, real phi, real z, real t,
82 plasma_data* pls_data);
83DECLARE_TARGET_END
84GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
86DECLARE_TARGET_END
87GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
89DECLARE_TARGET_END
90GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
92DECLARE_TARGET_END
93GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
94const int* plasma_get_species_znum(plasma_data* pls_data);
95DECLARE_TARGET_END
96GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
97const int* plasma_get_species_anum(plasma_data* pls_data);
98DECLARE_TARGET_END
99
100#endif
Main header file for ASCOT5.
double real
Definition ascot5.h:85
Error module for ASCOT5.
unsigned long int a5err
Simulation error flag.
Definition error.h:17
DECLARE_TARGET_END const int * plasma_get_species_znum(plasma_data *pls_data)
Get charge number of ion species.
Definition plasma.c:419
int plasma_init(plasma_data *plasma_data, plasma_offload_data *offload_data, real *offload_array)
Initialize plasma data struct on target.
Definition plasma.c:135
DECLARE_TARGET_END const int * plasma_get_species_anum(plasma_data *pls_data)
Get atomic mass number of ion species.
Definition plasma.c:447
DECLARE_TARGET_END const real * plasma_get_species_mass(plasma_data *pls_data)
Get mass of all plasma species.
Definition plasma.c:361
DECLARE_TARGET_END a5err plasma_eval_densandtemp(real *dens, real *temp, real rho, real r, real phi, real z, real t, plasma_data *pls_data)
Evaluate plasma density and temperature for all species.
Definition plasma.c:280
a5err plasma_eval_temp(real *temp, real rho, real r, real phi, real z, real t, int species, plasma_data *pls_data)
Evaluate plasma temperature.
Definition plasma.c:184
int plasma_init_offload(plasma_offload_data *offload_data, real **offload_array)
Load plasma data and prepare parameters.
Definition plasma.c:50
DECLARE_TARGET_END a5err plasma_eval_dens(real *dens, real rho, real r, real phi, real z, real t, int species, plasma_data *pls_data)
Evaluate plasma density.
Definition plasma.c:232
DECLARE_TARGET_END int plasma_get_n_species(plasma_data *pls_data)
Get the number of plasma species.
Definition plasma.c:331
plasma_type
Plasma data types.
Definition plasma.h:24
@ plasma_type_1D
Definition plasma.h:25
@ plasma_type_1Dt
Definition plasma.h:26
@ plasma_type_1DS
Definition plasma.h:27
DECLARE_TARGET_END const real * plasma_get_species_charge(plasma_data *pls_data)
Get charge of all plasma species.
Definition plasma.c:391
void plasma_free_offload(plasma_offload_data *offload_data, real **offload_array)
Free offload array and reset parameters.
Definition plasma.c:102
Header file for plasma_1DS.c.
Header file for plasma_1D.c.
Header file for plasma_1Dt.c.
1D spline plasma parameters on the target
Definition plasma_1DS.h:30
1D spline plasma parameters that will be offloaded to target
Definition plasma_1DS.h:14
1D plasma parameters on the target
Definition plasma_1D.h:27
1D plasma parameters that will be offloaded to target
Definition plasma_1D.h:13
1D plasma parameters on the target
Definition plasma_1Dt.h:28
1D plasma parameters that will be offloaded to target
Definition plasma_1Dt.h:13
Plasma simulation data.
Definition plasma.h:57
plasma_1D_data plasma_1D
Definition plasma.h:59
plasma_1Dt_data plasma_1Dt
Definition plasma.h:60
plasma_1DS_data plasma_1DS
Definition plasma.h:61
plasma_type type
Definition plasma.h:58
Plasma offload data.
Definition plasma.h:40
int offload_array_length
Definition plasma.h:45
plasma_1DS_offload_data plasma_1DS
Definition plasma.h:44
plasma_1D_offload_data plasma_1D
Definition plasma.h:42
plasma_1Dt_offload_data plasma_1Dt
Definition plasma.h:43
plasma_type type
Definition plasma.h:41