mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-16 02:49:03 +00:00
psblas3:
base/modules/psb_base_mat_mod.f90 krylov/psb_cbicg.f90 krylov/psb_ccg.f90 krylov/psb_ccgs.f90 krylov/psb_ccgstab.f90 krylov/psb_ccgstabl.f90 krylov/psb_ckrylov.f90 krylov/psb_crgmres.f90 krylov/psb_dbicg.f90 krylov/psb_dcg.F90 krylov/psb_dcgs.f90 krylov/psb_dcgstab.F90 krylov/psb_dcgstabl.f90 krylov/psb_dkrylov.f90 krylov/psb_drgmres.f90 krylov/psb_sbicg.f90 krylov/psb_scg.F90 krylov/psb_scgs.f90 krylov/psb_scgstab.F90 krylov/psb_scgstabl.f90 krylov/psb_skrylov.f90 krylov/psb_srgmres.f90 krylov/psb_zbicg.f90 krylov/psb_zcg.F90 krylov/psb_zcgs.f90 krylov/psb_zcgstab.f90 krylov/psb_zcgstabl.f90 krylov/psb_zkrylov.f90 krylov/psb_zrgmres.f90 opt/psb_c_rsb_mat_mod.F90 opt/psb_s_rsb_mat_mod.F90 opt/psb_z_rsb_mat_mod.F90 util/psb_hbio_impl.f90 Fixes in comments to Krylov methods.
This commit is contained in:
@@ -37,6 +37,7 @@
|
||||
! type variants, such as number of rows and columns, whether the
|
||||
! matrix is supposed to be triangular (upper or lower) and with a unit
|
||||
! (i.e. assumed) diagonal, together with some state variables. This
|
||||
|
||||
! base class is in common among all variants of real/complex,
|
||||
! short/long precision; as such, it only contains information that is
|
||||
! inherently integer in nature.
|
||||
|
||||
@@ -85,10 +85,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -87,10 +87,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -85,10 +85,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -86,10 +86,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -93,10 +93,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration
|
||||
! is stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter L
|
||||
|
||||
@@ -74,8 +74,8 @@
|
||||
! BICGSTAB(L) methods
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|
|
||||
! 2: err = |r|/(|a||x|+|b|)
|
||||
! 1: err = |r|/(|a||x|+|b|)
|
||||
! 2: err = |r|/|b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual
|
||||
!
|
||||
|
||||
@@ -97,10 +97,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter
|
||||
|
||||
@@ -86,10 +86,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -87,10 +87,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -86,10 +86,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -85,10 +85,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -93,10 +93,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter L
|
||||
|
||||
@@ -71,8 +71,8 @@
|
||||
! BICGSTAB(L) methods
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|
|
||||
! 2: err = |r|/(|a||x|+|b|)
|
||||
! 1: err = |r|/(|a||x|+|b|)
|
||||
! 2: err = |r|/|b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual
|
||||
!
|
||||
|
||||
@@ -97,10 +97,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter
|
||||
|
||||
@@ -86,10 +86,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -87,10 +87,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -86,10 +86,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -85,10 +85,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -93,10 +93,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter L
|
||||
|
||||
@@ -70,8 +70,8 @@
|
||||
! BICGSTAB(L) methods
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|
|
||||
! 2: err = |r|/(|a||x|+|b|)
|
||||
! 1: err = |r|/(|a||x|+|b|)
|
||||
! 2: err = |r|/|b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual
|
||||
!
|
||||
|
||||
@@ -97,10 +97,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter
|
||||
|
||||
@@ -85,10 +85,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -87,10 +87,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
+3
-3
@@ -85,10 +85,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -86,10 +86,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
!
|
||||
|
||||
@@ -93,10 +93,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration
|
||||
! is stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter L
|
||||
|
||||
@@ -72,8 +72,8 @@
|
||||
! BICGSTAB(L) methods
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|
|
||||
! 2: err = |r|/(|a||x|+|b|)
|
||||
! 1: err = |r|/(|a||x|+|b|)
|
||||
! 2: err = |r|/|b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual
|
||||
!
|
||||
|
||||
@@ -97,10 +97,10 @@
|
||||
! iterations
|
||||
! istop - integer(optional) Input: stopping criterion, or how
|
||||
! to estimate the error.
|
||||
! 1: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! 2: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! 1: err = |r|/(|a||x|+|b|); here the iteration is
|
||||
! stopped when |r| <= eps * (|a||x|+|b|)
|
||||
! 2: err = |r|/|b|; here the iteration is
|
||||
! stopped when |r| <= eps * |b|
|
||||
! where r is the (preconditioned, recursive
|
||||
! estimate of) residual.
|
||||
! irst - integer(optional) Input: restart parameter
|
||||
|
||||
+46
-46
@@ -756,36 +756,36 @@ subroutine psb_c_rsb_csgetptn(imin,imax,a,nz,ia,ja,info,&
|
||||
integer :: nzin_, jmin_, jmax_, err_act, i
|
||||
character(len=20) :: name='csget'
|
||||
logical, parameter :: debug=.false.
|
||||
PSBRSB_DEBUG('')
|
||||
PSBRSB_DEBUG('')
|
||||
|
||||
if (present(iren).or.present(rscale).or.present(cscale)) then
|
||||
! FIXME: error condition
|
||||
PSBRSB_ERROR("unsupported optional arguments!")
|
||||
call psb_error()
|
||||
endif
|
||||
if (present(iren).or.present(rscale).or.present(cscale)) then
|
||||
! FIXME: error condition
|
||||
PSBRSB_ERROR("unsupported optional arguments!")
|
||||
call psb_error()
|
||||
endif
|
||||
|
||||
if (present(append)) then
|
||||
append_ = append
|
||||
else
|
||||
append_ = .false.
|
||||
endif
|
||||
if (present(append).and.append.and.present(nzin)) then
|
||||
nzin_ = nzin
|
||||
else
|
||||
nzin_ = 0
|
||||
endif
|
||||
if (present(append)) then
|
||||
append_ = append
|
||||
else
|
||||
append_ = .false.
|
||||
endif
|
||||
if (present(append).and.append.and.present(nzin)) then
|
||||
nzin_ = nzin
|
||||
else
|
||||
nzin_ = 0
|
||||
endif
|
||||
|
||||
if (present(jmin)) then
|
||||
jmin_ = jmin
|
||||
else
|
||||
jmin_ = 1
|
||||
endif
|
||||
if (present(jmin)) then
|
||||
jmin_ = jmin
|
||||
else
|
||||
jmin_ = 1
|
||||
endif
|
||||
|
||||
if (present(jmax)) then
|
||||
jmax_ = jmax
|
||||
else
|
||||
jmax_ = a%get_nrows()
|
||||
endif
|
||||
if (present(jmax)) then
|
||||
jmax_ = jmax
|
||||
else
|
||||
jmax_ = a%get_nrows()
|
||||
endif
|
||||
|
||||
if (present(rscale)) then
|
||||
rscale_ = rscale
|
||||
@@ -804,34 +804,34 @@ subroutine psb_c_rsb_csgetptn(imin,imax,a,nz,ia,ja,info,&
|
||||
end if
|
||||
if (present(iren)) then
|
||||
info = c_psbrsb_err_
|
||||
PSBRSB_ERROR("ERROR: the RSB pattern get needs iren support !!")
|
||||
PSBRSB_ERROR("ERROR: the RSB pattern get needs iren support !!")
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
|
||||
!nzt = ..
|
||||
nz = 0
|
||||
!nzt = ..
|
||||
nz = 0
|
||||
|
||||
call psb_ensure_size(nzin_,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_,ja,info)
|
||||
call psb_ensure_size(nzin_,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_,ja,info)
|
||||
|
||||
if (info /= psb_success_) return
|
||||
nz=rsb_get_block_nnz(a%rsbmptr,imin,imax,jmin_,jmax_,c_for_flags,info)
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
if (info /= psb_success_) return
|
||||
nz=rsb_get_block_nnz(a%rsbmptr,imin,imax,jmin_,jmax_,c_for_flags,info)
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
|
||||
call psb_ensure_size(nzin_+nz,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_+nz,ja,info)
|
||||
if (info /= psb_success_)then
|
||||
PSBRSB_ERROR("!")
|
||||
return
|
||||
endif
|
||||
|
||||
info=d_rsb_to_psb_info(rsb_get_block_sparse_pattern&
|
||||
&(a%rsbmptr,imin,imax,jmin_,jmax_,ia,ja,c_null_ptr,c_null_ptr,nzin_,c_for_flags))
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
call psb_ensure_size(nzin_+nz,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_+nz,ja,info)
|
||||
if (info /= psb_success_)then
|
||||
PSBRSB_ERROR("!")
|
||||
return
|
||||
endif
|
||||
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
info=d_rsb_to_psb_info(rsb_get_block_sparse_pattern&
|
||||
&(a%rsbmptr,imin,imax,jmin_,jmax_,ia,ja,c_null_ptr,c_null_ptr,nzin_,c_for_flags))
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
if (rscale_) then
|
||||
do i=nzin_+1, nzin_+nz
|
||||
ia(i) = ia(i) - imin + 1
|
||||
|
||||
+46
-46
@@ -756,36 +756,36 @@ subroutine psb_s_rsb_csgetptn(imin,imax,a,nz,ia,ja,info,&
|
||||
integer :: nzin_, jmin_, jmax_, err_act, i
|
||||
character(len=20) :: name='csget'
|
||||
logical, parameter :: debug=.false.
|
||||
PSBRSB_DEBUG('')
|
||||
PSBRSB_DEBUG('')
|
||||
|
||||
if (present(iren).or.present(rscale).or.present(cscale)) then
|
||||
! FIXME: error condition
|
||||
PSBRSB_ERROR("unsupported optional arguments!")
|
||||
call psb_error()
|
||||
endif
|
||||
if (present(iren).or.present(rscale).or.present(cscale)) then
|
||||
! FIXME: error condition
|
||||
PSBRSB_ERROR("unsupported optional arguments!")
|
||||
call psb_error()
|
||||
endif
|
||||
|
||||
if (present(append)) then
|
||||
append_ = append
|
||||
else
|
||||
append_ = .false.
|
||||
endif
|
||||
if (present(append).and.append.and.present(nzin)) then
|
||||
nzin_ = nzin
|
||||
else
|
||||
nzin_ = 0
|
||||
endif
|
||||
if (present(append)) then
|
||||
append_ = append
|
||||
else
|
||||
append_ = .false.
|
||||
endif
|
||||
if (present(append).and.append.and.present(nzin)) then
|
||||
nzin_ = nzin
|
||||
else
|
||||
nzin_ = 0
|
||||
endif
|
||||
|
||||
if (present(jmin)) then
|
||||
jmin_ = jmin
|
||||
else
|
||||
jmin_ = 1
|
||||
endif
|
||||
if (present(jmin)) then
|
||||
jmin_ = jmin
|
||||
else
|
||||
jmin_ = 1
|
||||
endif
|
||||
|
||||
if (present(jmax)) then
|
||||
jmax_ = jmax
|
||||
else
|
||||
jmax_ = a%get_nrows()
|
||||
endif
|
||||
if (present(jmax)) then
|
||||
jmax_ = jmax
|
||||
else
|
||||
jmax_ = a%get_nrows()
|
||||
endif
|
||||
|
||||
if (present(rscale)) then
|
||||
rscale_ = rscale
|
||||
@@ -804,34 +804,34 @@ subroutine psb_s_rsb_csgetptn(imin,imax,a,nz,ia,ja,info,&
|
||||
end if
|
||||
if (present(iren)) then
|
||||
info = c_psbrsb_err_
|
||||
PSBRSB_ERROR("ERROR: the RSB pattern get needs iren support !!")
|
||||
PSBRSB_ERROR("ERROR: the RSB pattern get needs iren support !!")
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
|
||||
!nzt = ..
|
||||
nz = 0
|
||||
!nzt = ..
|
||||
nz = 0
|
||||
|
||||
call psb_ensure_size(nzin_,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_,ja,info)
|
||||
call psb_ensure_size(nzin_,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_,ja,info)
|
||||
|
||||
if (info /= psb_success_) return
|
||||
nz=rsb_get_block_nnz(a%rsbmptr,imin,imax,jmin_,jmax_,c_for_flags,info)
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
if (info /= psb_success_) return
|
||||
nz=rsb_get_block_nnz(a%rsbmptr,imin,imax,jmin_,jmax_,c_for_flags,info)
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
|
||||
call psb_ensure_size(nzin_+nz,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_+nz,ja,info)
|
||||
if (info /= psb_success_)then
|
||||
PSBRSB_ERROR("!")
|
||||
return
|
||||
endif
|
||||
|
||||
info=d_rsb_to_psb_info(rsb_get_block_sparse_pattern&
|
||||
&(a%rsbmptr,imin,imax,jmin_,jmax_,ia,ja,c_null_ptr,c_null_ptr,nzin_,c_for_flags))
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
call psb_ensure_size(nzin_+nz,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_+nz,ja,info)
|
||||
if (info /= psb_success_)then
|
||||
PSBRSB_ERROR("!")
|
||||
return
|
||||
endif
|
||||
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
info=d_rsb_to_psb_info(rsb_get_block_sparse_pattern&
|
||||
&(a%rsbmptr,imin,imax,jmin_,jmax_,ia,ja,c_null_ptr,c_null_ptr,nzin_,c_for_flags))
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
if (rscale_) then
|
||||
do i=nzin_+1, nzin_+nz
|
||||
ia(i) = ia(i) - imin + 1
|
||||
|
||||
+46
-46
@@ -756,36 +756,36 @@ subroutine psb_z_rsb_csgetptn(imin,imax,a,nz,ia,ja,info,&
|
||||
integer :: nzin_, jmin_, jmax_, err_act, i
|
||||
character(len=20) :: name='csget'
|
||||
logical, parameter :: debug=.false.
|
||||
PSBRSB_DEBUG('')
|
||||
PSBRSB_DEBUG('')
|
||||
|
||||
if (present(iren).or.present(rscale).or.present(cscale)) then
|
||||
! FIXME: error condition
|
||||
PSBRSB_ERROR("unsupported optional arguments!")
|
||||
call psb_error()
|
||||
endif
|
||||
if (present(iren).or.present(rscale).or.present(cscale)) then
|
||||
! FIXME: error condition
|
||||
PSBRSB_ERROR("unsupported optional arguments!")
|
||||
call psb_error()
|
||||
endif
|
||||
|
||||
if (present(append)) then
|
||||
append_ = append
|
||||
else
|
||||
append_ = .false.
|
||||
endif
|
||||
if (present(append).and.append.and.present(nzin)) then
|
||||
nzin_ = nzin
|
||||
else
|
||||
nzin_ = 0
|
||||
endif
|
||||
if (present(append)) then
|
||||
append_ = append
|
||||
else
|
||||
append_ = .false.
|
||||
endif
|
||||
if (present(append).and.append.and.present(nzin)) then
|
||||
nzin_ = nzin
|
||||
else
|
||||
nzin_ = 0
|
||||
endif
|
||||
|
||||
if (present(jmin)) then
|
||||
jmin_ = jmin
|
||||
else
|
||||
jmin_ = 1
|
||||
endif
|
||||
if (present(jmin)) then
|
||||
jmin_ = jmin
|
||||
else
|
||||
jmin_ = 1
|
||||
endif
|
||||
|
||||
if (present(jmax)) then
|
||||
jmax_ = jmax
|
||||
else
|
||||
jmax_ = a%get_nrows()
|
||||
endif
|
||||
if (present(jmax)) then
|
||||
jmax_ = jmax
|
||||
else
|
||||
jmax_ = a%get_nrows()
|
||||
endif
|
||||
|
||||
if (present(rscale)) then
|
||||
rscale_ = rscale
|
||||
@@ -804,34 +804,34 @@ subroutine psb_z_rsb_csgetptn(imin,imax,a,nz,ia,ja,info,&
|
||||
end if
|
||||
if (present(iren)) then
|
||||
info = c_psbrsb_err_
|
||||
PSBRSB_ERROR("ERROR: the RSB pattern get needs iren support !!")
|
||||
PSBRSB_ERROR("ERROR: the RSB pattern get needs iren support !!")
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
|
||||
!nzt = ..
|
||||
nz = 0
|
||||
!nzt = ..
|
||||
nz = 0
|
||||
|
||||
call psb_ensure_size(nzin_,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_,ja,info)
|
||||
call psb_ensure_size(nzin_,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_,ja,info)
|
||||
|
||||
if (info /= psb_success_) return
|
||||
nz=rsb_get_block_nnz(a%rsbmptr,imin,imax,jmin_,jmax_,c_for_flags,info)
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
if (info /= psb_success_) return
|
||||
nz=rsb_get_block_nnz(a%rsbmptr,imin,imax,jmin_,jmax_,c_for_flags,info)
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
|
||||
call psb_ensure_size(nzin_+nz,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_+nz,ja,info)
|
||||
if (info /= psb_success_)then
|
||||
PSBRSB_ERROR("!")
|
||||
return
|
||||
endif
|
||||
|
||||
info=d_rsb_to_psb_info(rsb_get_block_sparse_pattern&
|
||||
&(a%rsbmptr,imin,imax,jmin_,jmax_,ia,ja,c_null_ptr,c_null_ptr,nzin_,c_for_flags))
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
call psb_ensure_size(nzin_+nz,ia,info)
|
||||
if (info == psb_success_) call psb_ensure_size(nzin_+nz,ja,info)
|
||||
if (info /= psb_success_)then
|
||||
PSBRSB_ERROR("!")
|
||||
return
|
||||
endif
|
||||
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
info=d_rsb_to_psb_info(rsb_get_block_sparse_pattern&
|
||||
&(a%rsbmptr,imin,imax,jmin_,jmax_,ia,ja,c_null_ptr,c_null_ptr,nzin_,c_for_flags))
|
||||
! FIXME: unfinished; missing error handling ..
|
||||
|
||||
!write(*,*) 'debug:',nzin_,nz,imin,imax,jmin_,jmax_
|
||||
if (rscale_) then
|
||||
do i=nzin_+1, nzin_+nz
|
||||
ia(i) = ia(i) - imin + 1
|
||||
|
||||
@@ -255,7 +255,7 @@ subroutine shb_write(a,iret,iunit,filename,key,rhs,g,x,mtitle)
|
||||
|
||||
acpnt => aa
|
||||
|
||||
class default
|
||||
class default
|
||||
|
||||
call acsc%cp_from_fmt(aa, iret)
|
||||
if (iret /= 0) return
|
||||
|
||||
Reference in New Issue
Block a user