Skip to content

Commit 1bda6ec

Browse files
committed
Promote before constructing
See #25
1 parent 16a86ef commit 1bda6ec

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/types.jl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,20 +49,20 @@ end
4949
# Constructors
5050
for T in (:EngineeringStress, :EngineeringStrain)
5151
@eval begin
52-
$T(data::AbstractVector) = $T(MVector{6}(data))
52+
$T(data::AbstractVector) = $T(MVector{6}(promote(data...)))
5353
$T(values...) = $T(vec(values))
5454
end
5555
end
5656
for (T, N) in
5757
zip((:TensorStress, :TensorStrain, :StiffnessMatrix, :ComplianceMatrix), (3, 3, 6, 6))
5858
@eval begin
59-
$T(data::AbstractMatrix{S}) where {S} = $T{S}(MMatrix{$N,$N}(data))
59+
$T(data::AbstractMatrix{S}) where {S} = $T{S}(MMatrix{$N,$N}(promote(data...)))
6060
$T(values...) = $T(SymmetricSecondOrderTensor{$N}(values...))
6161
end
6262
end
6363
for T in (:StiffnessTensor, :ComplianceTensor)
6464
@eval $T(data::AbstractArray{S,4}) where {S} =
65-
$T{S}(SymmetricFourthOrderTensor{3}(data))
65+
$T{S}(SymmetricFourthOrderTensor{3}(promote(data...)))
6666
end
6767

6868
Base.size(::Type{<:TensorVariable}) = (3, 3)

0 commit comments

Comments
 (0)