Mods jac solver

development
sfilippone 1 week ago
parent c8d065fa55
commit 0814492adc

@ -100,6 +100,10 @@ subroutine amg_c_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = cone/sv%d(i) sv%d(i) = cone/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

@ -103,6 +103,10 @@ subroutine amg_c_l1_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = cone/sv%d(i) sv%d(i) = cone/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

@ -100,6 +100,10 @@ subroutine amg_d_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = done/sv%d(i) sv%d(i) = done/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

@ -103,6 +103,10 @@ subroutine amg_d_l1_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = done/sv%d(i) sv%d(i) = done/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

@ -100,6 +100,10 @@ subroutine amg_s_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = sone/sv%d(i) sv%d(i) = sone/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

@ -103,6 +103,10 @@ subroutine amg_s_l1_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = sone/sv%d(i) sv%d(i) = sone/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

@ -100,6 +100,10 @@ subroutine amg_z_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = zone/sv%d(i) sv%d(i) = zone/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

@ -103,6 +103,10 @@ subroutine amg_z_l1_jac_solver_bld(a,desc_a,sv,info,b,amold,vmold,imold)
sv%d(i) = zone/sv%d(i) sv%d(i) = zone/sv%d(i)
end if end if
end do end do
if (allocated(sv%dv)) then
call sv%dv%free(info)
deallocate(sv%dv)
end if
allocate(sv%dv,stat=info) allocate(sv%dv,stat=info)
if (info == psb_success_) then if (info == psb_success_) then
call sv%dv%bld(sv%d) call sv%dv%bld(sv%d)

Loading…
Cancel
Save