Sei sulla pagina 1di 9

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/314838040

Metodi di calcolo numerico per l'ingegneria, Liguori Editore.

Book · January 2004

CITATIONS READS

0 467

1 author:

Filippo Maria Denaro


Università degli Studi della Campania "Luigi Vanvitelli
51 PUBLICATIONS   337 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

New modelling in the integral-based LES View project

CFD in diastole View project

All content following this page was uploaded by Filippo Maria Denaro on 13 March 2017.

The user has requested enhancement of the downloaded file.


1

METODI DI CALCOLO NUMERICO PER L’INGEGNERIA

PREFAZIONE

Sapete invece su che poggia tutto?


...
La presunzione che la realtà,
qual è per voi, debba essere e
sia ugualmente per tutti gli altri

I problemi di reale interesse ingegneristico sono spesso descritti da equazioni che non
sono risolvibili in forma analitica. Essenzialmente, fino ad alcuni anni fa, lo studio di tali
problemi era prevalentemente di tipo teorico-sperimentale e si basava su modelli fisico-
matematici opportunamente semplificati. Attualmente, con l’avvento di nuovi calcolatori
aventi prestazioni dell’ordine del teraflops, ovverosia 1012 operazioni per secondo in “float-
ing point”, la situazione è radicalmente cambiata. La soluzione numerica è, infatti, divenuta
possibile anche per problemi matematicamente abbastanza complessi. Spesso il calcolo nu-
merico supporta se non, a volte, sostituisce l’esperimento in laboratorio fino a diventare un
elemento fondamentale nelle fasi di progettazione. D’altra parte, anche coloro che oper-
ano prevalentemente in laboratori sperimentali e studiano problemi ingegneristici mediante
strumentazioni di misura, hanno poi spesso la necessità di post-elaborare i dati che sono
comunque acquisiti con l’ausilio di un calcolatore. Algoritmi di interpolazione, filtraggio,
derivazione, integrazione sono pertanto necessari anche a chi avesse un’attività tipicamente
sperimentale.
Ciò che, però, deve essere subito chiarito, è che non esiste una metodologia di calcolo
numerico del tutto generale, adatta ad ogni situazione, ma che di volta in volta si devono
conoscere ed applicare gli strumenti del calcolo che siano più opportuni. In questo quadro
di lavoro è importante, perciò, che nel corrente percorso di formazione universitario sia im-
partita allo studente di Ingegneria un’educazione rivolta al calcolo numerico inteso sia come
analisi che come applicazione di un metodo. Tutti gli strumenti del calcolo numerico sono,
infatti, alla base delle moderne tecniche di calcolo e progettazione, nonché, ormai, dei pres-
soché onnipresenti moderni programmi di calcolo disponibili in commercio.
2 F.M. Denaro - Prefazione

Scopi
Il nuovo ordinamento didattico richiede di cambiare l’impostazione di un corso di inseg-
namento pertanto è sicuramente molto più proficuo elaborare ex novo del materiale, pensato
ad hoc per gli scopi del nuovo corso. piuttosto che utilizzare parzialmente testi già esistenti
pensati per il vecchio ordinamento.
Il materiale presentato in questo testo, raccolto nello svolgimento di vari corsi, si rivolge
ad uno studente del corso di laurea in Ingegneria del nuovo ordinamento didattico universi-
tario, qualunque sia l’indirizzo prescelto. Esso è indirizzato ad uno studente del terzo anno,
e prevede la equivalenza di 3-4 crediti didattici (CFU) ovvero lo svolgimento di 30-40 ore di
didattica suddivise in cattedratica ed applicativa. Il corso viene, dunque, a valle dei corsi di
analisi che hanno fornito la conoscenza dei principali strumenti matematici (e.g., derivazione
parziale, serie di Taylor e di Fourier), di fisica (e.g., equazioni della cinematica e dinamica)
e di alcuni corsi di indirizzo e si pone immediatamente a monte dello svolgimento della tesi
di laurea. Perciò, esso ha il duplice scopo di presentare, per la prima volta, gli strumenti di
base del calcolo numerico utili alla futura professione laddove, allo studente che prevedesse
il proseguimento biennale specialistico, consente di avere già le conoscenze di base per i
successivi corsi di approfondimento di calcolo numerico per sistemi continui. Considero per-
sonalmente fondamentale che nei primi 3 anni del corso di laurea in Ingegneria sia prevista
l’educazione dello studente ad una corretta impostazione nel porsi un problema di calcolo
numerico piuttosto che l’educazione a risolverlo pedissequamente con l’aiuto di un partico-
lare programma di calcolo scientifico. In particolare, lo studente deve essere formato nel non
recepire passivamente un risultato numerico, solo perché esso è fornito dal calcolatore, ma
deve essere capace di porsi opportune domande prima di accettare per buona la soluzione
numerica. In conclusione, è importante sia la capacità di analizzare criticamente il problema
in esame che di scegliere la metodologia opportuna allo scopo di ottenerne una soluzione
approssimata. Per tale approssimazione vi deve poi essere sempre un controllo dell’errore
presente. E’ chiaro che, per gli scopi di questo corso, ciò deve significare il raggiungimento
di un livello equilibrato tra la rigorosa preparazione teorica e la capacità di sviluppo applica-
tivo su base euristica. Per tale motivo, sono presentati alcuni paragrafi di approfondimento
teorico che, pur non essendo strettamente necessari per il corso del terzo anno, costituiscono
un utile collegamento alle discipline di calcolo numerico presenti nella laurea specialistica.
Pertanto, il testo si presta ad essere utilizzato anche durante i corsi del quarto e quinto anno.

Contenuti
Il contenuto del testo prevede lo sviluppo della metodologia di interpolazione di La-
grange, in una e due dimensioni, di interpolazione con spline cubica, l’introduzione alla
derivazione numerica alle differenze finite e la sua analisi d’accuratezza, sia nello spazio
fisico che in quello delle frequenze. Seguono alcune applicazioni ad equazioni differenziali
ordinarie e alle derivate parziali. Successivamente, si presenta lo sviluppo delle metodologie
di integrazione numerica in una e due dimensioni e la loro analisi di accuratezza ancora una
volta nello spazio fisico e in quello delle frequenze, introducendo il concetto di filtraggio.
Infine, il testo si chiude con la presentazione della soluzione dei sistemi algebrici lineari, in
particolare con i metodi iterativi stazionari. Tutto il materiale teorico presentato nel testo è
immediatamente accompagnato da diversi esempi, il più delle volte grazie all’adozione di ben
noti programmi di calcolo numerico, quale MATLAB, di calcolo simbolico, quale MAPLE,
Metodi di calcolo numerico per l’ingegneria 3

nonché di linguaggi di programmazione, quali il FORTRAN.

Infine, ringrazio coloro che, in vario modo, hanno avuto la pazienza e la volontà di leggere
queste note nelle loro successive versioni, fornirmi commenti, indicarmi correzioni che non
finiranno di essere apportate . . .

Napoli, 16 novembre 2003

Filippo Maria Denaro


4 F.M. Denaro - Prefazione

Indice

1. Introduzione
1.1. Approccio alle problematiche di calcolo numerico
1.2. Possibilità e limitazioni dei metodi numerici
1.3. Misure di errore
1.4. Notazioni sull’ordine di grandezza
Esempio 1.1
Esempio 1.2
Esempio 1.3
1.5. Stima dell’errore nella soluzione numerica
1.6. Il software di calcolo scientifico: MATLAB e MAPLE

2. Interpolazione
2.1. Interpolazione polinomiale di Lagrange delle funzioni di una sola variabile
Esempio 2.1
2.1.1. Ricostruzione polinomiale a tratti
2.1.2. Errore di interpolazione
Esempio 2.2
Esempio 2.3
2.2. Interpolazione polinomiale di Lagrange delle funzioni di due variabili
2.2.1 Interpolazione per fattorizzazione
Esempio 2.4
2.2.2 Interpolazione Lagrangiana completa.
Esempio 2.5
2.3. Interpolazione delle funzioni di una variabile con splines cubiche
Esempio 2.6
Esempio 2.7
2.4 Esercizi

3. Metodi di derivazione numerica alle Differenze Finite


3.1. Introduzione
Esempio 3.1
Esempio 3.2
3.2. Errore di troncamento
3.3. Discretizzazione esplicita degli operatori differenziali continui tramite l’espansione
in serie di Taylor. Operatori discreti di vario ordine
Esempio 3.3
3.4. Analisi spettrale delle formule alle differenze. Il numero d’onda modificato
3.4.1 Alcune osservazioni pratiche sulla trasformata discreta di Fourier
Esempio 3.4
3.4.2 Analisi del numero d’onda modificato
3.5. Esempio di soluzione alle differenze finite per problemi differenziali ordinari
3.5.1 Equazione modificata ed errore di discretizzazione
Esempio 3.5
Metodi di calcolo numerico per l’ingegneria 5

3.5.2 La diffusione artificiale


3.6. Generalizzazione delle formule alle differenze finite per le derivate parziali
3.7. Alcune formule alle differenze per l’operatore di Laplace
Esempio 3.6
3.8. Esercizi

4. Metodi di integrazione numerica


4.1. Approssimazione degli integrali di linea
Esempio 4.1
4.1.1 Errore di troncamento
Esempio 4.2
4.1.2 Integrazione su più tratti
Esempio 4.3
4.2. Analisi spettrale delle formule di integrazione. Filtraggio associato all’integrazione
esatta e numerica
4.2.1 Integrazione esatta: funzione di filtro e di trasferimento
4.2.2 Integrazione numerica: errore di troncamento
Esempio 4.4
4.3. Alcune approssimazioni degli integrali di area per griglie strutturate e non-strutturate
4.3.1 Integrazione numerica su griglie strutturate
4.3.2 Integrazione numerica su griglie non strutturate
Esempio 4.5
4.4. Alcuni metodi di integrazione numerica di equazioni differenziali ordinarie per prob-
lemi di valore iniziale
4.4.1 Integrazione numerica con il metodo di Eulero
4.4.2 Integrazione numerica con il metodo basato sulla serie di Taylor
4.4.3 Integrazione numerica con il metodo dei trapezi
4.4.4 Integrazione numerica con il metodo predictor-corrector
4.4.5 Integrazione numerica con i metodi Runge-Kutta
4.4.6 Consistenza, stabilità e convergenza
Esempio 4.6
4.5. Esercizi

5. La soluzione di sistemi algebrici lineari. Metodi iterativi stazionari


5.1 Alcuni concetti fondamentali sull’inversione di matrici
5.1.1 Numero di condizionamento
Esempio 5.1
Esempio 5.2
Esempio 5.3
5.1.2 Un teorema di localizzazione degli autovalori
Esempio 5.4
5.1.3 Implicazioni del condizionamento sulla soluzione di un sistema algebrico lineare
Esempio 5.5
5.2 Metodi iterativi stazionari
5.2.1 Concetti fondamentali
6 F.M. Denaro - Prefazione

5.2.2 Metodo di Jacobi e Jacobi con forzamento


Esempio 5.6
5.2.3 Metodo di Gauss-Seidel
5.2.4 Metodo SOR.
Esempio 5.7
Esempio 5.8
Esempio 5.9
Esempio 5.10
5.3 Cenni sui metodi iterativi non stazionari
5.4 Esercizi

Bibliografia
Metodi di calcolo numerico per l’ingegneria 7

Indice analitico

Autofunzione, III-18 Lagrange, polinomio fattorizzato di, II-24


Cauchy, problema di, III-31 Lagrange, simplesso di, II-28
Coordinate areali, II-29 Laplace,
Delaunay, triangolazione di, II-29 Laplace, equazione, III-46
Differenze Finite, III-1 Laplace, operatore di, III-42
Differenze Finite, analisi spettrale, III-18 Lunghezza d’onda, III-19
Differenze Finite, consistenza, III-8 MAPLE, comando di
Differenze Finite, derivata prima ar- MAPLE, &*, II-20, 31
retrata, III-2 MAPLE, assign, III-15, 33
Differenze Finite, derivata prima avan- MAPLE, codegen[fortran], II-20, 31, III-
zata, III-1 15
Differenze Finite, derivata prima cen- MAPLE, collect, II-20, 37, III-33
trata, III-2, 41 MAPLE, D, III-3
Differenze Finite, derivata seconda, III- MAPLE, diff, II-20
*, 41 MAPLE, dsolve, III-33
Differenze Finite, tabelle delle derivate, MAPLE, evalm, II-20, 31
III-12, 13, 14 MAPLE, interp, II-20, 37
Diffusione artificiale, III-40 MAPLE, inverse, II-20, 31
Equazione differenziale ordinaria, III-31, MAPLE, loglogplot, III-3
33 MAPLE, Matrix, II-20, 31
Equazione modificata, III-31, 32 MAPLE, odeadvisor, III-33
Errore MAPLE, plot, II-37, III-33
Errore assoluto, I-3 MAPLE, simplify, II-20, 37
Errore di ampiezza, III-29 MAPLE, solve, III-15
Errore di discretizzazione, III-31, 32 MAPLE, spline, II-37
Errore di fase, III-29 MAPLE, transpose, II-20, 31
Errore di interpolazione, II-4 MATLAB, comando di
Errore di troncamento, III-8, 9, 11 MATLAB, Basic-Fitting, II-12, 40
Errore percentuale, I-3 MATLAB, contour, III-45, 48
Errore relativo, I-3 MATLAB, fft, III-24
Fourier, MATLAB, interp1, II-10
Fourier, coefficienti di, III-18, 25 MATLAB, inv, III-36, 45
Fourier, serie di, III-18 MATLAB, load, II-6, III-24
Fourier, trasformata discreta di, III-19, 24 MATLAB, pchip, II-18
Funzioni di forma, II-3, 26, 29 MATLAB, plot, II-8, III-24, 36
Griglia non strutturata, II-29 MATLAB, run, II-19
Griglia strutturata, II-25, III-42 MATLAB, size, II-6, III-24
Heaviside, funzione di, III-49 MATLAB, spy, III-45, 46
Interpolazione spline, II-34 MATLAB, surf, III-45, 47
Lagrange, MATLAB, transpose, III-36, 45
Lagrange, coefficienti di, II-3, III-25 MATLAB, who, II-7
Lagrange, polinomio completo di, II-27 Nodi di griglia, II-25
Lagrange, polinomio di, II-1, II-24, III-10 Numero d’onda modificato, III-26
8 F.M. Denaro - Prefazione

Numero d’onda, III-18 Robin, condizioni al contorno, III-43


Nyquist, teorema di, III-19 Rolle, teorema di, II-5
Ordine di accuratezza, I-5, III-3, 8 Stencil, III-2, 42, 43
Ordine di grandezza, I-3 Taylor,
Peclet, numero di, III-39
Taylor, resto della serie di, II-4
Poisson, equazione di, III-43
Taylor, sviluppo in serie di, II-4, III-8, 41
Proprietà di conformabilità, II-28
Rapporto incrementale, III-1 Thomas, algoritmo di, II-35
Reynolds, numero di, III-39 Vandermonde, matrice di, II-2
Ricostruzione polinomiale a tratti, II-4 Viscosità artificiale, III-40

View publication stats