Sei sulla pagina 1di 25

Laboratorio di Idrodinamica.

Attivita LN
A.A. 2013-2014
Introduzione
In molti casi non possibile e/o non conviene risolvere
analiticamente le equazioni differenziali della Meccanica dei
Fluidi.
In tal caso necessario utilizzare tecniche volte a determinare
approssimazioni numeriche delle soluzioni.
Per approssimazione o soluzione numerica si intende una tabella
di numeri, che approssimano la soluzione in istanti e punti dello
spazio ben definiti.
La soluzione numerica viene ottenuta quindi in un numero finito di
punti, risolvendo la forma discreta o discretizzata dellequazione
differenziale di partenza.
Allo stato attuale le svariate tecniche di discretizzazione e di
soluzione numerica delle equazioni costituiscono la
Computational Fluid Dynamics (CFD), divenuta una vera e
propria disciplina indipendente, rispetto alla Meccanica dei Fluidi.
Il metodo delle differenze finite Definizione del problema
esaminato
Tra i differenti metodi di discretizzazione delle equazioni
differenziali, nel seguito si prender in considerazione il pi
semplice e diretto: il metodo delle differenze finite.
Tale tecnica verr applicata allequazione del moto pulsatile di un
liquido viscoso allinterno di un tubo:
La (2) e la (3) sono rispettivamente la condizione al contorno e
iniziale.
Nel complesso la (1), la (2) e la (3) costituiscono un problema
differenziale alle derivate parziali: ossia una equazione
differenziale alle derivate parziali corredata con le opportune
condizioni iniziali e al contorno.
( ) ( ) ( )
( ) ( )
( ) ( ) 3 0 ; 0 0 ,
2 0 ; 0 ,
1
1
sin 1
0
R r r u
t t R u
r
u
r
r r
t gJ
t
u
s s =
> =
|
.
|

\
|
c
c
c
c
+ + =
c
c

e c
Il metodo delle differenze finite Adimensionalizzazione
E opportuno innanzitutto adimensionalizzare lequazione: ossia trasformare variabili
dipendenti e indipendenti nel modo seguente:
Tramite ladimensionalizzazione vengono introdotte variabili dipendenti e indipendenti
adimensionali (nella fattispecie t, q e v), prive cio di dimensione fisica, e opportuni
parametri adimensionali o numeri puri.
Lutilit di tale operazione evidente, se si pensa alla grande generalizzazione
ottenuta: a parit di parametri adimensionali (ossia in condizioni di similitudine) la
medesima soluzione adimensionale rappresenta una molteplicit di casi concreti.
Applicando le (4) alle (1-3) si ottiene:
( ) 4
4
, ,
2
0
v
R gJ
u R r t

q
e
t
= = =
( ) ( ) ( )
( ) ( )
( ) ( ) 7 1 0 ; 0 0 ,
6 0 ; 0 , 1
5
1
sin 1 4
2 2
s s =
> =
|
|
.
|

\
|
c
c
c
c
+ + =
c
c
q q
t t
q
q
q q e

t c
e

t
v
v
v
R R
v
Il metodo delle differenze finite Adimensionalizzazione
Il parametro adimensionale il numero di Womersley, una particolare forma del
numero di Reynolds:
Di conseguenza si ha:
Come si vede, la soluzione adimensionale dipender, oltre che dalle variabili
indipendenti adimensionali q, t, anche dal numero di Womersley W.
( ) 8
2

e R
W =
( ) ( ) ( )
( ) ( )
( ) ( ) 11 1 0 ; 0 0 ,
10 0 ; 0 , 1
9
1 1
sin 1
4
s s =
> =
|
|
.
|

\
|
c
c
c
c
+ + =
c
c
q q
t t
q
q
q q
t c
t
v
v
v
W W
v
Il metodo delle differenze finite Discretizzazione
Nel caso in esame la variabile spaziale adimensionalizzata appartiene allintervallo
0,1, estremi inclusi: tale intervallo il dominio del moto.
Dividiamo lestensione del dominio del moto in un numero N di intervalli uguali:
Gli N+1 punti:
costituiscono una possibile discretizzazione del dominio del moto. Nel seguito
lapprossimazione numerica della soluzione verr determinata in questi punti.
Allo stesso modo il tempo adimensionale pu essere discretizzato tramite la:
essendo At un intervallo temporale opportunamente scelto.
N
1
= Aq
N i
N
i
i
i
,..., 1 , 0 ; = = A = q q
,... 1 , 0 ; = A = n n
n
t t
Il metodo delle differenze finite Discretizzazione
Consideriamo lo sviluppo in serie di Taylor della variabile dipendente v nel punto
q
i
+Aq, t
n
, con punto iniziale q
i
, t
n
, arrestato al I ordine:
O(Aq
2
) rappresenta un termine proporzionale a Aq
2
: il resto dello sviluppo in serie di
Taylori. Si ricava immediatamente lespressione approssimata della derivata prima
della v rispetto alla q:
Il resto O(Aq
2
) diviso per Aq fornisce un termine proporzionale a Aq. Tenendo conto
del fatto che:
si pu alleggerire la notazione delle formule (12), (13) nel modo seguente:
In cui ovviamente:
( ) ( ) ( ) ( ) 12 , ,
2
q q
q
t q t q q
t t
q q
A + A
c
c
+ = A +
=
=
O
v
v v
n
i
n i n i
( ) ( )
( ) ( ) 13
, ,
q
q q
t q t q q
t t
q q
A +
c
c
=
A
A +
=
=
O
v v v
n
i
n i n i
( ) t t q q q A = A + = A + n i
n i
, 1
( ) ( ) 14
1
q
q q
A +
c
c
=
A

+
O
v v v
n
i
n
i
n
i
( ) ( )
n i
n
i n i
n
i
v v v v t q t q q , , ,
1
= A + =
+
Il metodo delle differenze finite Discretizzazione
La formula (14) ci fornisce unapprossimazione della derivata prima della v rispetto ad
q in iAq, nAt, espressa in funzione della differenza tra i valori della funzione v
tra i punti (i+1)Aq, nAt e iAq, nAt.
Tale differenza finita e non infinitesima, come si ha nellespressione esatta della
derivata.
Il metodo delle differenze finite si basa su questa semplice idea: sostituire i rapporti di
differenze infinitesime che compaiono nelle derivate con rapporti di differenze finite.
La formula (14) approssima la derivata prima della v a meno di un termine
proporzionale a Aq, utilizzando i valori della funzione nei punti (i+1)Aq, iAq: per
questo detta del primo ordine in avanti.
Lo stesso tipo di approssimazione si pu ottenere utilizzando i valori della funzione
nei punti iAq, (i-1)Aq.
Considerando infatti lo sviluppo in serie di Taylor arrestato al I ordine della funzione
v in (i-1)Aq, di punto iniziale iAq si ha:
La formula (16) approssima la derivata prima della v a meno di un termine
proporzionale a Aq, utilizzando i valori della funzione nei punti iAq, (i-1)Aq: per
questo detta del primo ordine allindietro.
( ) ( ) ( ) 16
1
2
1
q
q q
q q
q
A +
A

=
c
c
A + A
c
c
=

O
v v v
O
v
v v
n
i
n
i
n
i
n
i
n
i
n
i
Il metodo delle differenze finite Discretizzazione
Consideriamo ora gli sviluppi in serie di Taylor al secondo ordine della funzione v nei
punti (i+1)Aq, (i-1)Aq, entrambi di punto iniziale iAq:
Sottraendo alla (17a) la (17b) si ottiene:
La formula (18) approssima la derivata prima della v a meno di un termine
proporzionale a Aq
2
, utilizzando i valori della funzione nei punti (i+1)Aq, (i-1)Aq : per
questo detta del secondo ordine centrata.
( ) ( )
( ) ( )

A
A
c
c
+ A
c
c
=
A +
A
c
c
+ A
c
c
+ =

+
17b
2
17a
2
3
2
2
2
1
3
2
2
2
1
q
q
q
q
q
q
q
q
q
q
O
v v
v v
O
v v
v v
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
( ) ( ) ( ) 18
2
2 2
2
1 1
3
1 1
q
q q
q q
q
A
A

=
c
c
A + A
c
c
=
+
+
O
v v v
O
v
v v
n
i
n
i
n
i
n
i
n
i
n
i
Il metodo delle differenze finite Discretizzazione
Si pu dare una efficace rappresentazione grafica delle derivate in avanti, allindietro
e centrata e del loro ordine di approssimazione:
Curva a tratteggio: funzione q
3
; retta a tratto continuo nero: tangente alla curva nel
punto q
i
; retta a tratto continuo rosso: tangente alla curva approssimata con la
derivata in avanti; retta a tratto continuo blu: tangente alla curva approssimata con la
derivata allindietro; retta a tratto continuo verde: tangente alla curva approssimata
con la derivata centrata.
q
3
q
i-1 q
i
q
i+1
q
Il metodo delle differenze finite Discretizzazione
Altrettanto interessante vedere come al diminuire del Aq la derivata del secondo
ordine centrata (curva blu) tenda al valore esatto della derivata nel punto considerato
(curva nera a tratteggio) pi rapidamente delle derivate in avanti e allindietro (curva
nere e rosse rispettivamente)
Aq
((q
0
+Aq)
3
q
0
3
)/Aq
(q
0
3
-(q
0
Aq)
3
)/Aq
((q
0
+Aq)
3
-(q
0
Aq)
3
)/(2Aq)
3q
0
2
Il metodo delle differenze finite Discretizzazione
La rappresentazione approssimata delle derivate basata sullapplicazione della
formula di Taylor pu essere generalizzata esprimendo la generica derivata come
combinazione lineare di valori della funzione in punti determinati.
Per mostrare la procedura, si consideri la combinazione lineare dei valori della
funzione nei punti q
i+1
, q
i
edq
i-1
:
Si immagini di voler approssimare tramite la (19) la derivata seconda della funzione v
rispetto ad q, calcolata in q
i
. A tale scopo devono essere determinati i coefficienti
(incogniti) della combinazione lineare. Espandiamo in serie di Taylor di punto iniziale
q
i
al IV ordine la funzione v nei puntiq
i+1
edq
i-1
:
( ) 19
1 1 0 1 1
n
i
n
i
n
i
v a v a v a
+
+ +
( ) ( )
( ) ( )

A +
A
c
c

A
c
c
+ A
c
c
=
A +
A
c
c
+
A
c
c
+ A
c
c
+ =

+
20b
6 2
20a
6 2
4
3
3
3 2
2
2
1
4
3
3
3 2
2
2
1
q
q
q
q
q
q
q
q
q
q
q
q
q
q
O
v v v
v v
O
v v v
v v
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
Il metodo delle differenze finite Discretizzazione
Sostituendo le (20a), (20b) nella (19) si ha:
( )
( )
( )
( )
( )
( ) ( ) ( ) ( ) 21
6
-
2
-

6 2
6 2
4
1 1
3
3
3
1 1
2
2
2
1 1
1 1
1 0 1
4
3
3
3 2
2
2
1
0
4
3
3
3 2
2
2
1
1 1 0 1 1
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
q
A + +
A
c
c
+
A
c
c
+
+ A
c
c
+ + +
=
|
|
.
|

\
|
A +
A
c
c
+
A
c
c
+ A
c
c
+
+
+
|
|
.
|

\
|
A +
A
c
c

A
c
c
+ A
c
c

= + +

+
O a a
v
a a
v
a a
v
a a
v a a a
O
v v v
v a
v a
O
v v v
v a
v a v a v a
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
Il metodo delle differenze finite Discretizzazione
Affinch lespressione a secondo membro della (21) sia unapprossimazione della
derivata seconda di v si dovr avere necessariamente:
Le tre condizioni permettono di ricavare i seguenti valori dei coefficienti a
-1
, a
0
, a
1
:
Che risostituiti nella (21) forniscono lespressione completa dellapprossimazione
della derivata seconda:
Dunque la procedura, basata essenzialmente sulla applicazione sistematica della
formula di Taylor, ha permesso di ottenere unespressione della derivata seconda.
Questultima detta formula centrata del secondo ordine per la derivata seconda.
In linea teorica, applicando la procedura sopra descritta, possibile ottenere formule
con ordine di approssimazione prestabilito per derivate di qualsiasi ordine.
( ) 1
2
0 -
0
2
1 1
1 1
1 0 1
=
A
+
=
= + +

q
a a
a a
a a a
2
0
2
1 1
2
,
1
q q A
=
A
= =

a a a
( ) ( ) 22
2
2
2
2
2
1 1
q
q q
A +
c
c
=
A
+
+
O
v v v v
n
i
n
i
n
i
Il metodo delle differenze finite Discretizzazione
Si ora in grado di approssimare lequazione (9) alle differenze finite, semplicemente
sostituendo alle derivate della funzione incognita le rispettive approssimazioni.
Scegliamo le formule centrate per le derivate spaziali e la formula in avanti per la
derivata temporale. Scegliamo inoltre di approssimare le derivate spaziali con valori
della funzione considerati al tempo nAt:
Si vede chiaramente come lequazione di partenza (9) sia rappresentata, nel punto
iAq, nAt, dalla quantit a secondo membro della (23) a meno di un errore che tende a
zero con Aq,At: questa propriet di fondamentale importanza e denota che
lapprossimazione a secondo membro della (23) consistente con lequazione
di partenza.
( ) ( )
( ) ( ) ( ) ( )
( ) 23
0
2
2
1 1
sin 1
4
1 1
sin 1
4
2
2
1 1 1 1
1
2
2
= A + A +
|
|
.
|

\
|
A
+
+
A

A
A +
A

=
|
|
.
|

\
|
c
c
+
c
c
+
c
c
+ +
+
q t
q q q
t c
t
q q q
t c
t
O O
v v v v v
i W
i
W
v v
v v
W W
v
n
i
n
i
n
i
n
i
n
i
n
i
n
i
Il metodo delle differenze finite Discretizzazione
Come detto, la quantit a secondo membro della (23) unapprossimazione
consistente dellequazione (9) nel punto iAq, nAt. Al variare di i ed n possiamo
determinare i valori v
i
n
tramite lalgoritmo numerico, ottenuto annullando lerrore di
approssimazione a secondo membro della (23):
Lalgoritmo (24) deve essere applicato per i=1,2,,N-1 e per n=0,1,2, per ottenere
lapprossimazione della soluzione nel punto iAq, (n+1)At.
Per i=0, i=N, si applicano le condizioni al contorno.
In questo caso, particolarmente semplice, lalgoritmo esplicito: ossia non si deve
invertire alcuna matrice, ma si pu risolvere immediatamente in funzione della
incognita v
i
n+1
:
Quindi a partire dalla condizione iniziale (n=0) si determina la v
i
1
per i=1,2,,N-1,
successivamente la v
i
2
e cos via.
( ) ( )
( ) 24
0
2
2
1 1
sin 1
4
2
1 1 1 1
1
=
|
|
.
|

\
|
A
+
+
A

A
A +
A

+ +
+
q q q
t c
t
n
i
n
i
n
i
n
i
n
i
n
i
n
i
v v v v v
i W
i
W
v v
( ) ( ) ( ) 25
2
2
1
sin 1
4
2
1 1 1 1
1
|
|
.
|

\
|
A
+
+
A

A
A
+ A +
A
+ =
+ +
+
q q q
t
t c
t
n
i
n
i
n
i
n
i
n
i
n
i
n
i
v v v v v
i W
i
W
v v
Il metodo delle differenze finite Consistenza, stabilit,
convergenza
Vale la pena sottolineare che le v
i
n+1
determinate tramite la ripetuta applicazione
dellalgoritmo (25) non coincidono con la soluzione esatta v calcolata in iAq, (n+1)At,
ma ne sono unapprossimazione.
Si pongono ora due questioni fondamentali:
1) applicando ripetutamente lalgoritmo nel tempo, laffidabilit del calcolo rimane invariata? In
altre parole il calcolo stabile?
2) Facendo tendere a zero i passi temporale e spaziale Aq, At, lapprossimazione della
soluzione tende alla soluzione esatta? In altre parole lapprossimazione della soluzione
converge?
La prima questione ha a che fare con la stabilit dellalgoritmo numerico, la seconda
con la convergenza: propriet fondamentali al pari della consistenza.
Le tre propriet (consistenza, stabilit e convergenza) sono tra loro intimamente
connesse negli algoritmi numerici.
Infatti unimportante risultato del calcolo numerico, noto come teorema di equivalenza
di Lax-Richtmyer, afferma che:
uno schema alle differenze finite consistente per un problema lineare ben posto di
evoluzione convergente se e solo se stabile.
Il metodo delle differenze finite Consistenza, stabilit,
convergenza
Il caso in esame ricade nellambito delle ipotesi del teorema di Lax-Richtmyer: lo
schema o algoritmo numerico consistente e deriva da un problema ben posto
(equazione differenziale alle derivate parziali con condizioni iniziali e al contorno).
Dunque se si dimostra che lalgoritmo stabile, se ne sar dimostrata in pari tempo
la convergenza.
La stabilit di un algoritmo connessa alla propagazione dellerrore dovuto al
troncamento delle cifre significative nella rappresentazione dei numeri.
In altre parole la stabilit non riguarda lerrore di approssimazione, ma lerrore indotto
dalla imperfetta rappresentazione dei numeri nel calcolo numerico.
Per comprendere il concetto di stabilit esprimiamo lapprossimazione della soluzione
v
i
n
come somma di una parte esatta e di un errore dovuto al troncamento delle cifre.
La parte esatta soddisfa lequazione, mentre lerrore deve soddisfare la parte
omogenea dellalgoritmo (25):
( ) ( )
( ) 26
2
2
1
* * 2 *
2
* * 1
sin 1
4
* *
*
2
1 1 1 1
2
1 1 1 1
1 1
|
|
.
|

\
|
A
+
+
A

A
A
+
+
|
|
.
|

\
|
A
+
+
A

A
A
+ A +
A
+ = +
+ =
+ +
+ +
+ +
q q q
t
q q q
t
t c
t
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
n
i
e e e e e
i W
e
v v v v v
i W
i
W
v e v
e v v
Il metodo delle differenze finite Consistenza, stabilit,
convergenza
In altre parole lerrore di troncamento evolve da uniterazione allaltra secondo la:
In rappresentazione matriciale la (27) data dalla:
In questo caso A la matrice identit (N-1)(N-1). Di conseguenza anche A
-1
la
matrice identit (N-1)(N-1). I vettore e
n
, e
n+1
e la matrice B sono definiti dalle:
( ) 27
2
2
1
2
1 1 1 1
1
|
|
.
|

\
|
A
+
+
A

A
A
+ =
+ +
+
q q q
t
n
i
n
i
n
i
n
i
n
i
n
i
n
i
e e e e e
i W
e e
n n n n
Be A e Be Ae
1 1 1 + +
= =
{ } { }
|
|
|
|
|
|
|
|
|
|
|
|
.
|

\
|

=
A
A
=

+

+ +

p p
N
N
p
N
N
p p
N
N
p p p
p p p
p p
W
p
e e e e
n
N
n n n
N
n n
2 1
2 2
3 2
0 0 0 0
2 2
1 2
2 1
2 2
3 2
... 0 0
0 ... ... ... ... ...
0 ...
6
7
2 1
6
5
0
0 ... 0
4
5
2 1
4
3
0 ... 0 0
2
3
2 1
,
,..., , ,...,
2
1
1
1
1
1
1 1
B
e e
q
t
Il metodo delle differenze finite Consistenza, stabilit,
convergenza
Per capire se lalgoritmo stabile sufficiente considerare lautovalore di A
-1
B con il
modulo massimo, noto come raggio spettrale della matrice A
-1
B (
S
): si ha stabilit
per
S
<1.
Nel caso in esame la matrice A
-1
B tridiagonale ossia sono diversi da zero solo gli
elementi della diagonale principale e delle due diagonali adiacenti e si pu dimostrare
che il raggio spettrale
S
della matrice A
-1
B approssimato (per N sufficientemente
grande) da:
Il comportamento di
S
illustrato di seguito:
S
minore di 1 per 0<p<0.5.
( )
p
N
N
p p
S
4 1
1
cos 2 2 1 ~
|
.
|

\
|
+ =
t

Stabile
Instabile
Il metodo delle differenze finite Consistenza, stabilit,
convergenza
Ricordando la definizione di p, si ottiene unimportante condizione per la stabilit
dellalgoritmo:
In altre parole, definito lintervallo spaziale Aq, lintervallo temporale At deve essere
scelto in modo da rispettare la diseguaglianza (28).
La condizione di stabilit (28) molto onerosa: si consideri infatti che se si vuole
aumentare a parit di W laccuratezza spaziale dimezzando il Aq, lintervallo
temporale massimo ammissibile dovr essere un quarto del precedente.
Dunque se si vuole aumentare laccuratezza spaziale, si deve in pari tempo
aumentare laccuratezza temporale, aumentando altres la durata del calcolo.
E importante osservare che la condizione (28) non universale, ma dipende dal
problema esaminato e dallalgoritmo numerico utilizzato.
( ) 28
2
2
1
2
1
q A t A W p < <
Implementazione dellalgoritmo tramite un linguaggio di
programmazione
Per poter calcolare lapprossimazione
numerica della soluzione necessario
elaborare una sequenza di istruzioni scritte in
opportuno linguaggio il codice di calcolo -
in modo tale da dire al calcolatore come
determinare lapprossimazione della
soluzione.
E utile premettere alla stesura del codice di
calcolo un diagramma di flusso, che
identifichi singole istruzioni o blocchi
omogenei di esse.
Un possibile diagramma di flusso, relativo al
problema esaminato, viene riportato di
fianco.
Definizione variabili
Assegnazione e/o
lettura dati; calcolo
dei parametri
Assegnazione
condizioni iniziali
Applicazione
dellalgoritmo
t<T
fin
VERO
Applica le condizioni
al contorno
Aggiorna il tempo e i
valori appena calcolati.
Stampa.
FALSO
Termina lesecuzione
Implementazione dellalgoritmo in linguaggio Fortran
Definizione variabili
Assegnazione e/o
lettura dati; calcolo
dei parametri
program Pulsa Nome del programma
c
c Moto pulsatile in un tubo Commento
c
implicit real (a-h,o-z) Tipo di variabile usata
dimension u(0:1000,2) Dimensione u: massimo
1000 punti e due livelli
nel tempo
open(100,file='output.txt',status='unknown') Apertura file output
c Lettura dati
write(*,*) 'wo Lettura dati da video
read(*,*) wo
write(*,*) 'eps'
read(*,*) eps
write(*,*) 'nr'
read(*,*) nr
write(*,*) 'rid'
read(*,*) rid
write(*,*) 'tf'
read(*,*) tf
c
dr=1./float(nr) Calcola gli intervalli dr,dt.
dt=rid*0.5*wo*dr*dr
c
c Assegnazione delle condizioni iniziali
c
do i=0,nr
u(i,1)=0. Assegna le condizioni iniziali
enddo con ciclo do.
Assegnazione
condizioni iniziali
Implementazione dellalgoritmo in linguaggio Fortran
tempo=0. Inizializzazione del tempo
kistamp=0 Inizializzazione del parametro di stampa
c
dowhile(tempo.le.tf) Struttura dowhile: controlla se il tempo
c minore del tempo di simulazione
c
do i=1,nr-1 Ciclo do sui punti computazionali:
u(i,2)=u(i,1)+dt*4*(1.+eps*sin(tempo))/wo+ applica lalgoritmo
- dt*((u(i+1,1)-2.*u(i,1)+u(i-1,1))/dr+
- 0.5*(u(i+1,1)-u(i-1,1))/(float(i)*dr))/(wo*dr)
enddo Chiusura ciclo do sui punti computazionali
c
Applicazione
dellalgoritmo
t<T
fin
VERO
u(nr,2)=0. Condizioni al contorno: velocit nulla in R
u(0,2)=(4.*u(1,2)-u(2,2))/3. du/dr=0 in 0.
c
do i=0,nr Aggiorna i valori appena calcolati
u(i,1)=u(i,2)
enddo
c
tempo=tempo+dt Aggiorna il tempo
kistamp=kistamp+1 Aggiorna il parametro di stampa
c
if((kistamp/istamp)*istamp.eq.kistamp)then stampa ogni istamp passi
c
write(*,*) tempo Stampa su video e file i risultati
write(100,*) tempo
do i=0,nr
write(100,*) float(i)*dr,u(i,2)-1.+(float(i)*dr)**2.
enddo
c
endif Chiusura struttura if
enddo Chiusura do while
stop Termina lesecuzione
end
Applica le condizioni al
contorno
Aggiorna il tempo e i
valori appena calcolati.
Stampa.
FALSO
Termina
lesecuzione
Compilatore e ambiente di sviluppo Fortran
Open source ai seguenti link:
1) Gfortran (compilatore)
http://gcc.gnu.org/wiki/GFortranBinaries#Windows
2) Geany: (ambiente di sviluppo)
http://www.geany.org/