mlprec/mld_caggrmat_asb.f90
 mlprec/mld_caggrmat_raw_asb.F90
 mlprec/mld_caggrmat_smth_asb.F90
 mlprec/mld_ccoarse_bld.f90
 mlprec/mld_cmlprec_aply.f90
 mlprec/mld_cmlprecbld.f90
 mlprec/mld_daggrmat_asb.f90
 mlprec/mld_daggrmat_raw_asb.F90
 mlprec/mld_daggrmat_smth_asb.F90
 mlprec/mld_dcoarse_bld.f90
 mlprec/mld_dmlprec_aply.f90
 mlprec/mld_dmlprecbld.f90
 mlprec/mld_inner_mod.f90
 mlprec/mld_move_alloc_mod.F90
 mlprec/mld_prec_type.f90
 mlprec/mld_saggrmat_asb.f90
 mlprec/mld_saggrmat_raw_asb.F90
 mlprec/mld_saggrmat_smth_asb.F90
 mlprec/mld_scoarse_bld.f90
 mlprec/mld_smlprec_aply.f90
 mlprec/mld_smlprecbld.f90
 mlprec/mld_zaggrmat_asb.f90
 mlprec/mld_zaggrmat_raw_asb.F90
 mlprec/mld_zaggrmat_smth_asb.F90
 mlprec/mld_zcoarse_bld.f90
 mlprec/mld_zmlprec_aply.f90
 mlprec/mld_zmlprecbld.f90

From X_onelev_type to Xonelev_type.
stopcriterion
Salvatore Filippone 16 years ago
parent a1ecba3a3b
commit 6f0fd11557

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_c_onelev_type), input/output.
! p - type(mld_conelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -101,7 +101,7 @@ subroutine mld_caggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_c_onelev_type), intent(inout), target :: p
type(mld_conelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -66,7 +66,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_c_onelev_type), input/output.
! p - type(mld_conelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -89,7 +89,7 @@ subroutine mld_caggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_c_onelev_type), intent(inout), target :: p
type(mld_conelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_c_onelev_type), input/output.
! p - type(mld_conelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -106,7 +106,7 @@ subroutine mld_caggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_c_onelev_type), intent(inout), target :: p
type(mld_conelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -54,7 +54,7 @@
! matrix to be preconditioned.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of a.
! p - type(mld_c_onelev_type), input/output.
! p - type(mld_conelev_type), input/output.
! The preconditioner data structure containing the local
! part of the one-level preconditioner to be built.
! info - integer, output.
@ -70,7 +70,7 @@ subroutine mld_ccoarse_bld(a,desc_a,p,info)
! Arguments
type(psb_cspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_c_onelev_type), intent(inout),target :: p
type(mld_conelev_type), intent(inout),target :: p
integer, intent(out) :: info
! Local variables

@ -78,7 +78,7 @@
! Arguments:
! alpha - complex(psb_spk_), input.
! The scalar alpha.
! precv - type(mld_c_onelev_type), dimension(:), input.
! precv - type(mld_conelev_type), dimension(:), input.
! The array of one-level preconditioner data structures containing the
! local parts of the preconditioners to be applied at each level.
! Note that nlev = size(precv) = number of levels.
@ -148,7 +148,7 @@ subroutine mld_cmlprec_aply(alpha,precv,x,beta,y,desc_data,trans,work,info)
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_c_onelev_type), intent(in) :: precv(:)
type(mld_conelev_type), intent(in) :: precv(:)
complex(psb_spk_),intent(in) :: alpha,beta
complex(psb_spk_),intent(in) :: x(:)
complex(psb_spk_),intent(inout) :: y(:)
@ -341,7 +341,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_c_onelev_type), intent(in) :: precv(:)
type(mld_conelev_type), intent(in) :: precv(:)
complex(psb_spk_),intent(in) :: alpha,beta
complex(psb_spk_),intent(in) :: x(:)
complex(psb_spk_),intent(inout) :: y(:)
@ -577,7 +577,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_c_onelev_type), intent(in) :: precv(:)
type(mld_conelev_type), intent(in) :: precv(:)
complex(psb_spk_),intent(in) :: alpha,beta
complex(psb_spk_),intent(in) :: x(:)
complex(psb_spk_),intent(inout) :: y(:)
@ -837,7 +837,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_c_onelev_type), intent(in) :: precv(:)
type(mld_conelev_type), intent(in) :: precv(:)
complex(psb_spk_),intent(in) :: alpha,beta
complex(psb_spk_),intent(in) :: x(:)
complex(psb_spk_),intent(inout) :: y(:)
@ -1135,7 +1135,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_c_onelev_type), intent(in) :: precv(:)
type(mld_conelev_type), intent(in) :: precv(:)
complex(psb_spk_),intent(in) :: alpha,beta
complex(psb_spk_),intent(in) :: x(:)
complex(psb_spk_),intent(inout) :: y(:)

@ -349,7 +349,7 @@ contains
end subroutine init_baseprec_av
subroutine check_coarse_lev(prec)
type(mld_c_onelev_type) :: prec
type(mld_conelev_type) :: prec
!
! At the coarsest level, check mld_coarse_solve_

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_d_onelev_type), input/output.
! p - type(mld_donelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -101,7 +101,7 @@ subroutine mld_daggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_d_onelev_type), intent(inout), target :: p
type(mld_donelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -66,7 +66,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_d_onelev_type), input/output.
! p - type(mld_donelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -89,7 +89,7 @@ subroutine mld_daggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_d_onelev_type), intent(inout), target :: p
type(mld_donelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_d_onelev_type), input/output.
! p - type(mld_donelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -106,7 +106,7 @@ subroutine mld_daggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_d_onelev_type), intent(inout), target :: p
type(mld_donelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -54,7 +54,7 @@
! matrix to be preconditioned.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of a.
! p - type(mld_d_onelev_type), input/output.
! p - type(mld_donelev_type), input/output.
! The preconditioner data structure containing the local
! part of the one-level preconditioner to be built.
! info - integer, output.
@ -70,7 +70,7 @@ subroutine mld_dcoarse_bld(a,desc_a,p,info)
! Arguments
type(psb_dspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_d_onelev_type), intent(inout),target :: p
type(mld_donelev_type), intent(inout),target :: p
integer, intent(out) :: info
! Local variables

@ -78,7 +78,7 @@
! Arguments:
! alpha - real(psb_dpk_), input.
! The scalar alpha.
! precv - type(mld_d_onelev_type), dimension(:), input.
! precv - type(mld_donelev_type), dimension(:), input.
! The array of one-level preconditioner data structures containing the
! local parts of the preconditioners to be applied at each level.
! Note that nlev = size(precv) = number of levels.
@ -148,7 +148,7 @@ subroutine mld_dmlprec_aply(alpha,precv,x,beta,y,desc_data,trans,work,info)
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_d_onelev_type), intent(in) :: precv(:)
type(mld_donelev_type), intent(in) :: precv(:)
real(psb_dpk_),intent(in) :: alpha,beta
real(psb_dpk_),intent(in) :: x(:)
real(psb_dpk_),intent(inout) :: y(:)
@ -340,7 +340,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_d_onelev_type), intent(in) :: precv(:)
type(mld_donelev_type), intent(in) :: precv(:)
real(psb_dpk_),intent(in) :: alpha,beta
real(psb_dpk_),intent(in) :: x(:)
real(psb_dpk_),intent(inout) :: y(:)
@ -575,7 +575,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_d_onelev_type), intent(in) :: precv(:)
type(mld_donelev_type), intent(in) :: precv(:)
real(psb_dpk_),intent(in) :: alpha,beta
real(psb_dpk_),intent(in) :: x(:)
real(psb_dpk_),intent(inout) :: y(:)
@ -834,7 +834,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_d_onelev_type), intent(in) :: precv(:)
type(mld_donelev_type), intent(in) :: precv(:)
real(psb_dpk_),intent(in) :: alpha,beta
real(psb_dpk_),intent(in) :: x(:)
real(psb_dpk_),intent(inout) :: y(:)
@ -1131,7 +1131,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_d_onelev_type), intent(in) :: precv(:)
type(mld_donelev_type), intent(in) :: precv(:)
real(psb_dpk_),intent(in) :: alpha,beta
real(psb_dpk_),intent(in) :: x(:)
real(psb_dpk_),intent(inout) :: y(:)

@ -349,7 +349,7 @@ contains
end subroutine init_baseprec_av
subroutine check_coarse_lev(prec)
type(mld_d_onelev_type) :: prec
type(mld_donelev_type) :: prec
!
! At the coarsest level, check mld_coarse_solve_

@ -188,9 +188,9 @@ module mld_inner_mod
interface mld_mlprec_aply
subroutine mld_smlprec_aply(alpha,precv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprec_type, mld_s_onelev_type
use mld_prec_type, only : mld_sbaseprec_type, mld_sonelev_type
type(psb_desc_type),intent(in) :: desc_data
type(mld_s_onelev_type), intent(in) :: precv(:)
type(mld_sonelev_type), intent(in) :: precv(:)
real(psb_spk_),intent(in) :: alpha,beta
real(psb_spk_),intent(in) :: x(:)
real(psb_spk_),intent(inout) :: y(:)
@ -200,9 +200,9 @@ module mld_inner_mod
end subroutine mld_smlprec_aply
subroutine mld_dmlprec_aply(alpha,precv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprec_type, mld_d_onelev_type
use mld_prec_type, only : mld_dbaseprec_type, mld_donelev_type
type(psb_desc_type),intent(in) :: desc_data
type(mld_d_onelev_type), intent(in) :: precv(:)
type(mld_donelev_type), intent(in) :: precv(:)
real(psb_dpk_),intent(in) :: alpha,beta
real(psb_dpk_),intent(in) :: x(:)
real(psb_dpk_),intent(inout) :: y(:)
@ -212,9 +212,9 @@ module mld_inner_mod
end subroutine mld_dmlprec_aply
subroutine mld_cmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprec_type, mld_c_onelev_type
use mld_prec_type, only : mld_cbaseprec_type, mld_conelev_type
type(psb_desc_type),intent(in) :: desc_data
type(mld_c_onelev_type), intent(in) :: baseprecv(:)
type(mld_conelev_type), intent(in) :: baseprecv(:)
complex(psb_spk_),intent(in) :: alpha,beta
complex(psb_spk_),intent(in) :: x(:)
complex(psb_spk_),intent(inout) :: y(:)
@ -224,9 +224,9 @@ module mld_inner_mod
end subroutine mld_cmlprec_aply
subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprec_type, mld_z_onelev_type
use mld_prec_type, only : mld_zbaseprec_type, mld_zonelev_type
type(psb_desc_type),intent(in) :: desc_data
type(mld_z_onelev_type), intent(in) :: baseprecv(:)
type(mld_zonelev_type), intent(in) :: baseprecv(:)
complex(psb_dpk_),intent(in) :: alpha,beta
complex(psb_dpk_),intent(in) :: x(:)
complex(psb_dpk_),intent(inout) :: y(:)
@ -430,34 +430,34 @@ module mld_inner_mod
interface mld_coarse_bld
subroutine mld_scoarse_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprec_type, mld_s_onelev_type
use mld_prec_type, only : mld_sbaseprec_type, mld_sonelev_type
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_s_onelev_type), intent(inout), target :: p
type(mld_sonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_scoarse_bld
subroutine mld_dcoarse_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprec_type, mld_d_onelev_type
use mld_prec_type, only : mld_dbaseprec_type, mld_donelev_type
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_d_onelev_type), intent(inout), target :: p
type(mld_donelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_dcoarse_bld
subroutine mld_ccoarse_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprec_type, mld_c_onelev_type
use mld_prec_type, only : mld_cbaseprec_type, mld_conelev_type
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_c_onelev_type), intent(inout), target :: p
type(mld_conelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_ccoarse_bld
subroutine mld_zcoarse_bld(a,desc_a,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprec_type, mld_z_onelev_type
use mld_prec_type, only : mld_zbaseprec_type, mld_zonelev_type
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
type(mld_z_onelev_type), intent(inout), target :: p
type(mld_zonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_zcoarse_bld
end interface
@ -508,38 +508,38 @@ module mld_inner_mod
interface mld_aggrmat_asb
subroutine mld_saggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprec_type, mld_s_onelev_type
use mld_prec_type, only : mld_sbaseprec_type, mld_sonelev_type
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_s_onelev_type), intent(inout), target :: p
type(mld_sonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_saggrmat_asb
subroutine mld_daggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprec_type, mld_d_onelev_type
use mld_prec_type, only : mld_dbaseprec_type, mld_donelev_type
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_d_onelev_type), intent(inout), target :: p
type(mld_donelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_daggrmat_asb
subroutine mld_caggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprec_type, mld_c_onelev_type
use mld_prec_type, only : mld_cbaseprec_type, mld_conelev_type
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_c_onelev_type), intent(inout), target :: p
type(mld_conelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_caggrmat_asb
subroutine mld_zaggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprec_type, mld_z_onelev_type
use mld_prec_type, only : mld_zbaseprec_type, mld_zonelev_type
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_z_onelev_type), intent(inout), target :: p
type(mld_zonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_zaggrmat_asb
end interface
@ -547,38 +547,38 @@ module mld_inner_mod
interface mld_aggrmat_raw_asb
subroutine mld_saggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprec_type, mld_s_onelev_type
use mld_prec_type, only : mld_sbaseprec_type, mld_sonelev_type
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_s_onelev_type), intent(inout), target :: p
type(mld_sonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_saggrmat_raw_asb
subroutine mld_daggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprec_type, mld_d_onelev_type
use mld_prec_type, only : mld_dbaseprec_type, mld_donelev_type
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_d_onelev_type), intent(inout), target :: p
type(mld_donelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_daggrmat_raw_asb
subroutine mld_caggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprec_type, mld_c_onelev_type
use mld_prec_type, only : mld_cbaseprec_type, mld_conelev_type
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_c_onelev_type), intent(inout), target :: p
type(mld_conelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_caggrmat_raw_asb
subroutine mld_zaggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprec_type, mld_z_onelev_type
use mld_prec_type, only : mld_zbaseprec_type, mld_zonelev_type
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_z_onelev_type), intent(inout), target :: p
type(mld_zonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_zaggrmat_raw_asb
end interface
@ -586,38 +586,38 @@ module mld_inner_mod
interface mld_aggrmat_smth_asb
subroutine mld_saggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_sspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_sbaseprec_type, mld_s_onelev_type
use mld_prec_type, only : mld_sbaseprec_type, mld_sonelev_type
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_s_onelev_type), intent(inout), target :: p
type(mld_sonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_saggrmat_smth_asb
subroutine mld_daggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_dspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_dbaseprec_type, mld_d_onelev_type
use mld_prec_type, only : mld_dbaseprec_type, mld_donelev_type
type(psb_dspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_d_onelev_type), intent(inout), target :: p
type(mld_donelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_daggrmat_smth_asb
subroutine mld_caggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_cspmat_type, psb_desc_type, psb_spk_
use mld_prec_type, only : mld_cbaseprec_type, mld_c_onelev_type
use mld_prec_type, only : mld_cbaseprec_type, mld_conelev_type
type(psb_cspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_c_onelev_type), intent(inout), target :: p
type(mld_conelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_caggrmat_smth_asb
subroutine mld_zaggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
use psb_base_mod, only : psb_zspmat_type, psb_desc_type, psb_dpk_
use mld_prec_type, only : mld_zbaseprec_type, mld_z_onelev_type
use mld_prec_type, only : mld_zbaseprec_type, mld_zonelev_type
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_z_onelev_type), intent(inout), target :: p
type(mld_zonelev_type), intent(inout), target :: p
integer, intent(out) :: info
end subroutine mld_zaggrmat_smth_asb
end interface

@ -110,7 +110,7 @@ contains
subroutine mld_sonelev_prec_move_alloc(a, b,info)
use psb_base_mod
implicit none
type(mld_s_onelev_type), intent(inout) :: a, b
type(mld_sonelev_type), intent(inout) :: a, b
integer, intent(out) :: info
call mld_precfree(b,info)
@ -205,7 +205,7 @@ contains
subroutine mld_donelev_prec_move_alloc(a, b,info)
use psb_base_mod
implicit none
type(mld_d_onelev_type), intent(inout) :: a, b
type(mld_donelev_type), intent(inout) :: a, b
integer, intent(out) :: info
call mld_precfree(b,info)
@ -300,7 +300,7 @@ contains
subroutine mld_conelev_prec_move_alloc(a, b,info)
use psb_base_mod
implicit none
type(mld_c_onelev_type), intent(inout) :: a, b
type(mld_conelev_type), intent(inout) :: a, b
integer, intent(out) :: info
call mld_precfree(b,info)
@ -395,7 +395,7 @@ contains
subroutine mld_zonelev_prec_move_alloc(a, b,info)
use psb_base_mod
implicit none
type(mld_z_onelev_type), intent(inout) :: a, b
type(mld_zonelev_type), intent(inout) :: a, b
integer, intent(out) :: info
call mld_precfree(b,info)

@ -80,7 +80,7 @@ module mld_prec_type
! are mostly omitted.
!
! The multilevel preconditioner data structure, mld_Xprec_type, consists
! of an array of 'one-level preconditioner' data structures, mld_X_onelev_type,
! of an array of 'one-level preconditioner' data structures, mld_Xonelev_type,
! each containing the local part of the preconditioner associated to a
! certain level. For each level ilev, the base preconditioner K(ilev) is
! built from a matrix A(ilev), which is obtained by 'tranferring' the
@ -91,14 +91,14 @@ module mld_prec_type
! one, i.e. level 1 is the finest level and A(1) is the matrix A.
!
!| type mld_Xprec_type
!| type(mld_X_onelev_type), allocatable :: precv(:)
!| type(mld_Xonelev_type), allocatable :: precv(:)
!| end type mld_Xprec_type
!|
!
! precv(ilev) is the preconditioner at level ilev.
! The number of levels is given by size(precv(:)).
!
! Type: mld_X_onelev_type.
! Type: mld_Xonelev_type.
! The data type containing necessary items for the current level.
!
! type(mld_Xbaseprec_type) - prec
@ -175,7 +175,7 @@ module mld_prec_type
integer, allocatable :: perm(:), invperm(:)
end type mld_sbaseprec_type
type mld_s_onelev_type
type mld_sonelev_type
type(mld_sbaseprec_type) :: prec
integer, allocatable :: iprcparm(:)
real(psb_spk_), allocatable :: rprcparm(:)
@ -184,10 +184,10 @@ module mld_prec_type
type(psb_sspmat_type), pointer :: base_a => null()
type(psb_desc_type), pointer :: base_desc => null()
type(psb_linmap_type) :: map
end type mld_s_onelev_type
end type mld_sonelev_type
type mld_sprec_type
type(mld_s_onelev_type), allocatable :: precv(:)
type(mld_sonelev_type), allocatable :: precv(:)
end type mld_sprec_type
type mld_dbaseprec_type
@ -199,7 +199,7 @@ module mld_prec_type
integer, allocatable :: perm(:), invperm(:)
end type mld_dbaseprec_type
type mld_d_onelev_type
type mld_donelev_type
type(mld_dbaseprec_type) :: prec
integer, allocatable :: iprcparm(:)
real(psb_dpk_), allocatable :: rprcparm(:)
@ -209,10 +209,10 @@ module mld_prec_type
type(psb_dspmat_type), pointer :: base_a => null()
type(psb_desc_type), pointer :: base_desc => null()
type(psb_linmap_type) :: map
end type mld_d_onelev_type
end type mld_donelev_type
type mld_dprec_type
type(mld_d_onelev_type), allocatable :: precv(:)
type(mld_donelev_type), allocatable :: precv(:)
end type mld_dprec_type
@ -225,7 +225,7 @@ module mld_prec_type
integer, allocatable :: perm(:), invperm(:)
end type mld_cbaseprec_type
type mld_c_onelev_type
type mld_conelev_type
type(mld_cbaseprec_type) :: prec
integer, allocatable :: iprcparm(:)
real(psb_spk_), allocatable :: rprcparm(:)
@ -234,10 +234,10 @@ module mld_prec_type
type(psb_cspmat_type), pointer :: base_a => null()
type(psb_desc_type), pointer :: base_desc => null()
type(psb_linmap_type) :: map
end type mld_c_onelev_type
end type mld_conelev_type
type mld_cprec_type
type(mld_c_onelev_type), allocatable :: precv(:)
type(mld_conelev_type), allocatable :: precv(:)
end type mld_cprec_type
type mld_zbaseprec_type
@ -249,7 +249,7 @@ module mld_prec_type
integer, allocatable :: perm(:), invperm(:)
end type mld_zbaseprec_type
type mld_z_onelev_type
type mld_zonelev_type
type(mld_zbaseprec_type) :: prec
integer, allocatable :: iprcparm(:)
real(psb_dpk_), allocatable :: rprcparm(:)
@ -258,10 +258,10 @@ module mld_prec_type
type(psb_zspmat_type), pointer :: base_a => null()
type(psb_desc_type), pointer :: base_desc => null()
type(psb_linmap_type) :: map
end type mld_z_onelev_type
end type mld_zonelev_type
type mld_zprec_type
type(mld_z_onelev_type), allocatable :: precv(:)
type(mld_zonelev_type), allocatable :: precv(:)
end type mld_zprec_type
@ -751,7 +751,7 @@ contains
function mld_s_onelev_prec_sizeof(prec) result(val)
implicit none
type(mld_s_onelev_type), intent(in) :: prec
type(mld_sonelev_type), intent(in) :: prec
integer(psb_long_int_k_) :: val
integer :: i
@ -768,7 +768,7 @@ contains
function mld_d_onelev_prec_sizeof(prec) result(val)
implicit none
type(mld_d_onelev_type), intent(in) :: prec
type(mld_donelev_type), intent(in) :: prec
integer(psb_long_int_k_) :: val
integer :: i
@ -785,7 +785,7 @@ contains
function mld_c_onelev_prec_sizeof(prec) result(val)
implicit none
type(mld_c_onelev_type), intent(in) :: prec
type(mld_conelev_type), intent(in) :: prec
integer(psb_long_int_k_) :: val
integer :: i
@ -802,7 +802,7 @@ contains
function mld_z_onelev_prec_sizeof(prec) result(val)
implicit none
type(mld_z_onelev_type), intent(in) :: prec
type(mld_zonelev_type), intent(in) :: prec
integer(psb_long_int_k_) :: val
integer :: i
@ -1869,7 +1869,7 @@ contains
subroutine mld_s_onelev_precfree(p,info)
implicit none
type(mld_s_onelev_type), intent(inout) :: p
type(mld_sonelev_type), intent(inout) :: p
integer, intent(out) :: info
integer :: i
@ -1904,7 +1904,7 @@ contains
subroutine mld_nullify_s_onelevprec(p)
implicit none
type(mld_s_onelev_type), intent(inout) :: p
type(mld_sonelev_type), intent(inout) :: p
nullify(p%base_a)
nullify(p%base_desc)
@ -1984,7 +1984,7 @@ contains
subroutine mld_d_onelev_precfree(p,info)
implicit none
type(mld_d_onelev_type), intent(inout) :: p
type(mld_donelev_type), intent(inout) :: p
integer, intent(out) :: info
integer :: i
@ -2026,7 +2026,7 @@ contains
subroutine mld_nullify_d_onelevprec(p)
implicit none
type(mld_d_onelev_type), intent(inout) :: p
type(mld_donelev_type), intent(inout) :: p
nullify(p%base_a)
nullify(p%base_desc)
@ -2086,7 +2086,7 @@ contains
subroutine mld_c_onelev_precfree(p,info)
implicit none
type(mld_c_onelev_type), intent(inout) :: p
type(mld_conelev_type), intent(inout) :: p
integer, intent(out) :: info
integer :: i
@ -2120,7 +2120,7 @@ contains
subroutine mld_nullify_c_onelevprec(p)
implicit none
type(mld_c_onelev_type), intent(inout) :: p
type(mld_conelev_type), intent(inout) :: p
nullify(p%base_a)
nullify(p%base_desc)
@ -2192,7 +2192,7 @@ contains
subroutine mld_z_onelev_precfree(p,info)
implicit none
type(mld_z_onelev_type), intent(inout) :: p
type(mld_zonelev_type), intent(inout) :: p
integer, intent(out) :: info
integer :: i
@ -2226,7 +2226,7 @@ contains
subroutine mld_nullify_z_onelevprec(p)
implicit none
type(mld_z_onelev_type), intent(inout) :: p
type(mld_zonelev_type), intent(inout) :: p
nullify(p%base_a)
nullify(p%base_desc)

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_s_onelev_type), input/output.
! p - type(mld_sonelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -101,7 +101,7 @@ subroutine mld_saggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_s_onelev_type), intent(inout), target :: p
type(mld_sonelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -66,7 +66,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_s_onelev_type), input/output.
! p - type(mld_sonelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -89,7 +89,7 @@ subroutine mld_saggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_s_onelev_type), intent(inout), target :: p
type(mld_sonelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_s_onelev_type), input/output.
! p - type(mld_sonelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -106,7 +106,7 @@ subroutine mld_saggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_sspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_s_onelev_type), intent(inout), target :: p
type(mld_sonelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -54,7 +54,7 @@
! matrix to be preconditioned.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of a.
! p - type(mld_s_onelev_type), input/output.
! p - type(mld_sonelev_type), input/output.
! The preconditioner data structure containing the local
! part of the one-level preconditioner to be built.
! info - integer, output.
@ -70,7 +70,7 @@ subroutine mld_scoarse_bld(a,desc_a,p,info)
! Arguments
type(psb_sspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_s_onelev_type), intent(inout),target :: p
type(mld_sonelev_type), intent(inout),target :: p
integer, intent(out) :: info
! Local variables

@ -78,7 +78,7 @@
! Arguments:
! alpha - real(psb_spk_), input.
! The scalar alpha.
! precv - type(mld_s_onelev_type), dimension(:), input.
! precv - type(mld_sonelev_type), dimension(:), input.
! The array of one-level preconditioner data structures containing the
! local parts of the preconditioners to be applied at each level.
! Note that nlev = size(precv) = number of levels.
@ -148,7 +148,7 @@ subroutine mld_smlprec_aply(alpha,precv,x,beta,y,desc_data,trans,work,info)
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_s_onelev_type), intent(in) :: precv(:)
type(mld_sonelev_type), intent(in) :: precv(:)
real(psb_spk_),intent(in) :: alpha,beta
real(psb_spk_),intent(in) :: x(:)
real(psb_spk_),intent(inout) :: y(:)
@ -340,7 +340,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_s_onelev_type), intent(in) :: precv(:)
type(mld_sonelev_type), intent(in) :: precv(:)
real(psb_spk_),intent(in) :: alpha,beta
real(psb_spk_),intent(in) :: x(:)
real(psb_spk_),intent(inout) :: y(:)
@ -575,7 +575,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_s_onelev_type), intent(in) :: precv(:)
type(mld_sonelev_type), intent(in) :: precv(:)
real(psb_spk_),intent(in) :: alpha,beta
real(psb_spk_),intent(in) :: x(:)
real(psb_spk_),intent(inout) :: y(:)
@ -834,7 +834,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_s_onelev_type), intent(in) :: precv(:)
type(mld_sonelev_type), intent(in) :: precv(:)
real(psb_spk_),intent(in) :: alpha,beta
real(psb_spk_),intent(in) :: x(:)
real(psb_spk_),intent(inout) :: y(:)
@ -1131,7 +1131,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_s_onelev_type), intent(in) :: precv(:)
type(mld_sonelev_type), intent(in) :: precv(:)
real(psb_spk_),intent(in) :: alpha,beta
real(psb_spk_),intent(in) :: x(:)
real(psb_spk_),intent(inout) :: y(:)

@ -349,7 +349,7 @@ contains
end subroutine init_baseprec_av
subroutine check_coarse_lev(prec)
type(mld_s_onelev_type) :: prec
type(mld_sonelev_type) :: prec
!
! At the coarsest level, check mld_coarse_solve_

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_z_onelev_type), input/output.
! p - type(mld_zonelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -101,7 +101,7 @@ subroutine mld_zaggrmat_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_z_onelev_type), intent(inout), target :: p
type(mld_zonelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -66,7 +66,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_z_onelev_type), input/output.
! p - type(mld_zonelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -89,7 +89,7 @@ subroutine mld_zaggrmat_raw_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_z_onelev_type), intent(inout), target :: p
type(mld_zonelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -83,7 +83,7 @@
! the fine-level matrix.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of the fine-level matrix.
! p - type(mld_z_onelev_type), input/output.
! p - type(mld_zonelev_type), input/output.
! The one-level preconditioner data structure containing the local
! part of the base preconditioner to be built as well as the
! aggregate matrices.
@ -106,7 +106,7 @@ subroutine mld_zaggrmat_smth_asb(a,desc_a,ilaggr,nlaggr,p,info)
type(psb_zspmat_type), intent(in) :: a
type(psb_desc_type), intent(in) :: desc_a
integer, intent(inout) :: ilaggr(:), nlaggr(:)
type(mld_z_onelev_type), intent(inout), target :: p
type(mld_zonelev_type), intent(inout), target :: p
integer, intent(out) :: info
! Local variables

@ -54,7 +54,7 @@
! matrix to be preconditioned.
! desc_a - type(psb_desc_type), input.
! The communication descriptor of a.
! p - type(mld_z_onelev_type), input/output.
! p - type(mld_zonelev_type), input/output.
! The preconditioner data structure containing the local
! part of the one-level preconditioner to be built.
! info - integer, output.
@ -70,7 +70,7 @@ subroutine mld_zcoarse_bld(a,desc_a,p,info)
! Arguments
type(psb_zspmat_type), intent(in), target :: a
type(psb_desc_type), intent(in), target :: desc_a
type(mld_z_onelev_type), intent(inout),target :: p
type(mld_zonelev_type), intent(inout),target :: p
integer, intent(out) :: info
! Local variables

@ -78,7 +78,7 @@
! Arguments:
! alpha - complex(psb_dpk_), input.
! The scalar alpha.
! precv - type(mld_z_onelev_type), dimension(:), input.
! precv - type(mld_zonelev_type), dimension(:), input.
! The array of one-level preconditioner data structures containing the
! local parts of the preconditioners to be applied at each level.
! Note that nlev = size(precv) = number of levels.
@ -148,7 +148,7 @@ subroutine mld_zmlprec_aply(alpha,precv,x,beta,y,desc_data,trans,work,info)
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_z_onelev_type), intent(in) :: precv(:)
type(mld_zonelev_type), intent(in) :: precv(:)
complex(psb_dpk_),intent(in) :: alpha,beta
complex(psb_dpk_),intent(in) :: x(:)
complex(psb_dpk_),intent(inout) :: y(:)
@ -341,7 +341,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_z_onelev_type), intent(in) :: precv(:)
type(mld_zonelev_type), intent(in) :: precv(:)
complex(psb_dpk_),intent(in) :: alpha,beta
complex(psb_dpk_),intent(in) :: x(:)
complex(psb_dpk_),intent(inout) :: y(:)
@ -577,7 +577,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_z_onelev_type), intent(in) :: precv(:)
type(mld_zonelev_type), intent(in) :: precv(:)
complex(psb_dpk_),intent(in) :: alpha,beta
complex(psb_dpk_),intent(in) :: x(:)
complex(psb_dpk_),intent(inout) :: y(:)
@ -837,7 +837,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_z_onelev_type), intent(in) :: precv(:)
type(mld_zonelev_type), intent(in) :: precv(:)
complex(psb_dpk_),intent(in) :: alpha,beta
complex(psb_dpk_),intent(in) :: x(:)
complex(psb_dpk_),intent(inout) :: y(:)
@ -1135,7 +1135,7 @@ contains
! Arguments
type(psb_desc_type),intent(in) :: desc_data
type(mld_z_onelev_type), intent(in) :: precv(:)
type(mld_zonelev_type), intent(in) :: precv(:)
complex(psb_dpk_),intent(in) :: alpha,beta
complex(psb_dpk_),intent(in) :: x(:)
complex(psb_dpk_),intent(inout) :: y(:)

@ -349,7 +349,7 @@ contains
end subroutine init_baseprec_av
subroutine check_coarse_lev(prec)
type(mld_z_onelev_type) :: prec
type(mld_zonelev_type) :: prec
!
! At the coarsest level, check mld_coarse_solve_

Loading…
Cancel
Save