psblas-dev:

README
 base/comm/psb_dgather.f90
 base/comm/psb_dhalo.f90
 base/comm/psb_dovrl.f90
 base/comm/psb_dscatter.F90
 base/comm/psb_ihalo.f90
 base/comm/psb_zgather.f90
 base/comm/psb_zhalo.f90
 base/comm/psb_zovrl.f90
 base/comm/psb_zscatter.F90
 base/internals/psi_dswapdata.F90
 base/internals/psi_dswaptran.F90
 base/internals/psi_iswapdata.F90
 base/internals/psi_iswaptran.F90
 base/internals/psi_zswapdata.F90
 base/internals/psi_zswaptran.F90
 base/modules/Makefile
 base/modules/cutil.c
 base/modules/fakempi.c
 base/modules/psb_comm_mod.f90
 base/modules/psb_const_mod.f90
 base/modules/psb_desc_type.f90
 base/modules/psb_error_mod.F90
 base/modules/psb_inter_desc_type.f90
 base/modules/psb_penv_mod.F90
 base/modules/psb_psblas_mod.f90
 base/modules/psb_realloc_mod.F90
 base/modules/psb_serial_mod.f90
 base/modules/psb_sort_mod.f90
 base/modules/psb_spmat_type.f90
 base/modules/psb_spsb_mod.f90
 base/modules/psb_tools_mod.f90
 base/modules/psi_mod.f90
 base/modules/psi_serial_mod.f90
 base/psblas/psb_damax.f90
 base/psblas/psb_dasum.f90
 base/psblas/psb_daxpby.f90
 base/psblas/psb_ddot.f90
 base/psblas/psb_dnrm2.f90
 base/psblas/psb_dnrmi.f90
 base/psblas/psb_dspmm.f90
 base/psblas/psb_dspsm.f90
 base/psblas/psb_zamax.f90
 base/psblas/psb_zasum.f90
 base/psblas/psb_zaxpby.f90
 base/psblas/psb_zdot.f90
 base/psblas/psb_znrm2.f90
 base/psblas/psb_znrmi.f90
 base/psblas/psb_zspmm.f90
 base/psblas/psb_zspsm.f90
 base/serial/aux/dasr.f90
 base/serial/aux/dasrx.f90
 base/serial/aux/dmsort_dw.f90
 base/serial/aux/dmsort_up.f90
 base/serial/aux/dmsr.f90
 base/serial/aux/dmsrx.f90
 base/serial/aux/dsr.f90
 base/serial/aux/dsrx.f90
 base/serial/aux/zacmp_mod.f90
 base/serial/aux/zalcmp_mod.f90
 base/serial/aux/zalsr.f90
 base/serial/aux/zalsrx.f90
 base/serial/aux/zamsort_dw.f90
 base/serial/aux/zamsort_up.f90
 base/serial/aux/zamsr.f90
 base/serial/aux/zamsrx.f90
 base/serial/aux/zasr.f90
 base/serial/aux/zasrx.f90
 base/serial/aux/zlcmp_mod.f90
 base/serial/aux/zlsr.f90
 base/serial/aux/zlsrx.f90
 base/serial/coo/dcoomm.f
 base/serial/coo/dcoomv.f
 base/serial/coo/dcoonrmi.f
 base/serial/coo/dcoorws.f
 base/serial/coo/dcoosm.f
 base/serial/coo/dcoosv.f
 base/serial/coo/zcoomm.f
 base/serial/coo/zcoomv.f
 base/serial/coo/zcoonrmi.f
 base/serial/coo/zcoorws.f
 base/serial/coo/zcoosm.f
 base/serial/coo/zcoosv.f
 base/serial/csr/dcrnrmi.f
 base/serial/csr/dcsrck.f
 base/serial/csr/dcsrmm.f
 base/serial/csr/dcsrmv.f
 base/serial/csr/dcsrmv2.f
 base/serial/csr/dcsrmv3.f
 base/serial/csr/dcsrmv4.f
 base/serial/csr/dcsrrws.f
 base/serial/csr/dcsrsm.f
 base/serial/csr/dcsrsv.f
 base/serial/csr/zcrnrmi.f
 base/serial/csr/zcsrck.f
 base/serial/csr/zcsrmm.f
 base/serial/csr/zcsrrws.f
 base/serial/csr/zcsrsm.f
 base/serial/csr/zsrmv.f
 base/serial/csr/zsrsv.f
 base/serial/dp/dcoco.f
 base/serial/dp/dcocr.f
 base/serial/dp/dcrco.f
 base/serial/dp/dcrcr.f
 base/serial/dp/dcrjd.f
 base/serial/dp/dcsrp1.f
 base/serial/dp/dcsrrp.f
 base/serial/dp/dgind_tri.f
 base/serial/dp/dgindex.f
 base/serial/dp/djadrp.f
 base/serial/dp/djadrp1.f
 base/serial/dp/djdco.f
 base/serial/dp/djdcox.f
 base/serial/dp/dvtfg.f
 base/serial/dp/reordvn.f
 base/serial/dp/zcoco.f
 base/serial/dp/zcocr.f
 base/serial/dp/zcrco.f
 base/serial/dp/zcrcr.f
 base/serial/dp/zcrjd.f
 base/serial/dp/zgind_tri.f
 base/serial/dp/zgindex.f
 base/serial/f77/daxpby.f
 base/serial/f77/dcsmm.f
 base/serial/f77/dcsnmi.f
 base/serial/f77/dcsrp.f
 base/serial/f77/dcsrws.f
 base/serial/f77/dcssm.f
 base/serial/f77/dgelp.f
 base/serial/f77/dlpupd.f
 base/serial/f77/dswmm.f
 base/serial/f77/dswsm.f
 base/serial/f77/smmp.f
 base/serial/f77/zaxpby.f
 base/serial/f77/zcsmm.f
 base/serial/f77/zcsnmi.f
 base/serial/f77/zcsrws.f
 base/serial/f77/zcssm.f
 base/serial/f77/zgelp.f
 base/serial/f77/zlpupd.f
 base/serial/f77/zswmm.f
 base/serial/f77/zswsm.f
 base/serial/jad/djadmm.f
 base/serial/jad/djadmv.f
 base/serial/jad/djadmv2.f
 base/serial/jad/djadmv3.f
 base/serial/jad/djadmv4.f
 base/serial/jad/djadnr.f
 base/serial/jad/djadrws.f
 base/serial/jad/djadsm.f
 base/serial/jad/djadsv.f
 base/serial/jad/djdnrmi.f
 base/serial/jad/djdrws.f
 base/serial/psb_dcoins.f90
 base/serial/psb_dcsmm.f90
 base/serial/psb_dcsmv.f90
 base/serial/psb_dcsnmi.f90
 base/serial/psb_dcsrp.f90
 base/serial/psb_dcsrws.f90
 base/serial/psb_dcssm.f90
 base/serial/psb_dcssv.f90
 base/serial/psb_dgelp.f90
 base/serial/psb_dneigh.f90
 base/serial/psb_dnumbmm.f90
 base/serial/psb_dspcnv.f90
 base/serial/psb_dspgetrow.f90
 base/serial/psb_dspgtdiag.f90
 base/serial/psb_dspscal.f90
 base/serial/psb_dsymbmm.f90
 base/serial/psb_getrow_mod.f90
 base/serial/psb_regen_mod.f90
 base/serial/psb_update_mod.f90
 base/serial/psb_zcoins.f90
 base/serial/psb_zcsmm.f90
 base/serial/psb_zcsmv.f90
 base/serial/psb_zcsnmi.f90
 base/serial/psb_zcsrp.f90
 base/serial/psb_zcsrws.f90
 base/serial/psb_zcssm.f90
 base/serial/psb_zcssv.f90
 base/serial/psb_zgelp.f90
 base/serial/psb_zneigh.f90
 base/serial/psb_znumbmm.f90
 base/serial/psb_zspcnv.f90
 base/serial/psb_zspgetrow.f90
 base/serial/psb_zspgtdiag.f90
 base/serial/psb_zspscal.f90
 base/serial/psb_zsymbmm.f90
 base/tools/psb_dallc.f90
 base/tools/psb_dasb.f90
 base/tools/psb_dfree.f90
 base/tools/psb_dins.f90
 base/tools/psb_dsphalo.F90
 base/tools/psb_dspins.f90
 base/tools/psb_zallc.f90
 base/tools/psb_zasb.f90
 base/tools/psb_zfree.f90
 base/tools/psb_zins.f90
 base/tools/psb_zsphalo.F90
 base/tools/psb_zspins.f90
 docs/pdf/datastruct.tex
 docs/pdf/penv.tex
 docs/userguide.pdf
 krylov/psb_dbicg.f90
 krylov/psb_dcg.f90
 krylov/psb_dcgs.f90
 krylov/psb_dcgstab.F90
 krylov/psb_dcgstabl.f90
 krylov/psb_drgmres.f90
 krylov/psb_krylov_mod.f90
 krylov/psb_zbicg.f90
 krylov/psb_zcg.f90
 krylov/psb_zcgs.f90
 krylov/psb_zcgstab.f90
 krylov/psb_zcgstabl.f90
 krylov/psb_zrgmres.f90
 prec/psb_dbjac_aply.f90
 prec/psb_dbjac_bld.f90
 prec/psb_dgprec_aply.f90
 prec/psb_dilu_fct.f90
 prec/psb_dprc_aply.f90
 prec/psb_dprecset.f90
 prec/psb_prec_mod.f90
 prec/psb_prec_type.f90
 prec/psb_zbjac_aply.f90
 prec/psb_zbjac_bld.f90
 prec/psb_zgprec_aply.f90
 prec/psb_zilu_fct.f90
 prec/psb_zprc_aply.f90
 prec/psb_zprecset.f90
 test/fileread/df_sample.f90
 test/fileread/getp.f90
 test/fileread/zf_sample.f90
 test/pargen/ppde.f90
 test/util/Makefile
 util/psb_hbio_mod.f90
 util/psb_mat_dist_mod.f90
 util/psb_metispart_mod.F90
 util/psb_mmio_mod.f90
 util/psb_read_mat_mod.f90

Merged kind type names changes from r:2905:2906 in branches/psblas-2.2-maint.
This commit is contained in:
Salvatore Filippone
2008-03-05 10:28:14 +00:00
parent ffb96464ee
commit c1d96960d8
241 changed files with 6030 additions and 5745 deletions
+2 -2
View File
@@ -11,7 +11,7 @@ MODULES = psb_realloc_mod.o psb_string_mod.o psb_spmat_type.o \
LIBMOD=psb_base_mod$(.mod)
MPFOBJS=psb_penv_mod.o
OBJS = error.o psb_base_mod.o $(EXTRA_COBJS)
OBJS = error.o psb_base_mod.o $(EXTRA_COBJS) cutil.o
LIBDIR=..
CINCLUDES=-I.
FINCLUDES=$(FMFLAG)$(LIBDIR) $(FMFLAG). $(FIFLAG).
@@ -33,7 +33,7 @@ psb_desc_type.o: psb_const_mod.o psb_error_mod.o psb_penv_mod.o psb_realloc_mod.
psb_inter_desc_type.o: psb_desc_type.o psb_spmat_type.o psb_error_mod.o psb_serial_mod.o psb_comm_mod.o
psb_check_mod.o: psb_desc_type.o
psb_serial_mod.o: psb_spmat_type.o psb_string_mod.o psb_sort_mod.o psi_serial_mod.o
psb_sort_mod.o: psb_error_mod.o psb_realloc_mod.o
psb_sort_mod.o: psb_error_mod.o psb_realloc_mod.o psb_const_mod.o
psb_methd_mod.o: psb_serial_mod.o psb_desc_type.o psb_prec_type.o
psb_tools_mod.o: psb_spmat_type.o psb_desc_type.o psi_mod.o psb_gps_mod.o psb_inter_desc_type.o
psb_gps_mod.o: psb_realloc_mod.o
+28
View File
@@ -0,0 +1,28 @@
#include <sys/time.h>
#include <stdio.h>
#include <string.h>
#ifdef LowerUnderscore
#define psi_c_diffadd psi_c_diffadd_
#endif
#ifdef LowerDoubleUnderscore
#define psi_c_diffadd psi_c_diffadd__
#endif
#ifdef LowerCase
#define psi_c_diffadd psi_c_diffadd
#endif
#ifdef UpperUnderscore
#define psi_c_diffadd PSI_C_DIFFADD_
#endif
#ifdef UpperDoubleUnderscore
#define psi_c_diffadd PSI_C_DIFFADD__
#endif
#ifdef UpperCase
#define psi_c_diffadd PSI_C_DIFFADD
#endif
void psi_c_diffadd(void *p1, void *p2, int *ret)
{
*ret = p2-p1;
return;
}
+4 -4
View File
@@ -2,7 +2,7 @@
#include <stdio.h>
#include <string.h>
#ifdef LowerUndescore
#ifdef LowerUnderscore
#define mpi_wtime mpi_wtime_
#define mpi_send mpi_send_
#define mpi_irecv mpi_irecv_
@@ -12,7 +12,7 @@
#define mpi_allgather mpi_allgather_
#define mpi_allgatherv mpi_allgatherv_
#endif
#ifdef LowerDoubleUndescore
#ifdef LowerDoubleUnderscore
#define mpi_wtime mpi_wtime__
#define mpi_send mpi_send__
#define mpi_irecv mpi_irecv__
@@ -32,7 +32,7 @@
#define mpi_allgather mpi_allgather
#define mpi_allgatherv mpi_allgatherv
#endif
#ifdef UpperUndescore
#ifdef UpperUnderscore
#define mpi_wtime MPI_WTIME_
#define mpi_send MPI_SEND_
#define mpi_irecv MPI_IRECV_
@@ -42,7 +42,7 @@
#define mpi_allgather MPI_ALLGATHER_
#define mpi_allgatherv MPI_ALLGATHERV_
#endif
#ifdef UpperDoubleUndescore
#ifdef UpperDoubleUnderscore
#define mpi_wtime MPI_WTIME__
#define mpi_send MPI_SEND__
#define mpi_irecv MPI_IRECV__
+40 -40
View File
@@ -34,18 +34,18 @@ module psb_comm_mod
interface psb_ovrl
subroutine psb_dovrlm(x,desc_a,info,jx,ik,work,update,mode)
use psb_descriptor_type
real(kind(1.d0)), intent(inout) :: x(:,:)
real(psb_dpk_), intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(inout), optional :: work(:)
real(psb_dpk_), intent(inout), optional :: work(:)
integer, intent(in), optional :: update,jx,ik,mode
end subroutine psb_dovrlm
subroutine psb_dovrlv(x,desc_a,info,work,update,mode)
use psb_descriptor_type
real(kind(1.d0)), intent(inout) :: x(:)
real(psb_dpk_), intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(inout), optional :: work(:)
real(psb_dpk_), intent(inout), optional :: work(:)
integer, intent(in), optional :: update,mode
end subroutine psb_dovrlv
subroutine psb_iovrlm(x,desc_a,info,jx,ik,work,update,mode)
@@ -53,7 +53,7 @@ module psb_comm_mod
integer, intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(inout), optional :: work(:)
real(psb_dpk_), intent(inout), optional :: work(:)
integer, intent(in), optional :: update,jx,ik,mode
end subroutine psb_iovrlm
subroutine psb_iovrlv(x,desc_a,info,work,update,mode)
@@ -61,23 +61,23 @@ module psb_comm_mod
integer, intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(inout), optional :: work(:)
real(psb_dpk_), intent(inout), optional :: work(:)
integer, intent(in), optional :: update,mode
end subroutine psb_iovrlv
subroutine psb_zovrlm(x,desc_a,info,jx,ik,work,update,mode)
use psb_descriptor_type
complex(kind(1.d0)), intent(inout) :: x(:,:)
complex(psb_dpk_), intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(kind(1.d0)), intent(inout), optional :: work(:)
complex(psb_dpk_), intent(inout), optional :: work(:)
integer, intent(in), optional :: update,jx,ik,mode
end subroutine psb_zovrlm
subroutine psb_zovrlv(x,desc_a,info,work,update,mode)
use psb_descriptor_type
complex(kind(1.d0)), intent(inout) :: x(:)
complex(psb_dpk_), intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(kind(1.d0)), intent(inout), optional :: work(:)
complex(psb_dpk_), intent(inout), optional :: work(:)
integer, intent(in), optional :: update,mode
end subroutine psb_zovrlv
end interface
@@ -85,21 +85,21 @@ module psb_comm_mod
interface psb_halo
subroutine psb_dhalom(x,desc_a,info,alpha,jx,ik,work,tran,mode,data)
use psb_descriptor_type
real(kind(1.d0)), intent(inout) :: x(:,:)
real(psb_dpk_), intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(in), optional :: alpha
real(kind(1.d0)), target, optional :: work(:)
real(psb_dpk_), intent(in), optional :: alpha
real(psb_dpk_), target, optional :: work(:)
integer, intent(in), optional :: mode,jx,ik,data
character, intent(in), optional :: tran
end subroutine psb_dhalom
subroutine psb_dhalov(x,desc_a,info,alpha,work,tran,mode,data)
use psb_descriptor_type
real(kind(1.d0)), intent(inout) :: x(:)
real(psb_dpk_), intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(in), optional :: alpha
real(kind(1.d0)), target, optional :: work(:)
real(psb_dpk_), intent(in), optional :: alpha
real(psb_dpk_), target, optional :: work(:)
integer, intent(in), optional :: mode,data
character, intent(in), optional :: tran
end subroutine psb_dhalov
@@ -108,7 +108,7 @@ module psb_comm_mod
integer, intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(in), optional :: alpha
real(psb_dpk_), intent(in), optional :: alpha
integer, intent(inout), optional :: work(:)
integer, intent(in), optional :: mode,jx,ik,data
character, intent(in), optional :: tran
@@ -118,28 +118,28 @@ module psb_comm_mod
integer, intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
real(kind(1.d0)), intent(in), optional :: alpha
real(psb_dpk_), intent(in), optional :: alpha
integer, intent(inout), optional :: work(:)
integer, intent(in), optional :: mode,data
character, intent(in), optional :: tran
end subroutine psb_ihalov
subroutine psb_zhalom(x,desc_a,info,alpha,jx,ik,work,tran,mode,data)
use psb_descriptor_type
complex(kind(1.d0)), intent(inout) :: x(:,:)
complex(psb_dpk_), intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(kind(1.d0)), intent(in), optional :: alpha
complex(kind(1.d0)), target, optional :: work(:)
complex(psb_dpk_), intent(in), optional :: alpha
complex(psb_dpk_), target, optional :: work(:)
integer, intent(in), optional :: mode,jx,ik,data
character, intent(in), optional :: tran
end subroutine psb_zhalom
subroutine psb_zhalov(x,desc_a,info,alpha,work,tran,mode,data)
use psb_descriptor_type
complex(kind(1.d0)), intent(inout) :: x(:)
complex(psb_dpk_), intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
complex(kind(1.d0)), intent(in), optional :: alpha
complex(kind(1.d0)), target, optional :: work(:)
complex(psb_dpk_), intent(in), optional :: alpha
complex(psb_dpk_), target, optional :: work(:)
integer, intent(in), optional :: mode,data
character, intent(in), optional :: tran
end subroutine psb_zhalov
@@ -149,32 +149,32 @@ module psb_comm_mod
interface psb_dscatter
subroutine psb_dscatterm(globx, locx, desc_a, info, root)
use psb_descriptor_type
real(kind(1.d0)), intent(out) :: locx(:,:)
real(kind(1.d0)), intent(in) :: globx(:,:)
real(psb_dpk_), intent(out) :: locx(:,:)
real(psb_dpk_), intent(in) :: globx(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
end subroutine psb_dscatterm
subroutine psb_dscatterv(globx, locx, desc_a, info, root)
use psb_descriptor_type
real(kind(1.d0)), intent(out) :: locx(:)
real(kind(1.d0)), intent(in) :: globx(:)
real(psb_dpk_), intent(out) :: locx(:)
real(psb_dpk_), intent(in) :: globx(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
end subroutine psb_dscatterv
subroutine psb_zscatterm(globx, locx, desc_a, info, root)
use psb_descriptor_type
complex(kind(1.d0)), intent(out) :: locx(:,:)
complex(kind(1.d0)), intent(in) :: globx(:,:)
complex(psb_dpk_), intent(out) :: locx(:,:)
complex(psb_dpk_), intent(in) :: globx(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
end subroutine psb_zscatterm
subroutine psb_zscatterv(globx, locx, desc_a, info, root)
use psb_descriptor_type
complex(kind(1.d0)), intent(out) :: locx(:)
complex(kind(1.d0)), intent(in) :: globx(:)
complex(psb_dpk_), intent(out) :: locx(:)
complex(psb_dpk_), intent(in) :: globx(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
@@ -216,32 +216,32 @@ module psb_comm_mod
end subroutine psb_igatherv
subroutine psb_dgatherm(globx, locx, desc_a, info, root)
use psb_descriptor_type
real(kind(1.d0)), intent(in) :: locx(:,:)
real(kind(1.d0)), intent(out) :: globx(:,:)
real(psb_dpk_), intent(in) :: locx(:,:)
real(psb_dpk_), intent(out) :: globx(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
end subroutine psb_dgatherm
subroutine psb_dgatherv(globx, locx, desc_a, info, root)
use psb_descriptor_type
real(kind(1.d0)), intent(in) :: locx(:)
real(kind(1.d0)), intent(out) :: globx(:)
real(psb_dpk_), intent(in) :: locx(:)
real(psb_dpk_), intent(out) :: globx(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
end subroutine psb_dgatherv
subroutine psb_zgatherm(globx, locx, desc_a, info, root)
use psb_descriptor_type
complex(kind(1.d0)), intent(in) :: locx(:,:)
complex(kind(1.d0)), intent(out) :: globx(:,:)
complex(psb_dpk_), intent(in) :: locx(:,:)
complex(psb_dpk_), intent(out) :: globx(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
end subroutine psb_zgatherm
subroutine psb_zgatherv(globx, locx, desc_a, info, root)
use psb_descriptor_type
complex(kind(1.d0)), intent(in) :: locx(:)
complex(kind(1.d0)), intent(out) :: globx(:)
complex(psb_dpk_), intent(in) :: locx(:)
complex(psb_dpk_), intent(out) :: globx(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
integer, intent(in), optional :: root
+13 -7
View File
@@ -31,15 +31,21 @@
!!$
module psb_const_mod
!
! This must be the kind parameter corresponding to MPI_DOUBLE_PRECISION.
!
integer, parameter :: psb_dpk_ = kind(1.d0)
integer :: psb_sizeof_dp, psb_sizeof_int
!
! Handy & miscellaneous constants
!
integer, parameter :: izero=0, ione=1
integer, parameter :: itwo=2, ithree=3,mone=-1, psb_root_=0
real(kind(1.d0)), parameter :: dzero=0.d0, done=1.d0
complex(kind(1.d0)), parameter :: zzero=(0.d0,0.0d0)
complex(kind(1.d0)), parameter :: zone=(1.d0,0.0d0)
real(kind(1.d0)), parameter :: epstol=1.d-32, psb_percent_=0.7
character, parameter :: psb_all_='A', psb_topdef_=' '
integer, parameter :: izero=0, ione=1
integer, parameter :: itwo=2, ithree=3,mone=-1, psb_root_=0
real(psb_dpk_), parameter :: dzero=0.d0, done=1.d0
complex(psb_dpk_), parameter :: zzero=(0.d0,0.0d0)
complex(psb_dpk_), parameter :: zone=(1.d0,0.0d0)
real(psb_dpk_), parameter :: epstol=1.d-32, psb_percent_=0.7
character, parameter :: psb_all_='A', psb_topdef_=' '
end module psb_const_mod
+14 -14
View File
@@ -382,20 +382,20 @@ contains
integer, external :: SizeofPairSearchTree
val = 0
if (allocated(desc%matrix_data)) val = val + 4*size(desc%matrix_data)
if (allocated(desc%halo_index)) val = val + 4*size(desc%halo_index)
if (allocated(desc%ext_index)) val = val + 4*size(desc%ext_index)
if (allocated(desc%bnd_elem)) val = val + 4*size(desc%bnd_elem)
if (allocated(desc%ovrlap_index)) val = val + 4*size(desc%ovrlap_index)
if (allocated(desc%ovrlap_elem)) val = val + 4*size(desc%ovrlap_elem)
if (allocated(desc%ovr_mst_idx)) val = val + 4*size(desc%ovr_mst_idx)
if (allocated(desc%loc_to_glob)) val = val + 4*size(desc%loc_to_glob)
if (allocated(desc%glob_to_loc)) val = val + 4*size(desc%glob_to_loc)
if (allocated(desc%hashv)) val = val + 4*size(desc%hashv)
if (allocated(desc%glb_lc)) val = val + 4*size(desc%glb_lc)
if (allocated(desc%lprm)) val = val + 4*size(desc%lprm)
if (allocated(desc%idx_space)) val = val + 4*size(desc%idx_space)
if (allocated(desc%ptree)) val = val + 4*size(desc%ptree) +&
if (allocated(desc%matrix_data)) val = val + psb_sizeof_int*size(desc%matrix_data)
if (allocated(desc%halo_index)) val = val + psb_sizeof_int*size(desc%halo_index)
if (allocated(desc%ext_index)) val = val + psb_sizeof_int*size(desc%ext_index)
if (allocated(desc%bnd_elem)) val = val + psb_sizeof_int*size(desc%bnd_elem)
if (allocated(desc%ovrlap_index)) val = val + psb_sizeof_int*size(desc%ovrlap_index)
if (allocated(desc%ovrlap_elem)) val = val + psb_sizeof_int*size(desc%ovrlap_elem)
if (allocated(desc%ovr_mst_idx)) val = val + psb_sizeof_int*size(desc%ovr_mst_idx)
if (allocated(desc%loc_to_glob)) val = val + psb_sizeof_int*size(desc%loc_to_glob)
if (allocated(desc%glob_to_loc)) val = val + psb_sizeof_int*size(desc%glob_to_loc)
if (allocated(desc%hashv)) val = val + psb_sizeof_int*size(desc%hashv)
if (allocated(desc%glb_lc)) val = val + psb_sizeof_int*size(desc%glb_lc)
if (allocated(desc%lprm)) val = val + psb_sizeof_int*size(desc%lprm)
if (allocated(desc%idx_space)) val = val + psb_sizeof_int*size(desc%idx_space)
if (allocated(desc%ptree)) val = val + psb_sizeof_int*size(desc%ptree) +&
& SizeofPairSearchTree(desc%ptree)
psb_cd_sizeof = val
+1 -1
View File
@@ -62,7 +62,7 @@ module psb_error_mod
character(len=20) :: routine=''
! array of integer data to complete the error msg
integer,dimension(5) :: i_err_data=0
! real(kind(1.d0))(dim=10) :: r_err_data=0.d0 ! array of real data to complete the error msg
! real(psb_dpk_)(dim=10) :: r_err_data=0.d0 ! array of real data to complete the error msg
! complex(dim=10) :: c_err_data=0.c0 ! array of complex data to complete the error msg
! array of character data to complete the error msg
character(len=40) :: a_err_data=''
+20 -20
View File
@@ -479,14 +479,14 @@ contains
use psi_mod
implicit none
type(psb_inter_desc_type), intent(in) :: desc
real(kind(1.d0)), intent(in) :: alpha,beta
real(kind(1.d0)), intent(inout) :: x(:)
real(kind(1.d0)), intent(out) :: y(:)
real(psb_dpk_), intent(in) :: alpha,beta
real(psb_dpk_), intent(inout) :: x(:)
real(psb_dpk_), intent(out) :: y(:)
integer, intent(out) :: info
real(kind(1.d0)), optional :: work(:)
real(psb_dpk_), optional :: work(:)
!
real(kind(1.d0)), allocatable :: xt(:)
real(psb_dpk_), allocatable :: xt(:)
integer :: itsz, i, j,totxch,totsnd,totrcv,&
& map_kind, map_data
character(len=20), parameter :: name='psb_forward_map'
@@ -553,14 +553,14 @@ contains
use psi_mod
implicit none
type(psb_inter_desc_type), intent(in) :: desc
real(kind(1.d0)), intent(in) :: alpha,beta
real(kind(1.d0)), intent(inout) :: x(:)
real(kind(1.d0)), intent(out) :: y(:)
real(psb_dpk_), intent(in) :: alpha,beta
real(psb_dpk_), intent(inout) :: x(:)
real(psb_dpk_), intent(out) :: y(:)
integer, intent(out) :: info
real(kind(1.d0)), optional :: work(:)
real(psb_dpk_), optional :: work(:)
!
real(kind(1.d0)), allocatable :: xt(:)
real(psb_dpk_), allocatable :: xt(:)
integer :: itsz, i, j,totxch,totsnd,totrcv,&
& map_kind, map_data
character(len=20), parameter :: name='psb_backward_map'
@@ -624,14 +624,14 @@ contains
use psi_mod
implicit none
type(psb_inter_desc_type), intent(in) :: desc
complex(kind(1.d0)), intent(in) :: alpha,beta
complex(kind(1.d0)), intent(inout) :: x(:)
complex(kind(1.d0)), intent(out) :: y(:)
complex(psb_dpk_), intent(in) :: alpha,beta
complex(psb_dpk_), intent(inout) :: x(:)
complex(psb_dpk_), intent(out) :: y(:)
integer, intent(out) :: info
complex(kind(1.d0)), optional :: work(:)
complex(psb_dpk_), optional :: work(:)
!
complex(kind(1.d0)), allocatable :: xt(:)
complex(psb_dpk_), allocatable :: xt(:)
integer :: itsz, i, j,totxch,totsnd,totrcv,&
& map_kind, map_data
character(len=20), parameter :: name='psb_forward_map'
@@ -695,14 +695,14 @@ contains
use psi_mod
implicit none
type(psb_inter_desc_type), intent(in) :: desc
complex(kind(1.d0)), intent(in) :: alpha,beta
complex(kind(1.d0)), intent(inout) :: x(:)
complex(kind(1.d0)), intent(out) :: y(:)
complex(psb_dpk_), intent(in) :: alpha,beta
complex(psb_dpk_), intent(inout) :: x(:)
complex(psb_dpk_), intent(out) :: y(:)
integer, intent(out) :: info
complex(kind(1.d0)), optional :: work(:)
complex(psb_dpk_), optional :: work(:)
!
complex(kind(1.d0)), allocatable :: xt(:)
complex(psb_dpk_), allocatable :: xt(:)
integer :: itsz, i, j,totxch,totsnd,totrcv,&
& map_kind, map_data
character(len=20), parameter :: name='psb_backward_map'
File diff suppressed because it is too large Load Diff
+106 -106
View File
@@ -34,30 +34,30 @@ module psb_psblas_mod
interface psb_gedot
function psb_ddotv(x, y, desc_a,info)
use psb_descriptor_type
real(kind(1.d0)) :: psb_ddotv
real(kind(1.d0)), intent(in) :: x(:), y(:)
real(psb_dpk_) :: psb_ddotv
real(psb_dpk_), intent(in) :: x(:), y(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
end function psb_ddotv
function psb_ddot(x, y, desc_a, info, jx, jy)
use psb_descriptor_type
real(kind(1.d0)) :: psb_ddot
real(kind(1.d0)), intent(in) :: x(:,:), y(:,:)
real(psb_dpk_) :: psb_ddot
real(psb_dpk_), intent(in) :: x(:,:), y(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, optional, intent(in) :: jx, jy
integer, intent(out) :: info
end function psb_ddot
function psb_zdotv(x, y, desc_a,info)
use psb_descriptor_type
complex(kind(1.d0)) :: psb_zdotv
complex(kind(1.d0)), intent(in) :: x(:), y(:)
complex(psb_dpk_) :: psb_zdotv
complex(psb_dpk_), intent(in) :: x(:), y(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
end function psb_zdotv
function psb_zdot(x, y, desc_a, info, jx, jy)
use psb_descriptor_type
complex(kind(1.d0)) :: psb_zdot
complex(kind(1.d0)), intent(in) :: x(:,:), y(:,:)
complex(psb_dpk_) :: psb_zdot
complex(psb_dpk_), intent(in) :: x(:,:), y(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, optional, intent(in) :: jx, jy
integer, intent(out) :: info
@@ -67,29 +67,29 @@ module psb_psblas_mod
interface psb_gedots
subroutine psb_ddotvs(res,x, y, desc_a, info)
use psb_descriptor_type
real(kind(1.d0)), intent(out) :: res
real(kind(1.d0)), intent(in) :: x(:), y(:)
real(psb_dpk_), intent(out) :: res
real(psb_dpk_), intent(in) :: x(:), y(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
end subroutine psb_ddotvs
subroutine psb_dmdots(res,x, y, desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent(out) :: res(:)
real(kind(1.d0)), intent(in) :: x(:,:), y(:,:)
real(psb_dpk_), intent(out) :: res(:)
real(psb_dpk_), intent(in) :: x(:,:), y(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
end subroutine psb_dmdots
subroutine psb_zdotvs(res,x, y, desc_a, info)
use psb_descriptor_type
complex(kind(1.d0)), intent(out) :: res
complex(kind(1.d0)), intent(in) :: x(:), y(:)
complex(psb_dpk_), intent(out) :: res
complex(psb_dpk_), intent(in) :: x(:), y(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
end subroutine psb_zdotvs
subroutine psb_zmdots(res,x, y, desc_a,info)
use psb_descriptor_type
complex(kind(1.d0)), intent(out) :: res(:)
complex(kind(1.d0)), intent(in) :: x(:,:), y(:,:)
complex(psb_dpk_), intent(out) :: res(:)
complex(psb_dpk_), intent(in) :: x(:,:), y(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
end subroutine psb_zmdots
@@ -99,18 +99,18 @@ module psb_psblas_mod
subroutine psb_daxpbyv(alpha, x, beta, y,&
& desc_a, info)
use psb_descriptor_type
real(kind(1.d0)), intent (in) :: x(:)
real(kind(1.d0)), intent (inout) :: y(:)
real(kind(1.d0)), intent (in) :: alpha, beta
real(psb_dpk_), intent (in) :: x(:)
real(psb_dpk_), intent (inout) :: y(:)
real(psb_dpk_), intent (in) :: alpha, beta
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_daxpbyv
subroutine psb_daxpby(alpha, x, beta, y,&
& desc_a, info, n, jx, jy)
use psb_descriptor_type
real(kind(1.d0)), intent (in) :: x(:,:)
real(kind(1.d0)), intent (inout) :: y(:,:)
real(kind(1.d0)), intent (in) :: alpha, beta
real(psb_dpk_), intent (in) :: x(:,:)
real(psb_dpk_), intent (inout) :: y(:,:)
real(psb_dpk_), intent (in) :: alpha, beta
type(psb_desc_type), intent (in) :: desc_a
integer, optional :: n, jx, jy
integer, intent(out) :: info
@@ -118,18 +118,18 @@ module psb_psblas_mod
subroutine psb_zaxpbyv(alpha, x, beta, y,&
& desc_a, info)
use psb_descriptor_type
complex(kind(1.d0)), intent (in) :: x(:)
complex(kind(1.d0)), intent (inout) :: y(:)
complex(kind(1.d0)), intent (in) :: alpha, beta
complex(psb_dpk_), intent (in) :: x(:)
complex(psb_dpk_), intent (inout) :: y(:)
complex(psb_dpk_), intent (in) :: alpha, beta
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_zaxpbyv
subroutine psb_zaxpby(alpha, x, beta, y,&
& desc_a, info, n, jx, jy)
use psb_descriptor_type
complex(kind(1.d0)), intent (in) :: x(:,:)
complex(kind(1.d0)), intent (inout) :: y(:,:)
complex(kind(1.d0)), intent (in) :: alpha, beta
complex(psb_dpk_), intent (in) :: x(:,:)
complex(psb_dpk_), intent (inout) :: y(:,:)
complex(psb_dpk_), intent (in) :: alpha, beta
type(psb_desc_type), intent (in) :: desc_a
integer, optional :: n, jx, jy
integer, intent(out) :: info
@@ -139,31 +139,31 @@ module psb_psblas_mod
interface psb_geamax
function psb_damax(x, desc_a, info, jx)
use psb_descriptor_type
real(kind(1.d0)) psb_damax
real(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_) psb_damax
real(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, optional, intent (in) :: jx
integer, intent(out) :: info
end function psb_damax
function psb_damaxv(x, desc_a,info)
use psb_descriptor_type
real(kind(1.d0)) psb_damaxv
real(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_) psb_damaxv
real(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_damaxv
function psb_zamax(x, desc_a, info, jx)
use psb_descriptor_type
real(kind(1.d0)) psb_zamax
complex(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_) psb_zamax
complex(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, optional, intent (in) :: jx
integer, intent(out) :: info
end function psb_zamax
function psb_zamaxv(x, desc_a,info)
use psb_descriptor_type
real(kind(1.d0)) psb_zamaxv
complex(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_) psb_zamaxv
complex(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_zamaxv
@@ -172,30 +172,30 @@ module psb_psblas_mod
interface psb_geamaxs
subroutine psb_damaxvs(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res
real(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_), intent (out) :: res
real(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_damaxvs
subroutine psb_dmamax(res,x,desc_a,info,jx)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res(:)
real(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_), intent (out) :: res(:)
real(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
integer, optional :: jx
end subroutine psb_dmamax
subroutine psb_zamaxvs(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res
complex(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_), intent (out) :: res
complex(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_zamaxvs
subroutine psb_zmamax(res,x,desc_a,info,jx)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res(:)
complex(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_), intent (out) :: res(:)
complex(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
integer, optional :: jx
@@ -205,31 +205,31 @@ module psb_psblas_mod
interface psb_geasum
function psb_dasum(x, desc_a, info, jx)
use psb_descriptor_type
real(kind(1.d0)) psb_dasum
real(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_) psb_dasum
real(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, optional, intent (in) :: jx
integer, intent(out) :: info
end function psb_dasum
function psb_dasumv(x, desc_a, info)
use psb_descriptor_type
real(kind(1.d0)) psb_dasumv
real(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_) psb_dasumv
real(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_dasumv
function psb_zasum(x, desc_a, info, jx)
use psb_descriptor_type
real(kind(1.d0)) psb_zasum
complex(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_) psb_zasum
complex(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, optional, intent (in) :: jx
integer, intent(out) :: info
end function psb_zasum
function psb_zasumv(x, desc_a, info)
use psb_descriptor_type
real(kind(1.d0)) psb_zasumv
complex(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_) psb_zasumv
complex(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_zasumv
@@ -238,29 +238,29 @@ module psb_psblas_mod
interface psb_geasums
subroutine psb_dasumvs(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res
real(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_), intent (out) :: res
real(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_dasumvs
subroutine psb_dmasum(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res(:)
real(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_), intent (out) :: res(:)
real(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_dmasum
subroutine psb_zasumvs(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res
complex(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_), intent (out) :: res
complex(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_zasumvs
subroutine psb_zmasum(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res(:)
complex(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_), intent (out) :: res(:)
complex(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_zmasum
@@ -270,31 +270,31 @@ module psb_psblas_mod
interface psb_genrm2
function psb_dnrm2(x, desc_a, info, jx)
use psb_descriptor_type
real(kind(1.d0)) psb_dnrm2
real(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_) psb_dnrm2
real(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, optional, intent (in) :: jx
integer, intent(out) :: info
end function psb_dnrm2
function psb_dnrm2v(x, desc_a, info)
use psb_descriptor_type
real(kind(1.d0)) psb_dnrm2v
real(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_) psb_dnrm2v
real(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_dnrm2v
function psb_znrm2(x, desc_a, info, jx)
use psb_descriptor_type
real(kind(1.d0)) psb_znrm2
complex(kind(1.d0)), intent (in) :: x(:,:)
real(psb_dpk_) psb_znrm2
complex(psb_dpk_), intent (in) :: x(:,:)
type(psb_desc_type), intent (in) :: desc_a
integer, optional, intent (in) :: jx
integer, intent(out) :: info
end function psb_znrm2
function psb_znrm2v(x, desc_a, info)
use psb_descriptor_type
real(kind(1.d0)) psb_znrm2v
complex(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_) psb_znrm2v
complex(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end function psb_znrm2v
@@ -303,15 +303,15 @@ module psb_psblas_mod
interface psb_genrm2s
subroutine psb_dnrm2vs(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res
real(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_), intent (out) :: res
real(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_dnrm2vs
subroutine psb_znrm2vs(res,x,desc_a,info)
use psb_descriptor_type
real(kind(1.d0)), intent (out) :: res
complex(kind(1.d0)), intent (in) :: x(:)
real(psb_dpk_), intent (out) :: res
complex(psb_dpk_), intent (in) :: x(:)
type(psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
end subroutine psb_znrm2vs
@@ -322,7 +322,7 @@ module psb_psblas_mod
function psb_dnrmi(a, desc_a,info)
use psb_serial_mod
use psb_descriptor_type
real(kind(1.d0)) :: psb_dnrmi
real(psb_dpk_) :: psb_dnrmi
type (psb_dspmat_type), intent (in) :: a
type (psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
@@ -330,7 +330,7 @@ module psb_psblas_mod
function psb_znrmi(a, desc_a,info)
use psb_serial_mod
use psb_descriptor_type
real(kind(1.d0)) :: psb_znrmi
real(psb_dpk_) :: psb_znrmi
type (psb_zspmat_type), intent (in) :: a
type (psb_desc_type), intent (in) :: desc_a
integer, intent(out) :: info
@@ -343,12 +343,12 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_dspmat_type), intent(in) :: a
real(kind(1.d0)), intent(inout) :: x(:,:)
real(kind(1.d0)), intent(inout) :: y(:,:)
real(kind(1.d0)), intent(in) :: alpha, beta
real(psb_dpk_), intent(inout) :: x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
real(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans
real(kind(1.d0)), optional, intent(inout),target :: work(:)
real(psb_dpk_), optional, intent(inout),target :: work(:)
integer, optional, intent(in) :: k, jx, jy
logical, optional, intent(in) :: doswap
integer, intent(out) :: info
@@ -358,12 +358,12 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_dspmat_type), intent(in) :: a
real(kind(1.d0)), intent(inout) :: x(:)
real(kind(1.d0)), intent(inout) :: y(:)
real(kind(1.d0)), intent(in) :: alpha, beta
real(psb_dpk_), intent(inout) :: x(:)
real(psb_dpk_), intent(inout) :: y(:)
real(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans
real(kind(1.d0)), optional, intent(inout),target :: work(:)
real(psb_dpk_), optional, intent(inout),target :: work(:)
logical, optional, intent(in) :: doswap
integer, intent(out) :: info
end subroutine psb_dspmv
@@ -372,12 +372,12 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_zspmat_type), intent(in) :: a
complex(kind(1.d0)), intent(inout) :: x(:,:)
complex(kind(1.d0)), intent(inout) :: y(:,:)
complex(kind(1.d0)), intent(in) :: alpha, beta
complex(psb_dpk_), intent(inout) :: x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
complex(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans
complex(kind(1.d0)), optional, intent(inout),target :: work(:)
complex(psb_dpk_), optional, intent(inout),target :: work(:)
integer, optional, intent(in) :: k, jx, jy
logical, optional, intent(in) :: doswap
integer, intent(out) :: info
@@ -387,12 +387,12 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_zspmat_type), intent(in) :: a
complex(kind(1.d0)), intent(inout) :: x(:)
complex(kind(1.d0)), intent(inout) :: y(:)
complex(kind(1.d0)), intent(in) :: alpha, beta
complex(psb_dpk_), intent(inout) :: x(:)
complex(psb_dpk_), intent(inout) :: y(:)
complex(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans
complex(kind(1.d0)), optional, intent(inout),target :: work(:)
complex(psb_dpk_), optional, intent(inout),target :: work(:)
logical, optional, intent(in) :: doswap
integer, intent(out) :: info
end subroutine psb_zspmv
@@ -405,14 +405,14 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_dspmat_type), intent(in) :: t
real(kind(1.d0)), intent(in) :: x(:,:)
real(kind(1.d0)), intent(inout) :: y(:,:)
real(kind(1.d0)), intent(in) :: alpha, beta
real(psb_dpk_), intent(in) :: x(:,:)
real(psb_dpk_), intent(inout) :: y(:,:)
real(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans, unit
integer, optional, intent(in) :: n, jx, jy
integer, optional, intent(in) :: choice
real(kind(1.d0)), optional, intent(in),target :: work(:), diag(:)
real(psb_dpk_), optional, intent(in),target :: work(:), diag(:)
integer, intent(out) :: info
end subroutine psb_dspsm
subroutine psb_dspsv(alpha, t, x, beta, y,&
@@ -421,13 +421,13 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_dspmat_type), intent(in) :: t
real(kind(1.d0)), intent(in) :: x(:)
real(kind(1.d0)), intent(inout) :: y(:)
real(kind(1.d0)), intent(in) :: alpha, beta
real(psb_dpk_), intent(in) :: x(:)
real(psb_dpk_), intent(inout) :: y(:)
real(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans, unit
integer, optional, intent(in) :: choice
real(kind(1.d0)), optional, intent(in),target :: work(:), diag(:)
real(psb_dpk_), optional, intent(in),target :: work(:), diag(:)
integer, intent(out) :: info
end subroutine psb_dspsv
subroutine psb_zspsm(alpha, t, x, beta, y,&
@@ -436,14 +436,14 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_zspmat_type), intent(in) :: t
complex(kind(1.d0)), intent(in) :: x(:,:)
complex(kind(1.d0)), intent(inout) :: y(:,:)
complex(kind(1.d0)), intent(in) :: alpha, beta
complex(psb_dpk_), intent(in) :: x(:,:)
complex(psb_dpk_), intent(inout) :: y(:,:)
complex(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans, unit
integer, optional, intent(in) :: n, jx, jy
integer, optional, intent(in) :: choice
complex(kind(1.d0)), optional, intent(in),target :: work(:), diag(:)
complex(psb_dpk_), optional, intent(in),target :: work(:), diag(:)
integer, intent(out) :: info
end subroutine psb_zspsm
subroutine psb_zspsv(alpha, t, x, beta, y,&
@@ -452,13 +452,13 @@ module psb_psblas_mod
use psb_serial_mod
use psb_descriptor_type
type (psb_zspmat_type), intent(in) :: t
complex(kind(1.d0)), intent(in) :: x(:)
complex(kind(1.d0)), intent(inout) :: y(:)
complex(kind(1.d0)), intent(in) :: alpha, beta
complex(psb_dpk_), intent(in) :: x(:)
complex(psb_dpk_), intent(inout) :: y(:)
complex(psb_dpk_), intent(in) :: alpha, beta
type(psb_desc_type), intent(in) :: desc_a
character, optional, intent(in) :: trans, unit
integer, optional, intent(in) :: choice
complex(kind(1.d0)), optional, intent(in),target :: work(:), diag(:)
complex(psb_dpk_), optional, intent(in),target :: work(:), diag(:)
integer, intent(out) :: info
end subroutine psb_zspsv
end interface
+56 -56
View File
@@ -192,8 +192,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
real(kind(1.d0)), allocatable, intent(in) :: vin(:)
real(kind(1.d0)), allocatable, intent(out) :: vout(:)
real(psb_dpk_), allocatable, intent(in) :: vin(:)
real(psb_dpk_), allocatable, intent(out) :: vout(:)
integer :: info
! ...Local Variables
@@ -242,8 +242,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
real(kind(1.d0)), allocatable, intent(in) :: vin(:,:)
real(kind(1.d0)), allocatable, intent(out) :: vout(:,:)
real(psb_dpk_), allocatable, intent(in) :: vin(:,:)
real(psb_dpk_), allocatable, intent(out) :: vout(:,:)
integer :: info
! ...Local Variables
@@ -294,8 +294,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
complex(kind(1.d0)), allocatable, intent(in) :: vin(:)
complex(kind(1.d0)), allocatable, intent(out) :: vout(:)
complex(psb_dpk_), allocatable, intent(in) :: vin(:)
complex(psb_dpk_), allocatable, intent(out) :: vout(:)
integer :: info
! ...Local Variables
@@ -344,8 +344,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
complex(kind(1.d0)), allocatable, intent(in) :: vin(:,:)
complex(kind(1.d0)), allocatable, intent(out) :: vout(:,:)
complex(psb_dpk_), allocatable, intent(in) :: vin(:,:)
complex(psb_dpk_), allocatable, intent(out) :: vout(:,:)
integer :: info
! ...Local Variables
@@ -495,8 +495,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
real(kind(1.d0)), intent(in) :: vin(:)
real(kind(1.d0)), allocatable, intent(out) :: vout(:)
real(psb_dpk_), intent(in) :: vin(:)
real(psb_dpk_), allocatable, intent(out) :: vout(:)
integer :: info
! ...Local Variables
@@ -543,8 +543,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
real(kind(1.d0)), intent(in) :: vin(:,:)
real(kind(1.d0)), allocatable, intent(out) :: vout(:,:)
real(psb_dpk_), intent(in) :: vin(:,:)
real(psb_dpk_), allocatable, intent(out) :: vout(:,:)
integer :: info
! ...Local Variables
@@ -594,8 +594,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
complex(kind(1.d0)), intent(in) :: vin(:)
complex(kind(1.d0)), allocatable, intent(out) :: vout(:)
complex(psb_dpk_), intent(in) :: vin(:)
complex(psb_dpk_), allocatable, intent(out) :: vout(:)
integer :: info
! ...Local Variables
@@ -642,8 +642,8 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
complex(kind(1.d0)), intent(in) :: vin(:,:)
complex(kind(1.d0)), allocatable, intent(out) :: vout(:,:)
complex(psb_dpk_), intent(in) :: vin(:,:)
complex(psb_dpk_), allocatable, intent(out) :: vout(:,:)
integer :: info
! ...Local Variables
@@ -719,7 +719,7 @@ Contains
function psb_dsize1d(vin)
integer :: psb_dsize1d
real(kind(1.d0)), allocatable, intent(in) :: vin(:)
real(psb_dpk_), allocatable, intent(in) :: vin(:)
if (.not.allocated(vin)) then
psb_dsize1d = 0
@@ -729,7 +729,7 @@ Contains
end function psb_dsize1d
function psb_dsize2d(vin,dim)
integer :: psb_dsize2d
real(kind(1.d0)), allocatable, intent(in) :: vin(:,:)
real(psb_dpk_), allocatable, intent(in) :: vin(:,:)
integer, optional :: dim
integer :: dim_
@@ -749,7 +749,7 @@ Contains
function psb_zsize1d(vin)
integer :: psb_zsize1d
complex(kind(1.d0)), allocatable, intent(in) :: vin(:)
complex(psb_dpk_), allocatable, intent(in) :: vin(:)
if (.not.allocated(vin)) then
psb_zsize1d = 0
@@ -760,7 +760,7 @@ Contains
function psb_zsize2d(vin,dim)
integer :: psb_zsize2d
complex(kind(1.d0)), allocatable, intent(in) :: vin(:,:)
complex(psb_dpk_), allocatable, intent(in) :: vin(:,:)
integer, optional :: dim
integer :: dim_
@@ -841,10 +841,10 @@ Contains
! ...Subroutine Arguments
Integer,Intent(in) :: len
real(kind(1.d0)),allocatable, intent(inout) :: v(:)
real(psb_dpk_),allocatable, intent(inout) :: v(:)
integer :: info
integer, optional, intent(in) :: addsz,newsz
real(kind(1.d0)), optional, intent(in) :: pad
real(psb_dpk_), optional, intent(in) :: pad
! ...Local Variables
character(len=20) :: name
logical, parameter :: debug=.false.
@@ -900,10 +900,10 @@ Contains
! ...Subroutine Arguments
Integer,Intent(in) :: len
complex(kind(1.d0)),allocatable, intent(inout) :: v(:)
complex(psb_dpk_),allocatable, intent(inout) :: v(:)
integer :: info
integer, optional, intent(in) :: addsz,newsz
complex(kind(1.d0)), optional, intent(in) :: pad
complex(psb_dpk_), optional, intent(in) :: pad
! ...Local Variables
character(len=20) :: name
logical, parameter :: debug=.false.
@@ -1038,13 +1038,13 @@ Contains
! ...Subroutine Arguments
Integer,Intent(in) :: len
Real(kind(1.d0)),allocatable, intent(inout) :: rrax(:)
Real(psb_dpk_),allocatable, intent(inout) :: rrax(:)
integer :: info
real(kind(1.d0)), optional, intent(in) :: pad
real(psb_dpk_), optional, intent(in) :: pad
integer, optional, intent(in) :: lb
! ...Local Variables
Real(kind(1.d0)),allocatable :: tmp(:)
Real(psb_dpk_),allocatable :: tmp(:)
Integer :: dim,err_act,err, lb_, lbi,ub_
character(len=20) :: name
logical, parameter :: debug=.false.
@@ -1061,7 +1061,7 @@ Contains
endif
if ((len<0)) then
err=4025
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='real(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='real(psb_dpk_)')
goto 9999
end if
ub_ = lb_ + len-1
@@ -1073,7 +1073,7 @@ Contains
Allocate(tmp(lb_:ub_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='real(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='real(psb_dpk_)')
goto 9999
end if
tmp(lb_:lb_-1+min(len,dim))=rrax(lbi:lbi-1+min(len,dim))
@@ -1084,7 +1084,7 @@ Contains
Allocate(rrax(lb_:ub_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='real(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='real(psb_dpk_)')
goto 9999
end if
endif
@@ -1113,13 +1113,13 @@ Contains
! ...Subroutine Arguments
Integer,Intent(in) :: len
complex(kind(1.d0)),allocatable, intent(inout):: rrax(:)
complex(psb_dpk_),allocatable, intent(inout):: rrax(:)
integer :: info
complex(kind(1.d0)), optional, intent(in) :: pad
complex(psb_dpk_), optional, intent(in) :: pad
integer, optional, intent(in) :: lb
! ...Local Variables
complex(kind(1.d0)),allocatable :: tmp(:)
complex(psb_dpk_),allocatable :: tmp(:)
Integer :: dim,err_act,err,lb_,ub_,lbi
character(len=20) :: name
logical, parameter :: debug=.false.
@@ -1135,7 +1135,7 @@ Contains
endif
if ((len<0)) then
err=4025
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='complex(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='complex(psb_dpk_)')
goto 9999
end if
ub_ = lb_+len-1
@@ -1147,7 +1147,7 @@ Contains
Allocate(tmp(lb_:ub_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='complex(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='complex(psb_dpk_)')
goto 9999
end if
tmp(lb_:lb_-1+min(len,dim))=rrax(lbi:lbi-1+min(len,dim))
@@ -1158,7 +1158,7 @@ Contains
Allocate(rrax(lb_:ub_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='complex(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len,0,0,0,0/),a_err='complex(psb_dpk_)')
goto 9999
end if
endif
@@ -1187,14 +1187,14 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
Integer,Intent(in) :: len1,len2
Real(kind(1.d0)),allocatable :: rrax(:,:)
Real(psb_dpk_),allocatable :: rrax(:,:)
integer :: info
real(kind(1.d0)), optional, intent(in) :: pad
real(psb_dpk_), optional, intent(in) :: pad
Integer,Intent(in), optional :: lb1,lb2
! ...Local Variables
Real(kind(1.d0)),allocatable :: tmp(:,:)
Real(psb_dpk_),allocatable :: tmp(:,:)
Integer :: dim,err_act,err, dim2,lb1_, lb2_, ub1_, ub2_,&
& lbi1, lbi2
character(len=20) :: name
@@ -1217,12 +1217,12 @@ Contains
if (len1 < 0) then
err=4025
call psb_errpush(err,name,i_err=(/len1,0,0,0,0/),a_err='real(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len1,0,0,0,0/),a_err='real(psb_dpk_)')
goto 9999
end if
if (len2 < 0) then
err=4025
call psb_errpush(err,name,i_err=(/len2,0,0,0,0/),a_err='real(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len2,0,0,0,0/),a_err='real(psb_dpk_)')
goto 9999
end if
@@ -1237,7 +1237,7 @@ Contains
Allocate(tmp(lb1_:ub1_,lb2_:ub2_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='real(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='real(psb_dpk_)')
goto 9999
end if
tmp(lb1_:lb1_-1+min(len1,dim),lb2_:lb2_-1+min(len2,dim2)) = &
@@ -1250,7 +1250,7 @@ Contains
Allocate(rrax(lb1_:ub1_,lb2_:ub2_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='real(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='real(psb_dpk_)')
goto 9999
end if
endif
@@ -1280,14 +1280,14 @@ Contains
use psb_error_mod
! ...Subroutine Arguments
Integer,Intent(in) :: len1,len2
complex(kind(1.d0)),allocatable :: rrax(:,:)
complex(psb_dpk_),allocatable :: rrax(:,:)
integer :: info
complex(kind(1.d0)), optional, intent(in) :: pad
complex(psb_dpk_), optional, intent(in) :: pad
Integer,Intent(in), optional :: lb1,lb2
! ...Local Variables
complex(kind(1.d0)),allocatable :: tmp(:,:)
complex(psb_dpk_),allocatable :: tmp(:,:)
Integer :: dim,err_act,err,dim2,lb1_, lb2_, ub1_, ub2_,&
& lbi1, lbi2
character(len=20) :: name
@@ -1310,12 +1310,12 @@ Contains
if (len1 < 0) then
err=4025
call psb_errpush(err,name,i_err=(/len1,0,0,0,0/),a_err='complex(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len1,0,0,0,0/),a_err='complex(psb_dpk_)')
goto 9999
end if
if (len2 < 0) then
err=4025
call psb_errpush(err,name,i_err=(/len2,0,0,0,0/),a_err='complex(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len2,0,0,0,0/),a_err='complex(psb_dpk_)')
goto 9999
end if
@@ -1330,7 +1330,7 @@ Contains
Allocate(tmp(lb1_:ub1_,lb2_:ub2_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='complex(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='complex(psb_dpk_)')
goto 9999
end if
tmp(lb1_:lb1_-1+min(len1,dim),lb2_:lb2_-1+min(len2,dim2)) = &
@@ -1343,7 +1343,7 @@ Contains
Allocate(rrax(lb1_:ub1_,lb2_:ub2_),stat=info)
if (info /= 0) then
err=4025
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='complex(kind(1.d0))')
call psb_errpush(err,name,i_err=(/len1*len2,0,0,0,0/),a_err='complex(psb_dpk_)')
goto 9999
end if
endif
@@ -1513,7 +1513,7 @@ Contains
! ...Subroutine Arguments
Integer,Intent(in) :: len
Integer,allocatable, intent(inout) :: rrax(:),y(:)
Real(Kind(1.d0)),allocatable, intent(inout) :: z(:)
Real(psb_dpk_),allocatable, intent(inout) :: z(:)
integer :: info
character(len=20) :: name
integer :: err_act, err
@@ -1562,7 +1562,7 @@ Contains
! ...Subroutine Arguments
Integer,Intent(in) :: len
Integer,allocatable, intent(inout) :: rrax(:),y(:)
complex(Kind(1.d0)),allocatable, intent(inout) :: z(:)
complex(psb_dpk_),allocatable, intent(inout) :: z(:)
integer :: info
character(len=20) :: name
integer :: err_act, err
@@ -1606,7 +1606,7 @@ Contains
Subroutine psb_dtransfer1d(vin,vout,info)
use psb_error_mod
real(kind(1.d0)), allocatable, intent(inout) :: vin(:),vout(:)
real(psb_dpk_), allocatable, intent(inout) :: vin(:),vout(:)
integer, intent(out) :: info
!
!
@@ -1646,7 +1646,7 @@ Contains
Subroutine psb_dtransfer2d(vin,vout,info)
use psb_error_mod
real(kind(1.d0)), allocatable, intent(inout) :: vin(:,:),vout(:,:)
real(psb_dpk_), allocatable, intent(inout) :: vin(:,:),vout(:,:)
integer, intent(out) :: info
!
!
@@ -1685,7 +1685,7 @@ Contains
Subroutine psb_ztransfer1d(vin,vout,info)
use psb_error_mod
complex(kind(1.d0)), allocatable, intent(inout) :: vin(:),vout(:)
complex(psb_dpk_), allocatable, intent(inout) :: vin(:),vout(:)
integer, intent(out) :: info
!
!
@@ -1721,7 +1721,7 @@ Contains
Subroutine psb_ztransfer2d(vin,vout,info)
use psb_error_mod
complex(kind(1.d0)), allocatable, intent(inout) :: vin(:,:),vout(:,:)
complex(psb_dpk_), allocatable, intent(inout) :: vin(:,:),vout(:,:)
integer, intent(out) :: info
!
!
+33 -28
View File
@@ -30,6 +30,7 @@
!!$
!!$
module psb_serial_mod
use psb_const_mod
use psb_spmat_type
use psb_string_mod
use psb_sort_mod
@@ -62,14 +63,14 @@ module psb_serial_mod
subroutine psb_dcsrws(rw,a,info,trans)
use psb_spmat_type
type(psb_dspmat_type) :: a
real(kind(1.d0)), allocatable :: rw(:)
real(psb_dpk_), allocatable :: rw(:)
integer :: info
character, optional :: trans
end subroutine psb_dcsrws
subroutine psb_zcsrws(rw,a,info,trans)
use psb_spmat_type
type(psb_zspmat_type) :: a
complex(kind(1.d0)), allocatable :: rw(:)
complex(psb_dpk_), allocatable :: rw(:)
integer :: info
character, optional :: trans
end subroutine psb_zcsrws
@@ -81,34 +82,34 @@ module psb_serial_mod
subroutine psb_dcssm(alpha,t,b,beta,c,info,trans,unitd,d)
use psb_spmat_type
type(psb_dspmat_type) :: t
real(kind(1.d0)) :: alpha, beta, b(:,:), c(:,:)
real(psb_dpk_) :: alpha, beta, b(:,:), c(:,:)
integer :: info
character, optional :: trans, unitd
real(kind(1.d0)), optional, target :: d(:)
real(psb_dpk_), optional, target :: d(:)
end subroutine psb_dcssm
subroutine psb_dcssv(alpha,t,b,beta,c,info,trans,unitd,d)
use psb_spmat_type
type(psb_dspmat_type) :: t
real(kind(1.d0)) :: alpha, beta, b(:), c(:)
real(psb_dpk_) :: alpha, beta, b(:), c(:)
integer :: info
character, optional :: trans, unitd
real(kind(1.d0)), optional, target :: d(:)
real(psb_dpk_), optional, target :: d(:)
end subroutine psb_dcssv
subroutine psb_zcssm(alpha,t,b,beta,c,info,trans,unitd,d)
use psb_spmat_type
type(psb_zspmat_type) :: t
complex(kind(1.d0)) :: alpha, beta, b(:,:), c(:,:)
complex(psb_dpk_) :: alpha, beta, b(:,:), c(:,:)
integer :: info
character, optional :: trans, unitd
complex(kind(1.d0)), optional, target :: d(:)
complex(psb_dpk_), optional, target :: d(:)
end subroutine psb_zcssm
subroutine psb_zcssv(alpha,t,b,beta,c,info,trans,unitd,d)
use psb_spmat_type
type(psb_zspmat_type) :: t
complex(kind(1.d0)) :: alpha, beta, b(:), c(:)
complex(psb_dpk_) :: alpha, beta, b(:), c(:)
integer :: info
character, optional :: trans, unitd
complex(kind(1.d0)), optional, target :: d(:)
complex(psb_dpk_), optional, target :: d(:)
end subroutine psb_zcssv
end interface
@@ -116,28 +117,28 @@ module psb_serial_mod
subroutine psb_dcsmv(alpha,a,b,beta,c,info,trans)
use psb_spmat_type
type(psb_dspmat_type) :: a
real(kind(1.d0)) :: alpha, beta, b(:), c(:)
real(psb_dpk_) :: alpha, beta, b(:), c(:)
integer :: info
character, optional :: trans
end subroutine psb_dcsmv
subroutine psb_dcsmm(alpha,a,b,beta,c,info,trans)
use psb_spmat_type
type(psb_dspmat_type) :: a
real(kind(1.d0)) :: alpha, beta, b(:,:), c(:,:)
real(psb_dpk_) :: alpha, beta, b(:,:), c(:,:)
integer :: info
character, optional :: trans
end subroutine psb_dcsmm
subroutine psb_zcsmv(alpha,a,b,beta,c,info,trans)
use psb_spmat_type
type(psb_zspmat_type) :: a
complex(kind(1.d0)) :: alpha, beta, b(:), c(:)
complex(psb_dpk_) :: alpha, beta, b(:), c(:)
integer :: info
character, optional :: trans
end subroutine psb_zcsmv
subroutine psb_zcsmm(alpha,a,b,beta,c,info,trans)
use psb_spmat_type
type(psb_zspmat_type) :: a
complex(kind(1.d0)) :: alpha, beta, b(:,:), c(:,:)
complex(psb_dpk_) :: alpha, beta, b(:,:), c(:,:)
integer :: info
character, optional :: trans
end subroutine psb_zcsmm
@@ -291,7 +292,7 @@ module psb_serial_mod
use psb_spmat_type
integer, intent(in) :: nz, imin,imax,jmin,jmax
integer, intent(in) :: ia(:),ja(:)
real(kind(1.d0)), intent(in) :: val(:)
real(psb_dpk_), intent(in) :: val(:)
type(psb_dspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, intent(in), optional :: gtl(:)
@@ -301,7 +302,7 @@ module psb_serial_mod
use psb_spmat_type
integer, intent(in) :: nz, imin,imax,jmin,jmax
integer, intent(in) :: ia(:),ja(:)
complex(kind(1.d0)), intent(in) :: val(:)
complex(psb_dpk_), intent(in) :: val(:)
type(psb_zspmat_type), intent(inout) :: a
integer, intent(out) :: info
integer, intent(in), optional :: gtl(:)
@@ -378,13 +379,13 @@ module psb_serial_mod
end interface
interface psb_csnmi
real(kind(1.d0)) function psb_dcsnmi(a,info,trans)
real(psb_dpk_) function psb_dcsnmi(a,info,trans)
use psb_spmat_type
type(psb_dspmat_type), intent(in) :: a
integer, intent(out) :: info
character, optional :: trans
end function psb_dcsnmi
real(kind(1.d0)) function psb_zcsnmi(a,info,trans)
real(psb_dpk_) function psb_zcsnmi(a,info,trans)
use psb_spmat_type
type(psb_zspmat_type), intent(in) :: a
integer, intent(out) :: info
@@ -417,13 +418,13 @@ module psb_serial_mod
subroutine psb_dspgtdiag(a,d,info)
use psb_spmat_type
type(psb_dspmat_type), intent(in) :: a
real(kind(1.d0)), intent(inout) :: d(:)
real(psb_dpk_), intent(inout) :: d(:)
integer, intent(out) :: info
end subroutine psb_dspgtdiag
subroutine psb_zspgtdiag(a,d,info)
use psb_spmat_type
type(psb_zspmat_type), intent(in) :: a
complex(kind(1.d0)), intent(inout) :: d(:)
complex(psb_dpk_), intent(inout) :: d(:)
integer, intent(out) :: info
end subroutine psb_zspgtdiag
end interface
@@ -432,13 +433,13 @@ module psb_serial_mod
subroutine psb_dspscal(a,d,info)
use psb_spmat_type
type(psb_dspmat_type), intent(inout) :: a
real(kind(1.d0)), intent(in) :: d(:)
real(psb_dpk_), intent(in) :: d(:)
integer, intent(out) :: info
end subroutine psb_dspscal
subroutine psb_zspscal(a,d,info)
use psb_spmat_type
type(psb_zspmat_type), intent(inout) :: a
complex(kind(1.d0)), intent(in) :: d(:)
complex(psb_dpk_), intent(in) :: d(:)
integer, intent(out) :: info
end subroutine psb_zspscal
end interface
@@ -478,7 +479,7 @@ module psb_serial_mod
integer, intent(in) :: irw
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
real(kind(1.d0)), allocatable, intent(inout) :: val(:)
real(psb_dpk_), allocatable, intent(inout) :: val(:)
integer,intent(out) :: info
logical, intent(in), optional :: append
integer, intent(in), optional :: iren(:)
@@ -493,7 +494,7 @@ module psb_serial_mod
integer, intent(in) :: irw
integer, intent(out) :: nz
integer, allocatable, intent(inout) :: ia(:), ja(:)
complex(kind(1.d0)), allocatable, intent(inout) :: val(:)
complex(psb_dpk_), allocatable, intent(inout) :: val(:)
integer,intent(out) :: info
logical, intent(in), optional :: append
integer, intent(in), optional :: iren(:)
@@ -522,28 +523,32 @@ module psb_serial_mod
interface psb_gelp
! 2-D version
subroutine psb_dgelp(trans,iperm,x,info)
real(kind(1.d0)), intent(inout) :: x(:,:)
use psb_const_mod
real(psb_dpk_), intent(inout) :: x(:,:)
integer, intent(in) :: iperm(:)
integer, intent(out) :: info
character, intent(in) :: trans
end subroutine psb_dgelp
! 1-D version
subroutine psb_dgelpv(trans,iperm,x,info)
real(kind(1.d0)), intent(inout) :: x(:)
use psb_const_mod
real(psb_dpk_), intent(inout) :: x(:)
integer, intent(in) :: iperm(:)
integer, intent(out) :: info
character, intent(in) :: trans
end subroutine psb_dgelpv
! 2-D version
subroutine psb_zgelp(trans,iperm,x,info)
complex(kind(1.d0)), intent(inout) :: x(:,:)
use psb_const_mod
complex(psb_dpk_), intent(inout) :: x(:,:)
integer, intent(in) :: iperm(:)
integer, intent(out) :: info
character, intent(in) :: trans
end subroutine psb_zgelp
! 1-D version
subroutine psb_zgelpv(trans,iperm,x,info)
complex(kind(1.d0)), intent(inout) :: x(:)
use psb_const_mod
complex(psb_dpk_), intent(inout) :: x(:)
integer, intent(in) :: iperm(:)
integer, intent(out) :: info
character, intent(in) :: trans
+39 -39
View File
@@ -42,7 +42,7 @@
! Addison-Wesley
!
module psb_sort_mod
use psb_const_mod
!
! The up/down constant are defined in pairs having
@@ -66,12 +66,12 @@ module psb_sort_mod
end type psb_int_idx_heap
type psb_double_idx_heap
integer :: last, dir
real(kind(1.d0)), allocatable :: keys(:)
real(psb_dpk_), allocatable :: keys(:)
integer, allocatable :: idxs(:)
end type psb_double_idx_heap
type psb_dcomplex_idx_heap
integer :: last, dir
complex(kind(1.d0)), allocatable :: keys(:)
complex(psb_dpk_), allocatable :: keys(:)
integer, allocatable :: idxs(:)
end type psb_dcomplex_idx_heap
@@ -182,7 +182,7 @@ contains
subroutine dmsort(x,ix,dir,flag)
use psb_error_mod
implicit none
real(kind(1.d0)), intent(inout) :: x(:)
real(psb_dpk_), intent(inout) :: x(:)
integer, optional, intent(in) :: dir, flag
integer, optional, intent(inout) :: ix(:)
@@ -241,7 +241,7 @@ contains
subroutine zamsort(x,ix,dir,flag)
use psb_error_mod
implicit none
complex(kind(1.d0)), intent(inout) :: x(:)
complex(psb_dpk_), intent(inout) :: x(:)
integer, optional, intent(in) :: dir, flag
integer, optional, intent(inout) :: ix(:)
@@ -417,7 +417,7 @@ contains
subroutine dqsort(x,ix,dir,flag)
use psb_error_mod
implicit none
real(kind(1.d0)), intent(inout) :: x(:)
real(psb_dpk_), intent(inout) :: x(:)
integer, optional, intent(in) :: dir, flag
integer, optional, intent(inout) :: ix(:)
@@ -493,7 +493,7 @@ contains
subroutine zqsort(x,ix,dir,flag)
use psb_error_mod
implicit none
complex(kind(1.d0)), intent(inout) :: x(:)
complex(psb_dpk_), intent(inout) :: x(:)
integer, optional, intent(in) :: dir, flag
integer, optional, intent(inout) :: ix(:)
@@ -692,12 +692,12 @@ contains
subroutine dhsort(x,ix,dir,flag)
use psb_error_mod
implicit none
real(kind(1.d0)), intent(inout) :: x(:)
real(psb_dpk_), intent(inout) :: x(:)
integer, optional, intent(in) :: dir, flag
integer, optional, intent(inout) :: ix(:)
integer :: dir_, flag_, n, i, l, err_act,info
real(kind(1.d0)) :: key
real(psb_dpk_) :: key
integer :: index
character(len=20) :: name
@@ -800,12 +800,12 @@ contains
subroutine zhsort(x,ix,dir,flag)
use psb_error_mod
implicit none
complex(kind(1.d0)), intent(inout) :: x(:)
complex(psb_dpk_), intent(inout) :: x(:)
integer, optional, intent(in) :: dir, flag
integer, optional, intent(inout) :: ix(:)
integer :: dir_, flag_, n, i, l, err_act,info
complex(kind(1.d0)) :: key
complex(psb_dpk_) :: key
integer :: index
character(len=20) :: name
@@ -1074,7 +1074,7 @@ contains
use psb_realloc_mod
implicit none
real(kind(1.d0)), intent(in) :: key
real(psb_dpk_), intent(in) :: key
integer, intent(in) :: index
type(psb_double_idx_heap), intent(inout) :: heap
integer, intent(out) :: info
@@ -1106,7 +1106,7 @@ contains
type(psb_double_idx_heap), intent(inout) :: heap
integer, intent(out) :: index,info
real(kind(1.d0)), intent(out) :: key
real(psb_dpk_), intent(out) :: key
info = 0
@@ -1295,7 +1295,7 @@ contains
use psb_realloc_mod
implicit none
complex(kind(1.d0)), intent(in) :: key
complex(psb_dpk_), intent(in) :: key
integer, intent(in) :: index
type(psb_dcomplex_idx_heap), intent(inout) :: heap
integer, intent(out) :: info
@@ -1326,7 +1326,7 @@ contains
type(psb_dcomplex_idx_heap), intent(inout) :: heap
integer, intent(out) :: index,info
complex(kind(1.d0)), intent(out) :: key
complex(psb_dpk_), intent(out) :: key
info = 0
@@ -1582,13 +1582,13 @@ contains
! heap: the heap
! dir: sorting direction
real(kind(1.d0)), intent(in) :: key
real(psb_dpk_), intent(in) :: key
integer, intent(in) :: dir
real(kind(1.d0)), intent(inout) :: heap(:)
real(psb_dpk_), intent(inout) :: heap(:)
integer, intent(inout) :: last
integer, intent(out) :: info
integer :: i, i2
real(kind(1.d0)) :: temp
real(psb_dpk_) :: temp
info = 0
if (last < 0) then
@@ -1680,14 +1680,14 @@ contains
subroutine psi_double_heap_get_first(key,last,heap,dir,info)
implicit none
real(kind(1.d0)), intent(inout) :: key
real(psb_dpk_), intent(inout) :: key
integer, intent(inout) :: last
integer, intent(in) :: dir
real(kind(1.d0)), intent(inout) :: heap(:)
real(psb_dpk_), intent(inout) :: heap(:)
integer, intent(out) :: info
integer :: i, j
real(kind(1.d0)) :: temp
real(psb_dpk_) :: temp
info = 0
@@ -1812,13 +1812,13 @@ contains
! heap: the heap
! dir: sorting direction
complex(kind(1.d0)), intent(in) :: key
complex(psb_dpk_), intent(in) :: key
integer, intent(in) :: dir
complex(kind(1.d0)), intent(inout) :: heap(:)
complex(psb_dpk_), intent(inout) :: heap(:)
integer, intent(inout) :: last
integer, intent(out) :: info
integer :: i, i2
complex(kind(1.d0)) :: temp
complex(psb_dpk_) :: temp
info = 0
if (last < 0) then
@@ -1910,14 +1910,14 @@ contains
subroutine psi_dcomplex_heap_get_first(key,last,heap,dir,info)
implicit none
complex(kind(1.d0)), intent(inout) :: key
complex(psb_dpk_), intent(inout) :: key
integer, intent(inout) :: last
integer, intent(in) :: dir
complex(kind(1.d0)), intent(inout) :: heap(:)
complex(psb_dpk_), intent(inout) :: heap(:)
integer, intent(out) :: info
integer :: i, j
complex(kind(1.d0)) :: temp
complex(psb_dpk_) :: temp
info = 0
@@ -2301,13 +2301,13 @@ contains
! idxs: the indices
! dir: sorting direction
real(kind(1.d0)), intent(in) :: key
real(psb_dpk_), intent(in) :: key
integer, intent(in) :: index,dir
real(kind(1.d0)), intent(inout) :: heap(:)
real(psb_dpk_), intent(inout) :: heap(:)
integer, intent(inout) :: idxs(:),last
integer, intent(out) :: info
integer :: i, i2, itemp
real(kind(1.d0)) :: temp
real(psb_dpk_) :: temp
info = 0
if (last < 0) then
@@ -2413,14 +2413,14 @@ contains
subroutine psi_double_idx_heap_get_first(key,index,last,heap,idxs,dir,info)
implicit none
real(kind(1.d0)), intent(inout) :: heap(:)
real(psb_dpk_), intent(inout) :: heap(:)
integer, intent(out) :: index,info
integer, intent(inout) :: last,idxs(:)
integer, intent(in) :: dir
real(kind(1.d0)), intent(out) :: key
real(psb_dpk_), intent(out) :: key
integer :: i, j,itemp
real(kind(1.d0)) :: temp
real(psb_dpk_) :: temp
info = 0
if (last <= 0) then
@@ -2559,13 +2559,13 @@ contains
! idxs: the indices
! dir: sorting direction
complex(kind(1.d0)), intent(in) :: key
complex(psb_dpk_), intent(in) :: key
integer, intent(in) :: index,dir
complex(kind(1.d0)), intent(inout) :: heap(:)
complex(psb_dpk_), intent(inout) :: heap(:)
integer, intent(inout) :: idxs(:),last
integer, intent(out) :: info
integer :: i, i2, itemp
complex(kind(1.d0)) :: temp
complex(psb_dpk_) :: temp
info = 0
if (last < 0) then
@@ -2671,14 +2671,14 @@ contains
subroutine psi_dcomplex_idx_heap_get_first(key,index,last,heap,idxs,dir,info)
implicit none
complex(kind(1.d0)), intent(inout) :: heap(:)
complex(psb_dpk_), intent(inout) :: heap(:)
integer, intent(out) :: index,info
integer, intent(inout) :: last,idxs(:)
integer, intent(in) :: dir
complex(kind(1.d0)), intent(out) :: key
complex(psb_dpk_), intent(out) :: key
integer :: i, j, itemp
complex(kind(1.d0)) :: temp
complex(psb_dpk_) :: temp
info = 0
if (last <= 0) then
+16 -16
View File
@@ -61,7 +61,7 @@ module psb_spmat_type
!| character(len=5) :: fida ! Storage format: CSR,COO etc.
!| character(len=11) :: descra ! Matrix type: encodes general, triang.
!| integer :: infoa(psb_ifasize_) ! Additional integer info
!| real(kind(1.d0)), allocatable :: aspk(:) ! Coefficients
!| real(psb_dpk_), allocatable :: aspk(:) ! Coefficients
!| integer, allocatable :: ia1(:), ia2(:) ! Row/column indices encoded
!| integer, allocatable :: pl(:), pr(:) ! Row/column permutation
!| end type psb_dspmat_type
@@ -70,7 +70,7 @@ module psb_spmat_type
!| character(len=5) :: fida
!| character(len=11) :: descra
!| integer :: infoa(psb_ifasize_)
!| complex(kind(1.d0)), allocatable :: aspk(:)
!| complex(psb_dpk_), allocatable :: aspk(:)
!| integer, allocatable :: ia1(:), ia2(:)
!| integer, allocatable :: pl(:), pr(:)
!| end type psb_zspmat_type
@@ -126,7 +126,7 @@ module psb_spmat_type
character(len=5) :: fida
character(len=11) :: descra
integer :: infoa(psb_ifasize_)
real(kind(1.d0)), allocatable :: aspk(:)
real(psb_dpk_), allocatable :: aspk(:)
integer, allocatable :: ia1(:), ia2(:)
integer, allocatable :: pl(:), pr(:)
end type psb_dspmat_type
@@ -135,7 +135,7 @@ module psb_spmat_type
character(len=5) :: fida
character(len=11) :: descra
integer :: infoa(psb_ifasize_)
complex(kind(1.d0)), allocatable :: aspk(:)
complex(psb_dpk_), allocatable :: aspk(:)
integer, allocatable :: ia1(:), ia2(:)
integer, allocatable :: pl(:), pr(:)
end type psb_zspmat_type
@@ -809,23 +809,23 @@ contains
!locals
integer :: val
val = 4*size(a%infoa)
val = psb_sizeof_int*size(a%infoa)
if (allocated(a%aspk)) then
val = val + 8 * size(a%aspk)
val = val + psb_sizeof_dp * size(a%aspk)
endif
if (allocated(a%ia1)) then
val = val + 4 * size(a%ia1)
val = val + psb_sizeof_int * size(a%ia1)
endif
if (allocated(a%ia2)) then
val = val + 4 * size(a%ia2)
val = val + psb_sizeof_int * size(a%ia2)
endif
if (allocated(a%pl)) then
val = val + 4 * size(a%pl)
val = val + psb_sizeof_int * size(a%pl)
endif
if (allocated(a%pr)) then
val = val + 4 * size(a%pr)
val = val + psb_sizeof_int * size(a%pr)
endif
@@ -1296,23 +1296,23 @@ contains
!locals
integer :: val
val = 4*size(a%infoa)
val = psb_sizeof_int*size(a%infoa)
if (allocated(a%aspk)) then
val = val + 16 * size(a%aspk)
val = val + 2 * psb_sizeof_dp * size(a%aspk)
endif
if (allocated(a%ia1)) then
val = val + 4 * size(a%ia1)
val = val + psb_sizeof_int * size(a%ia1)
endif
if (allocated(a%ia2)) then
val = val + 4 * size(a%ia2)
val = val + psb_sizeof_int * size(a%ia2)
endif
if (allocated(a%pl)) then
val = val + 4 * size(a%pl)
val = val + psb_sizeof_int * size(a%pl)
endif
if (allocated(a%pr)) then
val = val + 4 * size(a%pr)
val = val + psb_sizeof_int * size(a%pr)
endif
+73 -61
View File
@@ -32,143 +32,155 @@
module psb_spsb_mod
interface
real(kind(1.d0)) function ddot(n,dx,incx,dy,incy)
real(kind(1.d0)) :: dx(*),dy(*),dtemp
real(psb_dpk_) function ddot(n,dx,incx,dy,incy)
use psb_const_mod
real(psb_dpk_) :: dx(*),dy(*),dtemp
integer :: i,incx,incy,ix,iy,m,mp1,n
end function ddot
end interface
end interface
interface
subroutine daxpby(m, n, alpha, X, lldx, beta, Y, lldy, info)
real(kind(1.d0)) :: X(lldx,*), Y(lldy,*)
real(kind(1.d0)) :: alpha, beta
subroutine daxpby(m, n, alpha, X, lldx, beta, Y, lldy, info)
use psb_const_mod
real(psb_dpk_) :: X(lldx,*), Y(lldy,*)
real(psb_dpk_) :: alpha, beta
integer :: n, m, lldx, lldy, info
end subroutine daxpby
end interface
end interface
interface
subroutine dcsmm(trans,m,n,k,alpha,pl,fida,descra,a,ia1,ia2,&
& infoa,pr,b,ldb,beta,c,ldc,work,lwork,ierror)
interface
subroutine dcsmm(trans,m,n,k,alpha,pl,fida,descra,a,ia1,ia2,&
& infoa,pr,b,ldb,beta,c,ldc,work,lwork,ierror)
use psb_const_mod
integer :: m,n,k,ldb,ldc,lwork, ierror
character :: trans
real(kind(1.d0)) :: alpha,beta
real(psb_dpk_) :: alpha,beta
integer :: ia1(*),ia2(*),infoa(*),pl(*),pr(*)
character :: descra*11, fida*5
real(kind(1.d0)) :: a(*),b(ldb,*),c(ldc,*),work(*)
real(psb_dpk_) :: a(*),b(ldb,*),c(ldc,*),work(*)
end subroutine dcsmm
end interface
end interface
interface
real(kind(1.d0)) function dcsnmi(trans,m,n,fida,descra,a,ia1,ia2,&
interface
real(psb_dpk_) function dcsnmi(trans,m,n,fida,descra,a,ia1,ia2,&
& infoa,ierror)
use psb_const_mod
integer :: m,n, ierror
character :: trans
integer :: ia1(*),ia2(*),infoa(*)
character :: descra*11, fida*5
real(kind(1.d0)) :: a(*)
real(psb_dpk_) :: a(*)
end function dcsnmi
end interface
end interface
interface
subroutine dcsrp(trans,m,n,fida,descra,ia1,ia2,infoa,&
& p,work,lwork,ierror)
interface
subroutine dcsrp(trans,m,n,fida,descra,ia1,ia2,infoa,&
& p,work,lwork,ierror)
use psb_const_mod
implicit none
integer :: lwork, m, n, ierror
character :: trans
real(kind(1.d0)) :: work(lwork)
real(psb_dpk_) :: work(lwork)
integer :: ia1(*), ia2(*), infoa(*), p(*), int_val(5)
character :: descra*11, fida*5
end subroutine dcsrp
end interface
end interface
interface
subroutine dcssm(trans,m,n,alpha,unitd,d,&
& pl,fidt,descrt,t,it1,it2,infot,pr,&
& b,ldb,beta,c,ldc,work,lwork,ierror)
real(kind(1.d0)) :: alpha, beta
interface
subroutine dcssm(trans,m,n,alpha,unitd,d,&
& pl,fidt,descrt,t,it1,it2,infot,pr,&
& b,ldb,beta,c,ldc,work,lwork,ierror)
use psb_const_mod
real(psb_dpk_) :: alpha, beta
integer :: n, ldb, ldc, m, lwork, ierror
character :: unitd, trans
real(kind(1.d0)) :: t(*), b(ldb,*), c(ldc,*), d(*), work(*)
real(psb_dpk_) :: t(*), b(ldb,*), c(ldc,*), d(*), work(*)
integer :: it1(*), it2(*), infot(*), pl(*), pr(*)
character :: descrt*11, fidt*5
end subroutine dcssm
end interface
end interface
interface
interface
subroutine dcsupd(m, n, fida, descra, a, ia1,&
& ia2, infoa, ia, ja, fidh, descrh, h, ih1, ih2,&
& infoh, ih, jh, flag, glob_to_loc,&
& iwork, liwork, ierror)
use psb_const_mod
integer :: ia, ja, ih, jh, m, n,&
& ierror, flag, liwork
integer :: ia1(*),ia2(*),ih1(*),ih2(*),&
& infoa(*),infoh(*),iwork(*),&
& glob_to_loc(*)
character :: descra*11,descrh*11, fida*5, fidh*5
real(kind(1.d0)) :: a(*),h(*)
real(psb_dpk_) :: a(*),h(*)
end subroutine dcsupd
end interface
interface
end interface
interface
subroutine dgelp(trans,m,n,p,b,ldb,work,lwork,ierror)
use psb_const_mod
integer :: ldb, m, n, lwork, ierror
character :: trans
real(kind(1.d0)) :: b(ldb,*), work(*)
real(psb_dpk_) :: b(ldb,*), work(*)
integer :: p(*)
end subroutine dgelp
end interface
interface
end interface
interface
subroutine dlpupd(m,n,perm,b,ldb,beta,c,ldc)
use psb_const_mod
integer :: m, n, ldb, ldc
real(kind(1.d0)) :: beta
real(psb_dpk_) :: beta
integer :: perm(*)
real(kind(1.d0)) :: b(ldb,*), c(ldc,*)
real(psb_dpk_) :: b(ldb,*), c(ldc,*)
end subroutine dlpupd
end interface
interface
subroutine dswmm(trans,m,n,k,alpha,fida,descra,a,ia1,ia2,&
& infoa,b,ldb,beta,c,ldc,work,lwork,ierror)
end interface
interface
subroutine dswmm(trans,m,n,k,alpha,fida,descra,a,ia1,ia2,&
& infoa,b,ldb,beta,c,ldc,work,lwork,ierror)
use psb_const_mod
integer :: m,n,k,ldb,ldc,lwork,ierror
character :: trans
real(kind(1.d0)) :: alpha,beta
real(psb_dpk_) :: alpha,beta
integer :: ia1(*),ia2(*),infoa(*), int_val(5)
character :: descra*11, fida*5
real(kind(1.d0)) :: a(*),b(ldb,*),c(ldc,*),work(*)
real(psb_dpk_) :: a(*),b(ldb,*),c(ldc,*),work(*)
end subroutine dswmm
end interface
end interface
interface
interface
subroutine dswprt(m,n,fida,descra,a,ia1,ia2,infoa,title,&
& iout,ierror)
use psb_const_mod
integer :: m,n,iout,ierror
integer :: ia1(*),ia2(*),infoa(*)
character :: descra*11, fida*5, title*(*)
end subroutine dswprt
end interface
interface
subroutine dswsm(trans,m,n,alpha,unitd,d,fidt,descrt,t,it1,it2,&
& infot,b,ldb,beta,c,ldc,work,lwork,ierror)
end interface
interface
subroutine dswsm(trans,m,n,alpha,unitd,d,fidt,descrt,t,it1,it2,&
& infot,b,ldb,beta,c,ldc,work,lwork,ierror)
use psb_const_mod
integer :: m, n, ldb, ldc, lwork, ierror
character :: unitd, trans
real(kind(1.d0)) :: alpha, beta
real(psb_dpk_) :: alpha, beta
integer :: it1(*), it2(*), infot(*)
character :: descrt*11, fidt*5
real(kind(1.d0)) :: t(*), b(ldb,*), c(ldc,*), d(*), work(*)
real(psb_dpk_) :: t(*), b(ldb,*), c(ldc,*), d(*), work(*)
end subroutine dswsm
end interface
end interface
interface
subroutine symbmm (n, m, l, ia, ja, diaga, ib,&
& jb, diagb, ic, jc, diagc, index)
interface
subroutine symbmm (n, m, l, ia, ja, diaga, ib,&
& jb, diagb, ic, jc, diagc, index)
integer :: ia(*), ja(*), diaga, ib(*),&
& jb(*), diagb, diagc, index(*)
integer, pointer :: ic(:),jc(:)
integer :: nze, info
end subroutine symbmm
end interface
end interface
end module psb_spsb_mod
+22 -22
View File
@@ -38,7 +38,7 @@ Module psb_tools_mod
subroutine psb_dalloc(x, desc_a, info, n, lb)
use psb_descriptor_type
implicit none
real(kind(1.d0)), allocatable, intent(out) :: x(:,:)
real(psb_dpk_), allocatable, intent(out) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer,intent(out) :: info
integer, optional, intent(in) :: n, lb
@@ -46,7 +46,7 @@ Module psb_tools_mod
! 1-D double precision version
subroutine psb_dallocv(x, desc_a,info,n)
use psb_descriptor_type
real(kind(1.d0)), allocatable, intent(out) :: x(:)
real(psb_dpk_), allocatable, intent(out) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer,intent(out) :: info
integer, optional, intent(in) :: n
@@ -70,7 +70,7 @@ Module psb_tools_mod
subroutine psb_zalloc(x, desc_a, info, n, lb)
use psb_descriptor_type
implicit none
complex(kind(1.d0)), allocatable, intent(out) :: x(:,:)
complex(psb_dpk_), allocatable, intent(out) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer :: info
integer, optional, intent(in) :: n, lb
@@ -78,7 +78,7 @@ Module psb_tools_mod
! 1-D double complex version
subroutine psb_zallocv(x, desc_a,info,n)
use psb_descriptor_type
complex(kind(1.d0)), allocatable, intent(out) :: x(:)
complex(psb_dpk_), allocatable, intent(out) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer :: info
integer, optional, intent(in) :: n
@@ -91,14 +91,14 @@ Module psb_tools_mod
subroutine psb_dasb(x, desc_a, info)
use psb_descriptor_type
type(psb_desc_type), intent(in) :: desc_a
real(kind(1.d0)), allocatable, intent(inout) :: x(:,:)
real(psb_dpk_), allocatable, intent(inout) :: x(:,:)
integer, intent(out) :: info
end subroutine psb_dasb
! 1-D double precision version
subroutine psb_dasbv(x, desc_a, info)
use psb_descriptor_type
type(psb_desc_type), intent(in) :: desc_a
real(kind(1.d0)), allocatable, intent(inout) :: x(:)
real(psb_dpk_), allocatable, intent(inout) :: x(:)
integer, intent(out) :: info
end subroutine psb_dasbv
! 2-D integer version
@@ -119,14 +119,14 @@ Module psb_tools_mod
subroutine psb_zasb(x, desc_a, info)
use psb_descriptor_type
type(psb_desc_type), intent(in) :: desc_a
complex(kind(1.d0)), allocatable, intent(inout) :: x(:,:)
complex(psb_dpk_), allocatable, intent(inout) :: x(:,:)
integer, intent(out) :: info
end subroutine psb_zasb
! 1-D double precision version
subroutine psb_zasbv(x, desc_a, info)
use psb_descriptor_type
type(psb_desc_type), intent(in) :: desc_a
complex(kind(1.d0)), allocatable, intent(inout) :: x(:)
complex(psb_dpk_), allocatable, intent(inout) :: x(:)
integer, intent(out) :: info
end subroutine psb_zasbv
end interface
@@ -175,14 +175,14 @@ Module psb_tools_mod
! 2-D double precision version
subroutine psb_dfree(x, desc_a, info)
use psb_descriptor_type
real(kind(1.d0)),allocatable, intent(inout) :: x(:,:)
real(psb_dpk_),allocatable, intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer :: info
end subroutine psb_dfree
! 1-D double precision version
subroutine psb_dfreev(x, desc_a, info)
use psb_descriptor_type
real(kind(1.d0)),allocatable, intent(inout) :: x(:)
real(psb_dpk_),allocatable, intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer :: info
end subroutine psb_dfreev
@@ -203,14 +203,14 @@ Module psb_tools_mod
! 2-D double precision version
subroutine psb_zfree(x, desc_a, info)
use psb_descriptor_type
complex(kind(1.d0)),allocatable, intent(inout) :: x(:,:)
complex(psb_dpk_),allocatable, intent(inout) :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer :: info
end subroutine psb_zfree
! 1-D double precision version
subroutine psb_zfreev(x, desc_a, info)
use psb_descriptor_type
complex(kind(1.d0)),allocatable, intent(inout) :: x(:)
complex(psb_dpk_),allocatable, intent(inout) :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer :: info
end subroutine psb_zfreev
@@ -223,9 +223,9 @@ Module psb_tools_mod
use psb_descriptor_type
integer, intent(in) :: m
type(psb_desc_type), intent(in) :: desc_a
real(kind(1.d0)),intent(inout) :: x(:,:)
real(psb_dpk_),intent(inout) :: x(:,:)
integer, intent(in) :: irw(:)
real(kind(1.d0)), intent(in) :: val(:,:)
real(psb_dpk_), intent(in) :: val(:,:)
integer, intent(out) :: info
integer, optional, intent(in) :: dupl
end subroutine psb_dinsi
@@ -234,9 +234,9 @@ Module psb_tools_mod
use psb_descriptor_type
integer, intent(in) :: m
type(psb_desc_type), intent(in) :: desc_a
real(kind(1.d0)),intent(inout) :: x(:)
real(psb_dpk_),intent(inout) :: x(:)
integer, intent(in) :: irw(:)
real(kind(1.d0)), intent(in) :: val(:)
real(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
integer, optional, intent(in) :: dupl
end subroutine psb_dinsvi
@@ -267,9 +267,9 @@ Module psb_tools_mod
use psb_descriptor_type
integer, intent(in) :: m
type(psb_desc_type), intent(in) :: desc_a
complex(kind(1.d0)),intent(inout) :: x(:,:)
complex(psb_dpk_),intent(inout) :: x(:,:)
integer, intent(in) :: irw(:)
complex(kind(1.d0)), intent(in) :: val(:,:)
complex(psb_dpk_), intent(in) :: val(:,:)
integer, intent(out) :: info
integer, optional, intent(in) :: dupl
end subroutine psb_zinsi
@@ -278,9 +278,9 @@ Module psb_tools_mod
use psb_descriptor_type
integer, intent(in) :: m
type(psb_desc_type), intent(in) :: desc_a
complex(kind(1.d0)),intent(inout) :: x(:)
complex(psb_dpk_),intent(inout) :: x(:)
integer, intent(in) :: irw(:)
complex(kind(1.d0)), intent(in) :: val(:)
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
integer, optional, intent(in) :: dupl
end subroutine psb_zinsvi
@@ -426,7 +426,7 @@ Module psb_tools_mod
type(psb_desc_type), intent(inout) :: desc_a
type(psb_dspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
real(kind(1.d0)), intent(in) :: val(:)
real(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
logical, intent(in), optional :: rebuild
end subroutine psb_dspins
@@ -446,7 +446,7 @@ Module psb_tools_mod
type(psb_desc_type), intent(inout) :: desc_a
type(psb_zspmat_type), intent(inout) :: a
integer, intent(in) :: nz,ia(:),ja(:)
complex(kind(1.d0)), intent(in) :: val(:)
complex(psb_dpk_), intent(in) :: val(:)
integer, intent(out) :: info
logical, intent(in), optional :: rebuild
end subroutine psb_zspins
+72 -60
View File
@@ -100,8 +100,8 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag, n
integer, intent(out) :: info
real(kind(1.d0)) :: y(:,:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:,:), beta
real(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_dswapdatam
@@ -109,23 +109,25 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag
integer, intent(out) :: info
real(kind(1.d0)) :: y(:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:), beta
real(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_dswapdatav
subroutine psi_dswapidxm(ictxt,icomm,flag,n,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag, n
integer, intent(out) :: info
real(kind(1.d0)) :: y(:,:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:,:), beta
real(psb_dpk_),target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_dswapidxm
subroutine psi_dswapidxv(ictxt,icomm,flag,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag
integer, intent(out) :: info
real(kind(1.d0)) :: y(:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:), beta
real(psb_dpk_),target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_dswapidxv
subroutine psi_iswapdatam(flag,n,beta,y,desc_a,work,info,data)
@@ -147,6 +149,7 @@ module psi_mod
integer, optional :: data
end subroutine psi_iswapdatav
subroutine psi_iswapidxm(ictxt,icomm,flag,n,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag, n
integer, intent(out) :: info
integer :: y(:,:), beta
@@ -154,6 +157,7 @@ module psi_mod
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_iswapidxm
subroutine psi_iswapidxv(ictxt,icomm,flag,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag
integer, intent(out) :: info
integer :: y(:), beta
@@ -164,8 +168,8 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag, n
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:,:), beta
complex(kind(1.d0)),target :: work(:)
complex(psb_dpk_) :: y(:,:), beta
complex(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_zswapdatam
@@ -173,23 +177,25 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:), beta
complex(kind(1.d0)),target :: work(:)
complex(psb_dpk_) :: y(:), beta
complex(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_zswapdatav
subroutine psi_zswapidxm(ictxt,icomm,flag,n,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag, n
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:,:), beta
complex(kind(1.d0)),target :: work(:)
complex(psb_dpk_) :: y(:,:), beta
complex(psb_dpk_),target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_zswapidxm
subroutine psi_zswapidxv(ictxt,icomm,flag,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:), beta
complex(kind(1.d0)),target :: work(:)
complex(psb_dpk_) :: y(:), beta
complex(psb_dpk_),target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_zswapidxv
end interface
@@ -200,8 +206,8 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag, n
integer, intent(out) :: info
real(kind(1.d0)) :: y(:,:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:,:), beta
real(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_dswaptranm
@@ -209,23 +215,25 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag
integer, intent(out) :: info
real(kind(1.d0)) :: y(:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:), beta
real(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_dswaptranv
subroutine psi_dtranidxm(ictxt,icomm,flag,n,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag, n
integer, intent(out) :: info
real(kind(1.d0)) :: y(:,:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:,:), beta
real(psb_dpk_),target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_dtranidxm
subroutine psi_dtranidxv(ictxt,icomm,flag,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag
integer, intent(out) :: info
real(kind(1.d0)) :: y(:), beta
real(kind(1.d0)),target :: work(:)
real(psb_dpk_) :: y(:), beta
real(psb_dpk_),target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_dtranidxv
subroutine psi_iswaptranm(flag,n,beta,y,desc_a,work,info,data)
@@ -247,6 +255,7 @@ module psi_mod
integer, optional :: data
end subroutine psi_iswaptranv
subroutine psi_itranidxm(ictxt,icomm,flag,n,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag, n
integer, intent(out) :: info
integer :: y(:,:), beta
@@ -254,6 +263,7 @@ module psi_mod
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_itranidxm
subroutine psi_itranidxv(ictxt,icomm,flag,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag
integer, intent(out) :: info
integer :: y(:), beta
@@ -264,8 +274,8 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag, n
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:,:), beta
complex(kind(1.d0)),target :: work(:)
complex(psb_dpk_) :: y(:,:), beta
complex(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_zswaptranm
@@ -273,23 +283,25 @@ module psi_mod
use psb_descriptor_type
integer, intent(in) :: flag
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:), beta
complex(kind(1.d0)),target :: work(:)
complex(psb_dpk_) :: y(:), beta
complex(psb_dpk_),target :: work(:)
type(psb_desc_type), target :: desc_a
integer, optional :: data
end subroutine psi_zswaptranv
subroutine psi_ztranidxm(ictxt,icomm,flag,n,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag, n
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:,:), beta
complex(kind(1.d0)), target :: work(:)
complex(psb_dpk_) :: y(:,:), beta
complex(psb_dpk_), target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_ztranidxm
subroutine psi_ztranidxv(ictxt,icomm,flag,beta,y,idx,totxch,totsnd,totrcv,work,info)
use psb_const_mod
integer, intent(in) :: ictxt,icomm,flag
integer, intent(out) :: info
complex(kind(1.d0)) :: y(:), beta
complex(kind(1.d0)), target :: work(:)
complex(psb_dpk_) :: y(:), beta
complex(psb_dpk_), target :: work(:)
integer, intent(in) :: idx(:),totxch,totsnd,totrcv
end subroutine psi_ztranidxv
end interface
@@ -678,7 +690,7 @@ contains
use psb_penv_mod
implicit none
real(kind(1.d0)), intent(inout), target :: x(:)
real(psb_dpk_), intent(inout), target :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(in) :: update
integer, intent(out) :: info
@@ -750,7 +762,7 @@ contains
use psb_penv_mod
implicit none
real(kind(1.d0)), intent(inout), target :: x(:,:)
real(psb_dpk_), intent(inout), target :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(in) :: update
integer, intent(out) :: info
@@ -821,7 +833,7 @@ contains
use psb_penv_mod
implicit none
complex(kind(1.d0)), intent(inout), target :: x(:)
complex(psb_dpk_), intent(inout), target :: x(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(in) :: update
integer, intent(out) :: info
@@ -893,7 +905,7 @@ contains
use psb_penv_mod
implicit none
complex(kind(1.d0)), intent(inout), target :: x(:,:)
complex(psb_dpk_), intent(inout), target :: x(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(in) :: update
integer, intent(out) :: info
@@ -1112,8 +1124,8 @@ contains
use psb_penv_mod
implicit none
real(kind(1.d0)), intent(inout) :: x(:)
real(kind(1.d0)), allocatable :: xs(:)
real(psb_dpk_), intent(inout) :: x(:)
real(psb_dpk_), allocatable :: xs(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1166,8 +1178,8 @@ contains
use psb_penv_mod
implicit none
real(kind(1.d0)), intent(inout) :: x(:)
real(kind(1.d0)) :: xs(:)
real(psb_dpk_), intent(inout) :: x(:)
real(psb_dpk_) :: xs(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1216,8 +1228,8 @@ contains
use psb_penv_mod
implicit none
real(kind(1.d0)), intent(inout) :: x(:,:)
real(kind(1.d0)), allocatable :: xs(:,:)
real(psb_dpk_), intent(inout) :: x(:,:)
real(psb_dpk_), allocatable :: xs(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1271,8 +1283,8 @@ contains
use psb_penv_mod
implicit none
real(kind(1.d0)), intent(inout) :: x(:,:)
real(kind(1.d0)) :: xs(:,:)
real(psb_dpk_), intent(inout) :: x(:,:)
real(psb_dpk_) :: xs(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1329,8 +1341,8 @@ contains
use psb_penv_mod
implicit none
complex(kind(1.d0)), intent(inout) :: x(:)
complex(kind(1.d0)), allocatable :: xs(:)
complex(psb_dpk_), intent(inout) :: x(:)
complex(psb_dpk_), allocatable :: xs(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1383,8 +1395,8 @@ contains
use psb_penv_mod
implicit none
complex(kind(1.d0)), intent(inout) :: x(:)
complex(kind(1.d0)) :: xs(:)
complex(psb_dpk_), intent(inout) :: x(:)
complex(psb_dpk_) :: xs(:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1433,8 +1445,8 @@ contains
use psb_penv_mod
implicit none
complex(kind(1.d0)), intent(inout) :: x(:,:)
complex(kind(1.d0)), allocatable :: xs(:,:)
complex(psb_dpk_), intent(inout) :: x(:,:)
complex(psb_dpk_), allocatable :: xs(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1488,8 +1500,8 @@ contains
use psb_penv_mod
implicit none
complex(kind(1.d0)), intent(inout) :: x(:,:)
complex(kind(1.d0)) :: xs(:,:)
complex(psb_dpk_), intent(inout) :: x(:,:)
complex(psb_dpk_) :: xs(:,:)
type(psb_desc_type), intent(in) :: desc_a
integer, intent(out) :: info
@@ -1759,7 +1771,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, k, idx(:)
!!$ real(kind(1.d0)) :: x(:,:), y(:)
!!$ real(psb_dpk_) :: x(:,:), y(:)
!!$
!!$ ! Locals
!!$ integer :: i, j, pt
@@ -1780,7 +1792,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, idx(:)
!!$ real(kind(1.d0)) :: x(:), y(:)
!!$ real(psb_dpk_) :: x(:), y(:)
!!$
!!$ ! Locals
!!$ integer :: i
@@ -1798,7 +1810,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, k, idx(:)
!!$ real(kind(1.d0)) :: beta, x(:), y(:,:)
!!$ real(psb_dpk_) :: beta, x(:), y(:,:)
!!$
!!$ ! Locals
!!$ integer :: i, j, pt
@@ -1836,7 +1848,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, idx(:)
!!$ real(kind(1.d0)) :: beta, x(:), y(:)
!!$ real(psb_dpk_) :: beta, x(:), y(:)
!!$
!!$ ! Locals
!!$ integer :: i
@@ -1969,7 +1981,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, k, idx(:)
!!$ complex(kind(1.d0)) :: x(:,:), y(:)
!!$ complex(psb_dpk_) :: x(:,:), y(:)
!!$
!!$ ! Locals
!!$ integer :: i, j, pt
@@ -1991,7 +2003,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, idx(:)
!!$ complex(kind(1.d0)) :: x(:), y(:)
!!$ complex(psb_dpk_) :: x(:), y(:)
!!$
!!$ ! Locals
!!$ integer :: i
@@ -2008,7 +2020,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, k, idx(:)
!!$ complex(kind(1.d0)) :: beta, x(:), y(:,:)
!!$ complex(psb_dpk_) :: beta, x(:), y(:,:)
!!$
!!$ ! Locals
!!$ integer :: i, j, pt
@@ -2047,7 +2059,7 @@ contains
!!$ implicit none
!!$
!!$ integer :: n, idx(:)
!!$ complex(kind(1.d0)) :: beta, x(:), y(:)
!!$ complex(psb_dpk_) :: beta, x(:), y(:)
!!$
!!$ ! Locals
!!$ integer :: i
+10 -10
View File
@@ -105,7 +105,7 @@ contains
implicit none
integer :: n, idx(:)
real(kind(1.d0)) :: x(:), y(:), alpha, beta
real(psb_dpk_) :: x(:), y(:), alpha, beta
! Locals
integer :: i
@@ -155,7 +155,7 @@ contains
implicit none
integer :: n, idx(:)
complex(kind(1.d0)) :: x(:), y(:),alpha,beta
complex(psb_dpk_) :: x(:), y(:),alpha,beta
! Locals
integer :: i
@@ -208,7 +208,7 @@ contains
implicit none
integer :: n, k, idx(:)
real(kind(1.d0)) :: x(:,:), y(:)
real(psb_dpk_) :: x(:,:), y(:)
! Locals
integer :: i, j, pt
@@ -252,7 +252,7 @@ contains
implicit none
integer :: n, k, idx(:)
complex(kind(1.d0)) :: x(:,:), y(:)
complex(psb_dpk_) :: x(:,:), y(:)
! Locals
integer :: i, j, pt
@@ -273,7 +273,7 @@ contains
implicit none
integer :: n, idx(:)
real(kind(1.d0)) :: x(:), y(:)
real(psb_dpk_) :: x(:), y(:)
! Locals
integer :: i
@@ -307,7 +307,7 @@ contains
implicit none
integer :: n, idx(:)
complex(kind(1.d0)) :: x(:), y(:)
complex(psb_dpk_) :: x(:), y(:)
! Locals
integer :: i
@@ -325,7 +325,7 @@ contains
implicit none
integer :: n, k, idx(:)
real(kind(1.d0)) :: beta, x(:), y(:,:)
real(psb_dpk_) :: beta, x(:), y(:,:)
! Locals
integer :: i, j, pt
@@ -363,7 +363,7 @@ contains
implicit none
integer :: n, idx(:)
real(kind(1.d0)) :: beta, x(:), y(:)
real(psb_dpk_) :: beta, x(:), y(:)
! Locals
integer :: i
@@ -456,7 +456,7 @@ contains
implicit none
integer :: n, k, idx(:)
complex(kind(1.d0)) :: beta, x(:), y(:,:)
complex(psb_dpk_) :: beta, x(:), y(:,:)
! Locals
integer :: i, j, pt
@@ -495,7 +495,7 @@ contains
implicit none
integer :: n, idx(:)
complex(kind(1.d0)) :: beta, x(:), y(:)
complex(psb_dpk_) :: beta, x(:), y(:)
! Locals
integer :: i