feat(cpp-object-oriented-modular-refactoring): step 14 - runtime-element-factory
This commit is contained in:
@@ -535,7 +535,7 @@ TEST(EulerBeam3D, HermiteAndBMatrixMatchReviewedSigns) {
|
||||
displacement[10U] = -slope(w, length);
|
||||
displacement[11U] = slope(v, length);
|
||||
|
||||
const BeamRecovery recovery = beam.Recover(displacement);
|
||||
const BeamRecovery recovery = beam.RecoverBeam(displacement);
|
||||
const double inverse_sqrt_three = 1.0 / std::sqrt(3.0);
|
||||
const std::array<double, 2> gauss_xi = {-inverse_sqrt_three,
|
||||
inverse_sqrt_three};
|
||||
@@ -718,7 +718,7 @@ TEST(EulerBeam3D, RotatedTransformPreservesWorkAndEnergy) {
|
||||
ExpectScaledNear(global_variation.Dot(global_force),
|
||||
local_variation.Dot(local_force), kMatrixTolerance);
|
||||
|
||||
const BeamRecovery recovery = beam.Recover(global_displacement);
|
||||
const BeamRecovery recovery = beam.RecoverBeam(global_displacement);
|
||||
EXPECT_NEAR(recovery.gauss_generalized_strains[0U][0U],
|
||||
(local_displacement[6U] - local_displacement[0U]) / 3.0, 1.0e-14);
|
||||
}
|
||||
@@ -738,7 +738,7 @@ TEST(EulerBeam3D, PreservesExactRotatedResultsAcrossVector3Migration) {
|
||||
for (std::size_t index = 0U; index < displacement.Size(); ++index) {
|
||||
displacement[index] = 0.01 * static_cast<double>(index + 1U) - 0.04;
|
||||
}
|
||||
const BeamRecovery recovery = beam.Recover(displacement);
|
||||
const BeamRecovery recovery = beam.RecoverBeam(displacement);
|
||||
|
||||
EXPECT_DOUBLE_EQ(global(0U, 0U), 0x1.65f135da12f68p+28);
|
||||
EXPECT_DOUBLE_EQ(global(0U, 1U), 0x1.6261c084bda12p+28);
|
||||
@@ -829,7 +829,7 @@ TEST(EulerBeam3D, AnalyticalAxialTorsionAndTwoPlaneBendingRecover) {
|
||||
axial[6U],
|
||||
axial_force * length / (material.youngs_modulus * section.area),
|
||||
kAnalyticalTolerance);
|
||||
const BeamRecovery axial_recovery = beam.Recover(axial);
|
||||
const BeamRecovery axial_recovery = beam.RecoverBeam(axial);
|
||||
ExpectRelativeNear(axial_recovery.equilibrium_end_actions[0U][0U],
|
||||
-axial_force, kAnalyticalTolerance);
|
||||
ExpectRelativeNear(axial_recovery.equilibrium_end_actions[1U][0U],
|
||||
@@ -846,7 +846,7 @@ TEST(EulerBeam3D, AnalyticalAxialTorsionAndTwoPlaneBendingRecover) {
|
||||
torsion[9U],
|
||||
torque * length / (shear_modulus * section.torsional_constant),
|
||||
kAnalyticalTolerance);
|
||||
const BeamRecovery torsion_recovery = beam.Recover(torsion);
|
||||
const BeamRecovery torsion_recovery = beam.RecoverBeam(torsion);
|
||||
ExpectRelativeNear(torsion_recovery.equilibrium_end_actions[0U][3U], -torque,
|
||||
kAnalyticalTolerance);
|
||||
ExpectRelativeNear(torsion_recovery.equilibrium_end_actions[1U][3U], torque,
|
||||
@@ -865,7 +865,7 @@ TEST(EulerBeam3D, AnalyticalAxialTorsionAndTwoPlaneBendingRecover) {
|
||||
local_yforce * length * length /
|
||||
(2.0 * material.youngs_modulus * section.i22),
|
||||
kAnalyticalTolerance);
|
||||
const BeamRecovery local_yrecovery = beam.Recover(local_y);
|
||||
const BeamRecovery local_yrecovery = beam.RecoverBeam(local_y);
|
||||
ExpectRelativeNear(local_yrecovery.equilibrium_end_actions[0U][1U],
|
||||
-local_yforce, kAnalyticalTolerance);
|
||||
ExpectRelativeNear(local_yrecovery.equilibrium_end_actions[1U][1U],
|
||||
@@ -887,7 +887,7 @@ TEST(EulerBeam3D, AnalyticalAxialTorsionAndTwoPlaneBendingRecover) {
|
||||
-local_zforce * length * length /
|
||||
(2.0 * material.youngs_modulus * section.i11),
|
||||
kAnalyticalTolerance);
|
||||
const BeamRecovery local_zrecovery = beam.Recover(local_z);
|
||||
const BeamRecovery local_zrecovery = beam.RecoverBeam(local_z);
|
||||
ExpectRelativeNear(local_zrecovery.equilibrium_end_actions[0U][2U],
|
||||
-local_zforce, kAnalyticalTolerance);
|
||||
ExpectRelativeNear(local_zrecovery.equilibrium_end_actions[1U][2U],
|
||||
@@ -1028,7 +1028,7 @@ TEST(EulerBeam3D, RecoversSectionPointAndDefaultCentroidS11) {
|
||||
displacement[10U] = kappa_y * length;
|
||||
displacement[11U] = kappa_z * length;
|
||||
|
||||
const BeamRecovery recovery = beam.Recover(displacement);
|
||||
const BeamRecovery recovery = beam.RecoverBeam(displacement);
|
||||
ASSERT_EQ(recovery.stress_points.size(), 4U);
|
||||
for (std::size_t gauss_point = 0; gauss_point < 2U; ++gauss_point) {
|
||||
for (std::size_t point = 0; point < section.section_points.size();
|
||||
@@ -1050,7 +1050,7 @@ TEST(EulerBeam3D, RecoversSectionPointAndDefaultCentroidS11) {
|
||||
}
|
||||
|
||||
const auto default_beam = AlignedBeam(length, MakeSection(), material);
|
||||
const BeamRecovery default_recovery = default_beam.Recover(displacement);
|
||||
const BeamRecovery default_recovery = default_beam.RecoverBeam(displacement);
|
||||
ASSERT_EQ(default_recovery.stress_points.size(), 2U);
|
||||
for (std::size_t gauss_point = 0; gauss_point < 2U; ++gauss_point) {
|
||||
const BeamStressPoint& stress = default_recovery.stress_points[gauss_point];
|
||||
@@ -1091,7 +1091,7 @@ TEST(EulerBeam3D, ReproducesConstantStrainTwistAndCurvaturePatches) {
|
||||
shear_modulus * section.torsional_constant * twist,
|
||||
material.youngs_modulus * section.i11 * kappa_y,
|
||||
material.youngs_modulus * section.i22 * kappa_z};
|
||||
const BeamRecovery recovery = beam.Recover(displacement);
|
||||
const BeamRecovery recovery = beam.RecoverBeam(displacement);
|
||||
for (std::size_t point = 0; point < 2U; ++point) {
|
||||
for (std::size_t component = 0; component < 4U; ++component) {
|
||||
ExpectScaledNear(recovery.gauss_generalized_strains[point][component],
|
||||
|
||||
Reference in New Issue
Block a user