mld2p4-2:

mlprec/Makefile
 mlprec/mld_c_mumps_solver.F90
 mlprec/mld_d_mumps_solver.F90
 mlprec/mld_s_mumps_solver.F90
 mlprec/mld_z_mumps_solver.F90
 
Merge MUMPS changes
stopcriterion
Salvatore Filippone 9 years ago
parent c9de0e0710
commit 8f41ec827c

@ -10,23 +10,27 @@ FINCLUDES=$(FMFLAG). $(FMFLAG)$(LIBDIR) $(FMFLAG)$(PSBINCDIR) $(FMFLAG)$(PSBLIBD
DMODOBJS=mld_d_prec_type.o mld_d_ilu_fact_mod.o \
mld_d_inner_mod.o mld_d_ilu_solver.o mld_d_diag_solver.o mld_d_jac_smoother.o mld_d_as_smoother.o \
mld_d_umf_solver.o mld_d_slu_solver.o mld_d_sludist_solver.o mld_d_id_solver.o mld_d_mumps_solver.o\
mld_d_base_solver_mod.o mld_d_base_smoother_mod.o mld_d_onelev_mod.o mld_d_mumps_solver.o mld_d_gs_solver.o
mld_d_umf_solver.o mld_d_slu_solver.o mld_d_sludist_solver.o mld_d_id_solver.o\
mld_d_base_solver_mod.o mld_d_base_smoother_mod.o mld_d_onelev_mod.o \
mld_d_gs_solver.o mld_d_mumps_solver.o
SMODOBJS=mld_s_prec_type.o mld_s_ilu_fact_mod.o \
mld_s_inner_mod.o mld_s_ilu_solver.o mld_s_diag_solver.o mld_s_jac_smoother.o mld_s_as_smoother.o \
mld_s_slu_solver.o mld_s_sludist_solver.o mld_s_id_solver.o mld_s_mumps_solver.o\
mld_s_base_solver_mod.o mld_s_base_smoother_mod.o mld_s_onelev_mod.o mld_s_mumps_solver.o mld_s_gs_solver.o
mld_s_slu_solver.o mld_s_sludist_solver.o mld_s_id_solver.o\
mld_s_base_solver_mod.o mld_s_base_smoother_mod.o mld_s_onelev_mod.o \
mld_s_gs_solver.o mld_s_mumps_solver.o
ZMODOBJS=mld_z_prec_type.o mld_z_ilu_fact_mod.o \
mld_z_inner_mod.o mld_z_ilu_solver.o mld_z_diag_solver.o mld_z_jac_smoother.o mld_z_as_smoother.o \
mld_z_umf_solver.o mld_z_slu_solver.o mld_z_sludist_solver.o mld_z_id_solver.o\
mld_z_base_solver_mod.o mld_z_base_smoother_mod.o mld_z_onelev_mod.o mld_z_mumps_solver.o mld_z_gs_solver.o
mld_z_base_solver_mod.o mld_z_base_smoother_mod.o mld_z_onelev_mod.o \
mld_z_gs_solver.o mld_z_mumps_solver.o
CMODOBJS=mld_c_prec_type.o mld_c_ilu_fact_mod.o \
mld_c_inner_mod.o mld_c_ilu_solver.o mld_c_diag_solver.o mld_c_jac_smoother.o mld_c_as_smoother.o \
mld_c_slu_solver.o mld_c_sludist_solver.o mld_c_id_solver.o mld_c_mumps_solver.o\
mld_c_base_solver_mod.o mld_c_base_smoother_mod.o mld_c_onelev_mod.o mld_c_gs_solver.o mld_c_gs_solver.o
mld_c_slu_solver.o mld_c_sludist_solver.o mld_c_id_solver.o\
mld_c_base_solver_mod.o mld_c_base_smoother_mod.o mld_c_onelev_mod.o \
mld_c_gs_solver.o mld_c_mumps_solver.o
@ -53,6 +57,7 @@ lib: $(OBJS) impld
$(MODOBJS): $(PSBINCDIR)/$(BASEMODNAME)$(.mod)
mld_base_prec_type.o: mld_const.h
mld_s_prec_type.o mld_d_prec_type.o mld_c_prec_type.o mld_z_prec_type.o : mld_base_prec_type.o
mld_prec_type.o: mld_s_prec_type.o mld_d_prec_type.o mld_c_prec_type.o mld_z_prec_type.o
@ -92,9 +97,8 @@ mld_z_base_smoother_mod.o: mld_z_base_solver_mod.o
mld_s_base_solver_mod.o mld_d_base_solver_mod.o mld_c_base_solver_mod.o mld_z_base_solver_mod.o: mld_base_prec_type.o
mld_d_gs_solver.o mld_d_id_solver.o mld_d_sludist_solver.o mld_d_slu_solver.o \
mld_d_umf_solver.o mld_d_diag_solver.o mld_d_ilu_solver.o: mld_d_base_solver_mod.o mld_d_prec_type.o
mld_d_mumps_solver.o: mld_d_base_solver_mod.o mld_d_prec_type.o
mld_d_mumps_solver.o mld_d_gs_solver.o mld_d_id_solver.o mld_d_sludist_solver.o mld_d_slu_solver.o \
mld_d_umf_solver.o mld_d_diag_solver.o mld_d_ilu_solver.o: mld_d_base_solver_mod.o mld_d_prec_type.o
mld_d_ilu_fact_mod.o: mld_base_prec_type.o mld_d_base_solver_mod.o
mld_d_ilu_solver.o mld_d_iluk_fact.o: mld_d_ilu_fact_mod.o
@ -102,39 +106,36 @@ mld_d_as_smoother.o mld_d_jac_smoother.o: mld_d_base_smoother_mod.o
mld_d_jac_smoother.o: mld_d_diag_solver.o
mld_dprecinit.o mld_dprecset.o: mld_d_diag_solver.o mld_d_ilu_solver.o \
mld_d_umf_solver.o mld_d_as_smoother.o mld_d_jac_smoother.o \
mld_d_id_solver.o mld_d_slu_solver.o mld_d_sludist_solver.o mld_d_mumps_solver.o
mld_d_id_solver.o mld_d_slu_solver.o mld_d_sludist_solver.o
mld_s_gs_solver.o mld_s_id_solver.o mld_s_sludist_solver.o mld_s_slu_solver.o \
mld_s_diag_solver.o mld_s_ilu_solver.o: mld_s_base_solver_mod.o mld_s_prec_type.o
mld_s_mumps_solver.o: mld_s_base_solver_mod.o mld_s_prec_type.o
mld_s_mumps_solver.o mld_s_gs_solver.o mld_s_id_solver.o mld_s_sludist_solver.o mld_s_slu_solver.o \
mld_s_diag_solver.o mld_s_ilu_solver.o: mld_s_base_solver_mod.o mld_s_prec_type.o
mld_s_ilu_fact_mod.o: mld_base_prec_type.o mld_s_base_solver_mod.o
mld_s_ilu_solver.o mld_s_iluk_fact.o: mld_s_ilu_fact_mod.o
mld_s_as_smoother.o mld_s_jac_smoother.o: mld_s_base_smoother_mod.o
mld_s_jac_smoother.o: mld_s_diag_solver.o
mld_sprecinit.o mld_sprecset.o: mld_s_diag_solver.o mld_s_ilu_solver.o \
mld_s_as_smoother.o mld_s_jac_smoother.o \
mld_s_id_solver.o mld_s_slu_solver.o mld_s_sludist_solver.o mld_s_mumps_solver.o
mld_s_id_solver.o mld_s_slu_solver.o mld_s_sludist_solver.o
mld_z_gs_solver.o mld_z_id_solver.o mld_z_sludist_solver.o mld_z_slu_solver.o \
mld_z_mumps_solver.o mld_z_gs_solver.o mld_z_id_solver.o mld_z_sludist_solver.o mld_z_slu_solver.o \
mld_z_umf_solver.o mld_z_diag_solver.o mld_z_ilu_solver.o: mld_z_base_solver_mod.o mld_z_prec_type.o
mld_z_mumps_solver.o: mld_z_base_solver_mod.o mld_z_prec_type.o
mld_z_ilu_fact_mod.o: mld_base_prec_type.o mld_z_base_solver_mod.o
mld_z_ilu_solver.o mld_z_iluk_fact.o: mld_z_ilu_fact_mod.o
mld_z_as_smoother.o mld_z_jac_smoother.o: mld_z_base_smoother_mod.o
mld_z_jac_smoother.o: mld_z_diag_solver.o
mld_zprecinit.o mld_zprecset.o: mld_z_diag_solver.o mld_z_ilu_solver.o \
mld_z_umf_solver.o mld_z_as_smoother.o mld_z_jac_smoother.o \
mld_z_id_solver.o mld_z_slu_solver.o mld_z_sludist_solver.o mld_z_mumps_solver.o
mld_z_id_solver.o mld_z_slu_solver.o mld_z_sludist_solver.o
mld_c_gs_solver.o mld_c_id_solver.o mld_c_sludist_solver.o mld_c_slu_solver.o \
mld_c_mumps_solver.o mld_c_gs_solver.o mld_c_id_solver.o mld_c_sludist_solver.o mld_c_slu_solver.o \
mld_c_diag_solver.o mld_c_ilu_solver.o: mld_c_base_solver_mod.o mld_c_prec_type.o
mld_c_mumps_solver.o: mld_c_base_solver_mod.o mld_c_prec_type.o
mld_c_ilu_fact_mod.o: mld_base_prec_type.o mld_c_base_solver_mod.o
mld_c_ilu_solver.o mld_c_iluk_fact.o: mld_c_ilu_fact_mod.o
mld_c_as_smoother.o mld_c_jac_smoother.o: mld_c_base_smoother_mod.o
mld_c_jac_smoother.o: mld_c_diag_solver.o
mld_cprecinit.o mld_cprecset.o: mld_c_diag_solver.o mld_c_ilu_solver.o \
mld_c_as_smoother.o mld_c_jac_smoother.o mld_c_mumps_solver.o\
mld_c_as_smoother.o mld_c_jac_smoother.o \
mld_c_id_solver.o mld_c_slu_solver.o mld_c_sludist_solver.o

@ -270,6 +270,7 @@ contains
info = psb_success_
call psb_erractionsave(err_act)
select case(what)
#if defined(HAVE_MUMPS_)
case(mld_as_sequential_)
sv%ipar(1)=val
case(mld_mumps_print_err_)
@ -280,6 +281,7 @@ contains
!case(mld_print_glob_)
! sv%id%icntl(3)=val
! sv%ipar(3)=val
#endif
case default
call sv%mld_c_base_solver_type%set(what,val,info)
end select
@ -345,10 +347,12 @@ contains
call psb_erractionsave(err_act)
select case(psb_toupper(what))
#if defined(HAVE_MUMPS_)
case('SET_AS_SEQUENTIAL')
iwhat=mld_as_sequential_
case('SET_MUMPS_PRINT_ERR')
iwhat=mld_mumps_print_err_
#endif
case default
iwhat=-1
end select
@ -380,7 +384,7 @@ contains
real(psb_spk_), intent(in) :: val
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_) :: err_act, iwhat
character(len=20) :: name='z_mumps_solver_csetr'
character(len=20) :: name='c_mumps_solver_csetr'
info = psb_success_
call psb_erractionsave(err_act)
@ -422,6 +426,7 @@ contains
info = psb_success_
call psb_erractionsave(err_act)
#if defined(HAVE_MUMPS_)
if (.not.allocated(sv%id)) then
allocate(sv%id,stat=info)
if (info /= psb_success_) then
@ -432,7 +437,7 @@ contains
sv%built=.false.
end if
!INSTANCIATION OF sv%id needed to set parmater but mpi communicator needed
! INSTANTIATION OF sv%id needed to set parmater but mpi communicator needed
! sv%id%job = -1
! sv%id%par=1
! call dmumps(sv%id)
@ -441,7 +446,7 @@ contains
!sv%ipar(11)=0
!sv%ipar(12)=6
#endif
call psb_erractionrestore(err_act)
return

@ -138,7 +138,7 @@ module mld_d_mumps_solver
subroutine d_mumps_solver_bld(a,desc_a,sv,upd,info,b,amold,vmold,imold)
use mpi
import :: psb_desc_type, mld_d_mumps_solver_type, psb_d_vect_type, psb_spk_, &
import :: psb_desc_type, mld_d_mumps_solver_type, psb_d_vect_type, psb_dpk_, &
& psb_dspmat_type, psb_d_base_sparse_mat, psb_d_base_vect_type,&
& psb_ipk_, psb_i_base_vect_type
@ -270,6 +270,7 @@ contains
info = psb_success_
call psb_erractionsave(err_act)
select case(what)
#if defined(HAVE_MUMPS_)
case(mld_as_sequential_)
sv%ipar(1)=val
case(mld_mumps_print_err_)
@ -280,6 +281,7 @@ contains
!case(mld_print_glob_)
! sv%id%icntl(3)=val
! sv%ipar(3)=val
#endif
case default
call sv%mld_d_base_solver_type%set(what,val,info)
end select
@ -345,10 +347,12 @@ contains
call psb_erractionsave(err_act)
select case(psb_toupper(what))
#if defined(HAVE_MUMPS_)
case('SET_AS_SEQUENTIAL')
iwhat=mld_as_sequential_
case('SET_MUMPS_PRINT_ERR')
iwhat=mld_mumps_print_err_
#endif
case default
iwhat=-1
end select
@ -380,7 +384,7 @@ contains
real(psb_dpk_), intent(in) :: val
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_) :: err_act, iwhat
character(len=20) :: name='z_mumps_solver_csetr'
character(len=20) :: name='d_mumps_solver_csetr'
info = psb_success_
call psb_erractionsave(err_act)
@ -422,6 +426,7 @@ contains
info = psb_success_
call psb_erractionsave(err_act)
#if defined(HAVE_MUMPS_)
if (.not.allocated(sv%id)) then
allocate(sv%id,stat=info)
if (info /= psb_success_) then
@ -432,7 +437,7 @@ contains
sv%built=.false.
end if
!INSTANCIATION OF sv%id needed to set parmater but mpi communicator needed
! INSTANTIATION OF sv%id needed to set parmater but mpi communicator needed
! sv%id%job = -1
! sv%id%par=1
! call dmumps(sv%id)
@ -441,7 +446,7 @@ contains
!sv%ipar(11)=0
!sv%ipar(12)=6
#endif
call psb_erractionrestore(err_act)
return
@ -465,7 +470,7 @@ contains
#if defined(HAVE_MUMPS_)
val = (sv%id%INFOG(22)+sv%id%INFOG(32))*1d+6
#else
val = 0
val = 0
#endif
! val = 2*psb_sizeof_int + psb_sizeof_dp
! val = val + sv%symbsize

@ -72,7 +72,7 @@ module mld_s_mumps_solver
procedure, pass(sv) :: sizeof => s_mumps_solver_sizeof
procedure, pass(sv) :: seti => s_mumps_solver_seti
procedure, pass(sv) :: setr => s_mumps_solver_setr
procedure, pass(sv) :: cseti => s_mumps_solver_cseti
procedure, pass(sv) :: cseti =>s_mumps_solver_cseti
procedure, pass(sv) :: csetr => s_mumps_solver_csetr
procedure, pass(sv) :: default => s_mumps_solver_default
#if defined(HAVE_FINAL)
@ -94,7 +94,7 @@ module mld_s_mumps_solver
interface
subroutine s_mumps_solver_apply_vect(alpha,sv,x,beta,y,desc_data,trans,work,info)
import :: psb_desc_type, mld_s_mumps_solver_type, psb_s_vect_type, psb_spk_, &
import :: psb_desc_type, mld_s_mumps_solver_type, psb_s_vect_type, psb_dpk_, psb_spk_, &
& psb_sspmat_type, psb_s_base_sparse_mat, psb_s_base_vect_type, psb_ipk_
implicit none
type(psb_desc_type), intent(in) :: desc_data
@ -106,14 +106,14 @@ module mld_s_mumps_solver
real(psb_spk_),target, intent(inout) :: work(:)
integer, intent(out) :: info
integer :: err_act
integer(psb_ipk_) :: err_act
character(len=20) :: name='s_mumps_solver_apply_vect'
end subroutine s_mumps_solver_apply_vect
end interface
interface
subroutine s_mumps_solver_apply(alpha,sv,x,beta,y,desc_data,trans,work,info)
import :: psb_desc_type, mld_s_mumps_solver_type, psb_s_vect_type, psb_spk_, &
import :: psb_desc_type, mld_s_mumps_solver_type, psb_s_vect_type, psb_dpk_, psb_spk_, &
& psb_sspmat_type, psb_s_base_sparse_mat, psb_s_base_vect_type, psb_ipk_
implicit none
type(psb_desc_type), intent(in) :: desc_data
@ -123,12 +123,12 @@ module mld_s_mumps_solver
real(psb_spk_),intent(in) :: alpha,beta
character(len=1),intent(in) :: trans
real(psb_spk_),target, intent(inout) :: work(:)
integer, intent(out) :: info
integer(psb_ipk_), intent(out) :: info
integer :: n_row, n_col, nglob
integer(psb_ipk_) :: n_row, n_col, nglob
real(psb_spk_), pointer :: ww(:)
real(psb_spk_), allocatable, target :: gx(:)
integer :: ictxt,np,me,i, err_act
integer(psb_ipk_) :: ictxt,np,me,i, err_act
character :: trans_
character(len=20) :: name='s_mumps_solver_apply'
end subroutine s_mumps_solver_apply
@ -138,7 +138,7 @@ module mld_s_mumps_solver
subroutine s_mumps_solver_bld(a,desc_a,sv,upd,info,b,amold,vmold,imold)
use mpi
import :: psb_desc_type, mld_s_mumps_solver_type, psb_s_vect_type, psb_spk_, psb_dpk_, &
import :: psb_desc_type, mld_s_mumps_solver_type, psb_s_vect_type, psb_spk_, &
& psb_sspmat_type, psb_s_base_sparse_mat, psb_s_base_vect_type,&
& psb_ipk_, psb_i_base_vect_type
@ -149,7 +149,7 @@ module mld_s_mumps_solver
Type(psb_desc_type), Intent(in) :: desc_a
class(mld_s_mumps_solver_type), intent(inout) :: sv
character, intent(in) :: upd
integer, intent(out) :: info
integer(psb_ipk_), intent(out) :: info
type(psb_sspmat_type), intent(in), target, optional :: b
class(psb_s_base_sparse_mat), intent(in), optional :: amold
class(psb_s_base_vect_type), intent(in), optional :: vmold
@ -165,8 +165,8 @@ contains
! Arguments
class(mld_s_mumps_solver_type), intent(inout) :: sv
integer, intent(out) :: info
Integer :: err_act
integer(psb_ipk_), intent(out) :: info
Integer(psb_ipk_) :: err_act
character(len=20) :: name='s_mumps_solver_free'
call psb_erractionsave(err_act)
@ -218,15 +218,15 @@ contains
! Arguments
class(mld_s_mumps_solver_type), intent(in) :: sv
integer, intent(out) :: info
integer, intent(in), optional :: iout
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), intent(in), optional :: iout
logical, intent(in), optional :: coarse
! Local variables
integer :: err_act
integer :: ictxt, me, np
character(len=20), parameter :: name='mld_s_mumps_solver_descr'
integer :: iout_
integer(psb_ipk_) :: err_act
integer(psb_ipk_) :: ictxt, me, np
character(len=20), parameter :: name='mld_z_mumps_solver_descr'
integer(psb_ipk_) :: iout_
call psb_erractionsave(err_act)
info = psb_success_
@ -265,11 +265,12 @@ contains
integer(psb_ipk_), intent(in) :: val
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_) :: err_act
character(len=20) :: name='s_mumps_solver_seti'
character(len=20) :: name='z_mumps_solver_seti'
info = psb_success_
call psb_erractionsave(err_act)
select case(what)
#if defined(HAVE_MUMPS_)
case(mld_as_sequential_)
sv%ipar(1)=val
case(mld_mumps_print_err_)
@ -280,6 +281,7 @@ contains
!case(mld_print_glob_)
! sv%id%icntl(3)=val
! sv%ipar(3)=val
#endif
case default
call sv%mld_s_base_solver_type%set(what,val,info)
end select
@ -307,7 +309,7 @@ contains
real(psb_spk_), intent(in) :: val
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_) :: err_act
character(len=20) :: name='s_mumps_solver_setr'
character(len=20) :: name='z_mumps_solver_setr'
info = psb_success_
call psb_erractionsave(err_act)
@ -345,10 +347,12 @@ contains
call psb_erractionsave(err_act)
select case(psb_toupper(what))
#if defined(HAVE_MUMPS_)
case('SET_AS_SEQUENTIAL')
iwhat=mld_as_sequential_
case('SET_MUMPS_PRINT_ERR')
iwhat=mld_mumps_print_err_
#endif
case default
iwhat=-1
end select
@ -377,7 +381,7 @@ contains
! Arguments
class(mld_s_mumps_solver_type), intent(inout) :: sv
character(len=*), intent(in) :: what
real(psb_spk_), intent(in) :: val
real(psb_spk_), intent(in) :: val
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_) :: err_act, iwhat
character(len=20) :: name='s_mumps_solver_csetr'
@ -422,6 +426,7 @@ contains
info = psb_success_
call psb_erractionsave(err_act)
#if defined(HAVE_MUMPS_)
if (.not.allocated(sv%id)) then
allocate(sv%id,stat=info)
if (info /= psb_success_) then
@ -432,7 +437,7 @@ contains
sv%built=.false.
end if
!INSTANCIATION OF sv%id needed to set parmater but mpi communicator needed
! INSTANTIATION OF sv%id needed to set parmater but mpi communicator needed
! sv%id%job = -1
! sv%id%par=1
! call dmumps(sv%id)
@ -441,7 +446,7 @@ contains
!sv%ipar(11)=0
!sv%ipar(12)=6
#endif
call psb_erractionrestore(err_act)
return
@ -465,7 +470,7 @@ contains
#if defined(HAVE_MUMPS_)
val = (sv%id%INFOG(22)+sv%id%INFOG(32))*1d+6
#else
val = 0
val = 0
#endif
! val = 2*psb_sizeof_int + psb_sizeof_dp
! val = val + sv%symbsize

@ -94,7 +94,7 @@ module mld_z_mumps_solver
interface
subroutine z_mumps_solver_apply_vect(alpha,sv,x,beta,y,desc_data,trans,work,info)
import :: psb_desc_type, mld_z_mumps_solver_type, psb_z_vect_type, psb_dpk_, &
import :: psb_desc_type, mld_z_mumps_solver_type, psb_z_vect_type, psb_dpk_, psb_spk_, &
& psb_zspmat_type, psb_z_base_sparse_mat, psb_z_base_vect_type, psb_ipk_
implicit none
type(psb_desc_type), intent(in) :: desc_data
@ -113,7 +113,7 @@ module mld_z_mumps_solver
interface
subroutine z_mumps_solver_apply(alpha,sv,x,beta,y,desc_data,trans,work,info)
import :: psb_desc_type, mld_z_mumps_solver_type, psb_z_vect_type, psb_dpk_, &
import :: psb_desc_type, mld_z_mumps_solver_type, psb_z_vect_type, psb_dpk_, psb_spk_, &
& psb_zspmat_type, psb_z_base_sparse_mat, psb_z_base_vect_type, psb_ipk_
implicit none
type(psb_desc_type), intent(in) :: desc_data
@ -270,6 +270,7 @@ contains
info = psb_success_
call psb_erractionsave(err_act)
select case(what)
#if defined(HAVE_MUMPS_)
case(mld_as_sequential_)
sv%ipar(1)=val
case(mld_mumps_print_err_)
@ -280,6 +281,7 @@ contains
!case(mld_print_glob_)
! sv%id%icntl(3)=val
! sv%ipar(3)=val
#endif
case default
call sv%mld_z_base_solver_type%set(what,val,info)
end select
@ -345,10 +347,12 @@ contains
call psb_erractionsave(err_act)
select case(psb_toupper(what))
#if defined(HAVE_MUMPS_)
case('SET_AS_SEQUENTIAL')
iwhat=mld_as_sequential_
case('SET_MUMPS_PRINT_ERR')
iwhat=mld_mumps_print_err_
#endif
case default
iwhat=-1
end select
@ -422,6 +426,7 @@ contains
info = psb_success_
call psb_erractionsave(err_act)
#if defined(HAVE_MUMPS_)
if (.not.allocated(sv%id)) then
allocate(sv%id,stat=info)
if (info /= psb_success_) then
@ -432,7 +437,7 @@ contains
sv%built=.false.
end if
!INSTANCIATION OF sv%id needed to set parmater but mpi communicator needed
! INSTANTIATION OF sv%id needed to set parmater but mpi communicator needed
! sv%id%job = -1
! sv%id%par=1
! call dmumps(sv%id)
@ -441,7 +446,7 @@ contains
!sv%ipar(11)=0
!sv%ipar(12)=6
#endif
call psb_erractionrestore(err_act)
return
@ -465,7 +470,7 @@ contains
#if defined(HAVE_MUMPS_)
val = (sv%id%INFOG(22)+sv%id%INFOG(32))*1d+6
#else
val = 0
val = 0
#endif
! val = 2*psb_sizeof_int + psb_sizeof_dp
! val = val + sv%symbsize

Loading…
Cancel
Save