@@ -453,10 +453,11 @@ function __mul(A::AbstractMatrix{Interval{T}}, B::AbstractVecOrMat{Interval{T}})
453
453
U = mA; U .= _add_round .(abs .(mA), rA, RoundUp)
454
454
V = mB; V .= _add_round .(abs .(mB), rB, RoundUp)
455
455
456
- rC = _call_gem_openblas_upward! (cache_1, U, V)
457
- rC .+ = .- μ .+ 2 .* γ
456
+ cache_3 = zeros (T, size (A, 1 ), size (B, 2 ))
457
+ rC = _call_gem_openblas_upward! (cache_3, U, V)
458
+ rC .= _add_round .(_sub_round .(rC, μ, RoundUp), 2 .* γ, RoundUp)
458
459
459
- return mC, rC
460
+ return @show mC, rC
460
461
end
461
462
462
463
function _vec_or_mat_midradius (A:: AbstractVecOrMat{Interval{T}} ) where {T<: AbstractFloat }
@@ -536,16 +537,15 @@ function _call_gem_openblas_upward!(C, A::AbstractMatrix{Float64}, B::AbstractMa
536
537
end
537
538
538
539
function _call_gem_openblas_upward! (C, A:: AbstractMatrix{Float64} , B:: AbstractVector{Float64} )
539
- prev_rounding = _getrounding () # save current rounding mode
540
- _setrounding (JL_FE_UPWARD) # set rounding mode to upward
541
-
542
540
m, k = size (A)
543
541
544
542
α = 1.0
545
543
β = 0.0
546
544
547
545
transA = ' N'
548
546
547
+ prev_rounding = _getrounding () # save current rounding mode
548
+ _setrounding (JL_FE_UPWARD) # set rounding mode to upward
549
549
try
550
550
ccall ((:dgemv_64_ , OpenBLASConsistentFPCSR_jll. libopenblas), Cvoid,
551
551
(Ref{UInt8}, Ref{LinearAlgebra. BLAS. BlasInt}, Ref{LinearAlgebra. BLAS. BlasInt},
0 commit comments