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
@ -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'
end if
case(mld_bjac_)
case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -1,5 +1,3 @@
!
!
! 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'
end if
case(mld_bjac_)
case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -1,5 +1,3 @@
!
!
! 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'
end if
case(mld_bjac_)
case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -1,5 +1,3 @@
!
!
! 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'
end if
case(mld_bjac_)
case(mld_bjac_,mld_jac_)
if (prec%precv(iszv)%parms%coarse_mat /= mld_distr_mat_) then
write(psb_err_unit,*) &
& 'MLD2P4: Warning: original coarse solver was requested as ',&

@ -340,7 +340,7 @@ module mld_base_prec_type
& 'KCycle ','KCycleSym ','new ML '/)
character(len=15), parameter :: &
& mld_fact_names(0:mld_max_sub_solve_)=(/&
& 'none ','none ',&
& 'none ','Jacobi ',&
& 'none ','none ',&
& 'none ','Point Jacobi ',&
& 'Gauss-Seidel ','ILU(n) ',&
@ -600,15 +600,21 @@ contains
info = psb_success_
write(iout,*) ' Coarse matrix: ',&
& 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 : ',&
& pm%sweeps_pre
write(iout,*) ' Coarse solver: ',&
& '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: ',&
& mld_fact_names(pm%coarse_solve)
end if
end select
end subroutine ml_parms_coarsedescr

Loading…
Cancel
Save