jorgensd / jorgensd/dolfinx-tutorial

Rethink nullspace tutorials

Offen
#286 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Jupyter Notebook
Sterne
166
Forks
89
Ø Merge
3 Std. 25 Min.
Gemergte PRs (30 T.)
2

Beschreibung

**Direct solver**
PETSc does magic after the fact with nullspace information, which is "correct", but mumps might fail if
icntl_24:1 and inctl_25: 0 is not set for more complex spaces.

**Iterative solver**
Hypre/Boomeramg ignores the near nullspace if
"pc_hypre_boomeramg_nodal_coarsen": (1-6)
"pc_hypre_boomeramg_vec_interp_variant": (1-3)
is not set.

Thus currently has no effect.

Should consider a two stage approach, stating that constant nullspace is "trivial", and make another one for elasticity,
following guidelines form either:
https://colab.research.google.com/github/firedrakeproject/notebooks/blob/main/03-elasticity.ipynb
or
https://docs.mfem.org/4.8/hypre_8cpp_source.html#l05296
for option tests.

Since the problems are symmetric, Im not sure why I chose gmres and not cg ...

Discussed with @MariusCausemann

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne damit, das nullspace-Material im Tutorial zu prüfen und es mit dem verlinkten Firedrake-Elastizitätsnotebook und dem MFEM-hypre-Quelltext zu vergleichen. Prüfe anschließend die im Issue beschriebenen Fälle für Optionen direkter und iterativer Löser und definiere dann die erforderlichen Tutorialänderungen für separate Anleitungen zu konstantem nullspace und Elastizität, einschließlich der Diskussion der Wahl des Lö sers.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
jupyter-notebook
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
30/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.