Skip to content

Commit dfd30d8

Browse files
committed
using StaticArraysCore
1 parent 5e0c94d commit dfd30d8

File tree

6 files changed

+12
-9
lines changed

6 files changed

+12
-9
lines changed

Project.toml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Preferences = "21216c6a-2e73-6563-6e65-726566657250"
1313
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
1414
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
1515
SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b"
16-
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
16+
StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c"
1717

1818
[compat]
1919
Calculus = "0.5"
@@ -25,15 +25,17 @@ LogExpFunctions = "0.3"
2525
NaNMath = "1"
2626
Preferences = "1"
2727
SpecialFunctions = "1, 2"
28-
StaticArrays = "1.5"
28+
StaticArrays = "1.5.7"
29+
StaticArraysCore = "1.3.0"
2930
julia = "1.6"
3031

3132
[extras]
3233
Calculus = "49dc2e85-a5d0-5ad3-a950-438e2897f1b9"
3334
DiffTests = "de460e47-3fe3-5279-bb4a-814414816d5d"
3435
InteractiveUtils = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
3536
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
37+
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
3638
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
3739

3840
[targets]
39-
test = ["Calculus", "DiffTests", "SparseArrays", "Test", "InteractiveUtils"]
41+
test = ["Calculus", "DiffTests", "SparseArrays", "StaticArrays", "Test", "InteractiveUtils"]

src/ForwardDiff.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ module ForwardDiff
22

33
using DiffRules, DiffResults
44
using DiffResults: DiffResult, MutableDiffResult, ImmutableDiffResult
5-
using StaticArrays
5+
using StaticArraysCore
6+
using StaticArraysCore: StaticArray, StaticMatrix
67
if VERSION >= v"1.6"
78
using Preferences
89
end

src/apiutils.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ end
2121
@generated function dualize(::Type{T}, x::StaticArray) where T
2222
N = length(x)
2323
dx = Expr(:tuple, [:(Dual{T}(x[$i], chunk, Val{$i}())) for i in 1:N]...)
24-
V = StaticArrays.similar_type(x, Dual{T,eltype(x),N})
24+
V = StaticArraysCore.similar_type(x, Dual{T,eltype(x),N})
2525
return quote
2626
chunk = Chunk{$N}()
2727
$(Expr(:meta, :inline))

src/dual.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -731,7 +731,7 @@ function LinearAlgebra.eigvals(A::Symmetric{<:Dual{Tg,T,N}}) where {Tg,T<:Real,N
731731
Dual{Tg}.(λ, tuple.(parts...))
732732
end
733733

734-
function LinearAlgebra.eigvals(A::Symmetric{<:Dual{Tg,T,N}, <:StaticArrays.StaticMatrix}) where {Tg,T<:Real,N}
734+
function LinearAlgebra.eigvals(A::Symmetric{<:Dual{Tg,T,N}, <:StaticArraysCore.StaticMatrix}) where {Tg,T<:Real,N}
735735
λ,Q = eigen(Symmetric(value.(parent(A))))
736736
parts = ntuple(j -> diag(Q' * getindex.(partials.(A), j) * Q), N)
737737
Dual{Tg}.(λ, tuple.(parts...))
@@ -766,7 +766,7 @@ function LinearAlgebra.eigen(A::Symmetric{<:Dual{Tg,T,N}}) where {Tg,T<:Real,N}
766766
Eigen(λ,Dual{Tg}.(Q, tuple.(parts...)))
767767
end
768768

769-
function LinearAlgebra.eigen(A::Symmetric{<:Dual{Tg,T,N}, <:StaticArrays.StaticMatrix}) where {Tg,T<:Real,N}
769+
function LinearAlgebra.eigen(A::Symmetric{<:Dual{Tg,T,N}, <:StaticArraysCore.StaticMatrix}) where {Tg,T<:Real,N}
770770
λ = eigvals(A)
771771
_,Q = eigen(Symmetric(value.(parent(A))))
772772
parts = ntuple(j -> Q*_lyap_div!(Q' * getindex.(partials.(A), j) * Q - Diagonal(getindex.(partials.(λ), j)), value.(λ)), N)

src/gradient.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ gradient(f, x::Real) = throw(DimensionMismatch("gradient(f, x) expects that x is
5959
result = Expr(:tuple, [:(partials(T, y, $i)) for i in 1:length(x)]...)
6060
return quote
6161
$(Expr(:meta, :inline))
62-
V = StaticArrays.similar_type(S, valtype($y))
62+
V = StaticArraysCore.similar_type(S, valtype($y))
6363
return V($result)
6464
end
6565
end

src/jacobian.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ jacobian(f, x::Real) = throw(DimensionMismatch("jacobian(f, x) expects that x is
101101
result = Expr(:tuple, [:(partials(T, ydual[$i], $j)) for i in 1:M, j in 1:N]...)
102102
return quote
103103
$(Expr(:meta, :inline))
104-
V = StaticArrays.similar_type(S, valtype(eltype($ydual)), Size($M, $N))
104+
V = StaticArraysCore.similar_type(S, valtype(eltype($ydual)), Size($M, $N))
105105
return V($result)
106106
end
107107
end

0 commit comments

Comments
 (0)