Skip to content

docs(examples): add elastic footing geomechanics example#10

Merged
Shizheng-Wen merged 1 commit into
camlab-ethz:mainfrom
kilickursat:docs/elastic-footing-geomechanics-example
Jun 9, 2026
Merged

docs(examples): add elastic footing geomechanics example#10
Shizheng-Wen merged 1 commit into
camlab-ethz:mainfrom
kilickursat:docs/elastic-footing-geomechanics-example

Conversation

@kilickursat

Copy link
Copy Markdown
Contributor

Summary

This PR adds a small elastic strip-footing geomechanics boundary-value example
under examples/solid/geomechanics/.

Unlike the existing Drucker-Prager triaxial example, which is a constitutive
driver, this example solves a real linear-elastic boundary-value problem:
a soil block with roller-style supports is loaded by a centered footing patch,
then solved with TensorMesh's existing direct linear-elasticity workflow.

Scope

  • Adds examples/solid/geomechanics/elastic_footing/
  • Uses the existing LinearElasticityElementAssembler
  • Uses Condenser for vector-valued displacement boundary conditions
  • Applies a lumped top-surface footing load
  • Adds a settlement/deformed-mesh visualization
  • Adds a docs page and gallery card thumbnail
  • Adds CPU + float64 tests for load balance and linear load scaling
  • No public API changes
  • No core TensorMesh code changes

Validation

Ran locally:

  • python examples/solid/geomechanics/elastic_footing/elastic_footing.py --no-plot --chara-length 0.55
  • pytest tests/assemble/test_elastic_footing_example.py -v
  • pytest tests/assemble/test_drucker_prager_triaxial_example.py -v
  • cd docs && make html
  • cd docs && make zh

Checked that the generated docs page renders the new figure and that the Solid
Mechanics gallery card has a thumbnail.

Notes

The footing pressure is lumped over top-surface nodes for a compact educational
example, following the style of the existing direct linear-elastic solid examples.
The reaction/load-balance test verifies that the total applied load is recovered
by the constrained vertical DOFs.

This PR intentionally does not add tensormesh/assemble/geomechanics.py or a
public material API. It is a small example-only step toward a geomechanics
boundary-value example family.

Signed-off-by: Kursat Kilic <kilic_kursat@hotmail.com>
@Shizheng-Wen Shizheng-Wen merged commit ca84400 into camlab-ethz:main Jun 9, 2026
4 checks passed
@kilickursat kilickursat deleted the docs/elastic-footing-geomechanics-example branch June 10, 2026 00:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants