mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-21 05:12:13 +00:00
Merged MixedI8 in new branch (to be later merged into development)
This commit is contained in:
@@ -434,10 +434,12 @@ subroutine psb_c_bjac_precbld(a,desc_a,prec,info,amold,vmold,imold)
|
||||
character(len=20) :: ch_err
|
||||
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info = psb_success_
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
ictxt=desc_a%get_ctxt()
|
||||
call prec%set_ctxt(ictxt)
|
||||
|
||||
@@ -46,19 +46,18 @@ subroutine psb_cprecbld(a,desc_a,p,info,amold,vmold,imold)
|
||||
! Local scalars
|
||||
integer(psb_ipk_) :: ictxt, me,np
|
||||
integer(psb_ipk_) :: err, n_row, n_col,mglob, err_act
|
||||
integer(psb_ipk_) :: int_err(5)
|
||||
|
||||
integer(psb_ipk_),parameter :: iroot=psb_root_,iout=60,ilout=40
|
||||
character(len=20) :: name, ch_err
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
err=0
|
||||
call psb_erractionsave(err_act)
|
||||
name = 'psb_precbld'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
info = psb_success_
|
||||
int_err(1) = 0
|
||||
ictxt = desc_a%get_context()
|
||||
|
||||
call psb_info(ictxt, me, np)
|
||||
|
||||
@@ -434,10 +434,12 @@ subroutine psb_d_bjac_precbld(a,desc_a,prec,info,amold,vmold,imold)
|
||||
character(len=20) :: ch_err
|
||||
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info = psb_success_
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
ictxt=desc_a%get_ctxt()
|
||||
call prec%set_ctxt(ictxt)
|
||||
|
||||
@@ -46,19 +46,18 @@ subroutine psb_dprecbld(a,desc_a,p,info,amold,vmold,imold)
|
||||
! Local scalars
|
||||
integer(psb_ipk_) :: ictxt, me,np
|
||||
integer(psb_ipk_) :: err, n_row, n_col,mglob, err_act
|
||||
integer(psb_ipk_) :: int_err(5)
|
||||
|
||||
integer(psb_ipk_),parameter :: iroot=psb_root_,iout=60,ilout=40
|
||||
character(len=20) :: name, ch_err
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
err=0
|
||||
call psb_erractionsave(err_act)
|
||||
name = 'psb_precbld'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
info = psb_success_
|
||||
int_err(1) = 0
|
||||
ictxt = desc_a%get_context()
|
||||
|
||||
call psb_info(ictxt, me, np)
|
||||
|
||||
@@ -434,10 +434,12 @@ subroutine psb_s_bjac_precbld(a,desc_a,prec,info,amold,vmold,imold)
|
||||
character(len=20) :: ch_err
|
||||
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info = psb_success_
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
ictxt=desc_a%get_ctxt()
|
||||
call prec%set_ctxt(ictxt)
|
||||
|
||||
@@ -46,19 +46,18 @@ subroutine psb_sprecbld(a,desc_a,p,info,amold,vmold,imold)
|
||||
! Local scalars
|
||||
integer(psb_ipk_) :: ictxt, me,np
|
||||
integer(psb_ipk_) :: err, n_row, n_col,mglob, err_act
|
||||
integer(psb_ipk_) :: int_err(5)
|
||||
|
||||
integer(psb_ipk_),parameter :: iroot=psb_root_,iout=60,ilout=40
|
||||
character(len=20) :: name, ch_err
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
err=0
|
||||
call psb_erractionsave(err_act)
|
||||
name = 'psb_precbld'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
info = psb_success_
|
||||
int_err(1) = 0
|
||||
ictxt = desc_a%get_context()
|
||||
|
||||
call psb_info(ictxt, me, np)
|
||||
|
||||
@@ -434,10 +434,12 @@ subroutine psb_z_bjac_precbld(a,desc_a,prec,info,amold,vmold,imold)
|
||||
character(len=20) :: ch_err
|
||||
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info = psb_success_
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
ictxt=desc_a%get_ctxt()
|
||||
call prec%set_ctxt(ictxt)
|
||||
|
||||
@@ -46,19 +46,18 @@ subroutine psb_zprecbld(a,desc_a,p,info,amold,vmold,imold)
|
||||
! Local scalars
|
||||
integer(psb_ipk_) :: ictxt, me,np
|
||||
integer(psb_ipk_) :: err, n_row, n_col,mglob, err_act
|
||||
integer(psb_ipk_) :: int_err(5)
|
||||
|
||||
integer(psb_ipk_),parameter :: iroot=psb_root_,iout=60,ilout=40
|
||||
character(len=20) :: name, ch_err
|
||||
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
err=0
|
||||
call psb_erractionsave(err_act)
|
||||
name = 'psb_precbld'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
info = psb_success_
|
||||
int_err(1) = 0
|
||||
ictxt = desc_a%get_context()
|
||||
|
||||
call psb_info(ictxt, me, np)
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
module psb_c_base_prec_mod
|
||||
|
||||
! Reduces size of .mod file.
|
||||
use psb_base_mod, only : psb_spk_, psb_ipk_, psb_long_int_k_,&
|
||||
use psb_base_mod, only : psb_spk_, psb_ipk_, psb_epk_,&
|
||||
& psb_desc_type, psb_sizeof, psb_free, psb_cdfree, psb_errpush, psb_act_abort_,&
|
||||
& psb_sizeof_int, psb_sizeof_long_int, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_get_errstatus, psb_success_,&
|
||||
& psb_sizeof_ip, psb_sizeof_lp, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_errstatus_fatal, psb_success_,&
|
||||
& psb_c_base_sparse_mat, psb_cspmat_type, psb_c_csr_sparse_mat,&
|
||||
& psb_c_base_vect_type, psb_c_vect_type, psb_i_base_vect_type
|
||||
|
||||
@@ -269,7 +269,7 @@ contains
|
||||
|
||||
function psb_c_base_sizeof(prec) result(val)
|
||||
class(psb_c_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
return
|
||||
@@ -285,7 +285,7 @@ contains
|
||||
|
||||
function psb_c_base_get_nzeros(prec) result(res)
|
||||
class(psb_c_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: res
|
||||
integer(psb_epk_) :: res
|
||||
|
||||
res = 0
|
||||
|
||||
|
||||
@@ -188,7 +188,7 @@ contains
|
||||
|
||||
function psb_c_bjac_sizeof(prec) result(val)
|
||||
class(psb_c_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
@@ -204,7 +204,7 @@ contains
|
||||
function psb_c_bjac_get_nzeros(prec) result(val)
|
||||
|
||||
class(psb_c_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
|
||||
@@ -212,7 +212,7 @@ contains
|
||||
|
||||
function psb_c_diag_sizeof(prec) result(val)
|
||||
class(psb_c_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = (2*psb_sizeof_sp) * prec%get_nzeros()
|
||||
return
|
||||
@@ -220,7 +220,7 @@ contains
|
||||
|
||||
function psb_c_diag_get_nzeros(prec) result(val)
|
||||
class(psb_c_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) val = val + prec%dv%get_nrows()
|
||||
|
||||
@@ -253,7 +253,7 @@ contains
|
||||
function psb_c_null_sizeof(prec) result(val)
|
||||
|
||||
class(psb_c_null_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
|
||||
|
||||
@@ -77,8 +77,8 @@ module psb_c_prec_type
|
||||
& psb_c_base_sparse_mat, psb_spk_, psb_c_base_vect_type, &
|
||||
& psb_cprec_type, psb_i_base_vect_type
|
||||
implicit none
|
||||
type(psb_cspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
type(psb_cspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
class(psb_cprec_type), intent(inout), target :: prec
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
class(psb_c_base_sparse_mat), intent(in), optional :: amold
|
||||
@@ -201,10 +201,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
call p%free(info)
|
||||
@@ -226,10 +228,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
|
||||
@@ -250,7 +254,7 @@ contains
|
||||
|
||||
function psb_cprec_sizeof(prec) result(val)
|
||||
class(psb_cprec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
integer(psb_ipk_) :: i
|
||||
|
||||
val = 0
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
module psb_d_base_prec_mod
|
||||
|
||||
! Reduces size of .mod file.
|
||||
use psb_base_mod, only : psb_dpk_, psb_ipk_, psb_long_int_k_,&
|
||||
use psb_base_mod, only : psb_dpk_, psb_ipk_, psb_epk_,&
|
||||
& psb_desc_type, psb_sizeof, psb_free, psb_cdfree, psb_errpush, psb_act_abort_,&
|
||||
& psb_sizeof_int, psb_sizeof_long_int, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_get_errstatus, psb_success_,&
|
||||
& psb_sizeof_ip, psb_sizeof_lp, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_errstatus_fatal, psb_success_,&
|
||||
& psb_d_base_sparse_mat, psb_dspmat_type, psb_d_csr_sparse_mat,&
|
||||
& psb_d_base_vect_type, psb_d_vect_type, psb_i_base_vect_type
|
||||
|
||||
@@ -269,7 +269,7 @@ contains
|
||||
|
||||
function psb_d_base_sizeof(prec) result(val)
|
||||
class(psb_d_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
return
|
||||
@@ -285,7 +285,7 @@ contains
|
||||
|
||||
function psb_d_base_get_nzeros(prec) result(res)
|
||||
class(psb_d_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: res
|
||||
integer(psb_epk_) :: res
|
||||
|
||||
res = 0
|
||||
|
||||
|
||||
@@ -188,7 +188,7 @@ contains
|
||||
|
||||
function psb_d_bjac_sizeof(prec) result(val)
|
||||
class(psb_d_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
@@ -204,7 +204,7 @@ contains
|
||||
function psb_d_bjac_get_nzeros(prec) result(val)
|
||||
|
||||
class(psb_d_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
|
||||
@@ -212,7 +212,7 @@ contains
|
||||
|
||||
function psb_d_diag_sizeof(prec) result(val)
|
||||
class(psb_d_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = psb_sizeof_dp * prec%get_nzeros()
|
||||
return
|
||||
@@ -220,7 +220,7 @@ contains
|
||||
|
||||
function psb_d_diag_get_nzeros(prec) result(val)
|
||||
class(psb_d_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) val = val + prec%dv%get_nrows()
|
||||
|
||||
@@ -253,7 +253,7 @@ contains
|
||||
function psb_d_null_sizeof(prec) result(val)
|
||||
|
||||
class(psb_d_null_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
|
||||
|
||||
@@ -77,8 +77,8 @@ module psb_d_prec_type
|
||||
& psb_d_base_sparse_mat, psb_dpk_, psb_d_base_vect_type, &
|
||||
& psb_dprec_type, psb_i_base_vect_type
|
||||
implicit none
|
||||
type(psb_dspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
type(psb_dspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
class(psb_dprec_type), intent(inout), target :: prec
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
class(psb_d_base_sparse_mat), intent(in), optional :: amold
|
||||
@@ -201,10 +201,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
call p%free(info)
|
||||
@@ -226,10 +228,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
|
||||
@@ -250,7 +254,7 @@ contains
|
||||
|
||||
function psb_dprec_sizeof(prec) result(val)
|
||||
class(psb_dprec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
integer(psb_ipk_) :: i
|
||||
|
||||
val = 0
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
module psb_prec_const_mod
|
||||
|
||||
use psb_base_mod, only : psb_dpk_, psb_spk_, psb_ipk_, psb_long_int_k_,&
|
||||
use psb_base_mod, only : psb_dpk_, psb_spk_, psb_ipk_, psb_epk_,&
|
||||
& psb_err_unit, psb_inp_unit, psb_out_unit
|
||||
|
||||
integer(psb_ipk_), parameter :: psb_min_prec_=0, psb_noprec_=0, psb_diag_=1, &
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
module psb_s_base_prec_mod
|
||||
|
||||
! Reduces size of .mod file.
|
||||
use psb_base_mod, only : psb_spk_, psb_ipk_, psb_long_int_k_,&
|
||||
use psb_base_mod, only : psb_spk_, psb_ipk_, psb_epk_,&
|
||||
& psb_desc_type, psb_sizeof, psb_free, psb_cdfree, psb_errpush, psb_act_abort_,&
|
||||
& psb_sizeof_int, psb_sizeof_long_int, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_get_errstatus, psb_success_,&
|
||||
& psb_sizeof_ip, psb_sizeof_lp, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_errstatus_fatal, psb_success_,&
|
||||
& psb_s_base_sparse_mat, psb_sspmat_type, psb_s_csr_sparse_mat,&
|
||||
& psb_s_base_vect_type, psb_s_vect_type, psb_i_base_vect_type
|
||||
|
||||
@@ -269,7 +269,7 @@ contains
|
||||
|
||||
function psb_s_base_sizeof(prec) result(val)
|
||||
class(psb_s_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
return
|
||||
@@ -285,7 +285,7 @@ contains
|
||||
|
||||
function psb_s_base_get_nzeros(prec) result(res)
|
||||
class(psb_s_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: res
|
||||
integer(psb_epk_) :: res
|
||||
|
||||
res = 0
|
||||
|
||||
|
||||
@@ -188,7 +188,7 @@ contains
|
||||
|
||||
function psb_s_bjac_sizeof(prec) result(val)
|
||||
class(psb_s_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
@@ -204,7 +204,7 @@ contains
|
||||
function psb_s_bjac_get_nzeros(prec) result(val)
|
||||
|
||||
class(psb_s_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
|
||||
@@ -212,7 +212,7 @@ contains
|
||||
|
||||
function psb_s_diag_sizeof(prec) result(val)
|
||||
class(psb_s_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = psb_sizeof_sp * prec%get_nzeros()
|
||||
return
|
||||
@@ -220,7 +220,7 @@ contains
|
||||
|
||||
function psb_s_diag_get_nzeros(prec) result(val)
|
||||
class(psb_s_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) val = val + prec%dv%get_nrows()
|
||||
|
||||
@@ -253,7 +253,7 @@ contains
|
||||
function psb_s_null_sizeof(prec) result(val)
|
||||
|
||||
class(psb_s_null_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
|
||||
|
||||
@@ -77,8 +77,8 @@ module psb_s_prec_type
|
||||
& psb_s_base_sparse_mat, psb_spk_, psb_s_base_vect_type, &
|
||||
& psb_sprec_type, psb_i_base_vect_type
|
||||
implicit none
|
||||
type(psb_sspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
type(psb_sspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
class(psb_sprec_type), intent(inout), target :: prec
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
class(psb_s_base_sparse_mat), intent(in), optional :: amold
|
||||
@@ -201,10 +201,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
call p%free(info)
|
||||
@@ -226,10 +228,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
|
||||
@@ -250,7 +254,7 @@ contains
|
||||
|
||||
function psb_sprec_sizeof(prec) result(val)
|
||||
class(psb_sprec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
integer(psb_ipk_) :: i
|
||||
|
||||
val = 0
|
||||
|
||||
@@ -36,10 +36,10 @@
|
||||
module psb_z_base_prec_mod
|
||||
|
||||
! Reduces size of .mod file.
|
||||
use psb_base_mod, only : psb_dpk_, psb_ipk_, psb_long_int_k_,&
|
||||
use psb_base_mod, only : psb_dpk_, psb_ipk_, psb_epk_,&
|
||||
& psb_desc_type, psb_sizeof, psb_free, psb_cdfree, psb_errpush, psb_act_abort_,&
|
||||
& psb_sizeof_int, psb_sizeof_long_int, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_get_errstatus, psb_success_,&
|
||||
& psb_sizeof_ip, psb_sizeof_lp, psb_sizeof_sp, psb_sizeof_dp, &
|
||||
& psb_erractionsave, psb_erractionrestore, psb_error, psb_errstatus_fatal, psb_success_,&
|
||||
& psb_z_base_sparse_mat, psb_zspmat_type, psb_z_csr_sparse_mat,&
|
||||
& psb_z_base_vect_type, psb_z_vect_type, psb_i_base_vect_type
|
||||
|
||||
@@ -269,7 +269,7 @@ contains
|
||||
|
||||
function psb_z_base_sizeof(prec) result(val)
|
||||
class(psb_z_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
return
|
||||
@@ -285,7 +285,7 @@ contains
|
||||
|
||||
function psb_z_base_get_nzeros(prec) result(res)
|
||||
class(psb_z_base_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: res
|
||||
integer(psb_epk_) :: res
|
||||
|
||||
res = 0
|
||||
|
||||
|
||||
@@ -188,7 +188,7 @@ contains
|
||||
|
||||
function psb_z_bjac_sizeof(prec) result(val)
|
||||
class(psb_z_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
@@ -204,7 +204,7 @@ contains
|
||||
function psb_z_bjac_get_nzeros(prec) result(val)
|
||||
|
||||
class(psb_z_bjac_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) then
|
||||
|
||||
@@ -212,7 +212,7 @@ contains
|
||||
|
||||
function psb_z_diag_sizeof(prec) result(val)
|
||||
class(psb_z_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = (2*psb_sizeof_dp) * prec%get_nzeros()
|
||||
return
|
||||
@@ -220,7 +220,7 @@ contains
|
||||
|
||||
function psb_z_diag_get_nzeros(prec) result(val)
|
||||
class(psb_z_diag_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
if (allocated(prec%dv)) val = val + prec%dv%get_nrows()
|
||||
|
||||
@@ -253,7 +253,7 @@ contains
|
||||
function psb_z_null_sizeof(prec) result(val)
|
||||
|
||||
class(psb_z_null_prec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
|
||||
val = 0
|
||||
|
||||
|
||||
@@ -77,8 +77,8 @@ module psb_z_prec_type
|
||||
& psb_z_base_sparse_mat, psb_dpk_, psb_z_base_vect_type, &
|
||||
& psb_zprec_type, psb_i_base_vect_type
|
||||
implicit none
|
||||
type(psb_zspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
type(psb_zspmat_type), intent(in), target :: a
|
||||
type(psb_desc_type), intent(inout), target :: desc_a
|
||||
class(psb_zprec_type), intent(inout), target :: prec
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
class(psb_z_base_sparse_mat), intent(in), optional :: amold
|
||||
@@ -201,10 +201,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
call p%free(info)
|
||||
@@ -226,10 +228,12 @@ contains
|
||||
integer(psb_ipk_), intent(out) :: info
|
||||
integer(psb_ipk_) :: me, err_act,i
|
||||
character(len=20) :: name
|
||||
if(psb_get_errstatus() /= 0) return
|
||||
info=psb_success_
|
||||
name = 'psb_precfree'
|
||||
call psb_erractionsave(err_act)
|
||||
if (psb_errstatus_fatal()) then
|
||||
info = psb_err_internal_error_ ; goto 9999
|
||||
end if
|
||||
|
||||
me=-1
|
||||
|
||||
@@ -250,7 +254,7 @@ contains
|
||||
|
||||
function psb_zprec_sizeof(prec) result(val)
|
||||
class(psb_zprec_type), intent(in) :: prec
|
||||
integer(psb_long_int_k_) :: val
|
||||
integer(psb_epk_) :: val
|
||||
integer(psb_ipk_) :: i
|
||||
|
||||
val = 0
|
||||
|
||||
Reference in New Issue
Block a user