• Non ci sono risultati.

Perch´e il Calcolo Numerico?

N/A
N/A
Protected

Academic year: 2021

Condividi "Perch´e il Calcolo Numerico?"

Copied!
3
0
0

Testo completo

(1)

Perch´e il Calcolo Numerico?

Felice Iavernaro

Le principali motivazioni per un approc- cio numerico ai problemi della matematica sono:

• il fatto che la maggior parte dei proble- mi matematici (anche relativamente sempli- ci) non sono risolubili analiticamente1, ov- vero non esistono tecniche che permettano di esprimerne la soluzione come combinazio- ne finita di funzioni elementari note (solu- zione non esprimibile in forma chiusa);2

• gran parte dei problemi matematici che provengono dalle diverse branche ap- plicative delle discipline scientifiche e dal mondo dell’industria hanno grandi dimen- sioni, cio`e coinvolgono un numero elevato

di incognite. Anche qualora detti problemi fossero risolubili elementarmente,

Dipartimento di Matematica, Universit`a di Bari, Via Orabona 4, I-70125 Bari (Italy), [email protected], http://www.dm.uniba.it/∼ iavernaro

1o elementarmente.

2Alcuni esempi:

- risolvere l’equazione x = cox(x);

- calcolare l’integraleR1

0 e−x2dx.

1

(2)

il tempo richiesto per determinarne la soluzione sarebbe troppo elevato.

• in molte applicazioni `e frequente la necessit`a di risolvere problemi in tempo reale (ovvero in tempi ridottissimi).

La maggior parte dei problemi3, soprattutto quelli che provengono dalle applicazioni real-life, ricadono in una o pi`u delle classi sopra elencate. Il Calcolo Numerico, e pi`u in generale l’Analisi Numerica, studia la possibilit`a di poter approssimare le soluzioni di detti problemi, in maniera efficiente sul calcolatore. La potenza di calcolo fornita dai moderni calcolatori4 permette, in effetti, di risolvere problemi di grandi dimensioni in tempi relativamente ridotti.

Tuttavia, a fronte di una potenza di calcolo molto elevata, il calcolatore, disponendo di memoria finita, implementa un’aritmetica differente da quella reale. L’ aritmetica di macchina ha, per natura, due svantaggi:

(a) pu`o rappresentare solo un numero finito di numeri reali, i cosiddetti numeri di macchina; tutti i restanti numeri, se non troppo piccoli n`e troppo grandi, verranno appropriatamente approssimati mediante i nu- meri di macchina. L’errore di rappresentazione che ne deriva, dipende dalla macchina e dal software utilizzati: ad esempio in Matlab `e circa 2 · 10−16;

(b) le quattro operazioni elementari, +, −, ∗, / , non sono (in generale) eseguite correttamente, anche se l’errore che esse introducono `e dello stesso ordine dell’errore di rappresentazione.

Il calcolatore pu`o essere quindi inteso come uno strumento di calcolo dotato di una sua propria precisione che non pu`o essere superata. Come conseguen- za, in alcuni casi il risultato che esso ci restituisce, in seguito all’esecuzione di un programma che implementa un dato algoritmo, potrebbe essere del tutto erroneo, pur essendo il problema e l’algoritmo risolutivo impostati corretta- mente. Ci`o accade in una delle seguenti situazioni:

(1) quando il problema matematico `e mal condizionato, cio`e quando le soluzioni del problema (dati di input) dipendono in modo sensibile dai da- ti iniziali (dati di output): ci`o significa che a piccole perturbazioni dei dati di input possono corrispondere grosse variazioni sulla soluzione. In effetti il

3praticamente tutti quelli che non si trovano nei testi scolastici.

4gli attuali processori presenti in commercio hanno una potenza di calcolo superiore a 1Gflops/s (109operazioni elementari al secondo).

2

(3)

calcolatore introduce piccole perturbazioni dei dati di input proprio quan- do questi vengono rappresentati mediante numeri di macchina (appunto gli errori di rappresentazione).

(2) quando l’algoritmo costruito per la risoluzione del problema risulta instabile: ci`o si verifica quando la sequenza delle singole operazioni elementari che definiscono l’algo- ritmo `e tale da amplificare notevolmente i piccoli errori dovuti al fatto che dette ope- razioni non sono effettuate correttamente.

Per uno stesso problema possono esistere

pi`u tecniche risolutive le quali definiscono altrettanti algoritmi suscettibili di implementazione al calcolatore. Un confronto tra due o pi`u metodi dovr`a, in generale, tener conto dei seguenti fattori:

- classe di problemi a cui il metodo `e applicabile: alcuni metodi possono, in effetti, richiedere ipotesi di lavoro pi`u restrittive rispetto ad altri;

- costo computazionale: indica la quantit`a di operazioni che l’algoritmo richiede mediamente per fornire il risultato; esso `e chiaramente pro- porzionale al tempo di esecuzione ma, al contrario di quest’ultimo, `e indipendente dalla macchina utilizzata;

- stabilit`a: un algoritmo non sufficientemente stabile pu`o generare errori significativi che ne rendono l’impiego inaccettabile.

3

Riferimenti

Documenti correlati

(e) Stampi su monitor, il valore dell’ultima componente di err, con 1 cifra prima della virgola, 5 dopo la virgola in formato esponenziale.. (f) Esegua su monitor il grafico in

Perch´ e la complessit` a delle operazioni su Tabelle Hash viene studiata al caso medio e non al

 se siamo nella stessa directory dove è salvato il file digitare il nome dello script nella linea di comando.  se siamo in una directory diversa rsipetto a quella in cui è

 Il primo blocco di istruzioni sarà eseguito se e solo se la Condizione1 è verificata, il secondo se e solo se la Condizione1 risulta essere falsa e la Condizione 2 vera e così

 In questo caso il numero di elementi diversi da zero della matrice è molto basso rispetto alla dimensione della matrice e, quindi, sia la fattorizzazione che

 Tutti i calcoli vengono effettuati in doppia precisione, mentre diversa è la visualizzazione delle variabili che viene determinata con il comando format.  Il

[r]

Abbiamo quindi che A `e insieme superiormente limitato, 0 `e un maggiorante, ma non inferiormente limitato... Verifichiamo che 1 `e l’estremo superiore di D, ovvero che non