mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-19 04:12:09 +00:00
psblas3:
prec/impl/psb_c_prec_type_impl.f90 prec/impl/psb_d_prec_type_impl.f90 prec/impl/psb_s_prec_type_impl.f90 prec/impl/psb_z_prec_type_impl.f90 In psb_precaply make use of geasb( , scratch)
This commit is contained in:
@@ -153,12 +153,11 @@ subroutine psb_c_apply1_vect(prec,x,desc_data,info,trans,work)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geall(ww,desc_data,info)
|
||||
if (info == 0) call psb_geasb(ww,desc_data,info,mold=x%v)
|
||||
call psb_geasb(ww,desc_data,info,mold=x%v,scratch=.true.)
|
||||
if (info == 0) call prec%prec%apply(cone,x,czero,ww,desc_data,info,&
|
||||
& trans=trans_,work=work_)
|
||||
if (info == 0) call psb_geaxpby(cone,ww,czero,x,desc_data,info)
|
||||
|
||||
call psb_gefree(ww,desc_data,info)
|
||||
if (present(work)) then
|
||||
else
|
||||
deallocate(work_,stat=info)
|
||||
|
||||
@@ -153,12 +153,11 @@ subroutine psb_d_apply1_vect(prec,x,desc_data,info,trans,work)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geall(ww,desc_data,info)
|
||||
if (info == 0) call psb_geasb(ww,desc_data,info,mold=x%v)
|
||||
call psb_geasb(ww,desc_data,info,mold=x%v,scratch=.true.)
|
||||
if (info == 0) call prec%prec%apply(done,x,dzero,ww,desc_data,info,&
|
||||
& trans=trans_,work=work_)
|
||||
if (info == 0) call psb_geaxpby(done,ww,dzero,x,desc_data,info)
|
||||
|
||||
call psb_gefree(ww,desc_data,info)
|
||||
if (present(work)) then
|
||||
else
|
||||
deallocate(work_,stat=info)
|
||||
|
||||
@@ -153,12 +153,11 @@ subroutine psb_s_apply1_vect(prec,x,desc_data,info,trans,work)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geall(ww,desc_data,info)
|
||||
if (info == 0) call psb_geasb(ww,desc_data,info,mold=x%v)
|
||||
call psb_geasb(ww,desc_data,info,mold=x%v,scratch=.true.)
|
||||
if (info == 0) call prec%prec%apply(sone,x,szero,ww,desc_data,info,&
|
||||
& trans=trans_,work=work_)
|
||||
if (info == 0) call psb_geaxpby(sone,ww,szero,x,desc_data,info)
|
||||
|
||||
call psb_gefree(ww,desc_data,info)
|
||||
if (present(work)) then
|
||||
else
|
||||
deallocate(work_,stat=info)
|
||||
|
||||
@@ -153,12 +153,11 @@ subroutine psb_z_apply1_vect(prec,x,desc_data,info,trans,work)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geall(ww,desc_data,info)
|
||||
if (info == 0) call psb_geasb(ww,desc_data,info,mold=x%v)
|
||||
call psb_geasb(ww,desc_data,info,mold=x%v,scratch=.true.)
|
||||
if (info == 0) call prec%prec%apply(zone,x,zzero,ww,desc_data,info,&
|
||||
& trans=trans_,work=work_)
|
||||
if (info == 0) call psb_geaxpby(zone,ww,zzero,x,desc_data,info)
|
||||
|
||||
call psb_gefree(ww,desc_data,info)
|
||||
if (present(work)) then
|
||||
else
|
||||
deallocate(work_,stat=info)
|
||||
|
||||
Reference in New Issue
Block a user