mirror of
https://github.com/sfilippone/amg4psblas.git
synced 2026-10-07 07:04:59 +00:00
Fixed INTENT(IN) for X(:) in all preconditioner application routines.
This commit is contained in:
@@ -47,7 +47,8 @@ subroutine mld_dbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
|
||||
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_dbaseprc_type), intent(in) :: prec
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
real(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
real(kind(0.d0)),target :: work(:)
|
||||
|
||||
@@ -47,13 +47,14 @@ subroutine mld_dbjac_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
|
||||
|
||||
implicit none
|
||||
|
||||
type(psb_desc_type), intent(in) :: desc_data
|
||||
type(mld_dbaseprc_type), intent(in) :: prec
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
real(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
type(psb_desc_type), intent(in) :: desc_data
|
||||
type(mld_dbaseprc_type), intent(in) :: prec
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
real(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
real(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
|
||||
! Local variables
|
||||
integer :: n_row,n_col
|
||||
@@ -62,6 +63,15 @@ subroutine mld_dbjac_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
|
||||
logical,parameter :: debug=.false., debugprt=.false.
|
||||
character(len=20) :: name, ch_err
|
||||
|
||||
interface
|
||||
subroutine mld_dumf_solve(flag,m,x,b,n,ptr,info)
|
||||
integer, intent(in) :: flag,m,n,ptr
|
||||
integer, intent(out) :: info
|
||||
real(kind(1.d0)), intent(in) :: b(*)
|
||||
real(kind(1.d0)), intent(inout) :: x(*)
|
||||
end subroutine mld_dumf_solve
|
||||
end interface
|
||||
|
||||
name='mld_dbjac_aply'
|
||||
info = 0
|
||||
call psb_erractionsave(err_act)
|
||||
@@ -150,7 +160,6 @@ subroutine mld_dbjac_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
|
||||
|
||||
case(mld_sludist_)
|
||||
|
||||
!!$ write(0,*) 'Calling mld_sludist_solve ',n_row
|
||||
ww(1:n_row) = x(1:n_row)
|
||||
|
||||
select case(toupper(trans))
|
||||
|
||||
@@ -90,7 +90,8 @@ subroutine mld_dmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_dbaseprc_type), intent(in) :: baseprecv(:)
|
||||
real(kind(0.d0)),intent(in) :: alpha,beta
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
character :: trans
|
||||
real(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
|
||||
@@ -43,7 +43,8 @@ subroutine mld_dprec_aply(prec,x,y,desc_data,info,trans, work)
|
||||
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_dprec_type), intent(in) :: prec
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
integer, intent(out) :: info
|
||||
character(len=1), optional :: trans
|
||||
real(kind(0.d0)), optional, target :: work(:)
|
||||
|
||||
+18
-10
@@ -143,7 +143,8 @@ module mld_prec_mod
|
||||
use mld_prec_type
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_dprec_type), intent(in) :: prec
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
integer, intent(out) :: info
|
||||
character(len=1), optional :: trans
|
||||
real(kind(0.d0)),intent(inout), optional, target :: work(:)
|
||||
@@ -162,7 +163,8 @@ module mld_prec_mod
|
||||
use mld_prec_type
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_zprec_type), intent(in) :: prec
|
||||
complex(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(0.d0)),intent(in) :: x(:)
|
||||
complex(kind(0.d0)),intent(inout) :: y(:)
|
||||
integer, intent(out) :: info
|
||||
character(len=1), optional :: trans
|
||||
complex(kind(0.d0)),intent(inout), optional, target :: work(:)
|
||||
@@ -225,7 +227,8 @@ module mld_prec_mod
|
||||
use mld_prec_type
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_dbaseprc_type), intent(in) :: prec
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
real(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
real(kind(0.d0)),target :: work(:)
|
||||
@@ -237,7 +240,8 @@ module mld_prec_mod
|
||||
use mld_prec_type
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_zbaseprc_type), intent(in) :: prec
|
||||
complex(kind(1.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(1.d0)),intent(in) :: x(:)
|
||||
complex(kind(1.d0)),intent(inout) :: y(:)
|
||||
complex(kind(1.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
complex(kind(1.d0)),target :: work(:)
|
||||
@@ -252,7 +256,8 @@ module mld_prec_mod
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_dbaseprc_type), intent(in) :: baseprecv(:)
|
||||
real(kind(0.d0)),intent(in) :: alpha,beta
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
character :: trans
|
||||
real(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
@@ -263,7 +268,8 @@ module mld_prec_mod
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_zbaseprc_type), intent(in) :: baseprecv(:)
|
||||
complex(kind(0.d0)),intent(in) :: alpha,beta
|
||||
complex(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(0.d0)),intent(in) :: x(:)
|
||||
complex(kind(0.d0)),intent(inout) :: y(:)
|
||||
character :: trans
|
||||
complex(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
@@ -276,7 +282,8 @@ module mld_prec_mod
|
||||
use mld_prec_type
|
||||
type(psb_desc_type), intent(in) :: desc_data
|
||||
type(mld_dbaseprc_type), intent(in) :: prec
|
||||
real(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
real(kind(0.d0)),intent(in) :: x(:)
|
||||
real(kind(0.d0)),intent(inout) :: y(:)
|
||||
real(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
real(kind(0.d0)),target :: work(:)
|
||||
@@ -287,10 +294,11 @@ module mld_prec_mod
|
||||
use mld_prec_type
|
||||
type(psb_desc_type), intent(in) :: desc_data
|
||||
type(mld_zbaseprc_type), intent(in) :: prec
|
||||
complex(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(0.d0)),intent(in) :: alpha,beta
|
||||
complex(kind(0.d0)),intent(in) :: x(:)
|
||||
complex(kind(0.d0)),intent(inout) :: y(:)
|
||||
complex(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
complex(kind(0.d0)),target :: work(:)
|
||||
complex(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
end subroutine mld_zbjac_aply
|
||||
end interface
|
||||
|
||||
@@ -46,10 +46,11 @@ subroutine mld_zbaseprec_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
|
||||
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_zbaseprc_type), intent(in) :: prec
|
||||
complex(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(0.d0)),intent(in) :: alpha,beta
|
||||
complex(kind(0.d0)),intent(in) :: x(:)
|
||||
complex(kind(0.d0)),intent(inout) :: y(:)
|
||||
complex(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
complex(kind(0.d0)),target :: work(:)
|
||||
complex(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
|
||||
! Local variables
|
||||
|
||||
@@ -47,13 +47,14 @@ subroutine mld_zbjac_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
|
||||
|
||||
implicit none
|
||||
|
||||
type(psb_desc_type), intent(in) :: desc_data
|
||||
type(mld_zbaseprc_type), intent(in) :: prec
|
||||
complex(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
complex(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
type(psb_desc_type), intent(in) :: desc_data
|
||||
type(mld_zbaseprc_type), intent(in) :: prec
|
||||
complex(kind(0.d0)),intent(in) :: x(:)
|
||||
complex(kind(0.d0)),intent(inout) :: y(:)
|
||||
complex(kind(0.d0)),intent(in) :: alpha,beta
|
||||
character(len=1) :: trans
|
||||
complex(kind(0.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
|
||||
! Local variables
|
||||
integer :: n_row,n_col
|
||||
@@ -62,6 +63,15 @@ subroutine mld_zbjac_aply(alpha,prec,x,beta,y,desc_data,trans,work,info)
|
||||
logical,parameter :: debug=.false., debugprt=.false.
|
||||
character(len=20) :: name, ch_err
|
||||
|
||||
interface
|
||||
subroutine mld_zumf_solve(flag,m,x,b,n,ptr,info)
|
||||
integer, intent(in) :: flag,m,n,ptr
|
||||
integer, intent(out) :: info
|
||||
complex(kind(1.d0)), intent(in) :: b(*)
|
||||
complex(kind(1.d0)), intent(inout) :: x(*)
|
||||
end subroutine mld_zumf_solve
|
||||
end interface
|
||||
|
||||
name='mld_zbjac_aply'
|
||||
info = 0
|
||||
call psb_erractionsave(err_act)
|
||||
|
||||
@@ -91,7 +91,8 @@ subroutine mld_zmlprec_aply(alpha,baseprecv,x,beta,y,desc_data,trans,work,info)
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_zbaseprc_type), intent(in) :: baseprecv(:)
|
||||
complex(kind(1.d0)),intent(in) :: alpha,beta
|
||||
complex(kind(1.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(1.d0)),intent(in) :: x(:)
|
||||
complex(kind(1.d0)),intent(inout) :: y(:)
|
||||
character :: trans
|
||||
complex(kind(1.d0)),target :: work(:)
|
||||
integer, intent(out) :: info
|
||||
|
||||
@@ -43,7 +43,8 @@ subroutine mld_zprec_aply(prec,x,y,desc_data,info,trans, work)
|
||||
|
||||
type(psb_desc_type),intent(in) :: desc_data
|
||||
type(mld_zprec_type), intent(in) :: prec
|
||||
complex(kind(0.d0)),intent(inout) :: x(:), y(:)
|
||||
complex(kind(0.d0)),intent(in) :: x(:)
|
||||
complex(kind(0.d0)),intent(inout) :: y(:)
|
||||
integer, intent(out) :: info
|
||||
character(len=1), optional :: trans
|
||||
complex(kind(0.d0)), optional, target :: work(:)
|
||||
|
||||
Reference in New Issue
Block a user