As a user/user-support, I would like to get a clear error message when degrees of freedom related to 3D models (e.g. DISPLACEMENT_Z, ROTATION_Z) are missing.
Background
We'll need to discuss the best way to find out if a model is 3D. The computational model part is available in the Check function.
Currently, the check code looks like this:
// We don't check for "Z", since it is optional (in case of a 2D problem)
std::vector<std::string> components{"X", "Y"};
for (const auto& component : components) {
const auto& variable_component = VariablesUtilities::GetComponentFromVectorVariable(
r_second_order_vector_variable.instance.Name(), component);
this->CheckDof(r_node, variable_component);
}
Acceptance Criteria
Given a 3D model with a missing 'Z-DoF'
When the model is run
Then a clear error message is presented to the user
Given a 2D model without a 'Z-DoF'
When the model is run
Then no error is thrown