Fixed INTENT(IN) for X(:) in all preconditioner application routines.

stopcriterion
Salvatore Filippone 17 years ago
parent 99fc1e7559
commit 9204db6c0e

@ -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(:)

@ -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(:)

Loading…
Cancel
Save