Skip to content

Commit 3fbb854

Browse files
committed
speed improvement for 2x2 inv
1 parent 0cd325a commit 3fbb854

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/inv.jl

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ end
77
@inline _inv(::Size{(1,1)}, A, S::Type) = inv(A[1])
88

99
@inline function _inv(::Size{(2,2)}, A, S::Type)
10-
newtype = similar_type(A, S)
11-
d = det(A)
12-
@inbounds return newtype((A[4]/d, -(A[2]/d), -(A[3]/d), A[1]/d))
10+
newtype = similar_type(A,S)
11+
A = newtype(A)
12+
idet = 1/det(A)
13+
@inbounds return newtype((A[4]*idet, -(A[2]*idet), -(A[3]*idet), A[1]*idet))
1314
end
1415

1516
@inline function _inv(::Size{(3,3)}, A,S::Type)

0 commit comments

Comments
 (0)