Verifica dei risultati
Come sappiamo che i numeri sono giusti, e quanto.
Un solutore numerico va giudicato su problemi di cui si conosce la risposta. Qui sotto ci sono i casi con cui il motore di MATH viene confrontato: valori esatti calcolabili a mano, costanti e funzioni tabulate, e riferimenti ottenuti con un metodo indipendente. Non devi fidarti della tabella: il pulsante la ricalcola nel tuo browser, con lo stesso motore compilato che usa la calcolatrice, e mostra lo scarto reale.
| Caso | Valore | Atteso | Calcolato | Scarto | Tolleranza | Esito |
|---|
Cosa viene confrontato
- Equazioni e sistemi: radici note, sistemi con soluzione esatta, il fattore d'attrito di Colebrook rispetto a un'iterazione indipendente scritta a parte.
- Integrali: valori esatti, un integrale ellittico confrontato con le tavole di Abramowitz-Stegun, un integrale annidato e uno con incognita.
- Equazioni differenziali: soluzioni analitiche (decadimento, oscillatore, svuotamento di un serbatoio, circuito RC), e per il modello predatore-preda una grandezza che si conserva lungo la traiettoria.
- Applicazioni: il punto di lavoro di una pompa con curva da tabella e il periodo del pendolo a grande ampiezza.
Gli stessi casi fanno parte della suite di test del progetto, che eseguiamo sul motore compilato prima di pubblicare una nuova versione: uno scarto oltre la tolleranza ferma il rilascio. La suite comprende anche i casi limite e gli errori di input, e, negli ambienti in cui è installato SciPy, il confronto delle equazioni differenziali con un integratore di riferimento (metodo DOP853) su sistemi lineari, non lineari e con equazioni algebriche.
Come leggere gli scarti
- Lo scarto è la differenza assoluta tra il valore calcolato e quello atteso. La tolleranza è il massimo che accettiamo per quel caso, scelto con un margine rispetto a quanto osservato.
- Per le equazioni differenziali la tolleranza dell'integratore controlla l'errore locale di ogni passo, non l'errore globale: su tempi lunghi lo scarto può crescere. I valori predefiniti sono 1e-9 (assoluta) e 1e-6 (relativa); si possono cambiare dall'API.
- Un integrale usa un metodo adattivo con stima dell'errore: è affidabile per funzioni continue e regolari, ma non garantisce l'accuratezza per picchi stretti, discontinuità o oscillazioni non risolte dai campioni.
Cosa questa verifica non dice
- Non verifica il tuo modello. Dimostra che il motore risolve bene le equazioni che gli dai, non che le equazioni descrivano il tuo impianto.
- Non garantisce di trovare tutte le soluzioni. Con più soluzioni il motore ne trova una, dipendente dal punto di partenza; la mancata convergenza non prova che una soluzione non esista.
- Non include proprietà fisiche di fluidi e materiali né la conversione delle unità di misura (sono etichette, anche se l'editor di processo segnala i collegamenti incoerenti): i numeri sono usati come scritti.
- Non sostituisce la verifica indipendente da parte di un professionista dove la sicurezza è in gioco (vedi i Termini d'uso).
Come ripetere un caso a mano
Apri la calcolatrice e incolla il programma del caso (qui sotto, in «Programmi dei casi»). Il valore atteso e la fonte sono nella tabella.