SPHinXsys
SPHinXsys copied to clipboard
Constitutive laws for elastic mechanics are incorrect
Due to the split code pathway and implementation for solid and shell (StressPK2
/StressCauchy
), the material models are yielding mismatching stress results meaning material models behave differently whether a material model is used with a solid or a shell.
For all those material models, we currently have the invariant $\mathbf{F}\mathbf{S}\mathbf{F}^T/J = \boldsymbol\sigma$ violated
[ctest] sphinxsys_upstream/tests/unit_tests_src/shared/test_materials/test_materials.cpp:25: Failure
[ctest] Value of: sanity_check(SPH::LinearElasticSolid{1, E, nu})
[ctest] Actual: false
[ctest] Expected: true
[ctest] sphinxsys_upstream/tests/unit_tests_src/shared/test_materials/test_materials.cpp:26: Failure
[ctest] Value of: sanity_check(SPH::SaintVenantKirchhoffSolid{1, E, nu})
[ctest] Actual: false
[ctest] Expected: true
[ctest] sphinxsys_upstream/tests/unit_tests_src/shared/test_materials/test_materials.cpp:27: Failure
[ctest] Value of: sanity_check(SPH::NeoHookeanSolidIncompressible{1, E, nu})
[ctest] Actual: false
[ctest] Expected: true
[ctest] sphinxsys_upstream/tests/unit_tests_src/shared/test_materials/test_materials.cpp:28: Failure
[ctest] Value of: sanity_check(SPH::NeoHookeanSolid{1, E, nu})
[ctest] Actual: false
[ctest] Expected: true