Aggiunge il solutore termico FEM sulla mesh shell e la sua animazione 3D
fem.py risolve l'equazione del calore transitoria sulla superficie media del cilindro con elementi shell quadrangolari bilineari: la circonferenza diventa una direzione risolta (niente più attenuazione gaussiana né sink di aletta), mentre lo spessore è collassato perché con parete da 0.18 mm il numero di Biot è ~1e-7. Eulero implicito con matrice costante fattorizzata una volta per run; le matrici di elemento sono identiche per tutti gli elementi e l'assemblaggio è vettorizzato. plot_animazione_fem.py dipinge il campo calcolato direttamente sugli elementi della mesh, con ombreggiatura ricavata dalla normale radiale perché i colori delle facce cambiano a ogni fotogramma. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
# python main.py grafico # grafici del primo run generato
|
||||
# python main.py anima # animazione 2D della sezione
|
||||
# python main.py anima3d # animazione 3D isometrica del barattolo
|
||||
# python main.py fem # animazione 3D del campo FEM sulla mesh shell
|
||||
#
|
||||
# Senza argomenti stampa l'elenco delle azioni disponibili.
|
||||
|
||||
@@ -43,6 +44,12 @@ def _azione_anima3d() -> None:
|
||||
plot_animazione_3d.main()
|
||||
|
||||
|
||||
def _azione_fem() -> None:
|
||||
import plot_animazione_fem
|
||||
|
||||
plot_animazione_fem.main()
|
||||
|
||||
|
||||
# Chiave da riga di comando -> (funzione, descrizione mostrata nell'help).
|
||||
AZIONI = {
|
||||
"mesh": (_azione_mesh, "Disegna la mesh a elementi shell della fascetta"),
|
||||
@@ -50,6 +57,7 @@ AZIONI = {
|
||||
"grafico": (_azione_grafico, "Grafici temperatura e flusso del primo run"),
|
||||
"anima": (_azione_anima, "Animazione 2D del campo di temperatura nella sezione"),
|
||||
"anima3d": (_azione_anima3d, "Animazione 3D isometrica del barattolo"),
|
||||
"fem": (_azione_fem, "Animazione 3D del campo FEM sulla mesh a elementi shell"),
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user