mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-20 04:42:08 +00:00
Merged MixedI8 in new branch (to be later merged into development)
This commit is contained in:
@@ -30,28 +30,13 @@
|
||||
!
|
||||
!
|
||||
Module psb_s_tools_mod
|
||||
use psb_desc_mod, only : psb_desc_type, psb_spk_, psb_ipk_
|
||||
use psb_s_vect_mod, only : psb_s_base_vect_type, psb_s_vect_type, psb_i_vect_type
|
||||
use psb_s_mat_mod, only : psb_sspmat_type, psb_s_base_sparse_mat
|
||||
use psb_desc_mod, only : psb_desc_type, psb_spk_, psb_ipk_, psb_lpk_
|
||||
use psb_s_vect_mod, only : psb_s_base_vect_type, psb_s_vect_type
|
||||
use psb_s_mat_mod, only : psb_sspmat_type, psb_lsspmat_type, psb_s_base_sparse_mat
|
||||
use psb_l_vect_mod, only : psb_l_vect_type
|
||||
use psb_s_multivect_mod, only : psb_s_base_multivect_type, psb_s_multivect_type
|
||||
|
||||
interface psb_geall
|
||||
subroutine psb_salloc(x, desc_a, info, n, lb)
|
||||
import
|
||||
implicit none
|
||||
real(psb_spk_), allocatable, intent(out) :: x(:,:)
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: n, lb
|
||||
end subroutine psb_salloc
|
||||
subroutine psb_sallocv(x, desc_a,info,n)
|
||||
import
|
||||
implicit none
|
||||
real(psb_spk_), allocatable, intent(out) :: x(:)
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: n
|
||||
end subroutine psb_sallocv
|
||||
subroutine psb_salloc_vect(x, desc_a,info,n)
|
||||
import
|
||||
implicit none
|
||||
@@ -80,22 +65,6 @@ Module psb_s_tools_mod
|
||||
|
||||
|
||||
interface psb_geasb
|
||||
subroutine psb_sasb(x, desc_a, info, scratch)
|
||||
import
|
||||
implicit none
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
real(psb_spk_), allocatable, intent(inout) :: x(:,:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
logical, intent(in), optional :: scratch
|
||||
end subroutine psb_sasb
|
||||
subroutine psb_sasbv(x, desc_a, info, scratch)
|
||||
import
|
||||
implicit none
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
real(psb_spk_), allocatable, intent(inout) :: x(:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
logical, intent(in), optional :: scratch
|
||||
end subroutine psb_sasbv
|
||||
subroutine psb_sasb_vect(x, desc_a, info,mold, scratch)
|
||||
import
|
||||
implicit none
|
||||
@@ -127,20 +96,6 @@ Module psb_s_tools_mod
|
||||
end interface
|
||||
|
||||
interface psb_gefree
|
||||
subroutine psb_sfree(x, desc_a, info)
|
||||
import
|
||||
implicit none
|
||||
real(psb_spk_),allocatable, intent(inout) :: x(:,:)
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
end subroutine psb_sfree
|
||||
subroutine psb_sfreev(x, desc_a, info)
|
||||
import
|
||||
implicit none
|
||||
real(psb_spk_),allocatable, intent(inout) :: x(:)
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
end subroutine psb_sfreev
|
||||
subroutine psb_sfree_vect(x, desc_a, info)
|
||||
import
|
||||
implicit none
|
||||
@@ -166,37 +121,13 @@ Module psb_s_tools_mod
|
||||
|
||||
|
||||
interface psb_geins
|
||||
subroutine psb_sinsi(m,irw,val, x, desc_a,info,dupl,local)
|
||||
import
|
||||
implicit none
|
||||
integer(psb_ipk_), intent(in) :: m
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
real(psb_spk_),intent(inout) :: x(:,:)
|
||||
integer(psb_ipk_), intent(in) :: irw(:)
|
||||
real(psb_spk_), intent(in) :: val(:,:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: dupl
|
||||
logical, intent(in), optional :: local
|
||||
end subroutine psb_sinsi
|
||||
subroutine psb_sinsvi(m, irw,val, x,desc_a,info,dupl,local)
|
||||
import
|
||||
implicit none
|
||||
integer(psb_ipk_), intent(in) :: m
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
real(psb_spk_),intent(inout) :: x(:)
|
||||
integer(psb_ipk_), intent(in) :: irw(:)
|
||||
real(psb_spk_), intent(in) :: val(:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: dupl
|
||||
logical, intent(in), optional :: local
|
||||
end subroutine psb_sinsvi
|
||||
subroutine psb_sins_vect(m,irw,val,x,desc_a,info,dupl,local)
|
||||
import
|
||||
implicit none
|
||||
integer(psb_ipk_), intent(in) :: m
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
type(psb_s_vect_type), intent(inout) :: x
|
||||
integer(psb_ipk_), intent(in) :: irw(:)
|
||||
integer(psb_lpk_), intent(in) :: irw(:)
|
||||
real(psb_spk_), intent(in) :: val(:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: dupl
|
||||
@@ -208,7 +139,7 @@ Module psb_s_tools_mod
|
||||
integer(psb_ipk_), intent(in) :: m
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
type(psb_s_vect_type), intent(inout) :: x
|
||||
type(psb_i_vect_type), intent(inout) :: irw
|
||||
type(psb_l_vect_type), intent(inout) :: irw
|
||||
type(psb_s_vect_type), intent(inout) :: val
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: dupl
|
||||
@@ -220,7 +151,7 @@ Module psb_s_tools_mod
|
||||
integer(psb_ipk_), intent(in) :: m
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
type(psb_s_vect_type), intent(inout) :: x(:)
|
||||
integer(psb_ipk_), intent(in) :: irw(:)
|
||||
integer(psb_lpk_), intent(in) :: irw(:)
|
||||
real(psb_spk_), intent(in) :: val(:,:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: dupl
|
||||
@@ -232,7 +163,7 @@ Module psb_s_tools_mod
|
||||
integer(psb_ipk_), intent(in) :: m
|
||||
type(psb_desc_type), intent(in) :: desc_a
|
||||
type(psb_s_multivect_type), intent(inout) :: x
|
||||
integer(psb_ipk_), intent(in) :: irw(:)
|
||||
integer(psb_lpk_), intent(in) :: irw(:)
|
||||
real(psb_spk_), intent(in) :: val(:,:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), optional, intent(in) :: dupl
|
||||
@@ -266,6 +197,18 @@ Module psb_s_tools_mod
|
||||
character(len=5), optional :: outfmt
|
||||
integer(psb_ipk_), intent(in), optional :: data
|
||||
end Subroutine psb_ssphalo
|
||||
Subroutine psb_lssphalo(a,desc_a,blk,info,rowcnv,colcnv,&
|
||||
& rowscale,colscale,outfmt,data)
|
||||
import
|
||||
implicit none
|
||||
Type(psb_lsspmat_type),Intent(in) :: a
|
||||
Type(psb_lsspmat_type),Intent(inout) :: blk
|
||||
Type(psb_desc_type),Intent(in), target :: desc_a
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
logical, optional, intent(in) :: rowcnv,colcnv,rowscale,colscale
|
||||
character(len=5), optional :: outfmt
|
||||
integer(psb_ipk_), intent(in), optional :: data
|
||||
end Subroutine psb_lssphalo
|
||||
end interface
|
||||
|
||||
|
||||
@@ -310,9 +253,10 @@ Module psb_s_tools_mod
|
||||
implicit none
|
||||
type(psb_desc_type), intent(inout) :: desc_a
|
||||
type(psb_sspmat_type), intent(inout) :: a
|
||||
integer(psb_ipk_), intent(in) :: nz,ia(:),ja(:)
|
||||
integer(psb_ipk_), intent(in) :: nz
|
||||
integer(psb_lpk_), intent(in) :: ia(:),ja(:)
|
||||
real(psb_spk_), intent(in) :: val(:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
logical, intent(in), optional :: rebuild
|
||||
logical, intent(in), optional :: local
|
||||
end subroutine psb_sspins
|
||||
@@ -323,7 +267,7 @@ Module psb_s_tools_mod
|
||||
type(psb_desc_type), intent(inout) :: desc_a
|
||||
type(psb_sspmat_type), intent(inout) :: a
|
||||
integer(psb_ipk_), intent(in) :: nz
|
||||
type(psb_i_vect_type), intent(inout) :: ia,ja
|
||||
type(psb_l_vect_type), intent(inout) :: ia,ja
|
||||
type(psb_s_vect_type), intent(inout) :: val
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
logical, intent(in), optional :: rebuild
|
||||
@@ -335,9 +279,10 @@ Module psb_s_tools_mod
|
||||
type(psb_desc_type), intent(in) :: desc_ar
|
||||
type(psb_desc_type), intent(inout) :: desc_ac
|
||||
type(psb_sspmat_type), intent(inout) :: a
|
||||
integer(psb_ipk_), intent(in) :: nz,ia(:),ja(:)
|
||||
integer(psb_ipk_), intent(in) :: nz
|
||||
integer(psb_lpk_), intent(in) :: ia(:),ja(:)
|
||||
real(psb_spk_), intent(in) :: val(:)
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
end subroutine psb_sspins_2desc
|
||||
end interface
|
||||
|
||||
|
||||
Reference in New Issue
Block a user