|
|
@ -454,8 +454,13 @@ subroutine amg_c_hierarchy_bld(a,desc_a,prec,info)
|
|
|
|
do i=2, iszv
|
|
|
|
do i=2, iszv
|
|
|
|
prec%precv(i)%base_a => prec%precv(i)%ac
|
|
|
|
prec%precv(i)%base_a => prec%precv(i)%ac
|
|
|
|
prec%precv(i)%base_desc => prec%precv(i)%desc_ac
|
|
|
|
prec%precv(i)%base_desc => prec%precv(i)%desc_ac
|
|
|
|
prec%precv(i)%linmap%p_desc_U => prec%precv(i-1)%base_desc
|
|
|
|
! This is needed when the linmap object has been built
|
|
|
|
prec%precv(i)%linmap%p_desc_V => prec%precv(i)%base_desc
|
|
|
|
! reusing the base_desc descriptor through a pointer.
|
|
|
|
|
|
|
|
! With PSBLAS 4 we will have a better solution
|
|
|
|
|
|
|
|
if (associated(prec%precv(i)%linmap%p_desc_U)) &
|
|
|
|
|
|
|
|
& prec%precv(i)%linmap%p_desc_U => prec%precv(i-1)%base_desc
|
|
|
|
|
|
|
|
if (associated(prec%precv(i)%linmap%p_desc_V))&
|
|
|
|
|
|
|
|
& prec%precv(i)%linmap%p_desc_V => prec%precv(i)%base_desc
|
|
|
|
end do
|
|
|
|
end do
|
|
|
|
end if
|
|
|
|
end if
|
|
|
|
|
|
|
|
|
|
|
|