Files
pinn/config.py
T
davide fbb0458f69 PINN: allinea output a results/pinn/ e centralizza parametri in config
- visualizer.py: sostituisce animations/ con results/pinn/TIMESTAMP/,
  nomi fissi (heatmap.html, animation.html, comparison.html) come FDM
- config.py: aggiunge sezioni architettura, sampling, Adam, L-BFGS, loss weights
- model.py: costruisce HeatPINN dinamicamente da HIDDEN_SIZE/N_HIDDEN_LAYERS;
  heat_pinn_loss legge pesi W_PDE/W_IC/W_BC da config
- engine.py: tutti i parametri di training letti da config

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 14:14:11 +02:00

48 lines
1.5 KiB
Python

# Fisica
ALPHA = 0.01 # diffusività termica [m²/s]
K = 1.0 # conducibilità termica [W/m·K]
L = 1.0 # lunghezza barra [m]
T0 = 20.0 # temperatura iniziale uniforme [°C]
# Sorgente di calore
X_SRC = 0.35 # posizione della sorgente [m], in [0, L]
Q_VAL = 150.0 # flusso di calore applicato [W/m²]
T_STEP = 0.2 # istante di attivazione flusso [s]
# Convezione a x=L (Robin)
H_CONV = 10.0 # coefficiente convettivo [W/m²·K]
T_AMB = 20.0 # temperatura ambiente [°C]
# Dominio temporale
T_END = 10.0 # fine simulazione [s]
# Griglia FDM
NX = 250 # nodi spaziali
NT = 15000 # passi temporali (verifica CFL automatica)
# Architettura PINN
HIDDEN_SIZE = 128 # neuroni per layer nascosto
N_HIDDEN_LAYERS = 4 # numero di layer nascosti
# Sampling punti di collocazione
N_F = 4000 # punti PDE (+ 50% clustering automatico vicino a X_SRC e T_STEP)
N_IC = 400 # punti condizione iniziale
N_BC = 400 # punti condizioni al contorno
# Training Adam
EPOCHS = 5000 # epoche massime
PATIENCE = 100 # early stopping
LR_ADAM = 1e-3 # learning rate iniziale
SCHED_FACTOR = 0.5 # ReduceLROnPlateau: fattore di riduzione
SCHED_PATIENCE = 30 # ReduceLROnPlateau: patience
SCHED_MIN_LR = 1e-6 # ReduceLROnPlateau: lr minimo
# Fine-tuning L-BFGS
LR_LBFGS = 0.1 # learning rate L-BFGS
LBFGS_STEPS = 20 # numero di step L-BFGS
# Pesi della loss
W_PDE = 1.0 # peso residuo PDE
W_IC = 1.0 # peso condizione iniziale
W_BC = 10.0 # peso condizioni al contorno