mirror of
https://github.com/sfilippone/amg4psblas.git
synced 2026-10-20 12:52:16 +00:00
mld2p4
mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_zmlprec_aply.f90 Fix bad use of assignment for vectors.
This commit is contained in:
@@ -1612,7 +1612,8 @@ contains
|
||||
& a_err='Invalid LEVEL>NLEV')
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geasb(res,p%precv(level)%base_desc,info,&
|
||||
& scratch=.true., mold=mlprec_wrk(level)%vx2l%v)
|
||||
|
||||
!V/W cycle
|
||||
if (level > 1) then
|
||||
@@ -1645,7 +1646,8 @@ contains
|
||||
else
|
||||
call mlprec_wrk(level)%vy2l%zero()
|
||||
endif
|
||||
res = mlprec_wrk(level)%vx2l
|
||||
call psb_geaxpby(cone,mlprec_wrk(level)%vx2l,czero,res,&
|
||||
& p%precv(level)%base_desc,info)
|
||||
|
||||
call psb_spmm(-cone,p%precv(level)%base_a,mlprec_wrk(level)%vy2l,&
|
||||
cone, res, p%precv(level)%base_desc, info, work=work, trans=trans)
|
||||
|
||||
@@ -1612,7 +1612,8 @@ contains
|
||||
& a_err='Invalid LEVEL>NLEV')
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geasb(res,p%precv(level)%base_desc,info,&
|
||||
& scratch=.true., mold=mlprec_wrk(level)%vx2l%v)
|
||||
|
||||
!V/W cycle
|
||||
if (level > 1) then
|
||||
@@ -1645,7 +1646,8 @@ contains
|
||||
else
|
||||
call mlprec_wrk(level)%vy2l%zero()
|
||||
endif
|
||||
res = mlprec_wrk(level)%vx2l
|
||||
call psb_geaxpby(done,mlprec_wrk(level)%vx2l,dzero,res,&
|
||||
& p%precv(level)%base_desc,info)
|
||||
|
||||
call psb_spmm(-done,p%precv(level)%base_a,mlprec_wrk(level)%vy2l,&
|
||||
done, res, p%precv(level)%base_desc, info, work=work, trans=trans)
|
||||
|
||||
@@ -1612,7 +1612,8 @@ contains
|
||||
& a_err='Invalid LEVEL>NLEV')
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geasb(res,p%precv(level)%base_desc,info,&
|
||||
& scratch=.true., mold=mlprec_wrk(level)%vx2l%v)
|
||||
|
||||
!V/W cycle
|
||||
if (level > 1) then
|
||||
@@ -1645,7 +1646,8 @@ contains
|
||||
else
|
||||
call mlprec_wrk(level)%vy2l%zero()
|
||||
endif
|
||||
res = mlprec_wrk(level)%vx2l
|
||||
call psb_geaxpby(sone,mlprec_wrk(level)%vx2l,szero,res,&
|
||||
& p%precv(level)%base_desc,info)
|
||||
|
||||
call psb_spmm(-sone,p%precv(level)%base_a,mlprec_wrk(level)%vy2l,&
|
||||
sone, res, p%precv(level)%base_desc, info, work=work, trans=trans)
|
||||
|
||||
@@ -1612,7 +1612,8 @@ contains
|
||||
& a_err='Invalid LEVEL>NLEV')
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
call psb_geasb(res,p%precv(level)%base_desc,info,&
|
||||
& scratch=.true., mold=mlprec_wrk(level)%vx2l%v)
|
||||
|
||||
!V/W cycle
|
||||
if (level > 1) then
|
||||
@@ -1645,7 +1646,8 @@ contains
|
||||
else
|
||||
call mlprec_wrk(level)%vy2l%zero()
|
||||
endif
|
||||
res = mlprec_wrk(level)%vx2l
|
||||
call psb_geaxpby(zone,mlprec_wrk(level)%vx2l,zzero,res,&
|
||||
& p%precv(level)%base_desc,info)
|
||||
|
||||
call psb_spmm(-zone,p%precv(level)%base_a,mlprec_wrk(level)%vy2l,&
|
||||
zone, res, p%precv(level)%base_desc, info, work=work, trans=trans)
|
||||
|
||||
Reference in New Issue
Block a user