base/Makefile
 base/modules/Makefile
 base/modules/psb_psblas_mod.f90
 base/modules/psb_tools_mod.f90
 base/newserial/Makefile
 base/newserial/README
 base/newserial/psbn_base_mat_mod.f03
 base/newserial/psbn_d_base_mat_mod.f03
 base/newserial/psbn_d_coo_impl.f03
 base/newserial/psbn_d_csr_impl.f03
 base/newserial/psbn_d_csr_mat_mod.f03
 base/newserial/psbn_mat_mod.f03
 base/psblas/psb_dnrmi.f90
 base/psblas/psb_dspmm.f90
 base/tools/psb_dspalloc.f90
 base/tools/psb_dspasb.f90
 base/tools/psb_dspfree.f90
 base/tools/psb_dspins.f90
 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
 prec/psb_dprecbld.f90
 prec/psb_dprecinit.f90
 prec/psb_dprecset.f90
 prec/psb_prec_mod.f90
 test/pargen/ppde.f90
 test/pargen/runs/ppde.inp
 test/serial/d_coo_matgen.f03
 test/serial/d_matgen.f03
 test/serial/psbn_d_cxx_mat_mod.f03


Minimal set of changes to run BICGSTAB in serial mode with NONE as a
preconditioner. It does now!
This commit is contained in:
Salvatore Filippone
2009-09-11 16:18:41 +00:00
parent 434085380d
commit 9bfb2980e3
34 changed files with 170 additions and 107 deletions
+17 -11
View File
@@ -65,6 +65,7 @@ program ppde
use psb_base_mod
use psb_prec_mod
use psb_krylov_mod
use psbn_d_mat_mod
implicit none
! input parameters
@@ -77,7 +78,8 @@ program ppde
real(psb_dpk_) :: t1, t2, tprec
! sparse matrix and preconditioner
type(psb_dspmat_type) :: a
type(psbn_d_sparse_mat) :: a
!!$ type(psb_dspmat_type) :: a
type(psb_dprec_type) :: prec
! descriptor
type(psb_desc_type) :: desc_a
@@ -176,7 +178,8 @@ program ppde
t2 = psb_wtime() - t1
call psb_amx(ictxt,t2)
amatsize = psb_sizeof(a)
!!$ amatsize = psb_sizeof(a)
amatsize = 0
descsize = psb_sizeof(desc_a)
precsize = psb_sizeof(prec)
call psb_sum(ictxt,amatsize)
@@ -343,14 +346,15 @@ contains
! Note that if a1=a2=a3=a4=0., the PDE is the well-known Laplace equation.
!
use psb_base_mod
use psbn_d_mat_mod
implicit none
integer :: idim
integer, parameter :: nb=20
real(psb_dpk_), allocatable :: b(:),xv(:)
type(psb_desc_type) :: desc_a
integer :: ictxt, info
character :: afmt*5
type(psb_dspmat_type) :: a
integer :: idim
integer, parameter :: nb=20
real(psb_dpk_), allocatable :: b(:),xv(:)
type(psb_desc_type) :: desc_a
integer :: ictxt, info
character :: afmt*5
type(psbn_d_sparse_mat) :: a
real(psb_dpk_) :: zt(nb),glob_x,glob_y,glob_z
integer :: m,n,nnz,glob_row,nlr,i,ii,ib,k
integer :: x,y,z,ia,indx_owner
@@ -359,6 +363,7 @@ contains
integer, allocatable :: irow(:),icol(:),myidx(:)
real(psb_dpk_), allocatable :: val(:)
! deltah dimension of each grid cell
! deltat discretization time
real(psb_dpk_) :: deltah
real(psb_dpk_),parameter :: rhs=0.d0,one=1.d0,zero=0.d0
@@ -367,7 +372,7 @@ contains
external :: a1, a2, a3, a4, b1, b2, b3
integer :: err_act
character(len=20) :: name, ch_err
character(len=20) :: name, ch_err,tmpfmt
info = 0
name = 'create_matrix'
@@ -612,8 +617,9 @@ contains
call psb_amx(ictxt,tasb)
call psb_amx(ictxt,ttot)
if(iam == psb_root_) then
tmpfmt = a%get_fmt()
write(*,'("The matrix has been generated and assembled in ",a3," format.")')&
& a%fida(1:3)
& tmpfmt
write(*,'("-allocation time : ",es12.5)') talc
write(*,'("-coeff. gen. time : ",es12.5)') tgen
write(*,'("-assembly time : ",es12.5)') tasb
+6 -4
View File
@@ -1,9 +1,11 @@
7 Number of entries below this
BICGSTAB Iterative method BICGSTAB CGS BICG BICGSTABL RGMRES
BJAC Preconditioner NONE DIAG BJAC
NONE Preconditioner NONE DIAG BJAC
CSR Storage format for matrix A: CSR COO JAD
060 Domain size (acutal system is this**3)
050 Domain size (acutal system is this**3)
1 Stopping criterion
200 MAXIT
-1 ITRACE
1000 MAXIT
040 ITRACE
20 IRST restart for RGMRES and BiCGSTABL
+1 -1
View File
@@ -357,7 +357,7 @@ contains
endif
end do
call acoo%csput(element-1,val,irow,icol,1,nr,1,nr,info)
call acoo%csput(element-1,irow,icol,val,1,nr,1,nr,info)
end do
+1 -1
View File
@@ -357,7 +357,7 @@ contains
endif
end do
call a_n%csput(element-1,val,irow,icol,1,nr,1,nr,info)
call a_n%csput(element-1,irow,icol,val,1,nr,1,nr,info)
end do
+1 -1
View File
@@ -129,7 +129,7 @@ module psbn_d_cxx_mat_mod
end interface
interface
subroutine d_cxx_csput_impl(nz,val,ia,ja,a,imin,imax,jmin,jmax,info,gtl)
subroutine d_cxx_csput_impl(nz,ia,ja,val,a,imin,imax,jmin,jmax,info,gtl)
use psb_const_mod
import psbn_d_cxx_sparse_mat
class(psbn_d_cxx_sparse_mat), intent(inout) :: a