metodi analitici non possono essere utilizzati per trovare la soluzione esatta per un’equazione differenziale della forma dP /dt = f ( P) nella maggior parte delle situazioni. Pertanto , i metodi numerici , come metodo di Eulero , sono stati inventati per aiutare ad ottenere una corretta approssimazione della soluzione di tale equazione . MATLAB fornisce funzioni che consentono agli utenti di implementare facilmente questo metodo e risolvere equazioni differenziali con poche righe di codice . Istruzioni
1
Compute delta t con MATLAB . Dal momento che, utilizzando il metodo di Eulero , dP /dt può essere scritta come ( Pn + 1 – Pn ) /delta t , in primo luogo decidere su questo valore per ottenere il tuo approssimazione . Tutto quello che dovete fare è definire il tempo di soluzione , così come il numero di intervalli di tempo , e dividerli per ottenere delta t . Un esempio è il seguente :
t = 5;
n = 50;
DeltaT = t /n;
2
Impostare un valore per tutti i parametri dell’equazione . Se, ad esempio , si desidera implementare Pn + 1 = Pn + x * delta t * Pn , si avrebbe solo bisogno di definire x in MATLAB , dal delta t è già stato definito nel passaggio precedente :
r = .01;
3
Creare una matrice che verrà utilizzato per calcolare le vostre soluzioni . Riempire con 0 e impostare un valore iniziale come segue :
P = zeri ( 1 , n + 1);
P ( 1) = 2;
4
Utilizzare un ciclo “for” per ottenere la soluzione di Eulero periodica . Assicurarsi di utilizzare anche la “fine” comando per evitare errori di compilazione
per i = 1 : . N
P ( i +1) = P ( i) * ( 1 + x * DeltaT );
fine
5
Tracciare la soluzione in modo da visualizzarla . Questo passaggio è facoltativo , ma si avrà una visione più chiara del vostro approssimazione se lo fate . È possibile utilizzare la funzione di “complotto ” come segue :
plot ( linspace ( 0 , t , n +1) , p )