Skip to content

Commit 31cb999

Browse files
committed
refactor: speed up ustrip from redundant dimensional calculation
1 parent 464141d commit 31cb999

File tree

2 files changed

+2
-3
lines changed

2 files changed

+2
-3
lines changed

src/arrays.jl

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,8 +155,7 @@ end
155155
@inline function ustrip(unit::UnionAbstractQuantity, q::QuantityArray)
156156
unit, q = promote_except_value(unit, q)
157157
dimension(unit) == dimension(q) || throw(DimensionError(unit, q))
158-
conversion_factor = ustrip(dimension(q) / unit)
159-
return ustrip(q) .* conversion_factor
158+
return ustrip(q) ./ ustrip(unit)
160159
end
161160
@inline dimension(A::QuantityArray) = A.dimensions
162161

src/utils.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -411,7 +411,7 @@ julia> ustrip(u"km", [1000u"m", 2000u"m"])
411411
@inline function ustrip(unit::UnionAbstractQuantity, q::UnionAbstractQuantity)
412412
unit, q = promote_except_value(unit, q)
413413
dimension(unit) == dimension(q) || throw(DimensionError(unit, q))
414-
return ustrip(q / unit)
414+
return ustrip(q) / ustrip(unit)
415415
end
416416

417417
"""

0 commit comments

Comments
 (0)