Trasforma il modello termico da 1D a 2D sulla sezione della fascetta
La lastra diventa una fascetta cilindrica (diametro, lunghezza, spessore) di cui si simula la sezione rettangolare lunghezza x spessore, con origine nel vertice in alto a sinistra: x = lunghezza, z = spessore, y = coordinata circonferenziale non risolta (offset collassato in attenuazione gaussiana). - Le sorgenti si muovono in direzione -x e producono un profilo di flusso q(x) su tutto il lato esterno; corretto il posizionamento del gruppo per velocita' negative - Sensore a infrarossi con coordinata x e distanza dalla parete interna, misura la superficie interna senza contatto - Volumi finiti 2D con Eulero implicito: matrice sparsa fattorizzata LU una volta per run (scipy.sparse.linalg.splu), a ogni passo solo i sistemi triangolari - Convezione sui lati esterno/interno, bordi adiabatici in x - Schema CSV invariato; metadata con geometria e griglia 2D Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,17 +1,25 @@
|
||||
# Configurazione per il simulatore termico 1D attraverso lo spessore.
|
||||
# Configurazione per il simulatore termico 2D della sezione di una fascetta.
|
||||
#
|
||||
# Modello fisico:
|
||||
# - La piastra è ridotta a una dimensione: z = direzione dello spessore.
|
||||
# - La sorgente di calore si trova sul lato caldo, z = 0.
|
||||
# - Il sensore si trova sul lato opposto, z = spessore.
|
||||
# - L'induttore si muove lungo x. Poiché il modello è 1D, il movimento è
|
||||
# rappresentato come un flusso termico variabile nel tempo nel punto
|
||||
# allineato con il sensore fisso.
|
||||
# Geometria e modello fisico:
|
||||
# - La fascetta è un anello cilindrico con diametro "diametro_mm", spessore
|
||||
# "spessore_mm" e lunghezza "lunghezza_mm".
|
||||
# - Il dominio simulato è la sezione rettangolare lunghezza × spessore.
|
||||
# - Sistema di coordinate: origine (0, 0) nel vertice in alto a sinistra
|
||||
# della sezione. x = direzione della lunghezza (da 0 a lunghezza),
|
||||
# z = direzione dello spessore (0 = lato esterno, dove agiscono le
|
||||
# sorgenti; spessore = lato interno, osservato dal sensore).
|
||||
# - y è la coordinata circonferenziale: non è risolta spazialmente, l'offset
|
||||
# y del percorso delle sorgenti è collassato in un'attenuazione gaussiana
|
||||
# del flusso.
|
||||
# - Le sorgenti a induzione si muovono in direzione -x sul lato esterno.
|
||||
# - Il riscaldamento a induzione è approssimato come riscaldamento volumetrico
|
||||
# che decade esponenzialmente con la profondità secondo un parametro skin depth.
|
||||
# che decade esponenzialmente con la profondità z secondo la skin depth.
|
||||
# - Il sensore è un pirometro a infrarossi posto all'interno della fascetta,
|
||||
# a distanza "distanza_parete_mm" dalla parete interna: misura senza
|
||||
# contatto la temperatura della superficie interna nel punto x = "x_mm".
|
||||
#
|
||||
# Unità di misura:
|
||||
# - lunghezza: m
|
||||
# - lunghezza: m (mm dove indicato dal suffisso)
|
||||
# - tempo: s
|
||||
# - temperatura: °C
|
||||
# - flusso termico: W/m²
|
||||
@@ -39,13 +47,22 @@ SIMULAZIONE = {
|
||||
"cartella_output": "dataset",
|
||||
}
|
||||
|
||||
PIASTRA = {
|
||||
# Spessore della piastra [mm].
|
||||
FASCETTA = {
|
||||
# Diametro della fascetta [mm].
|
||||
"diametro_mm": 70.0,
|
||||
|
||||
# Lunghezza della fascetta lungo x [mm].
|
||||
"lunghezza_mm": 100.0,
|
||||
|
||||
# Spessore della parete [mm].
|
||||
"spessore_mm": 0.12,
|
||||
|
||||
# Numero di celle del volume finito attraverso lo spessore.
|
||||
# Numero di celle del volume finito lungo x (lunghezza).
|
||||
"n_nodi_x": 100,
|
||||
|
||||
# Numero di celle del volume finito lungo z (spessore).
|
||||
# Più nodi = maggiore risoluzione spaziale, simulazione più lenta.
|
||||
"n_nodi": 61,
|
||||
"n_nodi_z": 15,
|
||||
|
||||
# Temperatura iniziale uniforme.
|
||||
"temperatura_iniziale_C": 25.0,
|
||||
@@ -58,11 +75,11 @@ ARIA = {
|
||||
# Temperatura dell'aria ambiente.
|
||||
"temperatura_ambiente_C": 25.0,
|
||||
|
||||
# Coefficiente di convezione sul lato caldo (sorgente).
|
||||
"h_caldo_W_m2K": 12.0,
|
||||
# Coefficiente di convezione sul lato esterno (z = 0, lato sorgenti).
|
||||
"h_esterno_W_m2K": 12.0,
|
||||
|
||||
# Coefficiente di convezione sul lato freddo (sensore).
|
||||
"h_freddo_W_m2K": 8.0,
|
||||
# Coefficiente di convezione sul lato interno (z = spessore, lato sensore).
|
||||
"h_interno_W_m2K": 8.0,
|
||||
}
|
||||
|
||||
SORGENTE = {
|
||||
@@ -74,16 +91,13 @@ SORGENTE = {
|
||||
# gruppo più lontana dal sensore (quella che lo supera per ultima).
|
||||
"x_fine_m": 5.0,
|
||||
|
||||
# Coordinata laterale fissa della proiezione del sensore sul lato caldo.
|
||||
# L'effetto della sorgente è massimo quando x_sorgente == x_sensore e offset_y_m == 0.
|
||||
"x_sensore_m": 0.0,
|
||||
|
||||
# Offset laterale tra il percorso della sorgente e la linea del sensore.
|
||||
# Se diverso da zero, la sorgente passa a lato del sensore, riducendo il picco.
|
||||
# Offset circonferenziale (y) tra il percorso delle sorgenti e il punto
|
||||
# osservato dal sensore. Se diverso da zero, la sorgente passa a lato,
|
||||
# riducendo il picco.
|
||||
"offset_y_percorso_m": 0.0,
|
||||
|
||||
# Velocità della sorgente lungo x.
|
||||
"velocita_m_s": 2.0,
|
||||
# Velocità delle sorgenti lungo x. Il segno indica il verso di marcia.
|
||||
"velocita_m_s": -2.0,
|
||||
|
||||
# Numero di sorgenti equidistanti che si muovono insieme come un gruppo
|
||||
# rigido (stessa velocità, sigma, flusso ed efficienza).
|
||||
@@ -98,7 +112,7 @@ SORGENTE = {
|
||||
# Flusso termico incidente massimo prima della correzione per efficienza.
|
||||
"flusso_termico_picco_W_m2": 5500000.0,
|
||||
|
||||
# Frazione del flusso incidente che diventa effettivamente calore nella piastra.
|
||||
# Frazione del flusso incidente che diventa effettivamente calore nella fascetta.
|
||||
"efficienza_riscaldamento": 0.35,
|
||||
|
||||
# Frequenza di induzione usata per stimare la skin depth se skin_depth_fissa_m è None.
|
||||
@@ -113,8 +127,13 @@ SORGENTE = {
|
||||
}
|
||||
|
||||
SENSORE = {
|
||||
# Il sensore si trova sul lato freddo della piastra.
|
||||
"posizione": "lato_freddo",
|
||||
# Coordinata x del punto della superficie interna osservato dal sensore [mm].
|
||||
"x_mm": 50.0,
|
||||
|
||||
# Distanza del sensore dalla parete interna lungo z [mm].
|
||||
# Il sensore è a infrarossi: la distanza non influenza la misura,
|
||||
# è registrata solo come geometria del setup.
|
||||
"distanza_parete_mm": 10.0,
|
||||
|
||||
# Inerzia del sensore del primo ordine.
|
||||
# Valore più alto = risposta del sensore più lenta.
|
||||
|
||||
Reference in New Issue
Block a user