Refactor vect_mod

merge-maint-par
Salvatore Filippone 2 weeks ago
parent 7ff4d251fd
commit dd6dd4cdfe

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -7,7 +7,10 @@ BOBJS=psb_base_mat_impl.o \
psb_s_base_mat_impl.o psb_d_base_mat_impl.o psb_c_base_mat_impl.o psb_z_base_mat_impl.o \ psb_s_base_mat_impl.o psb_d_base_mat_impl.o psb_c_base_mat_impl.o psb_z_base_mat_impl.o \
psb_i_base_vect_impl.o psb_l_base_vect_impl.o \ psb_i_base_vect_impl.o psb_l_base_vect_impl.o \
psb_s_base_vect_impl.o psb_d_base_vect_impl.o \ psb_s_base_vect_impl.o psb_d_base_vect_impl.o \
psb_c_base_vect_impl.o psb_z_base_vect_impl.o psb_c_base_vect_impl.o psb_z_base_vect_impl.o \
psb_i_vect_impl.o psb_l_vect_impl.o \
psb_s_vect_impl.o psb_d_vect_impl.o \
psb_c_vect_impl.o psb_z_vect_impl.o
#\ #\
psb_s_lbase_mat_impl.o psb_d_lbase_mat_impl.o psb_c_lbase_mat_impl.o psb_z_lbase_mat_impl.o psb_s_lbase_mat_impl.o psb_d_lbase_mat_impl.o psb_c_lbase_mat_impl.o psb_z_lbase_mat_impl.o

File diff suppressed because it is too large Load Diff

@ -279,6 +279,7 @@ contains
info = 0 info = 0
if (psb_errstatus_fatal()) return if (psb_errstatus_fatal()) return
write(0,*) 'd_base_ins_a: ',n
if (try_newins) then if (try_newins) then
if (x%is_bld()) then if (x%is_bld()) then
ncfs_ = x%get_ncfs() ncfs_ = x%get_ncfs()
@ -1023,6 +1024,7 @@ contains
if (present(last)) last_ = min(last,last_) if (present(last)) last_ = min(last,last_)
if (x%is_dev()) call x%sync() if (x%is_dev()) call x%sync()
write(0,*)'d_base%set_scal ',val,first_,last_
#if defined(PSB_OPENMP) #if defined(PSB_OPENMP)
!$omp parallel do private(i) !$omp parallel do private(i)
do i = first_, last_ do i = first_, last_
@ -1031,6 +1033,9 @@ contains
#else #else
x%v(first_:last_) = val x%v(first_:last_) = val
#endif #endif
write(0,*) 'end of set_scal',&
& ((last_-first_+1)/2+first_),&
& x%v((last_-first_+1)/2+first_)
call x%set_host() call x%set_host()
end subroutine d_base_set_scal end subroutine d_base_set_scal
@ -1093,16 +1098,18 @@ contains
!! \brief Get one entry from the vector !! \brief Get one entry from the vector
!! !!
! !
module function d_base_get_entry(x, index) result(res) module function d_base_get_entry(x, index) result(res)
implicit none implicit none
class(psb_d_base_vect_type), intent(inout) :: x class(psb_d_base_vect_type), intent(inout) :: x
integer(psb_ipk_), intent(in) :: index integer(psb_ipk_), intent(in) :: index
real(psb_dpk_) :: res real(psb_dpk_) :: res
res = dzero res = dzero
write(0,*) 'base%get_entry ',allocated(x%v),index
if (allocated(x%v)) then if (allocated(x%v)) then
if (x%is_dev()) call x%sync() if (x%is_dev()) call x%sync()
res = x%v(index) res = x%v(index)
write(0,*) 'base%get_entry out',index,res
end if end if
end function d_base_get_entry end function d_base_get_entry

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -266,6 +266,7 @@ contains
end if end if
ixb = psb_c_get_index_base() ixb = psb_c_get_index_base()
write(0,*) 'C_get_entry: ',index,(index+(1-ixb))
res = xp%get_entry((index+(1-ixb))) res = xp%get_entry((index+(1-ixb)))
end function psb_c_dvect_get_entry end function psb_c_dvect_get_entry

Loading…
Cancel
Save