I metodi di Runge-Kutta, spesso abbreviati con le iniziali "RK", sono una famiglia di metodi iterativi discreti utilizzati nell'approssimazione numerica di soluzioni di equazioni differenziali ordinarie (ODE), e più specificatamente per problemi ai valori iniziali . Fanno parte della famiglia più generale di metodi discreti per le equazioni differenziali ordinarie , ovvero di quella classe di metodi numerici che fornisce un'approssimazione della soluzione di un'equazione differenziale (o più precisamente di un problema di Cauchy) in un insieme discreto di punti.
Per trovare un'approssimazione della funzione
y
(
t
)
:
R
→
R
d
{\displaystyle y(t):\mathbb {R} \to \mathbb {R} ^{d}}
che verifichi il generico problema di Cauchy :
{
y
′
(
t
)
=
f
(
t
,
y
(
t
)
)
y
(
t
0
)
=
y
0
{\displaystyle {\begin{cases}y'(t)=f(t,y(t))\\y(t_{0})=y_{0}\end{cases}}}
in un insieme discreto di punti in cui si considera il problema (solitamente nell'intervallo
[
t
0
,
t
f
]
{\displaystyle \left[t_{0},t_{f}\right]}
), si considera un campionamento dell'intervallo
Δ
{\displaystyle \Delta }
in un insieme di punti
{
t
i
∣
i
=
0
…
n
}
{\displaystyle \{t_{i}\mid i=0\dots n\}}
, dove
t
i
=
t
0
+
i
h
{\displaystyle t_{i}=t_{0}+ih}
e
h
=
(
t
f
−
t
0
)
/
n
{\displaystyle h=(t_{f}-t_{0})/n}
. Il metodo numerico fornisce allora l'approssimazione dei valori
y
(
t
i
)
{\displaystyle y(t_{i})}
, e per ottenere una ricostruzione abbastanza fedele della funzione il numero
n
{\displaystyle n}
deve essere sufficientemente elevato.
L'idea che sta alla base dei metodi di Runge-Kutta è la trasposizione del problema dalla forma differenziale alla forma integrale, per la quale esistono metodi numerici (come le formule di quadratura ) che permettono l'approssimazione della soluzione. In generale un metodo di Runge-Kutta è caratterizzato da tre parametri: un vettore
b
=
(
b
i
)
i
=
0
,
…
,
s
{\displaystyle b=(b_{i})_{i=0,\dots ,s}}
, una matrice
a
=
(
a
i
,
j
)
i
,
j
=
0
,
…
,
s
{\displaystyle a=(a_{i,j})_{i,j=0,\dots ,s}}
e un vettore
θ
=
(
θ
i
)
i
=
0
,
…
,
s
{\displaystyle \theta =(\theta _{i})_{i=0,\dots ,s}}
. L'approssimazione è data dal sistema:
{
y
n
+
1
=
y
n
+
h
∑
i
=
1
s
b
i
f
(
t
n
+
θ
i
h
,
Y
i
)
Y
i
=
y
n
+
h
∑
j
=
1
s
a
i
j
f
(
t
n
+
θ
j
h
,
Y
j
)
i
=
1
,
…
,
s
{\displaystyle {\begin{cases}y_{n+1}=y_{n}+h\sum _{i=1}^{s}b_{i}f(t_{n}+\theta _{i}h,Y_{i})\\Y_{i}=y_{n}+h\sum _{j=1}^{s}a_{ij}f(t_{n}+\theta _{j}h,Y_{j})\quad i=1,\dots ,s\end{cases}}}
dove i valori
y
i
{\displaystyle y_{i}}
approssimano il valore esatto
y
(
t
i
)
{\displaystyle y(t_{i})}
.
Considerando il generico problema di Cauchy:
{
y
′
(
t
)
=
f
(
t
,
y
(
t
)
)
y
(
t
0
)
=
y
0
{\displaystyle {\begin{cases}y'(t)=f(t,y(t))\\y(t_{0})=y_{0}\end{cases}}}
Si può considerare una sua riformulazione in forma integrale:
y
(
t
)
=
y
0
+
∫
t
0
t
y
′
(
s
)
d
s
=
y
0
+
∫
t
0
t
f
(
s
,
y
(
s
)
)
d
s
{\displaystyle y(t)=y_{0}+\int _{t_{0}}^{t}y'(s)\,ds=y_{0}+\int _{t_{0}}^{t}f(s,y(s))\,ds}
dove l'ultima sostituzione è legittima in quanto la funzione è soluzione dell'equazione differenziale. Da questa riformulazione segue in particolare che, per una suddivisione uniforme
Δ
=
{
t
i
}
=
{
t
0
+
i
h
}
{
i
=
0
,
…
,
n
}
{\displaystyle \Delta =\{t_{i}\}=\{t_{0}+ih\}_{\{i=0,\dots ,n\}}}
, il valore della soluzione nel punto
t
1
{\displaystyle t_{1}}
è dato da:
y
(
t
1
)
=
y
0
+
∫
t
0
t
0
+
h
f
(
s
,
y
(
s
)
)
d
s
{\displaystyle y(t_{1})=y_{0}+\int _{t_{0}}^{t_{0}+h}f(s,y(s))\,ds}
Da questo risultato, attraverso la sostituzione
s
=
t
0
+
θ
h
{\displaystyle s=t_{0}+\theta h}
si può normalizzare l'intervallo di integrazione e ottenere:
y
(
t
1
)
=
y
0
+
h
∫
0
1
f
(
t
0
+
θ
h
,
y
(
t
0
+
θ
h
)
)
d
θ
{\displaystyle y(t_{1})=y_{0}+h\int _{0}^{1}f(t_{0}+\theta h,y(t_{0}+\theta h))\,d\theta }
Da questa scrittura appare evidente che con opportune sostituzioni si può esprimere il valore della funzione in ogni punto intermedio tra
t
0
{\displaystyle t_{0}}
e
t
1
{\displaystyle t_{1}}
.
Utilizzando un'approssimazione per via numerica dell'integrale attraverso delle formule di quadratura sui nodi
θ
i
{\displaystyle \theta _{i}}
e pesi
b
i
{\displaystyle b_{i}}
(che dipendono dalla scelta della formula di quadratura) si ottiene una stima del valore
y
1
{\displaystyle y_{1}}
:
y
1
=
y
0
+
h
∑
i
=
0
ν
b
i
f
(
t
0
+
θ
i
h
,
Y
i
)
{\displaystyle y_{1}=y_{0}+h\sum _{i=0}^{\nu }b_{i}f(t_{0}+\theta _{i}h,Y_{i})}
dove i valori
Y
i
{\displaystyle Y_{i}}
sono approssimazioni di
y
(
t
0
+
θ
i
h
)
{\displaystyle y(t_{0}+\theta _{i}h)}
, che sono ignote a priori. Applicando nuovamente il ragionamento precedente si può scrivere che:
y
(
t
0
+
θ
i
h
)
=
y
0
+
h
∫
0
θ
i
f
(
t
0
+
v
h
,
y
(
t
0
+
v
h
)
)
d
v
{\displaystyle y(t_{0}+\theta _{i}h)=y_{0}+h\int _{0}^{\theta _{i}}f(t_{0}+vh,y(t_{0}+vh))\,dv}
Questi valori possono essere approssimati a loro volta utilizzando una formula di quadratura con pesi
a
i
j
{\displaystyle a_{ij}}
; si ottiene così che (per semplicità si considerano formule con i medesimi nodi di quadratura di quelle usate in precedenza):
Y
i
=
y
0
+
h
∑
j
=
1
ν
a
i
j
f
(
t
0
+
θ
j
h
,
Y
j
)
{\displaystyle Y_{i}=y_{0}+h\sum _{j=1}^{\nu }a_{ij}f(t_{0}+\theta _{j}h,Y_{j})}
Iterando tale costruzione si ottengono le approssimazioni nei punti
t
i
{\displaystyle t_{i}}
, e come conseguenza la formulazione generale per i metodi di Runge-Kutta.
Dato il problema ai valori iniziali:
y
˙
=
f
(
t
,
y
)
y
(
t
0
)
=
y
0
{\displaystyle {\dot {y}}=f(t,y)\qquad y(t_{0})=y_{0}}
dove i valori di
t
0
{\displaystyle t_{0}}
e
y
0
{\displaystyle y_{0}}
sono noti, si consideri un intervallo sufficientemente piccolo
h
>
0
{\displaystyle h>0}
e si definiscano:
y
n
+
1
=
y
n
+
h
6
(
k
1
+
2
k
2
+
2
k
3
+
k
4
)
t
n
+
1
=
t
n
+
h
{\displaystyle {\begin{aligned}y_{n+1}&=y_{n}+{\tfrac {h}{6}}\left(k_{1}+2k_{2}+2k_{3}+k_{4}\right)\\t_{n+1}&=t_{n}+h\\\end{aligned}}}
per
n
=
1
,
2
,
3
,
…
{\displaystyle n=1,2,3,\dots }
. In questo modo
y
(
t
n
+
1
)
{\displaystyle y(t_{n+1})}
è approssimato con
y
n
+
1
{\displaystyle y_{n+1}}
, e
y
n
+
1
{\displaystyle y_{n+1}}
è determinato da
y
n
{\displaystyle y_{n}}
più la media pesata di quattro incrementi
k
1
{\displaystyle k_{1}}
,
k
2
{\displaystyle k_{2}}
,
k
3
{\displaystyle k_{3}}
e
k
4
{\displaystyle k_{4}}
:
k
1
=
f
(
t
n
,
y
n
)
k
2
=
f
(
t
n
+
h
2
,
y
n
+
1
2
k
1
h
)
k
3
=
f
(
t
n
+
h
2
,
y
n
+
1
2
k
2
h
)
k
4
=
f
(
t
n
+
h
,
y
n
+
k
3
h
)
{\displaystyle {\begin{aligned}k_{1}&=f(t_{n},y_{n})\\k_{2}&=f(t_{n}+{\tfrac {h}{2}},y_{n}+{\tfrac {1}{2}}k_{1}h)\\k_{3}&=f(t_{n}+{\tfrac {h}{2}},y_{n}+{\tfrac {1}{2}}k_{2}h)\\k_{4}&=f(t_{n}+h,y_{n}+k_{3}h)\end{aligned}}}
dove ogni incremento è il prodotto di
h
{\displaystyle h}
e una stima della pendenza di
f
{\displaystyle f}
. Nello specifico:
k
1
{\displaystyle k_{1}}
è l'incremento basato sulla pendenza all'inizio dell'intervallo, utilizzando
y
˙
n
{\displaystyle {\dot {y}}_{n}}
(metodo di Eulero )
k
2
{\displaystyle k_{2}}
è l'incremento basato sulla pendenza alla metà dell'intervallo, utilizzando
k
1
{\displaystyle k_{1}}
k
3
{\displaystyle k_{3}}
è un altro incremento basato sulla pendenza alla metà dell'intervallo, utilizzando
k
2
{\displaystyle k_{2}}
k
4
{\displaystyle k_{4}}
è l'incremento basato sulla pendenza alla fine dell'intervallo, utilizzando
k
3
{\displaystyle k_{3}}
Nel fare la media, gli incrementi valutati in un punto intermedio dell'intervallo hanno peso maggiore, ed i coefficienti sono scelti in modo che se
f
{\displaystyle f}
è indipendente da
y
{\displaystyle y}
, sicché l'equazione dipende da un semplice integrale, allora il metodo RK coincide con la regola di Cavalieri-Simpson .
In generale, la famiglia di metodi espliciti di Runge-Kutta è data da:
y
n
+
1
=
y
n
+
∑
i
=
1
s
h
b
i
k
i
{\displaystyle y_{n+1}=y_{n}+\sum _{i=1}^{s}hb_{i}k_{i}}
dove:
k
1
=
f
(
t
n
,
y
n
)
k
2
=
f
(
t
n
+
c
2
h
,
y
n
+
h
(
a
21
k
1
)
)
k
3
=
f
(
t
n
+
c
3
h
,
y
n
+
h
(
a
31
k
1
+
a
32
k
2
)
)
⋮
k
s
=
f
(
t
n
+
c
s
h
,
y
n
+
h
(
a
s
1
k
1
+
a
s
2
k
2
+
⋯
+
a
s
,
s
−
1
k
s
−
1
)
)
{\displaystyle {\begin{aligned}k_{1}&=f(t_{n},y_{n})\\k_{2}&=f(t_{n}+c_{2}h,y_{n}+h(a_{21}k_{1}))\\k_{3}&=f(t_{n}+c_{3}h,y_{n}+h(a_{31}k_{1}+a_{32}k_{2}))\\&\vdots \\k_{s}&=f(t_{n}+c_{s}h,y_{n}+h(a_{s1}k_{1}+a_{s2}k_{2}+\cdots +a_{s,s-1}k_{s-1}))\\\end{aligned}}}
Per specificare un particolare metodo si deve definire il numero
s
{\displaystyle s}
ed i coefficienti
a
i
j
{\displaystyle a_{ij}}
(per
1
≤
j
<
i
≤
s
{\displaystyle 1\leq j<i\leq s}
),
b
i
{\displaystyle b_{i}}
(per
i
=
1
,
2
,
…
,
s
{\displaystyle i=1,2,\dots ,s}
) e
c
i
{\displaystyle c_{i}}
(per
i
=
2
,
3
,
…
,
s
{\displaystyle i=2,3,\dots ,s}
). La matrice dei coefficienti
a
i
j
{\displaystyle a_{ij}}
è detta matrice di Runge-Kutta . Si usa spesso rappresentare i coefficienti in una tabella:
0
c
2
{\displaystyle c_{2}}
a
21
{\displaystyle a_{21}}
c
3
{\displaystyle c_{3}}
a
31
{\displaystyle a_{31}}
a
32
{\displaystyle a_{32}}
⋮
{\displaystyle \vdots }
⋮
{\displaystyle \vdots }
⋱
{\displaystyle \ddots }
c
s
{\displaystyle c_{s}}
a
s
1
{\displaystyle a_{s1}}
a
s
2
{\displaystyle a_{s2}}
⋯
{\displaystyle \cdots }
a
s
,
s
−
1
{\displaystyle a_{s,s-1}}
b
1
{\displaystyle b_{1}}
b
2
{\displaystyle b_{2}}
⋯
{\displaystyle \cdots }
b
s
−
1
{\displaystyle b_{s-1}}
b
s
{\displaystyle b_{s}}
e si deve avere:
∑
j
=
1
i
−
1
a
i
j
=
c
i
i
=
2
,
…
,
s
{\displaystyle \sum _{j=1}^{i-1}a_{ij}=c_{i}\qquad i=2,\ldots ,s}
Derivazione per il quarto ordine
modifica
In generale, un metodo di Runge-Kutta di ordine
s
{\displaystyle s}
può essere scritto come:
y
t
+
h
=
y
t
+
h
⋅
∑
i
=
1
s
a
i
k
i
+
O
(
h
s
+
1
)
{\displaystyle y_{t+h}=y_{t}+h\cdot \sum _{i=1}^{s}a_{i}k_{i}+{\mathcal {O}}(h^{s+1})}
dove:
k
i
=
f
(
y
t
+
h
⋅
∑
j
=
1
s
β
i
j
k
j
,
t
n
+
α
i
h
)
{\displaystyle k_{i}=f\left(y_{t}+h\cdot \sum _{j=1}^{s}\beta _{ij}k_{j},t_{n}+\alpha _{i}h\right)}
sono gli incrementi ottenuti valutando le derivate di
y
t
{\displaystyle y_{t}}
all'
i
{\displaystyle i}
-esimo ordine.
Un modo per derivare il metodo per
s
=
4
{\displaystyle s=4}
utilizzando la formula generale è il seguente.[1] Si sceglie:
α
i
β
i
j
α
1
=
0
β
21
=
1
2
α
2
=
1
2
β
32
=
1
2
α
3
=
1
2
β
43
=
1
α
4
=
1
{\displaystyle {\begin{array}{|l|l|}\hline \alpha _{i}&\beta _{ij}\\\hline \alpha _{1}=0&\beta _{21}={\frac {1}{2}}\\\alpha _{2}={\frac {1}{2}}&\beta _{32}={\frac {1}{2}}\\\alpha _{3}={\frac {1}{2}}&\beta _{43}=1\\\alpha _{4}=1&\\\hline \end{array}}}
con
β
i
j
=
0
{\displaystyle \beta _{ij}=0}
altrimenti. Si definiscono quindi le quantità:
y
t
+
h
1
=
y
t
+
h
f
(
y
t
,
t
)
y
t
+
h
2
=
y
t
+
h
f
(
y
t
+
h
/
2
1
,
t
+
h
2
)
y
t
+
h
3
=
y
t
+
h
f
(
y
t
+
h
/
2
2
,
t
+
h
2
)
{\displaystyle {\begin{aligned}y_{t+h}^{1}&=y_{t}+hf\left(y_{t},t\right)\\y_{t+h}^{2}&=y_{t}+hf\left(y_{t+h/2}^{1},t+{\frac {h}{2}}\right)\\y_{t+h}^{3}&=y_{t}+hf\left(y_{t+h/2}^{2},t+{\frac {h}{2}}\right)\end{aligned}}}
dove:
y
t
+
h
/
2
1
=
y
t
+
y
t
+
h
1
2
y
t
+
h
/
2
2
=
y
t
+
y
t
+
h
2
2
{\displaystyle y_{t+h/2}^{1}={\dfrac {y_{t}+y_{t+h}^{1}}{2}}\qquad y_{t+h/2}^{2}={\dfrac {y_{t}+y_{t+h}^{2}}{2}}}
Se si pone:
k
1
=
f
(
y
t
,
t
)
k
2
=
f
(
y
t
+
h
/
2
1
,
t
+
h
2
)
k
3
=
f
(
y
t
+
h
/
2
2
,
t
+
h
2
)
k
4
=
f
(
y
t
+
h
3
,
t
+
h
)
{\displaystyle {\begin{aligned}k_{1}&=f(y_{t},t)\\k_{2}&=f\left(y_{t+h/2}^{1},t+{\frac {h}{2}}\right)\\k_{3}&=f\left(y_{t+h/2}^{2},t+{\frac {h}{2}}\right)\\k_{4}&=f\left(y_{t+h}^{3},t+h\right)\end{aligned}}}
sostituendo si ha a meno di
O
(
h
2
)
{\textstyle O(h^{2})}
:
k
2
=
f
(
y
t
+
h
/
2
1
,
t
+
h
2
)
=
f
(
y
t
+
h
2
k
1
,
t
+
h
2
)
=
f
(
y
t
,
t
)
+
h
2
d
d
t
f
(
y
t
,
t
)
k
3
=
f
(
y
t
+
h
/
2
2
,
t
+
h
2
)
=
f
(
y
t
+
h
2
f
(
y
t
+
h
2
k
1
,
t
+
h
2
)
,
t
+
h
2
)
=
f
(
y
t
,
t
)
+
h
2
d
d
t
[
f
(
y
t
,
t
)
+
h
2
d
d
t
f
(
y
t
,
t
)
]
k
4
=
f
(
y
t
+
h
3
,
t
+
h
)
=
f
(
y
t
+
h
f
(
y
t
+
h
2
k
2
,
t
+
h
2
)
,
t
+
h
)
=
f
(
y
t
+
h
f
(
y
t
+
h
2
f
(
y
t
+
h
2
f
(
y
t
,
t
)
,
t
+
h
2
)
,
t
+
h
2
)
,
t
+
h
)
=
f
(
y
t
,
t
)
+
h
d
d
t
[
f
(
y
t
,
t
)
+
h
2
d
d
t
[
f
(
y
t
,
t
)
+
h
2
d
d
t
f
(
y
t
,
t
)
]
]
{\displaystyle {\begin{aligned}k_{2}&=f\left(y_{t+h/2}^{1},t+{\frac {h}{2}}\right)=f\left(y_{t}+{\frac {h}{2}}k_{1},t+{\frac {h}{2}}\right)\\&=f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}f\left(y_{t},t\right)\\k_{3}&=f\left(y_{t+h/2}^{2},t+{\frac {h}{2}}\right)=f\left(y_{t}+{\frac {h}{2}}f\left(y_{t}+{\frac {h}{2}}k_{1},t+{\frac {h}{2}}\right),t+{\frac {h}{2}}\right)\\&=f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}\left[f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}f\left(y_{t},t\right)\right]\\k_{4}&=f\left(y_{t+h}^{3},t+h\right)=f\left(y_{t}+hf\left(y_{t}+{\frac {h}{2}}k_{2},t+{\frac {h}{2}}\right),t+h\right)\\&=f\left(y_{t}+hf\left(y_{t}+{\frac {h}{2}}f\left(y_{t}+{\frac {h}{2}}f\left(y_{t},t\right),t+{\frac {h}{2}}\right),t+{\frac {h}{2}}\right),t+h\right)\\&=f\left(y_{t},t\right)+h{\frac {d}{dt}}\left[f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}\left[f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}f\left(y_{t},t\right)\right]\right]\end{aligned}}}
dove:
d
d
t
f
(
y
t
,
t
)
=
∂
∂
y
f
(
y
t
,
t
)
y
˙
t
+
∂
∂
t
f
(
y
t
,
t
)
=
f
y
(
y
t
,
t
)
y
˙
+
f
t
(
y
t
,
t
)
:=
y
¨
t
{\displaystyle {\frac {d}{dt}}f(y_{t},t)={\frac {\partial }{\partial y}}f(y_{t},t){\dot {y}}_{t}+{\frac {\partial }{\partial t}}f(y_{t},t)=f_{y}(y_{t},t){\dot {y}}+f_{t}(y_{t},t):={\ddot {y}}_{t}}
è la derivata totale di
f
{\displaystyle f}
rispetto a
t
{\displaystyle t}
. Scrivendo la formula generale con quanto ricavato:
y
t
+
h
=
y
t
+
h
{
a
⋅
f
(
y
t
,
t
)
+
b
⋅
[
f
(
y
t
,
t
)
+
h
2
d
d
t
f
(
y
t
,
t
)
]
+
+
c
⋅
[
f
(
y
t
,
t
)
+
h
2
d
d
t
[
f
(
y
t
,
t
)
+
h
2
d
d
t
f
(
y
t
,
t
)
]
]
+
+
d
⋅
[
f
(
y
t
,
t
)
+
h
d
d
t
[
f
(
y
t
,
t
)
+
h
2
d
d
t
[
f
(
y
t
,
t
)
+
h
2
d
d
t
f
(
y
t
,
t
)
]
]
]
}
+
O
(
h
5
)
=
y
t
+
a
⋅
h
f
t
+
b
⋅
h
f
t
+
b
⋅
h
2
2
d
f
t
d
t
+
c
⋅
h
f
t
+
c
⋅
h
2
2
d
f
t
d
t
+
+
c
⋅
h
3
4
d
2
f
t
d
t
2
+
d
⋅
h
f
t
+
d
⋅
h
2
d
f
t
d
t
+
d
⋅
h
3
2
d
2
f
t
d
t
2
+
d
⋅
h
4
4
d
3
f
t
d
t
3
+
O
(
h
5
)
{\displaystyle {\begin{aligned}y_{t+h}&=y_{t}+h\left\lbrace a\cdot f(y_{t},t)+b\cdot \left[f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}f\left(y_{t},t\right)\right]\right.+\\&{}+c\cdot \left[f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}\left[f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}f\left(y_{t},t\right)\right]\right]+\\&{}+d\cdot \left[f\left(y_{t},t\right)+h{\frac {d}{dt}}\left[f\left(y_{t},t\right)+{\frac {h}{2}}{\frac {d}{dt}}\left[f\left(y_{t},t\right)+\left.{\frac {h}{2}}{\frac {d}{dt}}f\left(y_{t},t\right)\right]\right]\right]\right\rbrace +{\mathcal {O}}(h^{5})\\&=y_{t}+a\cdot hf_{t}+b\cdot hf_{t}+b\cdot {\frac {h^{2}}{2}}{\frac {df_{t}}{dt}}+c\cdot hf_{t}+c\cdot {\frac {h^{2}}{2}}{\frac {df_{t}}{dt}}+\\&{}+c\cdot {\frac {h^{3}}{4}}{\frac {d^{2}f_{t}}{dt^{2}}}+d\cdot hf_{t}+d\cdot h^{2}{\frac {df_{t}}{dt}}+d\cdot {\frac {h^{3}}{2}}{\frac {d^{2}f_{t}}{dt^{2}}}+d\cdot {\frac {h^{4}}{4}}{\frac {d^{3}f_{t}}{dt^{3}}}+{\mathcal {O}}(h^{5})\end{aligned}}}
e confrontando con l'espansione di serie di Taylor di
y
t
+
h
{\displaystyle y_{t+h}}
intorno a
t
{\displaystyle t}
:
y
t
+
h
=
y
t
+
h
y
˙
t
+
h
2
2
y
¨
t
+
h
3
6
y
t
(
3
)
+
h
4
24
y
t
(
4
)
+
O
(
h
5
)
=
=
y
t
+
h
f
(
y
t
,
t
)
+
h
2
2
d
d
t
f
(
y
t
,
t
)
+
h
3
6
d
2
d
t
2
f
(
y
t
,
t
)
+
h
4
24
d
3
d
t
3
f
(
y
t
,
t
)
{\displaystyle {\begin{aligned}y_{t+h}&=y_{t}+h{\dot {y}}_{t}+{\frac {h^{2}}{2}}{\ddot {y}}_{t}+{\frac {h^{3}}{6}}y_{t}^{(3)}+{\frac {h^{4}}{24}}y_{t}^{(4)}+{\mathcal {O}}(h^{5})=\\&=y_{t}+hf(y_{t},t)+{\frac {h^{2}}{2}}{\frac {d}{dt}}f(y_{t},t)+{\frac {h^{3}}{6}}{\frac {d^{2}}{dt^{2}}}f(y_{t},t)+{\frac {h^{4}}{24}}{\frac {d^{3}}{dt^{3}}}f(y_{t},t)\end{aligned}}}
si ottiene un sistema di equazioni per i coefficienti:
{
a
+
b
+
c
+
d
=
1
1
2
b
+
1
2
c
+
d
=
1
2
1
4
c
+
1
2
d
=
1
6
1
4
d
=
1
24
{\displaystyle {\begin{cases}&a+b+c+d=1\\[6pt]&{\frac {1}{2}}b+{\frac {1}{2}}c+d={\frac {1}{2}}\\[6pt]&{\frac {1}{4}}c+{\frac {1}{2}}d={\frac {1}{6}}\\[6pt]&{\frac {1}{4}}d={\frac {1}{24}}\end{cases}}}
che fornisce:
a
=
1
6
b
=
1
3
c
=
1
3
d
=
1
6
{\displaystyle a={\frac {1}{6}}\quad b={\frac {1}{3}}\quad c={\frac {1}{3}}\quad d={\frac {1}{6}}}