benchmark_helmholtz_solvers Program

Program to benchmark helmholtz problem


Variables

Type Attributes Name Initial
integer :: ierr
integer :: rank
integer :: nprocs
logical :: omp_on
integer :: num_threads
integer :: funit
integer :: io_error
integer :: nf90_id
integer :: nf90_stat
character(len=150) :: errmsg
class(equilibrium_t), allocatable :: equi
type(mesh_cart_t) :: mesh
type(multigrid_t) :: multigrid
integer :: bnd_type_core
integer :: bnd_type_wall
integer :: bnd_type_dome
integer :: bnd_type_out
real(kind=FP), allocatable, dimension(:,:) :: co
real(kind=FP), allocatable, dimension(:,:) :: lambda
real(kind=FP), allocatable, dimension(:,:) :: xi
real(kind=FP), allocatable, dimension(:), target :: rhs
real(kind=FP), allocatable, dimension(:), target :: sol
real(kind=FP), allocatable, dimension(:), target :: guess
class(helmholtz_solver_t), allocatable :: hsolver
integer, allocatable, dimension(:) :: reorders
real(kind=FP) :: x
real(kind=FP) :: y
real(kind=FP) :: res
real(kind=FP) :: err_l2nrm
real(kind=FP) :: err_sup
real(kind=FP) :: nrm_l2
real(kind=FP) :: df
integer :: eq_id
integer :: l
integer :: ki
integer :: kb
integer :: kg
integer :: district
integer :: hinfo
logical :: run_default_case = .false.
character(len=64) :: geometry = 'CIRCULAR'
logical :: read_case_from_files = .false.
logical :: write_case_to_files = .false.
logical :: write_log_file = .false.
type(parameters_helmholtz_solver_factory) :: parslv
character(len=16) :: solver_type = 'MGMRES'
character(len=16) :: dirsolver_type = 'MKL'
character(len=16) :: smoother_type = 'GSRB'
real(kind=FP) :: rtol = 1.0E-8_FP
real(kind=FP) :: restol_zero = FP_EPS
integer :: gmres_maxiter = 15
integer :: gmres_nrestart = 15
character(len=1) :: mgrid_cycletype = 'V'
integer :: mgrid_npresmooth = 5
integer :: mgrid_npostsmooth = 5
integer :: dbgout = 1
integer :: nlvls = 4
real(kind=FP) :: spacing_f = 4.0E-3_FP
integer :: size_neighbor = 2
integer :: size_ghost_layer = 2
integer :: reorder_size = 8
logical :: extend_beyond_wall = .false.
real(kind=FP) :: phi = 0.0_FP
character(len=32) :: bnd_type_core_char = 'BND_TYPE_DIRICHLET_ZERO'