mirror of
https://github.com/sfilippone/psblas3.git
synced 2026-10-16 02:49:03 +00:00
Fixed conversion bug, changed SPASB interface
This commit is contained in:
@@ -3643,9 +3643,8 @@ subroutine psb_c_ecsr_csmv(alpha,a,x,beta,y,info,trans)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
if (((beta == cone).and..not.(tra.or.ctra))&
|
||||
& .or.(a%is_triangle()).or.(a%is_unit())) then
|
||||
|
||||
if ((beta == cone).and.&
|
||||
& .not.(tra.or.ctra.or.(a%is_triangle()).or.(a%is_unit()))) then
|
||||
call psb_c_ecsr_csmv_inner(m,n,alpha,a%irp,a%ja,a%val,&
|
||||
& a%nnerws,a%nerwp,x,y)
|
||||
else
|
||||
@@ -3672,9 +3671,6 @@ contains
|
||||
|
||||
if (alpha == czero) return
|
||||
|
||||
|
||||
|
||||
|
||||
if (alpha == cone) then
|
||||
!$omp parallel do private(ir,i,j,acc)
|
||||
do ir=1,nnerws
|
||||
@@ -3740,6 +3736,7 @@ subroutine psb_c_ecsr_cmp_nerwp(a,info)
|
||||
end if
|
||||
end do
|
||||
call psb_realloc(nnerws,a%nerwp,info)
|
||||
a%nnerws = nnerws
|
||||
end subroutine psb_c_ecsr_cmp_nerwp
|
||||
|
||||
subroutine psb_c_cp_ecsr_from_coo(a,b,info)
|
||||
|
||||
@@ -3643,9 +3643,8 @@ subroutine psb_d_ecsr_csmv(alpha,a,x,beta,y,info,trans)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
if (((beta == done).and..not.(tra.or.ctra))&
|
||||
& .or.(a%is_triangle()).or.(a%is_unit())) then
|
||||
|
||||
if ((beta == done).and.&
|
||||
& .not.(tra.or.ctra.or.(a%is_triangle()).or.(a%is_unit()))) then
|
||||
call psb_d_ecsr_csmv_inner(m,n,alpha,a%irp,a%ja,a%val,&
|
||||
& a%nnerws,a%nerwp,x,y)
|
||||
else
|
||||
@@ -3672,9 +3671,6 @@ contains
|
||||
|
||||
if (alpha == dzero) return
|
||||
|
||||
|
||||
|
||||
|
||||
if (alpha == done) then
|
||||
!$omp parallel do private(ir,i,j,acc)
|
||||
do ir=1,nnerws
|
||||
@@ -3740,6 +3736,7 @@ subroutine psb_d_ecsr_cmp_nerwp(a,info)
|
||||
end if
|
||||
end do
|
||||
call psb_realloc(nnerws,a%nerwp,info)
|
||||
a%nnerws = nnerws
|
||||
end subroutine psb_d_ecsr_cmp_nerwp
|
||||
|
||||
subroutine psb_d_cp_ecsr_from_coo(a,b,info)
|
||||
|
||||
@@ -3643,9 +3643,8 @@ subroutine psb_s_ecsr_csmv(alpha,a,x,beta,y,info,trans)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
if (((beta == sone).and..not.(tra.or.ctra))&
|
||||
& .or.(a%is_triangle()).or.(a%is_unit())) then
|
||||
|
||||
if ((beta == sone).and.&
|
||||
& .not.(tra.or.ctra.or.(a%is_triangle()).or.(a%is_unit()))) then
|
||||
call psb_s_ecsr_csmv_inner(m,n,alpha,a%irp,a%ja,a%val,&
|
||||
& a%nnerws,a%nerwp,x,y)
|
||||
else
|
||||
@@ -3672,9 +3671,6 @@ contains
|
||||
|
||||
if (alpha == szero) return
|
||||
|
||||
|
||||
|
||||
|
||||
if (alpha == sone) then
|
||||
!$omp parallel do private(ir,i,j,acc)
|
||||
do ir=1,nnerws
|
||||
@@ -3740,6 +3736,7 @@ subroutine psb_s_ecsr_cmp_nerwp(a,info)
|
||||
end if
|
||||
end do
|
||||
call psb_realloc(nnerws,a%nerwp,info)
|
||||
a%nnerws = nnerws
|
||||
end subroutine psb_s_ecsr_cmp_nerwp
|
||||
|
||||
subroutine psb_s_cp_ecsr_from_coo(a,b,info)
|
||||
|
||||
@@ -3643,9 +3643,8 @@ subroutine psb_z_ecsr_csmv(alpha,a,x,beta,y,info,trans)
|
||||
goto 9999
|
||||
end if
|
||||
|
||||
if (((beta == zone).and..not.(tra.or.ctra))&
|
||||
& .or.(a%is_triangle()).or.(a%is_unit())) then
|
||||
|
||||
if ((beta == zone).and.&
|
||||
& .not.(tra.or.ctra.or.(a%is_triangle()).or.(a%is_unit()))) then
|
||||
call psb_z_ecsr_csmv_inner(m,n,alpha,a%irp,a%ja,a%val,&
|
||||
& a%nnerws,a%nerwp,x,y)
|
||||
else
|
||||
@@ -3672,9 +3671,6 @@ contains
|
||||
|
||||
if (alpha == zzero) return
|
||||
|
||||
|
||||
|
||||
|
||||
if (alpha == zone) then
|
||||
!$omp parallel do private(ir,i,j,acc)
|
||||
do ir=1,nnerws
|
||||
@@ -3740,6 +3736,7 @@ subroutine psb_z_ecsr_cmp_nerwp(a,info)
|
||||
end if
|
||||
end do
|
||||
call psb_realloc(nnerws,a%nerwp,info)
|
||||
a%nnerws = nnerws
|
||||
end subroutine psb_z_ecsr_cmp_nerwp
|
||||
|
||||
subroutine psb_z_cp_ecsr_from_coo(a,b,info)
|
||||
|
||||
Reference in New Issue
Block a user