Skip to content
This repository was archived by the owner on Jul 19, 2023. It is now read-only.

Commit 1361084

Browse files
Merge pull request #66 from MSeeker1340/hotfix
`size(A, n)` hotfix for array operator
2 parents 97cb183 + 1d01aad commit 1361084

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/array_operator.jl

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ Base.full(L::DiffEqArrayOperator) = full(L.A) .* L.α.coeff
5656
Base.exp(L::DiffEqArrayOperator) = exp(full(L))
5757
DiffEqBase.has_exp(L::DiffEqArrayOperator) = true
5858
Base.size(L::DiffEqArrayOperator) = size(L.A)
59+
Base.size(L::DiffEqArrayOperator, m::Integer) = size(L.A, m)
5960
LinearAlgebra.opnorm(L::DiffEqArrayOperator, p::Real=2) = opnorm(L.A, p) * abs(L.α.coeff)
6061
DiffEqBase.update_coefficients!(L::DiffEqArrayOperator,u,p,t) = (L.update_func(L.A,u,p,t); L.α = L.α(t); nothing)
6162
DiffEqBase.update_coefficients(L::DiffEqArrayOperator,u,p,t) = (L.update_func(L.A,u,p,t); L.α = L.α(t); L)
@@ -85,17 +86,17 @@ Base.:*(L::DiffEqArrayOperator,b::AbstractArray) = L.α.coeff*L.A*b
8586

8687
function LinearAlgebra.mul!(v::AbstractVector,L::DiffEqArrayOperator,b::AbstractVector)
8788
mul!(v,L.A,b)
88-
scale!(v,L.α.coeff)
89+
rmul!(v,L.α.coeff)
8990
end
9091

9192
function LinearAlgebra.mul!(v::AbstractArray,L::DiffEqArrayOperator,b::AbstractArray)
9293
mul!(v,L.A,b)
93-
scale!(v,L.α.coeff)
94+
rmul!(v,L.α.coeff)
9495
end
9596

9697
function Base.A_ldiv_B!(x,L::DiffEqArrayOperator, b::AbstractArray)
9798
A_ldiv_B!(x,L.A,b)
98-
scale!(x,inv(L.α.coeff))
99+
rmul!(x,inv(L.α.coeff))
99100
end
100101

101102
function Base.:/(x,L::DiffEqArrayOperator)
@@ -134,7 +135,7 @@ Base.svdfact!(L::DiffEqArrayOperator,args...) = FactorizedDiffEqArrayOperator(s
134135

135136
function Base.A_ldiv_B!(x,L::FactorizedDiffEqArrayOperator, b::AbstractArray)
136137
A_ldiv_B!(x,L.A,b)
137-
scale!(x,inv(L.inv_coeff))
138+
rmul!(x,inv(L.inv_coeff))
138139
end
139140

140141
function Base.:\(L::FactorizedDiffEqArrayOperator, b::AbstractArray)

0 commit comments

Comments
 (0)