Skip to content

[3D] Rethink 3D problem with tetrahedra#32

Merged
Fimache merged 10 commits into
3d_tetrafrom
th-tetrahdera
Jul 7, 2026
Merged

[3D] Rethink 3D problem with tetrahedra#32
Fimache merged 10 commits into
3d_tetrafrom
th-tetrahdera

Conversation

@th-skam

@th-skam th-skam commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Changes and reasoning

  • For 3D, we now solve using an iterative solver, parallel force and derivative accumulation in the LinearSmallStrainFEMForceField SOFA component
  • I switched the scheme to do more iterations on the Newton Raphson, even though it's a linear problem. This allows you to have few iterations of CG on coarse meshes but on fine meshes you let the Newton iterate on the residual.
  • I also added a quadrature rule for tetrahedra that does not get affected by the direction of the diagonal.
  • I switched from a 3-2-1 Rigid body constraint BC to 1 face carrying Dirichlet and 5 faces having a Neumann (traction) BC. The convergence rates are okay (there will be some non-exactness (e.g. = 1.97 for L2) but remember we are using an iterative solver).

@th-skam th-skam requested a review from Fimache July 6, 2026 15:49
@Fimache Fimache merged commit 6c63df4 into 3d_tetra Jul 7, 2026
3 of 6 checks passed
@Fimache Fimache deleted the th-tetrahdera branch July 7, 2026 13:01
th-skam added a commit that referenced this pull request Jul 7, 2026
…elements (#31)

* Add 3D_tetra: MMS verification framework for 3D tetrahedral elements

* [3D] Rethink 3D problem with tetrahedra (#32)

* [3D] Add quadrature rules for tetrahedra; invariant to node winding

* [3D] Add tet elements strategy class

* [3D] Wire in the tetra solution

* [3D] Change to iterative preconditioned solver

* [3D] Reduce amplitude of the sinusoidal wave

* [3D] Switch to Dirichlet on 1 face and neumann on the other 5

* [3D] Remove bad comments

* [3D] Increase amplitude

* [3D] Bring back hex

* [3D] Remove duplicated test code

---------

Co-authored-by: Themis Skamagkis <70031729+th-skam@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants