ASCOT5
|
Transport coefficient diagnostics. More...
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "../ascot5.h"
#include "../consts.h"
#include "../simulate.h"
#include "../particle.h"
#include "diag_transcoef.h"
Go to the source code of this file.
Functions | |
DECLARE_TARGET_SIMD real | diag_transcoef_check_omp_crossing (real fang, real iang) |
Check if marker has crossed omp. | |
void | diag_transcoef_record (diag_transcoef_data *data, integer index, integer id, real rho, real r, real pitchsign, real t_f, real t_i, real theta_f, real theta_i) |
Check if criteria for recording is met for a single marker and make the record. | |
void | diag_transcoef_process_and_clean (diag_transcoef_data *data, integer index, integer id) |
Process recorded data to transport coefficients and clean. | |
void | diag_transcoef_init (diag_transcoef_data *data, diag_transcoef_offload_data *offload_data, real *offload_array) |
Initializes orbit diagnostics offload data. | |
void | diag_transcoef_free (diag_transcoef_data *data) |
Free transport coefficient data on target. | |
void | diag_transcoef_update_fo (diag_transcoef_data *data, particle_simd_fo *p_f, particle_simd_fo *p_i) |
Collect transport diagnostics for fo simulation. | |
void | diag_transcoef_update_gc (diag_transcoef_data *data, particle_simd_gc *p_f, particle_simd_gc *p_i) |
Collect transport diagnostics for gc simulation. | |
void | diag_transcoef_update_ml (diag_transcoef_data *data, particle_simd_ml *p_f, particle_simd_ml *p_i) |
Collect transport diagnostics for ml simulation. | |
Transport coefficient diagnostics.
Definition in file diag_transcoef.c.
Check if marker has crossed omp.
fang | marker final poloidal angle in radians. |
iang | marker initial poloidal angle in radians. |
Definition at line 348 of file diag_transcoef.c.
void diag_transcoef_record | ( | diag_transcoef_data * | data, |
integer | index, | ||
integer | id, | ||
real | rho, | ||
real | r, | ||
real | pitchsign, | ||
real | t_f, | ||
real | t_i, | ||
real | theta_f, | ||
real | theta_i ) |
Check if criteria for recording is met for a single marker and make the record.
data | pointer to transport coefficient data |
index | marker index in the marker queue |
id | marker id |
rho | marker rho coordinate to be recorded |
r | marker R coordinate to be recorded |
pitchsign | sign of the marker's pitch |
t_f | time (mileage) at the end of the time step |
t_i | time (mileage) at the beginning of the time step |
theta_f | poloidal angle at the end of the time step |
theta_i | poloidal angle at the beginning of the time step |
Definition at line 172 of file diag_transcoef.c.
void diag_transcoef_process_and_clean | ( | diag_transcoef_data * | data, |
integer | index, | ||
integer | id ) |
Process recorded data to transport coefficients and clean.
This function is called when marker simulation has ended
data | pointer to transport coefficient data |
index | marker index in the marker queue |
id | marker id |
Definition at line 231 of file diag_transcoef.c.
void diag_transcoef_init | ( | diag_transcoef_data * | data, |
diag_transcoef_offload_data * | offload_data, | ||
real * | offload_array ) |
Initializes orbit diagnostics offload data.
data | transport coefficient diagnostics data struct |
offload_data | transport coefficient diagnostics offload data struct |
offload_array | offload data array |
Definition at line 32 of file diag_transcoef.c.
void diag_transcoef_free | ( | diag_transcoef_data * | data | ) |
Free transport coefficient data on target.
data | transport coefficient diagnostics data struct |
Definition at line 56 of file diag_transcoef.c.
void diag_transcoef_update_fo | ( | diag_transcoef_data * | data, |
particle_simd_fo * | p_f, | ||
particle_simd_fo * | p_i ) |
Collect transport diagnostics for fo simulation.
data | transport diagnostics data struct |
p_f | pointer to SIMD struct storing marker states at the end of current time-step |
p_i | pointer to SIMD struct storing marker states at the beginning of current time-step |
Definition at line 69 of file diag_transcoef.c.
void diag_transcoef_update_gc | ( | diag_transcoef_data * | data, |
particle_simd_gc * | p_f, | ||
particle_simd_gc * | p_i ) |
Collect transport diagnostics for gc simulation.
data | transport diagnostics data struct |
p_f | pointer to SIMD struct storing marker states at the end of current time-step |
p_i | pointer to SIMD struct storing marker states at the beginning of current time-step |
Definition at line 102 of file diag_transcoef.c.
void diag_transcoef_update_ml | ( | diag_transcoef_data * | data, |
particle_simd_ml * | p_f, | ||
particle_simd_ml * | p_i ) |
Collect transport diagnostics for ml simulation.
data | transport diagnostics data struct |
p_f | pointer to SIMD struct storing marker states at the end of current time-step |
p_i | pointer to SIMD struct storing marker states at the beginning of current time-step |
Definition at line 134 of file diag_transcoef.c.