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
25
38
39void plasma_free(plasma_data* data);
40void plasma_offload(plasma_data* data);
41GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
42a5err plasma_eval_temp(real* temp, real rho, real r, real phi, real z, real t,
43 int species, plasma_data* pls_data);
44DECLARE_TARGET_END
45GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
46a5err plasma_eval_dens(real* dens, real rho, real r, real phi, real z, real t,
47 int species, plasma_data* pls_data);
48DECLARE_TARGET_END
49GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
51 real r, real phi, real z, real t,
52 plasma_data* pls_data);
53DECLARE_TARGET_END
54GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
56DECLARE_TARGET_END
57GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
59DECLARE_TARGET_END
60GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
62DECLARE_TARGET_END
63GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
64const int* plasma_get_species_znum(plasma_data* pls_data);
65DECLARE_TARGET_END
66GPU_DECLARE_TARGET_SIMD_UNIFORM(pls_data)
67const int* plasma_get_species_anum(plasma_data* pls_data);
68DECLARE_TARGET_END
69
70#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:325
void plasma_free(plasma_data *data)
Free allocated resources.
Definition plasma.c:38
DECLARE_TARGET_END const int * plasma_get_species_anum(plasma_data *pls_data)
Get atomic mass number of ion species.
Definition plasma.c:353
DECLARE_TARGET_END const real * plasma_get_species_mass(plasma_data *pls_data)
Get mass of all plasma species.
Definition plasma.c:267
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:186
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:90
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:138
void plasma_offload(plasma_data *data)
Offload data to the accelerator.
Definition plasma.c:57
DECLARE_TARGET_END int plasma_get_n_species(plasma_data *pls_data)
Get the number of plasma species.
Definition plasma.c:237
plasma_type
Plasma data types.
Definition plasma.h:20
@ plasma_type_1D
Definition plasma.h:21
@ plasma_type_1Dt
Definition plasma.h:22
@ plasma_type_1DS
Definition plasma.h:23
DECLARE_TARGET_END const real * plasma_get_species_charge(plasma_data *pls_data)
Get charge of all plasma species.
Definition plasma.c:297
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:15
1D plasma parameters on the target
Definition plasma_1D.h:14
1D plasma parameters on the target
Definition plasma_1Dt.h:14
Plasma simulation data.
Definition plasma.h:32
plasma_1D_data plasma_1D
Definition plasma.h:34
plasma_1Dt_data plasma_1Dt
Definition plasma.h:35
plasma_1DS_data plasma_1DS
Definition plasma.h:36
plasma_type type
Definition plasma.h:33