Merge branch 'development' into cmake

cmake
Luca Pepè Sciarria 11 months ago
commit 3cd334ea5d

@ -3693,7 +3693,7 @@ subroutine psb_ccsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -3773,8 +3773,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if
@ -4238,7 +4238,7 @@ subroutine psb_ccsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -4303,8 +4303,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if

@ -3693,7 +3693,7 @@ subroutine psb_dcsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -3773,8 +3773,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if
@ -4238,7 +4238,7 @@ subroutine psb_dcsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -4303,8 +4303,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if

@ -3693,7 +3693,7 @@ subroutine psb_scsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -3773,8 +3773,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if
@ -4238,7 +4238,7 @@ subroutine psb_scsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -4303,8 +4303,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if

@ -3693,7 +3693,7 @@ subroutine psb_zcsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -3773,8 +3773,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if
@ -4238,7 +4238,7 @@ subroutine psb_zcsrspspmm(a,b,c,info)
! Estimate number of nonzeros on output. ! Estimate number of nonzeros on output.
nza = a%get_nzeros() nza = a%get_nzeros()
nzb = b%get_nzeros() nzb = b%get_nzeros()
nzc = 2*(nza+nzb) nzc = max(nint(0.5*(nza+nzb)),ma,mb,na,nb)
call c%allocate(ma,nb,nzc) call c%allocate(ma,nb,nzc)
call csr_spspmm(a,b,c,info) call csr_spspmm(a,b,c,info)
@ -4303,8 +4303,8 @@ contains
if (nrc > 0 ) then if (nrc > 0 ) then
if ((nzc+nrc)>nze) then if ((nzc+nrc)>nze) then
nze = max(ma*((nzc+j-1)/j),nzc+2*nrc) nze = max(ma*((nzc+j-1)/j),nzc+2*nrc)
call psb_realloc(nze,c%val,info) call psb_ensure_size(nze,c%val,info)
if (info == 0) call psb_realloc(nze,c%ja,info) if (info == 0) call psb_ensure_size(nze,c%ja,info)
if (info /= 0) return if (info /= 0) return
end if end if

Loading…
Cancel
Save