Files
JuliaFEM.jl/src/formulations
Jukka Aho d9ca71febd feat(formulations): Add continuum formulation API with four theory variants
Create src/formulations/api.jl defining discretization strategy abstractions:
- AbstractFormulation base type for all formulation strategies
- AbstractContinuumTheory for continuum mechanics theory variants
- ContinuumFormulation{Theory} parameterized formulation struct
- Four concrete theories:
  * FullThreeD - Full 3D (6 stress components, no simplifications)
  * PlaneStress - Thin plates (σ_zz=0, thickness << length)
  * PlaneStrain - Thick sections (ε_zz=0, no z-variation)
  * Axisymmetric - Rotationally symmetric (σ_rr, σ_θθ, σ_zz, σ_rz)

Formulation defines HOW to discretize (math strategy), while Field defines
WHAT to solve (physical quantity). Formulation × Field determines assembly
dispatch: ContinuumFormulation{FullThreeD} + Displacement{3} dispatches to
3D solid mechanics assembly in src/assembly/continuum_3d.jl.

Comprehensive documentation with theory selection guidelines and examples.
Part of systematic modular API architecture.
2025-11-15 18:41:04 +02:00
..