XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Functions/Subroutines
diagnosis.F90 File Reference
#include "adios_macro.h"
Include dependency graph for diagnosis.F90:

Functions/Subroutines

subroutine diagnosis (istep, irk, grid, psn, spall)
 
subroutine diag_1d_output (grid, psn)
 
subroutine diag_1d_f0 (grid, psn)
 
subroutine get_drift_velocity (grid, psn, node, mu, vp, isp, v_th, v_mag, v_exb, v_pardrift, pot_rho, grad_psi_sqr)
 Evaluates the drift velocities at given inode, imu, ivp The basic magnetic field quantities necessary for the calculation of the magnetic drifts are stored in the grid data structure. To save memory, this could also be shifted to f0_module. More...
 
subroutine diag_3d (istep, grid, psn)
 
subroutine save_as_adios_format
 
subroutine diag_rmp (istep, grid, psn)
 Prints out RMP diagnosis: perturbed fields and currents and (m,n)-Fourier-components of the perturbed fields and currents in the closed field-line region. NOTE: The Fourier analysis may need better parallelization if more than one toroidal mode number is used. More...
 
subroutine diag_f0 (istep, grid, psn, f0_f)
 
subroutine diag_3d_f0_f (grid, psn, f0_f)
 
subroutine dump_grid (grid, psn)
 
subroutine dump_f0_grid (grid)
 
subroutine dump_bfield (grid)
 
subroutine check_adios_err (err, str)
 
subroutine background_edensity0_output (grid, psn)
 
subroutine background_edensity0_read (grid, psn)
 
subroutine diag_heat_output
 
subroutine diag_sheath (grid)
 
subroutine diag_f0_df_port1 (idx, grid, spall, f0_f, f0_df0g)
 Save change of densiy, energy and momentum due to sources (collisions, neutrals, etc.) The information is gathered on the triangular grid and averaged over the toroidal direction. Extension to 3D output with toroidal resolution is possible. More...
 
subroutine diag_f0_df (istep, grid)
 Outputs density, momentum and enery change due to sources (collision, neutrals, etc.) Currently, each source step is written out even if a source is not active. It would be possible to skip the output for inactive source routines to reduce the size of output files. More...
 
integer function get_diag_particle_mod ()
 
integer function do_diag_particle_int (istep)
 
subroutine diag_write_particles_adios (array_len, num, offset, total, phase, gid)
 

Function/Subroutine Documentation

subroutine background_edensity0_output ( type(grid_type)  grid,
type(psn_type)  psn 
)

Here is the caller graph for this function:

subroutine background_edensity0_read ( type(grid_type)  grid,
type(psn_type)  psn 
)

Here is the caller graph for this function:

subroutine check_adios_err ( integer  err,
character (len=*)  str 
)
subroutine diag_1d_f0 ( type(grid_type)  grid,
type(psn_type)  psn 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_1d_output ( type(grid_type)  grid,
type(psn_type)  psn 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_3d ( integer  istep,
type(grid_type)  grid,
type(psn_type)  psn 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_3d_f0_f ( type(grid_type), intent(in)  grid,
type(psn_type), intent(in)  psn,
real (8), dimension(-f0_nvp:f0_nvp, f0_inode1:f0_inode2, f0_imu1:f0_imu2, ptl_isp:ptl_nsp), intent(in)  f0_f 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_f0 ( integer, intent(in)  istep,
type(grid_type)  grid,
type(psn_type)  psn,
real (8), dimension(-f0_nvp:f0_nvp, f0_inode1:f0_inode2, f0_imu1:f0_imu2, ptl_isp:ptl_nsp), intent(inout)  f0_f 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_f0_df ( integer, intent(in)  istep,
type(grid_type)  grid 
)

Outputs density, momentum and enery change due to sources (collision, neutrals, etc.) Currently, each source step is written out even if a source is not active. It would be possible to skip the output for inactive source routines to reduce the size of output files.

Parameters
[in]isteptime step index, integer
[in]gridinformation, type(grid_type)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_f0_df_port1 ( integer, intent(in)  idx,
type(grid_type), intent(in)  grid,
type(species_type), dimension(0:ptl_nsp_max), intent(in)  spall,
real (8), dimension(-f0_nvp:f0_nvp, f0_inode1:f0_inode2, f0_imu1:f0_imu2, ptl_isp:ptl_nsp), intent(in)  f0_f,
real (8), dimension(-f0_nvp:f0_nvp, f0_inode1:f0_inode2, f0_imu1:f0_imu2, ptl_isp:ptl_nsp), intent(in)  f0_df0g 
)

Save change of densiy, energy and momentum due to sources (collisions, neutrals, etc.) The information is gathered on the triangular grid and averaged over the toroidal direction. Extension to 3D output with toroidal resolution is possible.

Parameters
[in]idxmode selector: 0) Particle moments before source routines, 1) collision, 2) diffusion (XGCa only), 3) heat-torque, 4) neutral, 5) pellet ablation, 6) radiation, 7) particle moments after source routines, integer
[in]gridgrid informationm, type(grid_type)
[in]spallparticle data, type(species_type)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_heat_output ( )

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_rmp ( integer  istep,
type(grid_type)  grid,
type(psn_type)  psn 
)

Prints out RMP diagnosis: perturbed fields and currents and (m,n)-Fourier-components of the perturbed fields and currents in the closed field-line region. NOTE: The Fourier analysis may need better parallelization if more than one toroidal mode number is used.

Parameters
istep(in) integer, current time step index
grid(in) type(grid_type), mesh data
psn(in) type(psn_type), perturbed current data

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diag_sheath ( type(grid_type)  grid)

Here is the caller graph for this function:

subroutine diag_write_particles_adios ( integer, intent(in)  array_len,
integer, dimension(ptl_isp:ptl_nsp)  num,
integer(8), dimension(ptl_isp:ptl_nsp)  offset,
integer(8), dimension(ptl_isp:ptl_nsp)  total,
real(4), dimension(ptl_nphase+ptl_nconst, array_len, ptl_isp:ptl_nsp)  phase,
integer(8), dimension(array_len, ptl_isp:ptl_nsp)  gid 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine diagnosis ( integer, intent(in)  istep,
integer, intent(in)  irk,
type(grid_type)  grid,
type(psn_type)  psn,
type(species_type), dimension(0:ptl_nsp_max)  spall 
)

Here is the call graph for this function:

Here is the caller graph for this function:

integer function do_diag_particle_int ( integer, intent(in)  istep)

Here is the caller graph for this function:

subroutine dump_bfield ( type(grid_type)  grid)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine dump_f0_grid ( type(grid_type)  grid)

Here is the caller graph for this function:

subroutine dump_grid ( type(grid_type)  grid,
type(psn_type)  psn 
)

Here is the call graph for this function:

Here is the caller graph for this function:

integer function get_diag_particle_mod ( )

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine get_drift_velocity ( type(grid_type), intent(in)  grid,
type(psn_type), intent(in)  psn,
integer, intent(in)  node,
real (kind=8), intent(in)  mu,
real (kind=8), intent(in)  vp,
integer, intent(in)  isp,
real (kind=8), intent(in)  v_th,
real (kind=8), dimension(3), intent(out)  v_mag,
real (kind=8), dimension(3), intent(out)  v_exb,
real (kind=8), dimension(3), intent(out)  v_pardrift,
real (kind=8), intent(out)  pot_rho,
real (kind=8), intent(out)  grad_psi_sqr 
)

Evaluates the drift velocities at given inode, imu, ivp The basic magnetic field quantities necessary for the calculation of the magnetic drifts are stored in the grid data structure. To save memory, this could also be shifted to f0_module.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine save_as_adios_format ( )

Here is the call graph for this function:

Here is the caller graph for this function: