fix(hex8): retain tensor failure priority before MKL dispatch
This commit is contained in:
@@ -428,6 +428,10 @@ Result<Hex8Response> Hex8Element::Evaluate(const Vector& u,
|
||||
Matrix shear{0U, 0U};
|
||||
Matrix gram{0U, 0U};
|
||||
Matrix geometric{0U, 0U};
|
||||
if (!Finite(f) || !Finite(strain) || !Finite(s) || !Finite(p) ||
|
||||
!Finite(fft) || !Finite(stress))
|
||||
return Result<Hex8Response>::Failure(
|
||||
Failure("Hex8 trial tensor is nonfinite."));
|
||||
if (nonlinear) {
|
||||
std::array<Triple, 8> fg{};
|
||||
for (std::size_t a = 0; a < 8; ++a)
|
||||
@@ -475,10 +479,6 @@ Result<Hex8Response> Hex8Element::Evaluate(const Vector& u,
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!Finite(f) || !Finite(strain) || !Finite(s) || !Finite(p) ||
|
||||
!Finite(fft) || !Finite(stress))
|
||||
return Result<Hex8Response>::Failure(
|
||||
Failure("Hex8 trial tensor is nonfinite."));
|
||||
response.points[g] = {element_index_, static_cast<int>(g + 1U),
|
||||
point.natural, point.position,
|
||||
Pack(stress), Pack(strain)};
|
||||
|
||||
Reference in New Issue
Block a user