arnolditest Program

Uses

  • program~~arnolditest~~UsesGraph program~arnolditest arnolditest psb_util_mod psb_util_mod program~arnolditest->psb_util_mod psb_base_mod psb_base_mod program~arnolditest->psb_base_mod module~psfun_d_serial_mod psfun_d_serial_mod program~arnolditest->module~psfun_d_serial_mod module~psfun_d_krylov_mod psfun_d_krylov_mod program~arnolditest->module~psfun_d_krylov_mod module~psfun_d_serial_mod->psb_base_mod module~psfun_d_krylov_mod->psb_base_mod module~psfun_d_krylov_mod->module~psfun_d_serial_mod ogpf ogpf module~psfun_d_krylov_mod->ogpf amg_prec_mod amg_prec_mod module~psfun_d_krylov_mod->amg_prec_mod psb_krylov_mod psb_krylov_mod module~psfun_d_krylov_mod->psb_krylov_mod

Test for the parallel computation of matrix function by means of the psfun_d_arnoldi function.

It applies the classical Arnoldi orthogonalization algorithm on a distributed matrix.


Calls

program~~arnolditest~~CallsGraph program~arnolditest arnolditest proc~get_parms get_parms program~arnolditest->proc~get_parms psb_cdfree psb_cdfree program~arnolditest->psb_cdfree psb_geasb psb_geasb program~arnolditest->psb_geasb psb_bcast psb_bcast program~arnolditest->psb_bcast psb_amx psb_amx program~arnolditest->psb_amx psb_geall psb_geall program~arnolditest->psb_geall psb_get_errstatus psb_get_errstatus program~arnolditest->psb_get_errstatus psb_exit psb_exit program~arnolditest->psb_exit psb_spfree psb_spfree program~arnolditest->psb_spfree psb_gefree psb_gefree program~arnolditest->psb_gefree psb_wtime psb_wtime program~arnolditest->psb_wtime psb_sum psb_sum program~arnolditest->psb_sum psb_abort psb_abort program~arnolditest->psb_abort hb_read hb_read program~arnolditest->hb_read psb_info psb_info program~arnolditest->psb_info psb_barrier psb_barrier program~arnolditest->psb_barrier distr_mtpart distr_mtpart program~arnolditest->distr_mtpart getv_mtpart getv_mtpart program~arnolditest->getv_mtpart mm_mat_read mm_mat_read program~arnolditest->mm_mat_read psb_init psb_init program~arnolditest->psb_init psb_matdist psb_matdist program~arnolditest->psb_matdist build_mtpart build_mtpart program~arnolditest->build_mtpart psb_errpush psb_errpush program~arnolditest->psb_errpush mm_array_read mm_array_read program~arnolditest->mm_array_read psb_scatter psb_scatter program~arnolditest->psb_scatter psb_toupper psb_toupper program~arnolditest->psb_toupper psb_realloc psb_realloc program~arnolditest->psb_realloc proc~get_parms->psb_bcast proc~get_parms->psb_abort proc~get_parms->psb_info proc~pr_usage pr_usage proc~get_parms->proc~pr_usage

Contents


Variables

Type AttributesNameInitial
type(psb_dspmat_type) :: a
character(len=20) :: afmt
integer(kind=psb_epk_) :: amatsize
type(psb_ldspmat_type) :: aux_a
real(kind=psb_dpk_), allocatable, target:: aux_x(:,:)
type(psb_ctxt_type) :: ctxt
type(psb_desc_type) :: desc_a
integer(kind=psb_epk_) :: descsize
real(kind=psb_dpk_) :: eps
real(kind=psb_dpk_) :: err
character(len=20) :: filefmt
character(len=20) :: fname
type(psfun_d_serial) :: fun
integer(kind=psb_ipk_) :: i
integer(kind=psb_ipk_) :: iam
integer(kind=psb_ipk_) :: info
integer(kind=psb_ipk_), allocatable:: ipv(:)
integer(kind=psb_ipk_) :: ircode
integer(kind=psb_ipk_) :: istop
integer(kind=psb_ipk_) :: iter
integer(kind=psb_ipk_) :: itmax
integer(kind=psb_ipk_) :: itrace
integer(kind=psb_ipk_), parameter:: iunit =12
integer(kind=psb_ipk_), allocatable:: ivg(:)
type(psfun_d_krylov) :: kmethd
integer(kind=psb_lpk_) :: lnp
integer(kind=psb_ipk_) :: m_problem
character(len=20) :: mname
character(len=20) :: name
integer(kind=psb_ipk_) :: np
character(len=20) :: part
integer(kind=psb_ipk_), allocatable:: perm(:)
real(kind=psb_dpk_), allocatable:: res(:)
character(len=20) :: rhs_file
real(kind=psb_dpk_) :: scaling
integer(kind=psb_epk_) :: system_size
real(kind=psb_dpk_) :: t1
real(kind=psb_dpk_) :: t2
character(len=20) :: variant
type(psb_d_vect_type) :: x_col
real(kind=psb_dpk_), pointer:: x_col_glob(:)
type(psb_d_vect_type) :: y_col

Subroutines

subroutine get_parms(ctxt, mname, rhs_file, filefmt, part, afmt, fname, variant, scaling, eps, itmax, itrace, istop)

This subroutine reads the parameters needed to run the arnolditest program from standard input

Arguments

Type IntentOptional AttributesName
type(psb_ctxt_type), intent(in) :: ctxt
character(len=*), intent(out) :: mname
character(len=*), intent(out) :: rhs_file
character(len=*), intent(out) :: filefmt
character(len=*), intent(out) :: part
character(len=*), intent(out) :: afmt
character(len=*), intent(out) :: fname
character(len=*), intent(out) :: variant
real(kind=psb_dpk_), intent(out) :: scaling
real(kind=psb_dpk_), intent(out) :: eps
integer(kind=psb_ipk_), intent(out) :: itmax
integer(kind=psb_ipk_), intent(out) :: itrace
integer(kind=psb_ipk_), intent(out) :: istop

subroutine pr_usage(iout)

Prints out information on incorrected program usage

Arguments

Type IntentOptional AttributesName
integer(kind=psb_ipk_) :: iout