XGC1
Modules | Functions/Subroutines | Variables
logical_sheath.F90 File Reference
#include "adios_macro.h"
#include "t_coeff_mod_macro.h"
Include dependency graph for logical_sheath.F90:

Modules

module  sheath_module
 Module for variables and routines related to the logical sheath boundary condition.
 

Functions/Subroutines

subroutine sheath_module::init_sheath_mod (grid, sheath_mode)
 Initializes sheath module, i.e. memory allocation initialization of variables, and for sheath_mode==2 identification of vertex groups among the wall vertices. More...
 
subroutine sheath_module::finalize_sheath_mod (sheath_mode)
 Finalize sheath module: deallocation of sheath variables. More...
 
subroutine sheath_module::distribute_leftover_charge (iref, iref_max, solved, use_global_balance, sheath_elost_en, loss_shift, num_solved, num_failed, q_avail, delta_q, num_rebalanced)
 Distributes the leftover charge. More...
 
subroutine sheath_module::calculate_sheath_dep (sheath_dep, sheath_dep_inv)
 This new version of the logical sheath adustment does three things: 1) compute use energy distribution of incoming electrons to find the new sheath potential and 2) loop over electrons and decide which ones penetrate the sheath. More...
 
subroutine sheath_module::sheath_adjust_mode2_p2 (ipc)
 
subroutine sheath_module::find_sheath_pot (dep, loss_shift, iep0, loss, solved, sheath_dep, sheath_elost_en)
 Finds sheath potential at which the electron loss is (approx.) equal to the ion loss plus a given shift (loss_shift) More...
 
subroutine sheath_module::sheath_diag_output (grid, i, ipc, sheath_dep, sheath_elost_en)
 Outputs some diagnostic data that helps to check the correctness of the algorithm that determines the sheath potential when sheath_mode==2. More...
 
subroutine sheath_module::sheath_adjust_mode1 ()
 Old sheath calculation (sheath_mode==1) Based on the electron and ion losses at the wall nodes a new value of the sheath potential is determined by adjusting the previous value by a certain amount --> feedback control loop. More...
 

Variables

integer sheath_module::sheath_nep =100
 number of energy grid bins for sheath calculation More...
 
real(kind=8), dimension(:,:,:), allocatable, target sheath_module::sheath_en_max
 Parallel velo cutoff (normalized to sqrt(T_e)) for sheath potential calculation. More...
 
real(kind=8), dimension(:), allocatable, target sheath_module::sheath_te_ev
 Initial wall temperature for normalization. More...
 
integer sheath_module::sheath_nphi
 Number of poloidal planes for sheath potential. More...
 
real(8), dimension(:,:), allocatable, target sheath_module::sheath_pot
 Sheath potential on the wall nodes. More...
 
real(8), dimension(:,:), allocatable, target sheath_module::sheath_lost
 Total charge lost to the wall. More...
 
real(8), dimension(:,:), allocatable, target sheath_module::sheath_ilost
 Ion charge lost to the wall. More...
 
integer sheath_module::sheath_ngroups
 Number of vertex groups for sheath calculation. More...
 
integer sheath_module::sheath_group_maxlen
 Max. number of members of a sheath vertex group. More...
 
integer, dimension(:), allocatable sheath_module::sheath_igroup
 Index of group to which a wall vertex belongs. More...
 
integer, dimension(:), allocatable sheath_module::sheath_group_len
 Number of vertices that belong to a group. More...
 
integer, dimension(:,:), allocatable sheath_module::sheath_group_idx
 Indices of wall vertices that belong to a group. More...