Fixed use of Jacobi as coarse solver.

stopcriterion
Salvatore Filippone 7 years ago
parent 12ba7484ad
commit 03719469f0

@ -1,5 +1,3 @@
! !
! !
! MLD2P4 version 2.1 ! MLD2P4 version 2.1
@ -276,7 +274,7 @@ subroutine mld_c_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
& ' but the coarse matrix has been changed to replicated' & ' but the coarse matrix has been changed to replicated'
end if end if
case(mld_bjac_) case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) & write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',& & 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -1,5 +1,3 @@
! !
! !
! MLD2P4 version 2.1 ! MLD2P4 version 2.1
@ -276,7 +274,7 @@ subroutine mld_d_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
& ' but the coarse matrix has been changed to replicated' & ' but the coarse matrix has been changed to replicated'
end if end if
case(mld_bjac_) case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) & write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',& & 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -1,5 +1,3 @@
! !
! !
! MLD2P4 version 2.1 ! MLD2P4 version 2.1
@ -276,7 +274,7 @@ subroutine mld_s_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
& ' but the coarse matrix has been changed to replicated' & ' but the coarse matrix has been changed to replicated'
end if end if
case(mld_bjac_) case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) & write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',& & 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -1,5 +1,3 @@
! !
! !
! MLD2P4 version 2.1 ! MLD2P4 version 2.1
@ -276,7 +274,7 @@ subroutine mld_z_smoothers_bld(a,desc_a,prec,info,amold,vmold,imold)
& ' but the coarse matrix has been changed to replicated' & ' but the coarse matrix has been changed to replicated'
end if end if
case(mld_bjac_) case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) & write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',& & 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -340,7 +340,7 @@ module mld_base_prec_type
& 'KCycle ','KCycleSym ','new ML '/) & 'KCycle ','KCycleSym ','new ML '/)
character(len=15), parameter :: & character(len=15), parameter :: &
& mld_fact_names(0:mld_max_sub_solve_)=(/& & mld_fact_names(0:mld_max_sub_solve_)=(/&
& 'none ','none ',& & 'none ','Jacobi ',&
& 'none ','none ',& & 'none ','none ',&
& 'none ','Point Jacobi ',& & 'none ','Point Jacobi ',&
& 'Gauss-Seidel ','ILU(n) ',& & 'Gauss-Seidel ','ILU(n) ',&
@ -600,15 +600,21 @@ contains
info = psb_success_ info = psb_success_
write(iout,*) ' Coarse matrix: ',& write(iout,*) ' Coarse matrix: ',&
& matrix_names(pm%coarse_mat) & matrix_names(pm%coarse_mat)
if ((pm%coarse_solve == mld_bjac_).or.(pm%coarse_solve==mld_as_)) then select case(pm%coarse_solve)
case (mld_bjac_,mld_as_)
write(iout,*) ' Number of sweeps : ',& write(iout,*) ' Number of sweeps : ',&
& pm%sweeps_pre & pm%sweeps_pre
write(iout,*) ' Coarse solver: ',& write(iout,*) ' Coarse solver: ',&
& 'Block Jacobi' & 'Block Jacobi'
else case (mld_jac_)
write(iout,*) ' Number of sweeps : ',&
& pm%sweeps_pre
write(iout,*) ' Coarse solver: ',&
& 'Point Jacobi'
case default
write(iout,*) ' Coarse solver: ',& write(iout,*) ' Coarse solver: ',&
& mld_fact_names(pm%coarse_solve) & mld_fact_names(pm%coarse_solve)
end if end select
end subroutine ml_parms_coarsedescr end subroutine ml_parms_coarsedescr

Loading…
Cancel
Save