METODO DI EULERO PER LA
RISOLUZIONE NUMERICA DI EDO DEL
I◦ ORDINE
Prof. Domenico RUGGIERO
Da sempre l'uomo ha arontato la risoluzione di problemi che lo ponevano
di fronte a calcoli matematici talvolta molto laboriosi o complessi. In suo
aiuto è arrivata la tecnologia che, per mezzo di calcolatori elettronici, ha
contribuito alla risoluzione di problemi anche articolati che sarebbero risultati
improponibili o che avrebbero richiesto un notevole impiego di tempo.
Lo sviluppo di algoritmi e programmi specializzati ha portato a realizzare software matematici che, sfruttando gli algoritmi di analisi numerica,
hanno agevolato e velocizzato il calcolo numerico (approssimato) di problemi
alquanto complessi da risolvere (calcolare) in modo esatto o, addirittura, di
problemi la cui soluzioni esatta non è proprio determinabile sebbene ne sia
stata dimostrata l'esistenza.
Ad esempio, esistono equazioni dierenziali ordinarie del primo ordine
che si possono risolvere soltanto con metodi numerici specici. Uno di questi
algoritmi è fornito dal metodo di Eulero che è l'oggetto di questa trattazione.
1
Indice
1 Metodo di Eulero
3
2 Applicazioni del metodo di Eulero
4
3 Implemetazione dell'algoritmo
6
4 Esempi di implemetazioni dell'algoritmo
6
5 Estensione del metodo ad equazioni vettoriali
8
6 Esempi ed implementazione dell'algoritmo in due e tre dimensioni
10
6.1
6.2
Sistemi bidimensionali . . . . . . . . . . . . . . . . . . . . . . 11
Sistemi tridimensionali . . . . . . . . . . . . . . . . . . . . . . 14
2
1 Metodo di Eulero
Il metodo di Eulero si basa sull'approssimazione della derivata prima mediante il rapporto incrementale.
Sia dato il problema di Cauchy, di cui si suppongono esitenza ed unicità
della soluzione,
½
y 0 = f (x, y)
(1.1)
y(x0 ) = y0
Consideriamo la derivata prima di y(x) calcolata in x0 approssimata
mediante il rapporto incrementale:
y0 =
y(x) − y(x0 )
x − x0
(1.2)
Posto h = x − x0 (incremento della variabile x che, nel metodo numerico,
viene detto passo ) da cui x = x0 + h, la (1.2) si scrive come
y0 =
y(x0 + h) − y(x0 )
.
h
(1.3)
Sostituendo la (1.3) al primo membro dell'equazione che compare in (1.1),
si ha:
y(x0 + h) − y(x0 )
= f (x0 , y(x0 ))
h
che può essere scritta come
y(x1 ) − y(x0 )
= f (x0 , y(x0 )).
h
(1.4)
avendo posto x1 = x0 + h.
Usando la notazione yi = y(xi ), la (1.4) si scrive come
y1 − y0
= f (x0 , y0 )
h
da cui moltiplicato ambo i membri per h e trasportando y0 al secondo membro
otteniamo , in denitiva,
y1 = y0 + hf (x0 , y0 ).
(1.5)
Dunque, partendo dal dato iniziale abbiamo ottenuto un altro punto della
soluzione (approssimata). Si noti che, evidentemente, esso giace sulle retta
tangente il graco di y(x) nel punto P0 (x0 , y(x0 )).
3
Per determinare altri punti usiamo lo stesso procedimento con cui abbiamo determinato la (1.5) innescandolo dall'ultimo valore calcolato:
x2 = x1 + h = x0 + 2h =⇒ y2 = y1 + hf (x1 , y1 )
x3 = x2 + h = x1 + 3h =⇒ y3 = y2 + hf (x2 , y2 )
e così via.
Dunque, generalizzando il procedimento, si ha:
yk = yk−1 + hf (xk−1 , yk−1 )
(1.6)
dove xk = xk−1 + h = x0 + kh con k = 1, ....., N ; N ∈ N ssato.
La formula generale permette, dunque, il calcolo approssimato di N punti
della curva soluzione del problema di Cauchy dato. Essa fornisce un algoritmo
per il calcolo di tali punti. Dal punto di vista informatico il problema può
essere arontato come nella sez. 3.
Osservazioni-Denizioni 1.1
La scelta del passo h > 0 condiziona la convergenza (avvicinarsi) della
soluzione numerica a quella esatta. Con questo metodo conviene scegliere
h<1 (ad esempio h(1/10, h(1/100, h(1/1000). Quanto osservato è parte di
un risultato dimostrabile.
Inoltre l'errore relativo, che si commette con tale metodo, approssimando
la soluzione esatta y(x) in xk mediante il valore yk della soluzione approssimata è dato da
¯
¯
¯ y(xk ) − yk ¯
¯.
er = ¯¯
(1.7)
y(xk ) ¯
2 Applicazioni del metodo di Eulero
Il metodo di Eulero risulta, utile in casi come quelli già descritti nell'introduzione, quando
(i) si vogliono determinare N punti della soluzione esatta che poi possono
essere gracati, interpolati, ecc.;
(ii) si richiede il valore approssimato della soluzione in un punto x̄ in cui la
soluzione esatta è prolungabile per continuità.
4
Nel primo caso, ssati il passo h ed il numero di iterazioni N , si innesca
il metodo descritto dalla (1.6).
Nel secondo caso, supposto x̄ > x0 , si divide l'intervallo in n parti uguali
di ampiezza h = (x̄ − x0 )/n che riulta essere il passo del metodo. A questo
punto, ancora mediante il prcedimento esposto e descritto dalla (1.6), si
ottiene il risultato cercato che coincide con l'ultimo valore calcolato.
Gli esempi seguenti chiariscono meglio i concetti esposti.
Esempio 2.1
½
2
2
y 0 = ey −x
.
y(0) = 1
L'equazione che compare nel problema dato è a variabili separabili essendo
2
2
2
2
il campo vettoriale f (x, y) = ex −y = ey e−x . Tuttavia tale problema
non possiede una soluzione esatta eplicita, cioè della forma y = y(x), per
la presenza delle gaussiane non elementarmente integrabili. Infatti, l'unica
soluzione esatta che si riesce a determinare è quella in forma integrale ottenibile separando le variabili ed integrando tenendo conto della condizione
iniziale:
Z x
Z y
2
−t2
e−v dv.
e dt =
Consideriamo il seguente problema di Cauchy:
0
1
Iniziando dal dato iniziale, N punti della soluzione possono esser calcolati
(in modo approssimato) col metodo di Eulero nel modo seguente:
x0 = 0, y0 = 1;
2
2
xk = xk−1 + h, yk = yk−1 + hexk−1 −yk−1 ,
k = 1, 2, ...., N avendo ssato h ∈ (0, 1).
Esempio 2.2
½
y 0 = −2xy
.
y(0) = 1
Determiniamo, in modo approssimato, il valore y(2/5) che la soluzione y(x)
assume per x = 2/5 = 0, 4. La soluzione esatta del problema di Cauchy è
2
y = e−x com'è immediato vericare per cui y(0, 4) = e−0,16 . Per procedere,
applichiamo il Metodo di Eulero suddividendo l'intervallo [0,2/5] in N = 20
= 0, 02. Si ha, allora,
parti uguali. Ne segue che il passo è h = 0,4
20
Consideriamo il seguente problema di Cauchy:
x0 = 0, y0 = 1;
2
2
xk = xk−1 + h, yk = yk−1 + hexk−1 −yk−1 ,
5
per k = 1, 2, ...., 20 il valore cercato è proprio y20 = y19 − 2hx19 y19 con un
errore relativo, calcolato mediante la (1.7)
er =
e−0,16 − y20
.
e−0,16
(2.1)
3 Implemetazione dell'algoritmo
In questa sezione presentiamo un'implementazione, dell'algoritmo già trattato, in una pseudocodica che ben si presta ad essere codicata in un qualsiasi
linguaggio di programmazione. Dichiarati gli array unidimensionali (vettori)
x,y di elementi reali e scritta la funzione f(x,y) che restituisce in uscita il valore del campo vettoriale f (x, y) secondo membro dell'equazione dierenziale,
dove x,y sono reali e non i vettori di prima e, dati da input x0 , y0 , h (passo),
N (numero d'iterazioni), si può procedere con il seguente algoritmo dove le
parentesi grae indicano apertura e chiusura di un blocco d'istruzioni:
Algoritmo pseudocodicato 3.1
x[0] = x0;
y[0] = y0;
for k=1 to=N
{
x[k] = x[k-1] + h;
y[k] = y[k-1] + h* f (x[k-1],y[k-1]);
}
Si noti che l'algoritmo appena presentato è implementabile anche con un
foglio elettronico, ad esempio Excel. Questo è l'oggetto della prossima sezione
in cui presentiamo i risultati, ottenuti con l'ausilio di un foglio elettronico,
della risoluzione del problema di Cauchy esaminato nell'esempio 2.2.
4 Esempi di implemetazioni dell'algoritmo
In questa sezione presentiamo un'implemetazione dell'algoritmo per risolvere
il problema di Cauchy già introdotto nell'esempio 2.2. Procediamo a tale implementazione utilizzando il foglio elettronico Excel, costruendo una colonna
6
per le xk , una per per il calcolo dei valori yk della soluzione approssimata,
una il calcolo di f (xk , yk ) necessaria per calcolare le yk ed una cella per il
calcolo di er (calcolo eseguito ultilizzando la formula (2.1)). Si ottiene la
situazione seguente.
x0 = 0 ; y 0 = 1 ; h =
indice k
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
xk
0,00
0,02
0,04
0,06
0,08
0,10
0,12
0,14
0,16
0,18
0,20
0,22
0,24
0,26
0,28
0,30
0,32
0,34
0,36
0,38
0,40
0,4
20
yk
1,0000
1,0000
0,9992
0,9976
0,9952
0,9920
0,9881
0,9833
0,9778
0,9715
0,9646
0,9568
0,9484
0,9393
0,9295
0,9191
0,9081
0,8965
0,8843
0,8716
0,8583
= 0, 02
f (xk , yk )
0,0000
-0,0400
-0,0799
-0,1197
-0,1592
-0,1984
-0,2371
-0,2753
-0,3129
-0,3498
-0,3858
-0,4210
-0,4552
-0,4884
-0,5205
-0,5515
-0,5812
-0,6096
-0,6367
-0,6624
////
er = 0, 268601
er % = 26, 86
Pertanto, si ha:
µ ¶
2
y
' y20 = 0, 8583
5
7
con un errore relativo percentuale del 26,86 % circa che può essere ridotto se
si diminuisce il passo.
Consideriamo, adesso, lo stesso problema nell'intervallo [0, 4] con N = 20
(ovvero h = 0, 2). Applicando l'algoritmo di Eulero, si costruisce una tabella
analoga alla precedente che qui non riportiamo procedendo, però, ad una
rappresentazione graca dei punti trovati per interpolata lineare che fornisce
il seguente andamento che, come si può osservare, corrisponde proprio ad un
2
ramo della gaussiana y = e−x nell'intervallo considerato.
Figura 1: graco della soluzione approssimata per x ∈ [0, 4]
5 Estensione del metodo ad equazioni vettoriali
In questa sezione estendiamo il metodo di Eulero ad equazioni dierenziali
ordinarie del primo ordine vettoriali ovvero ad EDO del primo ordine ndimensionali (sistemi di EDO) con n > 1.
8
Per equazioni di questo tipo, l'analogo del problema di Cauchy (1.1), si
scrive, in forma compatta, come
½
y0 = f (x, y)
(5.1)
y(x0 ) = y(0)
dove y, y(0) ∈ Rn ed f è una funzione di n + 1 variabili con n componenti:
y(x) = (y1 (x), y2 (x), ...., yn (x));
(0)
(0)
y(0) = (y1 , y2 , ...., yn(0) );
f (x, y) = f (x, y1 (x), y2 (x), ...., yn (x)) = (f1 (x, y(x), f2 (x, y(x), ...., fn (x, y(x)).
Dunque, tenendo presente, al solito, che y = y(x) e ricordando che due
vettori sono uguali se e solo se hanno uguali le componenti di stesso indice,
il problema (5.1) può esprimersi, componente per componente, come


y10 = f1 (x, y1 , y2 , ...., yn )




y20 = f2 (x, y1 , y2 , ...., yn )



..


.



..


.



0

yn = fn (x, y1 , y2 , ...., yn )
(5.2)
(0)
y1 (x0 ) = y1



(0)


y2 (x0 ) = y2



..


.



..


.



 y (x ) = y (0)
n
0
n
che rappresenta la traduzione scalare del sistema (5.1).
Il metodo di Eulero, descritto nella sez. 1 e riassunto nella (1.6), si
generalizza, al caso in esame, nel seguente modo:
y0 = y(x0 )
yk = yk−1 + hf (xk−1 , yk−1 )
(5.3)
dove xk = xk−1 + h = x0 + kh con k = 1, ....., N ; N ∈ N è il numero
d'iterazioni ed h il passo mantenendo le notazioni compatte (vettoriali) come
in (5.1).
9
Le (5.3), tradotte scalarmente analogamente alle (5.2), conducona a
(0)
(0)
y1[0] = y1 (x0 ) = y1 y2[0] = y2 (x0 ) = y2
..
.
(0)
yn[0] = yn (x0 ) = yn
y1[k] = y1[k−1] + hf1 (xk−1 , y1[k−1] , y2[k−1] , . . . , yn[k−1] )
y2[k] = y2[k−1] + hf2 (xk−1 , y1[k−1] , y2[k−1] , . . . , yn[k−1] )
..
.
(5.4)
yn[k] = yn[k−1] + hfn (xk−1 , y1[k−1] , y2[k−1] , . . . , yn[k−1] )
con evidente signicato dei simboli; dove xk = xk−1 + h = x0 + kh con
k = 1, ....., N ; N ∈ N è il numero d'iterazioni ed h il passo.
Esempio 5.1
Consideriamo, per n = 4, il seguente problema di Cauchy:
½
y0 = ((y1 + y2 )ex , xy2 , y3 + y4 , x2 + y4 )
y(0) = (1, 0, 2, 0)
(5.5)
Risolviamo il problema (5.5) utilizzando il metodo di Eulero generalizzato
nelle (5.4).
Si ha:
y1[0] = 1; y2[0] = 0; y3[0] = 2; y4[0] = 0
y1[k] = (y1[k−1] + y2[k−1] )exk−1
y2[k] = xk−1 y2[k−1]
y3[k] = y3[k−1] + y4[k−1]
y4[k] = x2k−1 + y4[k−1]
dove xk = xk−1 + h = kh (essendo x0 = 0), k = 1, ....., N ; N ∈ N è il numero
d'iterazioni ed h il passo.
Particolare interesse suscitano i casi n = 2 ed n = 3 in quanto molti
sistemi sici sono modellizati da equazioni dierenziali ordinarie in due ed in
tre dimensioni. Pertanto, nel seguito e con riferimento a tali casi, descriviamo
gli algoritmi analogamente a quanto fatto nella sez. 3 riportando anche degli
esempi.
6 Esempi ed implementazione dell'algoritmo in
due e tre dimensioni
In questa sezione implementiamo il metodo di Eulero per equazioni dierenziali ordinarie del primo ordine in due ed in tre dimensioni.
10
Utilizziamo le seguenti notazioni : indichiamo con x il vettore incognito
di componenti x, y ed, eventualmente z , con t la variabile indipendente.
6.1 Sistemi bidimensionali
L'analogo del problema (5.1), per sistemi bidimensionali (sistemi 2 × 2), si
scrive come
½
x0 = f (t, x)
(6.1)
x(t0 ) = x0
dove x, x0 ∈ R2 ed f è una funzione di 3 variabili con 2 componenti:
x = x(t) = (x(t), y(t)); x0 = (x0 , y0 );
f (t, x) = f (t, x, y) = (f1 (t, x, y), f2 (t, x, y)).
La traduzione scalare di (6.1) è data da

x0 = f1 (t, x, y)



y 0 = f2 (t, x, y)
x(t0 ) = x0



y(t0 ) = y0
(6.2)
Il metodo di Eulero, in questo caso, conduce alle seguenti formule:
x0 = x(x0 )
xk = xk−1 + hf (tk−1 , xk−1 )
(6.3)
dove tk = tk−1 +h = t0 +kh con k = 1, ....., N ; N ∈ N è il numero d'iterazioni
ed h il passo.
Operando la traduzione scalare delle (6.3), si ottiene:
x0 = x(t0 ); y0 = y(t0 )
xk = xk−1 + hf1 (tk−1 , xk−1 , yk−1 ); yk = yk−1 + hf2 (tk−1 , xk−1 , yk−1 )
(6.4)
dove tk = tk−1 +h = t0 +kh con k = 1, ....., N ; N ∈ N è il numero d'iterazioni
ed h il passo.
Osservazione 6.1
Si noti che le (6.3) e le (6.4) sono ottenibili dalle (5.4) e (5.5), rispettivamente,
per n = 2.
11
Procediamo ad una implementazione dell'algoritmo, come fatto nella sez.
3 per il caso unidimensionale, in una pseudocodica che ben si presta ad
essere codicata in un qualsiasi linguaggio di programmazione. Dichiarati
gli array unidimensionali (vettori) t,x,y di elementi reali e scritte le funzioni f1(t,x,y), f2(t,x,y) che restituiscono, in uscita, il valore delle componenti f1 (t, x, y), f2 (t, x, y) del campo vettoriale f (t, x, y), dove x,y sono reali e
non i vettori di prima e, dati da input t0, x0 , y0 (dato iniziale) , h (passo),
N (numero d'iterazioni), si può procedere con il seguente algoritmo dove le
parentesi grae indicano apertura e chiusura di un blocco d'istruzioni:
Algoritmo pseudocodicato 6.2
t[0] = t0;
x[0] = x0;
y[0] = y0;
for k=1 to N
{
t[k] = t[k-1] + h;
x[k] = x[k-1] + h*f1(t[k-1],x[k-1],y[k-1]);
y[k] = y[k-1] + h*f2(t[k-1],x[k-1],y[k-1]);
}
Si noti che l'algoritmo appena presentato è implementabile anche con un
foglio elettronico, ad esempio Excel.
Esempio 6.3
Consideriamo il problema di Cauchy per l'oscillatore armonico semplice:
 00
 x + αx = 0
x(t0 ) = x0
(6.5)

x0 (t0 ) = x̃0
dove α = k/m.
12
Posto y = x0 =⇒ y 0 = x00 , y(t0 ) = x̃0 ,

x0 =



y0 =
x(t0 ) =



y(t0 ) =
da cui, posto y0 = x̃0 ,




x0 =
y0 =
x(t0 ) =



y(t0 ) =
le (6.5) si scrivono come
y
−αx
x0
x̃0
y
−αx
x0
y0
(6.6)
che rappresenta un sistema di EDO del primo ordine lineare a coecienti
costanti.
Usando il formalismo delle matrici, il sistema (6.6) può essere scritto nella
forma
½
x0 = Ax
(6.7)
x(t0 ) = x0
µ
¶
0 1
dove A =
, x0 , x, x0 sono i vettori (x0 , y 0 ), (x, y), (x0 , y0 ) trasposti.
−α 0
La soluzione esatta di quest'ultimo ovvero del sistema (6.6) è data da
x = x0 cos(t) + y0 sin(t) (legge od equazione oraria)
y = y0 cos(t) − x0 sin(t) (equazione della velocità)
(6.8)
Consideriamo, per semplicità, il caso in cui m = 1 = k =⇒ α = 1
(oscillatore di massa e costante elastica unitarie), t0 = 0, x0 = 1, y0 = 2. Il
sistema (6.7) si scrive come
½
x0 = Ax
(6.9)
x(0) = x0
¶
µ
0 1
dove A =
mentre la sua traduzione scalare ovvero l'analogo del
−1 0
(6.6), come

x0 = y



y 0 = −x
(6.10)
x(0) = 1



y(0) = 1
la cui soluzione esatta, ottenibile sostituendo il dato iniziale nelle (6.8), è
data da
x = cos(t) + sin(t) (legge od equazione oraria)
(6.11)
y = cos(t) − sin(t) (equazione della velocità)
13
Determiniamo N valori delle componenti x = x(t), y = y(t) della soluzione
del sistema (6.10) ovvero (6.9) utilizzando il metodo di Eulero. Applicando
le (6.4), si ha:
x0 = 1; y0 = 1
xk = xk−1 + hyk−1 ; yk = yk−1 − hxk−1
(6.12)
dove tk = tk−1 + h = kh con k = 1, ....., N ; N ∈ N è il numero d'iterazioni
ed h il passo.
6.2 Sistemi tridimensionali
Un sistema tridimensionale si ha per n = 3 in (5.1) e la sua trattazione è del
tutto analoga a quella che si fa per n = 2 tenendo della terza componente
z = z(t), f3 (t, x, y, z) . Ciò, ovviamente, è un altro caso particolare di quanto
trattato, in generale, nella sez. 5.
Pertanto, il problema di Cauchy
½
x0 = f (t, x)
x(t0 ) = x0
tradotto scalarmente, conduce a

x0 = f1 (t, x, y, x)




y 0 = f2 (t, x, y, x)



y 0 = f3 (t, x, y, x)
x(t0 ) = x0




y(t0 ) = y0



z(t0 ) = z0
(6.13)
Il metodo di Eulero per la risoluzione numerica del sistema (6.13), in forma
compatta, si scrive in modo analogo alle (6.3); la sua traduzione scalare è
data da
x0 = x(t0 ); y0 = y(t0 ); z0 = z(t0 )
xk = xk−1 + hf1 (tk−1 , xk−1 , yk−1 , zk−1 );
yk = yk−1 + hf2 (tk−1 , xk−1 , yk−1 , zk−1 );
zk = zk−1 + hf3 (tk−1 , xk−1 , yk−1 , zk−1 )
(6.14)
dove tk = tk−1 +h = t0 +kh con k = 1, ....., N ; N ∈ N è il numero d'iterazioni
ed h il passo.
Procediamo ad una implementazione dell'algoritmo analogamente a quanto fatto per ottenere la pseudocodica 6.2. Dichiarati gli array unidimensionali (vettori) t,x,y,z di elementi reali e scritte le funzioni f1(t,x,y,z), f2(t,x,y,z),
14
f3(t,x,y,z) che restituiscono, in uscita, il valore delle componenti f1 (t, x, y, z),
f2 (t, x, y, z), f3 (t, x, y, z) del campo vettoriale f (t, x, y, z), dove x, y, z sono
reali e non i vettori di prima e, dati da input t0, x0 , y0, z0 (dato iniziale), h
(passo), N (numero d'iterazioni), si può procedere con il seguente algoritmo
dove le parentesi grae indicano, al solito, apertura e chiusura di un blocco
d'istruzioni:
Algoritmo pseudocodicato 6.4
t[0] = t0;
x[0] = x0;
y[0] = y0;
z[0] = z0;
for k=1 to N
{
t[k] = t[k-1] + h;
x[k] = x[k-1] + h*f1(t[k-1],x[k-1],y[k-1],z[k-1]);
y[k] = y[k-1] + h*f2(t[k-1],x[k-1],y[k-1],z[k-1]);
z[k] = z[k-1] + h*f3(t[k-1],x[k-1],y[k-1],z[k-1]);
}
Si noti che l'algoritmo appena presentato è implementabile anche con un
foglio elettronico, ad esempio Excel.
Esempio 6.5
Consideriamo il seguente problema di Cauchy tridimensionale
½
2
x0 = (e−(t+x+y+z) , t + x + y + z, x2 − z 2 )
x(0) = (0, 0, 0)
la cui traduzione scalare è data da

0

 x =


y0 =



z0 =
x(0) =




y(0) =



z(0) =
2
e−(t+x+y+z)
t+x+y+z
x2 − z 2
0
0
0
15
e determiniamo N valori approssimati della curva (x(t), y(t), z(t)) soluzione
del sistema implementando l'algoritmo fornito dal metodo di Eulero. Fissato
il passo h con, al solito, 0 < h < 1, le (6.14) conducono a
x0 = 0; y0 = 0; z0 = 0
2
xk = xk−1 + he−(tk−1 +xk−1 +yk−1 +zk−1 ) ;
yk = yk−1 + h(tk−1 + xk−1 + yk−1 + zk−1 )
2
zk = zk−1 + h(x2k−1 − zk−1
)
(6.15)
con k = 1, ....., N ; N ∈ N.
Scelto h = 0, 1, eettuiamo N = 20 iterazioni, partendo dal dato iniziale,
con l'ausilio del foglio elettronico Excel. Si ottengono i valori riportati nella
seguente tabella.
La gura seguente (gura 2) riporta i graci, delle singole componenti
della curva soluzione, ottenuta numericamente, in un unico disegno. Il graco
della soluzione è, evidentemente, una curva dello spazio tridimensionale.
16
Figura 2:
sovrapposizione graca delle componenti della soluzione
approssimata per t ∈ [0, 2]
17