You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
amg4psblas/mlprec/impl/smoother/mld_s_as_smoother_dmp.f90

48 lines
1.4 KiB
Fortran

mld2p4-2: mlprec/impl/Makefile mlprec/impl/SMOOTHER mlprec/impl/SMOOTHER/Makefile mlprec/impl/SMOOTHER/mld_c_as_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_check.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_free.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_c_as_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_check.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_descr.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_free.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_c_base_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_c_jac_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_c_jac_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_c_jac_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_check.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_free.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_d_as_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_check.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_descr.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_free.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_d_base_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_d_jac_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_d_jac_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_d_jac_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_check.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_free.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_s_as_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_check.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_descr.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_free.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_s_base_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_s_jac_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_s_jac_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_s_jac_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_check.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_free.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_z_as_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_bld.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_check.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_descr.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_dmp.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_free.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_setc.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_seti.f90 mlprec/impl/SMOOTHER/mld_z_base_smoother_setr.f90 mlprec/impl/SMOOTHER/mld_z_jac_smoother_apply.f90 mlprec/impl/SMOOTHER/mld_z_jac_smoother_apply_vect.f90 mlprec/impl/SMOOTHER/mld_z_jac_smoother_bld.f90 mlprec/impl/SOLVER mlprec/impl/SOLVER/Makefile mlprec/impl/SOLVER/mld_c_base_solver_apply.f90 mlprec/impl/SOLVER/mld_c_base_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_c_base_solver_bld.f90 mlprec/impl/SOLVER/mld_c_base_solver_check.f90 mlprec/impl/SOLVER/mld_c_base_solver_descr.f90 mlprec/impl/SOLVER/mld_c_base_solver_dmp.f90 mlprec/impl/SOLVER/mld_c_base_solver_free.f90 mlprec/impl/SOLVER/mld_c_base_solver_setc.f90 mlprec/impl/SOLVER/mld_c_base_solver_seti.f90 mlprec/impl/SOLVER/mld_c_base_solver_setr.f90 mlprec/impl/SOLVER/mld_c_diag_solver_apply.f90 mlprec/impl/SOLVER/mld_c_diag_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_c_diag_solver_bld.f90 mlprec/impl/SOLVER/mld_c_id_solver_apply.f90 mlprec/impl/SOLVER/mld_c_id_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_c_ilu_solver_apply.f90 mlprec/impl/SOLVER/mld_c_ilu_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_c_ilu_solver_bld.f90 mlprec/impl/SOLVER/mld_c_ilu_solver_dmp.f90 mlprec/impl/SOLVER/mld_d_base_solver_apply.f90 mlprec/impl/SOLVER/mld_d_base_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_d_base_solver_bld.f90 mlprec/impl/SOLVER/mld_d_base_solver_check.f90 mlprec/impl/SOLVER/mld_d_base_solver_descr.f90 mlprec/impl/SOLVER/mld_d_base_solver_dmp.f90 mlprec/impl/SOLVER/mld_d_base_solver_free.f90 mlprec/impl/SOLVER/mld_d_base_solver_setc.f90 mlprec/impl/SOLVER/mld_d_base_solver_seti.f90 mlprec/impl/SOLVER/mld_d_base_solver_setr.f90 mlprec/impl/SOLVER/mld_d_diag_solver_apply.f90 mlprec/impl/SOLVER/mld_d_diag_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_d_diag_solver_bld.f90 mlprec/impl/SOLVER/mld_d_id_solver_apply.f90 mlprec/impl/SOLVER/mld_d_id_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_d_ilu_solver_apply.f90 mlprec/impl/SOLVER/mld_d_ilu_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_d_ilu_solver_bld.f90 mlprec/impl/SOLVER/mld_d_ilu_solver_dmp.f90 mlprec/impl/SOLVER/mld_s_base_solver_apply.f90 mlprec/impl/SOLVER/mld_s_base_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_s_base_solver_bld.f90 mlprec/impl/SOLVER/mld_s_base_solver_check.f90 mlprec/impl/SOLVER/mld_s_base_solver_descr.f90 mlprec/impl/SOLVER/mld_s_base_solver_dmp.f90 mlprec/impl/SOLVER/mld_s_base_solver_free.f90 mlprec/impl/SOLVER/mld_s_base_solver_setc.f90 mlprec/impl/SOLVER/mld_s_base_solver_seti.f90 mlprec/impl/SOLVER/mld_s_base_solver_setr.f90 mlprec/impl/SOLVER/mld_s_diag_solver_apply.f90 mlprec/impl/SOLVER/mld_s_diag_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_s_diag_solver_bld.f90 mlprec/impl/SOLVER/mld_s_id_solver_apply.f90 mlprec/impl/SOLVER/mld_s_id_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_s_ilu_solver_apply.f90 mlprec/impl/SOLVER/mld_s_ilu_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_s_ilu_solver_bld.f90 mlprec/impl/SOLVER/mld_s_ilu_solver_dmp.f90 mlprec/impl/SOLVER/mld_z_base_solver_apply.f90 mlprec/impl/SOLVER/mld_z_base_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_z_base_solver_bld.f90 mlprec/impl/SOLVER/mld_z_base_solver_check.f90 mlprec/impl/SOLVER/mld_z_base_solver_descr.f90 mlprec/impl/SOLVER/mld_z_base_solver_dmp.f90 mlprec/impl/SOLVER/mld_z_base_solver_free.f90 mlprec/impl/SOLVER/mld_z_base_solver_setc.f90 mlprec/impl/SOLVER/mld_z_base_solver_seti.f90 mlprec/impl/SOLVER/mld_z_base_solver_setr.f90 mlprec/impl/SOLVER/mld_z_diag_solver_apply.f90 mlprec/impl/SOLVER/mld_z_diag_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_z_diag_solver_bld.f90 mlprec/impl/SOLVER/mld_z_id_solver_apply.f90 mlprec/impl/SOLVER/mld_z_id_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_z_ilu_solver_apply.f90 mlprec/impl/SOLVER/mld_z_ilu_solver_apply_vect.f90 mlprec/impl/SOLVER/mld_z_ilu_solver_bld.f90 mlprec/impl/SOLVER/mld_z_ilu_solver_dmp.f90 Split implementation of solvers and smoothers
12 years ago
subroutine mld_s_as_smoother_dmp(sm,ictxt,level,info,prefix,head,smoother,solver)
use psb_base_mod
use mld_s_as_smoother, mld_protect_nam => mld_s_as_smoother_dmp
implicit none
class(mld_s_as_smoother_type), intent(in) :: sm
integer, intent(in) :: ictxt,level
integer, intent(out) :: info
character(len=*), intent(in), optional :: prefix, head
logical, optional, intent(in) :: smoother, solver
integer :: i, j, il1, iln, lname, lev
integer :: icontxt,iam, np
character(len=80) :: prefix_
character(len=120) :: fname ! len should be at least 20 more than
logical :: smoother_
! len of prefix_
info = 0
if (present(prefix)) then
prefix_ = trim(prefix(1:min(len(prefix),len(prefix_))))
else
prefix_ = "dump_smth_s"
end if
call psb_info(ictxt,iam,np)
if (present(smoother)) then
smoother_ = smoother
else
smoother_ = .false.
end if
lname = len_trim(prefix_)
fname = trim(prefix_)
write(fname(lname+1:lname+5),'(a,i3.3)') '_p',iam
lname = lname + 5
if (smoother_) then
write(fname(lname+1:),'(a,i3.3,a)')'_l',level,'_nd.mtx'
if (sm%nd%is_asb()) &
& call sm%nd%print(fname,head=head)
end if
! At base level do nothing for the smoother
if (allocated(sm%sv)) &
& call sm%sv%dump(ictxt,level,info,solver=solver,prefix=prefix)
end subroutine mld_s_as_smoother_dmp