32#pragma omp declare target
35#pragma omp end declare target
96 real* sigma,
int z_1,
int a_1,
int z_2,
int a_2,
real E_coll_per_amu,
103 sigma, z_1, a_1, z_2, a_2, E_coll_per_amu, reac_type,
112 if(err || sigma[0] < 0.0) {
146 real* sigmav,
int z_1,
int a_1,
real m_1,
int z_2,
int a_2,
154 sigmav, z_1, a_1, m_1, z_2, a_2, E, T_e, T_0, n_i,
163 if(err || sigmav[0] < 0.0) {
192 real* ratecoeff,
int z_1,
int a_1,
real E,
real mass,
int nspec,
193 const int* znum,
const int* anum,
real T_0,
real* n_0,
200 ratecoeff, z_1, a_1, E, mass, nspec, znum, anum, T_0, n_0,
209 if(err || ratecoeff[0] < 0.0) {
238 real* ratecoeff,
int z_1,
int a_1,
real E,
real mass,
int nion,
239 const int* znum,
const int* anum,
real T_e,
real* n_i,
246 ratecoeff, z_1, a_1, E, mass, nion, znum, anum, T_e, n_i,
255 if(err || ratecoeff[0] < 0.0) {
Main header file for ASCOT5.
static int ASIGMA_EXTRAPOLATE
a5err asigma_eval_sigma(real *sigma, int z_1, int a_1, int z_2, int a_2, real E_coll_per_amu, asigma_reac_type reac_type, asigma_data *asigma_data)
Evaluate atomic reaction cross-section.
a5err asigma_eval_cx(real *ratecoeff, int z_1, int a_1, real E, real mass, int nspec, const int *znum, const int *anum, real T_0, real *n_0, asigma_data *asigma_data)
Evaluate charge exchange rate coefficient.
void asigma_extrapolate(int extrapolate)
Toggle extrapolation when evaluating cross sections.
void asigma_free(asigma_data *data)
Free allocated resources.
a5err asigma_eval_sigmav(real *sigmav, int z_1, int a_1, real m_1, int z_2, int a_2, real E, real T_e, real T_0, real n_i, asigma_reac_type reac_type, asigma_data *asigma_data)
Evaluate atomic reaction rate coefficient.
a5err asigma_eval_bms(real *ratecoeff, int z_1, int a_1, real E, real mass, int nion, const int *znum, const int *anum, real T_e, real *n_i, asigma_data *asigma_data)
Evaluate beam stopping rate coefficient.
void asigma_offload(asigma_data *data)
Offload data to the accelerator.
Header file for asigma.c.
asigma_reac_type
Reaction types for atomic reaction data.
void asigma_loc_free(asigma_loc_data *data)
Free allocated resources.
a5err asigma_loc_eval_cx(real *ratecoeff, int z_1, int a_1, real E, real mass, int nspec, const int *znum, const int *anum, real T_0, real *n_0, int extrapolate, asigma_loc_data *asigma_data)
Evaluate atomic reaction rate coefficient.
a5err asigma_loc_eval_sigma(real *sigma, int z_1, int a_1, int z_2, int a_2, real E_coll_per_amu, int reac_type, int extrapolate, asigma_loc_data *asigma_data)
Evaluate atomic reaction cross-section.
void asigma_loc_offload(asigma_loc_data *data)
Offload data to the accelerator.
a5err asigma_loc_eval_sigmav(real *sigmav, int z_1, int a_1, real m_1, int z_2, int a_2, real E, real T_e, real T_0, real n_i, int reac_type, int extrapolate, asigma_loc_data *asigma_data)
Evaluate atomic reaction rate coefficient.
a5err asigma_loc_eval_bms(real *ratecoeff, int z_1, int a_1, real E, real mass, int nion, const int *znum, const int *anum, real T_e, real *n_i, int extrapolate, asigma_loc_data *asigma_data)
Evaluate beam stopping rate coefficient.
Header file for asigma_loc.c.
Header file containing physical and mathematical constants.
unsigned long int a5err
Simulation error flag.
static DECLARE_TARGET_SIMD a5err error_raise(error_type type, int line, error_file file)
Raise a new error.
Macros for printing console output.
Atomic reaction simulation data.
asigma_loc_data asigma_loc