GBS
neutrals_mod Module Reference

Enumerations

enum  { twev , twgp , ti12 }
 

Functions/Subroutines

subroutine, public initialize_neutrals (grid_plasma)
 This routine initializes the neutral module. More...
 
subroutine, public calculate_neutral_moments (grid_plasma, thetaexp, tempeexp, tempiexp, vpari_n, ionflux_y, ionflux_x)
 
subroutine define_region_neutrals
 
subroutine create_indices_neutrals
 
subroutine memory_neutrals (grid_plasma)
 Allocate local arrays for the neutrals. More...
 
subroutine make_grid_neutrals
 
subroutine create_wall_targetpoints (iwall)
 
subroutine init_source_gp
 
subroutine init_pump_wall
 
subroutine get_data_plasma_to_neutrals (grid_plasma, thetaexp, tempeexp, tempiexp, vpari_n, ionflux_y, ionflux_x)
 First synchronization point between the plasma and neutrals. More...
 
subroutine do_neutrals_core (grid_plasma)
 
subroutine get_data_neutrals_to_plasma (grid_plasma)
 
subroutine copy_tmp_arrays_to_loc (grid_plasma)
 In case of serial neutrals, copy tmp arrays into loc for diagnostics. More...
 
subroutine interpolate_neutral_to_plasma (grid_plasma, iz)
 Interpolate neutral data back to plasma grid. More...
 
subroutine fill_matrix (iz)
 Build the K matrix defining the neutral system. More...
 
subroutine compute_k (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case)
 
subroutine compute_kpp (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case)
 Compute submatrix Kp->p. More...
 
subroutine compute_kpb (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case)
 Compute submatrix Kp->b. More...
 
subroutine compute_kbp (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case)
 Compute submatrix Kb->p. More...
 
subroutine compute_kbb (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case)
 Compute submatrix Kb->b. More...
 
subroutine compute_kpp_sub (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case, refl)
 
subroutine compute_kpb_sub (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case, refl)
 
subroutine compute_kbp_sub (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case, refl)
 
subroutine compute_kbb_sub (K_mat, itos, itoe, ifroms, ifrome, iz, which_moment, TW_case, refl)
 
real(dp) function get_int_nu_eff (Xt, Xf, Yt, Yf, dist, ixt, ixf, iyt, iyf, iz, xrefW, yrefW, refl)
 
pure real(dp) function integration (val, N, dx, choice)
 Numerical integration routine. More...
 
elemental integer function which_wall_am_i (iy, ix)
 
subroutine initialize_solver
 
subroutine solve_for_neutral_density (iz)
 
subroutine get_moments (iz)
 
elemental real(dp) function, public vo (what, T, n)
 

Variables

real(dp), dimension(:,:,:), pointer, public neutral_density_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_velocity_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_temperature_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_loc
 
real(dp), dimension(:,:,:), pointer, public vo_iz
 
real(dp), dimension(:,:,:), pointer, public vo_cx
 
real(dp), dimension(:,:,:), pointer, public vo_en
 
real(dp), dimension(:,:,:), pointer, public vo_rec
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_plasma_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_wall_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_ions_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_plasma_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_wall_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_ions_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_wd_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_wd_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_ionwd_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_ionwd_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_wl_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_wl_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_ionwl_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_ionwl_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_wu_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_wu_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_ionwu_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_ionwu_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_wr_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_wr_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_r_ionwr_loc
 
real(dp), dimension(:,:,:), pointer, public neutral_flux_z_ionwr_loc
 
integer ierr
 
logical, public print_ratio_neutrals = .false.
 
logical, public check_convergence = .true.
 
real(dp), public coeff_neutrals_conservation
 
real(dp), public coeff_plasma_conservation
 
real(dp), dimension(:,:,:), pointer nu_iz
 
real(dp), dimension(:,:,:), pointer nu_cx
 
real(dp), dimension(:,:,:), pointer nu_en
 
real(dp), dimension(:,:,:), pointer nu_rec
 
real(dp), dimension(:,:,:), pointer nu_iz_tot
 
real(dp), dimension(:,:,:), pointer nu_cx_tot
 
real(dp), dimension(:,:,:), pointer nu_en_tot
 
real(dp), dimension(:,:,:), pointer nu_rec_tot
 
real(dp), dimension(:,:,:), pointer tempiexp_tot
 
real(dp), dimension(:,:,:), pointer thetaexp_tot
 
real(dp), dimension(:,:,:), pointer ionflux_x_tot
 
real(dp), dimension(:,:,:), pointer ionflux_y_tot
 
real(dp), dimension(:,:,:), pointer ionflux_x_ct
 
real(dp), dimension(:,:,:), pointer ionflux_y_ct
 
real(dp), dimension(:,:,:), pointer neutral_density_tot
 
real(dp), dimension(:,:,:), pointer neutral_density_tmp
 
real(dp), dimension(:,:,:), pointer neutral_velocity_tmp
 
real(dp), dimension(:,:,:), pointer neutral_velocity_tot
 
real(dp), dimension(:,:,:), pointer neutral_temperature_tmp
 
real(dp), dimension(:,:,:), pointer neutral_temperature_tot
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_plasma_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wall_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ions_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_plasma_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wall_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ions_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wd_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wd_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwd_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwd_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wl_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wl_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwl_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwl_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wu_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wu_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwu_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwu_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wr_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wr_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwr_tmp
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwr_tmp
 
real(dp), dimension(:,:,:), pointer tempiexp_n
 
real(dp), dimension(:,:,:), pointer thetaexp_n
 
real(dp), dimension(:,:,:), pointer neutral_density_n
 
real(dp), dimension(:,:,:), pointer neutral_velocity_n
 
real(dp), dimension(:,:,:), pointer neutral_temperature_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_plasma_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wall_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ions_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_plasma_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wall_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ions_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wd_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wd_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwd_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwd_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wl_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wl_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwl_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwl_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wu_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wu_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwu_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwu_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_wr_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_wr_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_r_ionwr_n
 
real(dp), dimension(:,:,:), pointer neutral_flux_z_ionwr_n
 
real(dp), dimension(:,:,:), pointer vzi_tot
 
real(dp), dimension(:,:,:), pointer vzi_n
 
real(dp), dimension(:,:,:), pointer ionflux_x_n
 
real(dp), dimension(:,:,:), pointer ionflux_y_n
 
real(dp), dimension(:,:,:), pointer nu_iz_n
 
real(dp), dimension(:,:,:), pointer nu_cx_n
 
real(dp), dimension(:,:,:), pointer nu_eff_n
 
real(dp), dimension(:,:,:), pointer nu_en_n
 
real(dp), dimension(:,:,:), pointer nu_rec_n
 
real(dp), dimension(:,:), pointer ionflux_n
 
real(dp), dimension(:,:), pointer ionflux_w_n
 
real(dp), dimension(:,:), pointer da_n
 Area of each cell / length of each boundary cell. More...
 
real(dp), dimension(:,:), pointer vec_norm_n
 
real(dp), dimension(:,:,:), pointer refl_points_wl
 
real(dp), dimension(:,:,:), pointer refl_points_wu
 
real(dp), dimension(:,:,:), pointer refl_points_wr
 
real(dp), dimension(:,:,:), pointer refl_points_wd
 
real(dp), dimension(:,:), pointer k_a
 
real(dp), dimension(:,:), pointer k_w2a_gp
 
real(dp), dimension(:,:), pointer k_w2a_i2n
 
real(dp), dimension(:,:), pointer k_w2a_i2n_ti
 
real(dp), dimension(:,:), pointer k_matrix_twev
 
real(dp), dimension(:,:), pointer k_matrix_ti12
 
real(dp), dimension(:,:), pointer k_matrix_twgp
 
real(dp), dimension(:), pointer vec_b
 Vectors for x = K_A*x + b and provisional vec_b for parallel filling. More...
 
real(dp), dimension(:), pointer vec_b_p
 Vectors for x = K_A*x + b and provisional vec_b for parallel filling. More...
 
real(dp), dimension(:), pointer vec_x
 Vectors for x = K_A*x + b and provisional vec_b for parallel filling. More...
 
real(dp), dimension(:), pointer vec_x_tmp
 Vectors for x = K_A*x + b and provisional vec_b for parallel filling. More...
 
real(dp), dimension(:), pointer neutral_velocity_n_seg
 
real(dp), dimension(:), pointer neutral_temperature_n_seg
 
real(dp), dimension(:), pointer neutral_velocity_1d
 
real(dp), dimension(:), pointer neutral_temperature_1d
 
real(dp), dimension(:), pointer neutral_flux_r_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_1d
 
real(dp), dimension(:), pointer neutral_flux_z_1d
 
real(dp), dimension(:), pointer neutral_flux_r_plasma_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_wall_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_ions_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_wd_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_ionwd_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_wl_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_ionwl_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_wu_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_ionwu_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_wr_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_ionwr_n_seg
 
real(dp), dimension(:), pointer neutral_flux_r_plasma_1d
 
real(dp), dimension(:), pointer neutral_flux_r_wall_1d
 
real(dp), dimension(:), pointer neutral_flux_r_ions_1d
 
real(dp), dimension(:), pointer neutral_flux_r_wd_1d
 
real(dp), dimension(:), pointer neutral_flux_r_ionwd_1d
 
real(dp), dimension(:), pointer neutral_flux_r_wl_1d
 
real(dp), dimension(:), pointer neutral_flux_r_ionwl_1d
 
real(dp), dimension(:), pointer neutral_flux_r_wu_1d
 
real(dp), dimension(:), pointer neutral_flux_r_ionwu_1d
 
real(dp), dimension(:), pointer neutral_flux_r_wr_1d
 
real(dp), dimension(:), pointer neutral_flux_r_ionwr_1d
 
real(dp), dimension(:), pointer neutral_flux_z_plasma_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_wall_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_ions_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_wd_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_ionwd_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_wl_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_ionwl_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_wu_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_ionwu_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_wr_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_ionwr_n_seg
 
real(dp), dimension(:), pointer neutral_flux_z_plasma_1d
 
real(dp), dimension(:), pointer neutral_flux_z_wall_1d
 
real(dp), dimension(:), pointer neutral_flux_z_ions_1d
 
real(dp), dimension(:), pointer neutral_flux_z_wd_1d
 
real(dp), dimension(:), pointer neutral_flux_z_ionwd_1d
 
real(dp), dimension(:), pointer neutral_flux_z_wl_1d
 
real(dp), dimension(:), pointer neutral_flux_z_ionwl_1d
 
real(dp), dimension(:), pointer neutral_flux_z_wu_1d
 
real(dp), dimension(:), pointer neutral_flux_z_ionwu_1d
 
real(dp), dimension(:), pointer neutral_flux_z_wr_1d
 
real(dp), dimension(:), pointer neutral_flux_z_ionwr_1d
 
integer, dimension(:,:), pointer i_a
 
integer, dimension(:), pointer neu_procs_counts
 
integer, dimension(:), pointer neu_procs_displs
 
real(dp), dimension(:), pointer reflexion_b
 
real(dp), dimension(:), pointer source_gp
 
real(dp), dimension(:), pointer pump_b
 
real(dp), dimension(4) refl_coeff_wall
 
logical set_pump_wall
 
logical set_pump_wall_2
 
integer irows
 
integer irowe
 
integer counts
 
integer i
 
integer j
 
integer iwall
 
integer, dimension(:), pointer vector_counts
 
integer, dimension(:), pointer vector_displs
 
integer izwrite
 
real(dp), dimension(:), pointer bessel_twev
 
real(dp), dimension(:), pointer bessel_twgp
 
real(dp), dimension(:, :, :, :), pointer bessel_ti12
 
real(dp), dimension(:), pointer bessel_tmp
 
real(dp) dn_interp
 
real(dp) n_interp_inv
 
real(dp) time0
 
real(dp) core_total_timing = 0.0_dp
 
real(dp) vmin_neutrals = 1.0e-1_dp
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
twev 
twgp 
ti12 

Function/Subroutine Documentation

◆ calculate_neutral_moments()

subroutine, public neutrals_mod::calculate_neutral_moments ( type(tspacegrid), intent(in)  grid_plasma,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  thetaexp,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  tempeexp,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  tempiexp,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  vpari_n,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  ionflux_y,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  ionflux_x 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_k()

subroutine neutrals_mod::compute_k ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case 
)
Parameters
[in,out]k_matInput matrix to be filled
[in]ifromeStarting and ending indices for loops
[in]izWhich z plan to compute
[in]which_momentWhich moment
[in]tw_caseWall temperature case
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kbb()

subroutine neutrals_mod::compute_kbb ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case 
)
private

Compute submatrix Kb->b.

Parameters
[in,out]k_matInput matrix to be filled
[in]ifromeStarting and ending indices for loops
[in]izWhich z plan to compute
[in]which_momentWhich moment
[in]tw_caseWall temperature case
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kbb_sub()

subroutine neutrals_mod::compute_kbb_sub ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case,
logical, intent(in)  refl 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kbp()

subroutine neutrals_mod::compute_kbp ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case 
)
private

Compute submatrix Kb->p.

Parameters
[in,out]k_matInput matrix to be filled
[in]ifromeStarting and ending indices for loops
[in]izWhich z plan to compute
[in]which_momentWhich moment
[in]tw_caseWall temperature case
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kbp_sub()

subroutine neutrals_mod::compute_kbp_sub ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case,
logical, intent(in)  refl 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kpb()

subroutine neutrals_mod::compute_kpb ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case 
)
private

Compute submatrix Kp->b.

Parameters
[in,out]k_matInput matrix to be filled
[in]ifromeStarting and ending indices for loops
[in]izWhich z plan to compute
[in]which_momentWhich moment
[in]tw_caseWall temperature case
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kpb_sub()

subroutine neutrals_mod::compute_kpb_sub ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case,
logical, intent(in)  refl 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kpp()

subroutine neutrals_mod::compute_kpp ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case 
)
private

Compute submatrix Kp->p.

Parameters
[in,out]k_matInput matrix to be filled
[in]ifromeStarting and ending indices for loops
[in]izWhich z plan to compute
[in]which_momentWhich moment
[in]tw_caseWall temperature case
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compute_kpp_sub()

subroutine neutrals_mod::compute_kpp_sub ( real(dp), dimension(:,:), intent(inout), pointer  K_mat,
integer, intent(in)  itos,
integer, intent(in)  itoe,
integer, intent(in)  ifroms,
integer, intent(in)  ifrome,
integer, intent(in)  iz,
integer, intent(in)  which_moment,
integer, intent(in)  TW_case,
logical, intent(in)  refl 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ copy_tmp_arrays_to_loc()

subroutine neutrals_mod::copy_tmp_arrays_to_loc ( type(tspacegrid), intent(in)  grid_plasma)

In case of serial neutrals, copy tmp arrays into loc for diagnostics.

+ Here is the caller graph for this function:

◆ create_indices_neutrals()

subroutine neutrals_mod::create_indices_neutrals
private
+ Here is the caller graph for this function:

◆ create_wall_targetpoints()

subroutine neutrals_mod::create_wall_targetpoints ( integer, intent(in)  iwall)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ define_region_neutrals()

subroutine neutrals_mod::define_region_neutrals
private
+ Here is the caller graph for this function:

◆ do_neutrals_core()

subroutine neutrals_mod::do_neutrals_core ( type(tspacegrid), intent(in)  grid_plasma)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fill_matrix()

subroutine neutrals_mod::fill_matrix ( integer, intent(in)  iz)
private

Build the K matrix defining the neutral system.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_data_neutrals_to_plasma()

subroutine neutrals_mod::get_data_neutrals_to_plasma ( type(tspacegrid), intent(in)  grid_plasma)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_data_plasma_to_neutrals()

subroutine neutrals_mod::get_data_plasma_to_neutrals ( type(tspacegrid), intent(in)  grid_plasma,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  thetaexp,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  tempeexp,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  tempiexp,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  vpari_n,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  ionflux_y,
real(dp), dimension(grid_plasma%iysg_local:grid_plasma%iyeg_local,grid_plasma%ixsg_local:grid_plasma%ixeg_local,grid_plasma%izsg_local:grid_plasma%izeg_local), intent(inout)  ionflux_x 
)
private

First synchronization point between the plasma and neutrals.

Send all the required plasma data to the neutrals

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_int_nu_eff()

real(dp) function neutrals_mod::get_int_nu_eff ( real(dp), intent(in)  Xt,
real(dp), intent(in)  Xf,
real(dp), intent(in)  Yt,
real(dp), intent(in)  Yf,
real(dp), intent(in)  dist,
integer, intent(in)  ixt,
integer, intent(in)  ixf,
integer, intent(in)  iyt,
integer, intent(in)  iyf,
integer, intent(in)  iz,
real(dp), intent(in)  xrefW,
real(dp), intent(in)  yrefW,
logical, intent(in)  refl 
)
private
Note
In the following, the integration is made by computing an average value of nu_eff across inputneutralsN_interp_neutrals points:

\[ \int_D \input%model%nu \approx \nu_{avg} D \]

where nu_avg is the average value of nu_eff
+ Here is the caller graph for this function:

◆ get_moments()

subroutine neutrals_mod::get_moments ( integer, intent(in)  iz)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ init_pump_wall()

subroutine neutrals_mod::init_pump_wall
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ init_source_gp()

subroutine neutrals_mod::init_source_gp
private
+ Here is the caller graph for this function:

◆ initialize_neutrals()

subroutine, public neutrals_mod::initialize_neutrals ( type(tspacegrid), intent(inout)  grid_plasma)

This routine initializes the neutral module.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initialize_solver()

subroutine neutrals_mod::initialize_solver
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ integration()

pure real(dp) function neutrals_mod::integration ( real(dp), dimension(:), intent(in)  val,
integer, intent(in)  N,
real(dp), intent(in)  dx,
character(len=*), intent(in)  choice 
)
private

Numerical integration routine.

Parameters
[in]choiceMethod to use 'r' = rectangle (left), 'm' = midpoint
+ Here is the caller graph for this function:

◆ interpolate_neutral_to_plasma()

subroutine neutrals_mod::interpolate_neutral_to_plasma ( type(tspacegrid), intent(in)  grid_plasma,
integer, intent(in)  iz 
)
private

Interpolate neutral data back to plasma grid.

+ Here is the caller graph for this function:

◆ make_grid_neutrals()

subroutine neutrals_mod::make_grid_neutrals
private
Note
Here, the velocity grid is built such that it begins at dv/2 and ends at inputneutralsvmax_neutrals. This is done to avoid 0 that gives problem when in the denominator.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ memory_neutrals()

subroutine neutrals_mod::memory_neutrals ( type(tspacegrid), intent(in)  grid_plasma)
private

Allocate local arrays for the neutrals.

+ Here is the caller graph for this function:

◆ solve_for_neutral_density()

subroutine neutrals_mod::solve_for_neutral_density ( integer, intent(in)  iz)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vo()

elemental real(dp) function, public neutrals_mod::vo ( character(len=*), intent(in)  what,
real(dp), intent(in)  T,
real(dp), intent(in)  n 
)
+ Here is the caller graph for this function:

◆ which_wall_am_i()

elemental integer function neutrals_mod::which_wall_am_i ( integer, intent(in)  iy,
integer, intent(in)  ix 
)
private
+ Here is the caller graph for this function:

Variable Documentation

◆ bessel_ti12

real(dp), dimension(:, :, :, :), pointer neutrals_mod::bessel_ti12
private

◆ bessel_tmp

real(dp), dimension(:), pointer neutrals_mod::bessel_tmp
private

◆ bessel_twev

real(dp), dimension(:), pointer neutrals_mod::bessel_twev
private

◆ bessel_twgp

real(dp), dimension(:), pointer neutrals_mod::bessel_twgp
private

◆ check_convergence

logical, public neutrals_mod::check_convergence = .true.

◆ coeff_neutrals_conservation

real(dp), public neutrals_mod::coeff_neutrals_conservation

◆ coeff_plasma_conservation

real(dp), public neutrals_mod::coeff_plasma_conservation

◆ core_total_timing

real(dp) neutrals_mod::core_total_timing = 0.0_dp
private

◆ counts

integer neutrals_mod::counts
private

◆ da_n

real(dp), dimension(:,:), pointer neutrals_mod::da_n
private

Area of each cell / length of each boundary cell.

◆ dn_interp

real(dp) neutrals_mod::dn_interp
private

◆ i

integer neutrals_mod::i
private

◆ i_a

integer, dimension(:,:), pointer neutrals_mod::i_a
private

◆ ierr

integer neutrals_mod::ierr
private

◆ ionflux_n

real(dp), dimension(:,:), pointer neutrals_mod::ionflux_n
private

◆ ionflux_w_n

real(dp), dimension(:,:), pointer neutrals_mod::ionflux_w_n
private

◆ ionflux_x_ct

real(dp), dimension(:,:,:), pointer neutrals_mod::ionflux_x_ct
private

◆ ionflux_x_n

real(dp), dimension(:,:,:), pointer neutrals_mod::ionflux_x_n
private

◆ ionflux_x_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::ionflux_x_tot
private

◆ ionflux_y_ct

real(dp), dimension(:,:,:), pointer neutrals_mod::ionflux_y_ct
private

◆ ionflux_y_n

real(dp), dimension(:,:,:), pointer neutrals_mod::ionflux_y_n
private

◆ ionflux_y_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::ionflux_y_tot
private

◆ irowe

integer neutrals_mod::irowe
private

◆ irows

integer neutrals_mod::irows
private

◆ iwall

integer neutrals_mod::iwall
private

◆ izwrite

integer neutrals_mod::izwrite
private

◆ j

integer neutrals_mod::j
private

◆ k_a

real(dp), dimension(:,:), pointer neutrals_mod::k_a
private

◆ k_matrix_ti12

real(dp), dimension(:,:), pointer neutrals_mod::k_matrix_ti12
private

◆ k_matrix_twev

real(dp), dimension(:,:), pointer neutrals_mod::k_matrix_twev
private

◆ k_matrix_twgp

real(dp), dimension(:,:), pointer neutrals_mod::k_matrix_twgp
private

◆ k_w2a_gp

real(dp), dimension(:,:), pointer neutrals_mod::k_w2a_gp
private

◆ k_w2a_i2n

real(dp), dimension(:,:), pointer neutrals_mod::k_w2a_i2n
private

◆ k_w2a_i2n_ti

real(dp), dimension(:,:), pointer neutrals_mod::k_w2a_i2n_ti
private

◆ n_interp_inv

real(dp) neutrals_mod::n_interp_inv
private

◆ neu_procs_counts

integer, dimension(:), pointer neutrals_mod::neu_procs_counts
private

◆ neu_procs_displs

integer, dimension(:), pointer neutrals_mod::neu_procs_displs
private

◆ neutral_density_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_density_loc

◆ neutral_density_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_density_n
private

◆ neutral_density_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_density_tmp
private

◆ neutral_density_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_density_tot
private

◆ neutral_flux_r_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_1d
private

◆ neutral_flux_r_ions_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ions_1d
private

◆ neutral_flux_r_ions_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_ions_loc

◆ neutral_flux_r_ions_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ions_n
private

◆ neutral_flux_r_ions_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ions_n_seg
private

◆ neutral_flux_r_ions_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ions_tmp
private

◆ neutral_flux_r_ionwd_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwd_1d
private

◆ neutral_flux_r_ionwd_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_ionwd_loc

◆ neutral_flux_r_ionwd_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwd_n
private

◆ neutral_flux_r_ionwd_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwd_n_seg
private

◆ neutral_flux_r_ionwd_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwd_tmp
private

◆ neutral_flux_r_ionwl_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwl_1d
private

◆ neutral_flux_r_ionwl_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_ionwl_loc

◆ neutral_flux_r_ionwl_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwl_n
private

◆ neutral_flux_r_ionwl_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwl_n_seg
private

◆ neutral_flux_r_ionwl_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwl_tmp
private

◆ neutral_flux_r_ionwr_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwr_1d
private

◆ neutral_flux_r_ionwr_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_ionwr_loc

◆ neutral_flux_r_ionwr_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwr_n
private

◆ neutral_flux_r_ionwr_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwr_n_seg
private

◆ neutral_flux_r_ionwr_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwr_tmp
private

◆ neutral_flux_r_ionwu_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwu_1d
private

◆ neutral_flux_r_ionwu_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_ionwu_loc

◆ neutral_flux_r_ionwu_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwu_n
private

◆ neutral_flux_r_ionwu_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_ionwu_n_seg
private

◆ neutral_flux_r_ionwu_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_ionwu_tmp
private

◆ neutral_flux_r_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_loc

◆ neutral_flux_r_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_n
private

◆ neutral_flux_r_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_n_seg
private

◆ neutral_flux_r_plasma_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_plasma_1d
private

◆ neutral_flux_r_plasma_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_plasma_loc

◆ neutral_flux_r_plasma_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_plasma_n
private

◆ neutral_flux_r_plasma_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_plasma_n_seg
private

◆ neutral_flux_r_plasma_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_plasma_tmp
private

◆ neutral_flux_r_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_tmp
private

◆ neutral_flux_r_wall_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wall_1d
private

◆ neutral_flux_r_wall_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_wall_loc

◆ neutral_flux_r_wall_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wall_n
private

◆ neutral_flux_r_wall_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wall_n_seg
private

◆ neutral_flux_r_wall_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wall_tmp
private

◆ neutral_flux_r_wd_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wd_1d
private

◆ neutral_flux_r_wd_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_wd_loc

◆ neutral_flux_r_wd_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wd_n
private

◆ neutral_flux_r_wd_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wd_n_seg
private

◆ neutral_flux_r_wd_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wd_tmp
private

◆ neutral_flux_r_wl_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wl_1d
private

◆ neutral_flux_r_wl_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_wl_loc

◆ neutral_flux_r_wl_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wl_n
private

◆ neutral_flux_r_wl_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wl_n_seg
private

◆ neutral_flux_r_wl_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wl_tmp
private

◆ neutral_flux_r_wr_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wr_1d
private

◆ neutral_flux_r_wr_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_wr_loc

◆ neutral_flux_r_wr_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wr_n
private

◆ neutral_flux_r_wr_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wr_n_seg
private

◆ neutral_flux_r_wr_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wr_tmp
private

◆ neutral_flux_r_wu_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wu_1d
private

◆ neutral_flux_r_wu_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_r_wu_loc

◆ neutral_flux_r_wu_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wu_n
private

◆ neutral_flux_r_wu_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_r_wu_n_seg
private

◆ neutral_flux_r_wu_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_r_wu_tmp
private

◆ neutral_flux_z_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_1d
private

◆ neutral_flux_z_ions_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ions_1d
private

◆ neutral_flux_z_ions_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_ions_loc

◆ neutral_flux_z_ions_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ions_n
private

◆ neutral_flux_z_ions_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ions_n_seg
private

◆ neutral_flux_z_ions_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ions_tmp
private

◆ neutral_flux_z_ionwd_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwd_1d
private

◆ neutral_flux_z_ionwd_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_ionwd_loc

◆ neutral_flux_z_ionwd_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwd_n
private

◆ neutral_flux_z_ionwd_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwd_n_seg
private

◆ neutral_flux_z_ionwd_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwd_tmp
private

◆ neutral_flux_z_ionwl_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwl_1d
private

◆ neutral_flux_z_ionwl_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_ionwl_loc

◆ neutral_flux_z_ionwl_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwl_n
private

◆ neutral_flux_z_ionwl_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwl_n_seg
private

◆ neutral_flux_z_ionwl_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwl_tmp
private

◆ neutral_flux_z_ionwr_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwr_1d
private

◆ neutral_flux_z_ionwr_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_ionwr_loc

◆ neutral_flux_z_ionwr_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwr_n
private

◆ neutral_flux_z_ionwr_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwr_n_seg
private

◆ neutral_flux_z_ionwr_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwr_tmp
private

◆ neutral_flux_z_ionwu_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwu_1d
private

◆ neutral_flux_z_ionwu_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_ionwu_loc

◆ neutral_flux_z_ionwu_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwu_n
private

◆ neutral_flux_z_ionwu_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_ionwu_n_seg
private

◆ neutral_flux_z_ionwu_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_ionwu_tmp
private

◆ neutral_flux_z_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_loc

◆ neutral_flux_z_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_n
private

◆ neutral_flux_z_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_n_seg
private

◆ neutral_flux_z_plasma_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_plasma_1d
private

◆ neutral_flux_z_plasma_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_plasma_loc

◆ neutral_flux_z_plasma_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_plasma_n
private

◆ neutral_flux_z_plasma_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_plasma_n_seg
private

◆ neutral_flux_z_plasma_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_plasma_tmp
private

◆ neutral_flux_z_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_tmp
private

◆ neutral_flux_z_wall_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wall_1d
private

◆ neutral_flux_z_wall_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_wall_loc

◆ neutral_flux_z_wall_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wall_n
private

◆ neutral_flux_z_wall_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wall_n_seg
private

◆ neutral_flux_z_wall_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wall_tmp
private

◆ neutral_flux_z_wd_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wd_1d
private

◆ neutral_flux_z_wd_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_wd_loc

◆ neutral_flux_z_wd_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wd_n
private

◆ neutral_flux_z_wd_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wd_n_seg
private

◆ neutral_flux_z_wd_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wd_tmp
private

◆ neutral_flux_z_wl_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wl_1d
private

◆ neutral_flux_z_wl_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_wl_loc

◆ neutral_flux_z_wl_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wl_n
private

◆ neutral_flux_z_wl_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wl_n_seg
private

◆ neutral_flux_z_wl_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wl_tmp
private

◆ neutral_flux_z_wr_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wr_1d
private

◆ neutral_flux_z_wr_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_wr_loc

◆ neutral_flux_z_wr_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wr_n
private

◆ neutral_flux_z_wr_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wr_n_seg
private

◆ neutral_flux_z_wr_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wr_tmp
private

◆ neutral_flux_z_wu_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wu_1d
private

◆ neutral_flux_z_wu_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_flux_z_wu_loc

◆ neutral_flux_z_wu_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wu_n
private

◆ neutral_flux_z_wu_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_flux_z_wu_n_seg
private

◆ neutral_flux_z_wu_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_flux_z_wu_tmp
private

◆ neutral_temperature_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_temperature_1d
private

◆ neutral_temperature_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_temperature_loc

◆ neutral_temperature_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_temperature_n
private

◆ neutral_temperature_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_temperature_n_seg
private

◆ neutral_temperature_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_temperature_tmp
private

◆ neutral_temperature_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_temperature_tot
private

◆ neutral_velocity_1d

real(dp), dimension(:), pointer neutrals_mod::neutral_velocity_1d
private

◆ neutral_velocity_loc

real(dp), dimension(:,:,:), pointer, public neutrals_mod::neutral_velocity_loc

◆ neutral_velocity_n

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_velocity_n
private

◆ neutral_velocity_n_seg

real(dp), dimension(:), pointer neutrals_mod::neutral_velocity_n_seg
private

◆ neutral_velocity_tmp

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_velocity_tmp
private

◆ neutral_velocity_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::neutral_velocity_tot
private

◆ nu_cx

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_cx
private

◆ nu_cx_n

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_cx_n
private

◆ nu_cx_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_cx_tot
private

◆ nu_eff_n

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_eff_n
private

◆ nu_en

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_en
private

◆ nu_en_n

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_en_n
private

◆ nu_en_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_en_tot
private

◆ nu_iz

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_iz
private

◆ nu_iz_n

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_iz_n
private

◆ nu_iz_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_iz_tot
private

◆ nu_rec

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_rec
private

◆ nu_rec_n

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_rec_n
private

◆ nu_rec_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::nu_rec_tot
private

◆ print_ratio_neutrals

logical, public neutrals_mod::print_ratio_neutrals = .false.

◆ pump_b

real(dp), dimension(:), pointer neutrals_mod::pump_b
private

◆ refl_coeff_wall

real(dp), dimension(4) neutrals_mod::refl_coeff_wall
private

◆ refl_points_wd

real(dp), dimension(:,:,:), pointer neutrals_mod::refl_points_wd
private

◆ refl_points_wl

real(dp), dimension(:,:,:), pointer neutrals_mod::refl_points_wl
private

◆ refl_points_wr

real(dp), dimension(:,:,:), pointer neutrals_mod::refl_points_wr
private

◆ refl_points_wu

real(dp), dimension(:,:,:), pointer neutrals_mod::refl_points_wu
private

◆ reflexion_b

real(dp), dimension(:), pointer neutrals_mod::reflexion_b
private

◆ set_pump_wall

logical neutrals_mod::set_pump_wall
private

◆ set_pump_wall_2

logical neutrals_mod::set_pump_wall_2
private

◆ source_gp

real(dp), dimension(:), pointer neutrals_mod::source_gp
private

◆ tempiexp_n

real(dp), dimension(:,:,:), pointer neutrals_mod::tempiexp_n
private

◆ tempiexp_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::tempiexp_tot
private

◆ thetaexp_n

real(dp), dimension(:,:,:), pointer neutrals_mod::thetaexp_n
private

◆ thetaexp_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::thetaexp_tot
private

◆ time0

real(dp) neutrals_mod::time0
private

◆ vec_b

real(dp), dimension(:), pointer neutrals_mod::vec_b
private

Vectors for x = K_A*x + b and provisional vec_b for parallel filling.

◆ vec_b_p

real(dp), dimension(:), pointer neutrals_mod::vec_b_p
private

Vectors for x = K_A*x + b and provisional vec_b for parallel filling.

◆ vec_norm_n

real(dp), dimension(:,:), pointer neutrals_mod::vec_norm_n
private

◆ vec_x

real(dp), dimension(:), pointer neutrals_mod::vec_x
private

Vectors for x = K_A*x + b and provisional vec_b for parallel filling.

◆ vec_x_tmp

real(dp), dimension(:), pointer neutrals_mod::vec_x_tmp
private

Vectors for x = K_A*x + b and provisional vec_b for parallel filling.

◆ vector_counts

integer, dimension(:), pointer neutrals_mod::vector_counts
private

◆ vector_displs

integer, dimension(:), pointer neutrals_mod::vector_displs
private

◆ vmin_neutrals

real(dp) neutrals_mod::vmin_neutrals = 1.0e-1_dp
private

◆ vo_cx

real(dp), dimension(:,:,:), pointer, public neutrals_mod::vo_cx

◆ vo_en

real(dp), dimension(:,:,:), pointer, public neutrals_mod::vo_en

◆ vo_iz

real(dp), dimension(:,:,:), pointer, public neutrals_mod::vo_iz

◆ vo_rec

real(dp), dimension(:,:,:), pointer, public neutrals_mod::vo_rec

◆ vzi_n

real(dp), dimension(:,:,:), pointer neutrals_mod::vzi_n
private

◆ vzi_tot

real(dp), dimension(:,:,:), pointer neutrals_mod::vzi_tot
private