mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-20 04:42:08 +00:00
Fix SYM handling at spmat level.
This commit is contained in:
@@ -326,6 +326,34 @@ subroutine psb_c_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_c_set_triangle
|
||||
|
||||
subroutine psb_c_set_symmetric(a,val)
|
||||
use psb_c_mat_mod, psb_protect_name => psb_c_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_cspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_c_set_symmetric
|
||||
|
||||
subroutine psb_c_set_unit(a,val)
|
||||
use psb_c_mat_mod, psb_protect_name => psb_c_set_unit
|
||||
@@ -2848,6 +2876,34 @@ subroutine psb_lc_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_lc_set_triangle
|
||||
|
||||
subroutine psb_lc_set_symmetric(a,val)
|
||||
use psb_c_mat_mod, psb_protect_name => psb_lc_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_lcspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_lc_set_symmetric
|
||||
|
||||
subroutine psb_lc_set_unit(a,val)
|
||||
use psb_c_mat_mod, psb_protect_name => psb_lc_set_unit
|
||||
|
||||
@@ -326,6 +326,34 @@ subroutine psb_d_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_d_set_triangle
|
||||
|
||||
subroutine psb_d_set_symmetric(a,val)
|
||||
use psb_d_mat_mod, psb_protect_name => psb_d_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_dspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_d_set_symmetric
|
||||
|
||||
subroutine psb_d_set_unit(a,val)
|
||||
use psb_d_mat_mod, psb_protect_name => psb_d_set_unit
|
||||
@@ -2848,6 +2876,34 @@ subroutine psb_ld_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_ld_set_triangle
|
||||
|
||||
subroutine psb_ld_set_symmetric(a,val)
|
||||
use psb_d_mat_mod, psb_protect_name => psb_ld_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_ldspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_ld_set_symmetric
|
||||
|
||||
subroutine psb_ld_set_unit(a,val)
|
||||
use psb_d_mat_mod, psb_protect_name => psb_ld_set_unit
|
||||
|
||||
@@ -326,6 +326,34 @@ subroutine psb_s_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_s_set_triangle
|
||||
|
||||
subroutine psb_s_set_symmetric(a,val)
|
||||
use psb_s_mat_mod, psb_protect_name => psb_s_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_sspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_s_set_symmetric
|
||||
|
||||
subroutine psb_s_set_unit(a,val)
|
||||
use psb_s_mat_mod, psb_protect_name => psb_s_set_unit
|
||||
@@ -2848,6 +2876,34 @@ subroutine psb_ls_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_ls_set_triangle
|
||||
|
||||
subroutine psb_ls_set_symmetric(a,val)
|
||||
use psb_s_mat_mod, psb_protect_name => psb_ls_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_lsspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_ls_set_symmetric
|
||||
|
||||
subroutine psb_ls_set_unit(a,val)
|
||||
use psb_s_mat_mod, psb_protect_name => psb_ls_set_unit
|
||||
|
||||
@@ -326,6 +326,34 @@ subroutine psb_z_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_z_set_triangle
|
||||
|
||||
subroutine psb_z_set_symmetric(a,val)
|
||||
use psb_z_mat_mod, psb_protect_name => psb_z_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_zspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_z_set_symmetric
|
||||
|
||||
subroutine psb_z_set_unit(a,val)
|
||||
use psb_z_mat_mod, psb_protect_name => psb_z_set_unit
|
||||
@@ -2848,6 +2876,34 @@ subroutine psb_lz_set_triangle(a,val)
|
||||
|
||||
end subroutine psb_lz_set_triangle
|
||||
|
||||
subroutine psb_lz_set_symmetric(a,val)
|
||||
use psb_z_mat_mod, psb_protect_name => psb_lz_set_symmetric
|
||||
use psb_error_mod
|
||||
implicit none
|
||||
class(psb_lzspmat_type), intent(inout) :: a
|
||||
logical, intent(in), optional :: val
|
||||
integer(psb_ipk_) :: err_act, info
|
||||
character(len=20) :: name='get_nzeros'
|
||||
logical, parameter :: debug=.false.
|
||||
|
||||
call psb_erractionsave(err_act)
|
||||
if (.not.allocated(a%a)) then
|
||||
info = psb_err_invalid_mat_state_
|
||||
call psb_errpush(info,name)
|
||||
goto 9999
|
||||
endif
|
||||
|
||||
call a%a%set_symmetric(val)
|
||||
|
||||
call psb_erractionrestore(err_act)
|
||||
return
|
||||
|
||||
|
||||
9999 call psb_error_handler(err_act)
|
||||
|
||||
return
|
||||
|
||||
end subroutine psb_lz_set_symmetric
|
||||
|
||||
subroutine psb_lz_set_unit(a,val)
|
||||
use psb_z_mat_mod, psb_protect_name => psb_lz_set_unit
|
||||
|
||||
Reference in New Issue
Block a user