Rezolvarea numerică a ecuațiilor diferențiale obișnuite. Rezolvarea numerică a ecuațiilor diferențiale (1) Ordinea metodei ecuațiilor diferențiale numerice

Pentru a rezolva ecuații diferențiale, este necesar să se cunoască valoarea variabilei dependente și derivatele acesteia pentru anumite valori ale variabilei independente. Dacă sunt specificate condiții suplimentare pentru o valoare a necunoscutului, de ex. variabilă independentă., atunci o astfel de problemă se numește problema Cauchy. Dacă condițiile inițiale sunt specificate pentru două sau mai multe valori ale variabilei independente, atunci problema se numește problemă de valoare la limită. Când se rezolvă ecuații diferențiale de diferite tipuri, funcția ale cărei valori trebuie determinate este calculată sub forma unui tabel.

Clasificarea metodelor numerice de rezolvare a diferenţialelor. Lv. Tipuri.

Problema Cauchy – într-un singur pas: metodele Euler, metodele Runge-Kutta; – în mai multe etape: metoda principală, metoda Adams. Problemă limită – o metodă de reducere a unei probleme la graniță la problema Cauchy; – metoda diferențelor finite.

La rezolvarea problemei Cauchy trebuie specificată diferența. ur. ordinul n sau sistem de dif. ur. primul ordin al n ecuații și n condiții suplimentare pentru rezolvarea acesteia. Trebuie specificate condiții suplimentare pentru aceeași valoare a variabilei independente. Când se rezolvă o problemă la graniță, trebuie specificate ecuațiile. ordinul al n-lea sau un sistem de n ecuații și n condiții suplimentare pentru două sau mai multe valori ale variabilei independente. La rezolvarea problemei Cauchy, funcția necesară este determinată discret sub forma unui tabel cu un anumit pas specificat . La determinarea fiecărei valori succesive, puteți utiliza informații despre un punct anterior. În acest caz, metodele sunt numite cu un singur pas sau puteți utiliza informații despre mai multe puncte anterioare - metode cu mai mulți pași.

Ecuații diferențiale obișnuite. Problema Cauchy. Metode într-un singur pas. metoda lui Euler.

Dat: g(x,y)y+h(x,y)=0, y=-h(x,y)/g(x,y)= f(x,y), x 0 , y( x 0)=y 0 . Se știe: f(x,y), x 0 , y 0 . Determinați soluția discretă: x i , y i , i=0,1,…,n. Metoda lui Euler se bazează pe extinderea unei funcții într-o serie Taylor în vecinătatea punctului x 0 . Cartierul este descris de pasul h. y(x 0 +h)y(x 0)+hy(x 0)+…+ (1). Metoda lui Euler ia în considerare doar doi termeni ai seriei Taylor. Să introducem o notație. Formula lui Euler va lua forma: y i+1 =y i +y i, y i =hy(x i)=hf(x i,y i), y i+1 =y i +hf(x i,y i) (2), i= 0,1,2…, x i+1 =x i +h

Formula (2) este formula metodei simple Euler.

Interpretarea geometrică a formulei lui Euler

Pentru a obține o soluție numerică, se folosește linia tangentă care trece prin ecuație. tangentă: y=y(x 0)+y(x 0)(x-x 0), x=x 1,

y 1 =y(x 0)+f(x 0 ,y 0)  (x-x 0), deoarece

x-x 0 =h, atunci y 1 =y 0 +hf(x 0 ,y 0), f(x 0 ,y 0)=tg £.

Metoda Euler modificată

Dat: y=f(x,y), y(x 0)=y 0 . Se știe: f(x,y), x 0 , y 0 . Determinați: dependența lui y de x sub forma unei funcții discrete tabelare: x i, y i, i=0,1,…,n.

Interpretare geometrică

1) se calculează tangenta unghiului de înclinare la punctul de plecare

tg £=y(x n ,y n)=f(x n ,y n)

2) Calculați valoarea  y n+1 on

sfârşitul etapei după formula lui Euler

 y n+1 =y n +f(x n ,y n) 3) Calculați tangenta unghiului de înclinare

tangentă în n+1 punct: tg £=y(x n+1 ,  y n+1)=f(x n+1 ,  y n+1) 4) Calculați media aritmetică a unghiurilor

înclinare: tg £=½. 5) Folosind tangenta unghiului de panta, recalculam valoarea functiei la n+1 punct: y n+1 =y n +htg £= y n +½h=y n +½h – formula metodei Euler modificate. Se poate arăta că f-la rezultat corespunde expansiunii f-i într-o serie Taylor, inclusiv termeni (până la h 2). Metoda Eilnra modificată, spre deosebire de cea simplă, este o metodă de precizie de ordinul doi, deoarece eroarea este proporțională cu h 2.

Considerăm doar soluția problemei Cauchy. Un sistem de ecuații diferențiale sau o ecuație trebuie convertit la forma

Unde ,
n-vectori dimensionali; y– funcție vectorială necunoscută; X- argument independent,
. În special, dacă n= 1, atunci sistemul se transformă într-o ecuație diferențială. Condițiile inițiale sunt stabilite după cum urmează:
, Unde
.

Dacă
în vecinătatea unui punct
este continuă și are derivate parțiale continue în raport cu y, atunci teorema existenței și unicității garantează că există o singură funcție vectorială continuă
, definit în niste vecinătatea unui punct , satisfăcând ecuația (7) și condiția
.

Să fim atenți la faptul că vecinătatea punctului , unde este determinată soluția, poate fi foarte mică. Când se apropie de limita acestei vecinătăți, soluția poate merge la infinit, poate oscila cu o frecvență în creștere infinită, în general, se comportă atât de rău încât nu poate fi continuată dincolo de limita vecinătății. În consecință, o astfel de soluție nu poate fi urmărită prin metode numerice pe un segment mai mare, dacă este specificată una în enunțul problemei.

Rezolvarea problemei Cauchy pe [ A; b] este o funcție. În metodele numerice, funcția este înlocuită cu un tabel (Tabelul 1).

tabelul 1

Aici
,
. Distanța dintre nodurile de tabel adiacente este de obicei considerată constantă:
,
.

Există tabele cu pași variabili. Etapa tabelului este determinată de cerințele problemei de inginerie și nu este conectat cu acuratețea găsirii unei soluții.

Dacă y este un vector, atunci tabelul cu valorile soluției va lua forma unui tabel. 2.

masa 2

În sistemul MATHCAD, în locul unui tabel este utilizată o matrice și este transpusă în raport cu tabelul specificat.

Rezolvați problema Cauchy cu acuratețe ε înseamnă să obțineți valorile din tabelul specificat (numere sau vectori),
, astfel încât
, Unde
- solutie exacta. Este posibil ca soluția la segmentul specificat în problemă să nu continue. Apoi trebuie să răspundeți că problema nu poate fi rezolvată pe întregul segment și trebuie să obțineți o soluție pe segmentul unde există, făcând acest segment cât mai mare posibil.

Trebuie amintit că soluția exactă
nu știm (altfel de ce folosim metoda numerică?). Nota
trebuie justificată pe alte baze. De regulă, nu este posibil să obțineți o garanție de 100% că evaluarea este efectuată. Prin urmare, se folosesc algoritmi pentru a estima valoarea
, care se dovedesc eficiente în majoritatea sarcinilor de inginerie.

Principiul general de rezolvare a problemei Cauchy este următorul. Segment de linie [ A; b] este împărțit într-un număr de segmente prin noduri de integrare. Numărul de noduri k nu trebuie să se potrivească cu numărul de noduri m tabelul final al valorilor de decizie (Tabelele 1, 2). De obicei, k > m. Pentru simplitate, vom presupune că distanța dintre noduri este constantă,
;h numită etapa de integrare. Apoi, conform anumitor algoritmi, cunoașterea valorilor la i < s, calculați valoarea . Cu cât treapta este mai mică h, cu atât valoarea este mai mică va diferi de valoarea soluției exacte
. Etapa hîn această partiție este deja determinată nu de cerințele problemei de inginerie, ci de precizia necesară pentru rezolvarea problemei Cauchy. În plus, trebuie să fie selectat astfel încât la un pas tabelul. 1, 2 se potrivesc unui număr întreg de pași h. În acest caz valorile y, obtinut in urma calculelor cu pasi h la puncte
, sunt utilizate în mod corespunzător în tabel. 1 sau 2.

Cel mai simplu algoritm pentru rezolvarea problemei Cauchy pentru ecuația (7) este metoda Euler. Formula de calcul este:

(8)

Să vedem cum se evaluează acuratețea soluției găsite. Să ne prefacem că
este soluția exactă a problemei Cauchy și, de asemenea, asta
, deși aproape întotdeauna nu este cazul. Atunci unde este constanta C depinde de functie
în vecinătatea unui punct
. Astfel, la un pas de integrare (găsirea unei soluții) obținem o eroare de comandă . Pentru că trebuie făcute pași
, atunci este firesc să ne așteptăm ca eroarea totală la ultimul punct
totul va fi bine
, adică Ordin h. Prin urmare, metoda lui Euler se numește metoda de ordinul întâi, adică. eroarea are ordinea primei puteri a pasului h. De fapt, la un pas de integrare se poate justifica următoarea estimare. Lăsa
– rezolvarea exactă a problemei Cauchy cu condiția inițială
. Este clar că
nu coincide cu soluția exactă necesară
problema originală Cauchy a ecuației (7). Cu toate acestea, la mic hși funcția „bună”.
aceste două soluții exacte vor diferi puțin. Formula Taylor restului asigură că
, aceasta dă eroarea pasului de integrare. Eroarea finală constă nu numai din erori la fiecare pas de integrare, ci și din abateri ale soluției exacte dorite
din solutii exacte
,
, iar aceste abateri pot deveni foarte mari. Cu toate acestea, estimarea finală a erorii în metoda Euler pentru o funcție „bună”.
inca arata ca
,
.

Când se aplică metoda lui Euler, calculul decurge după cum urmează. Conform preciziei specificate ε determinați pasul aproximativ
. Determinarea numărului de pași
și din nou selectați aproximativ pasul
. Apoi din nou o reglam în jos, astfel încât la fiecare pas masa. 1 sau 2 se potrivesc unui număr întreg de pași de integrare. Primim un pas h. Conform formulei (8), cunoscând Și , găsim. După valoarea găsită Și
găsim așa mai departe.

Rezultatul rezultat poate să nu aibă și, în general, să nu aibă acuratețea dorită. Prin urmare, reducem pasul la jumătate și aplicăm din nou metoda Euler. Comparăm rezultatele primei aplicări a metodei și celei de-a doua în identic puncte . Dacă toate discrepanțele sunt mai mici decât precizia specificată, atunci ultimul rezultat al calculului poate fi considerat răspunsul la problemă. Dacă nu, atunci reducem din nou pasul la jumătate și aplicăm din nou metoda lui Euler. Acum comparăm rezultatele ultimei și penultimei aplicări a metodei etc.

Metoda lui Euler este folosită relativ rar datorită faptului că pentru a obține o anumită precizie ε este necesar un numar mare de pasi, in ordinea
. Cu toate acestea, dacă
are discontinuități sau derivate discontinue, atunci metodele de ordin superior vor produce aceeași eroare ca metoda lui Euler. Adică, va fi necesară aceeași cantitate de calcule ca și în metoda Euler.

Dintre metodele de ordin superior, metoda Runge-Kutta de ordinul al patrulea este cel mai des utilizată. În ea, calculele sunt efectuate conform formulelor

Această metodă, în prezența derivatelor a patra continue ale funcției
dă o eroare la un pas al comenzii , adică în notația introdusă mai sus,
. În general, pe intervalul de integrare, cu condiția ca pe acest interval să se determine soluția exactă, eroarea de integrare va fi de ordinul .

Selectarea pasului de integrare are loc în același mod ca în metoda lui Euler, cu excepția faptului că valoarea inițială aproximativă a pasului este selectată din relația
, adică
.

Majoritatea programelor utilizate pentru rezolvarea ecuațiilor diferențiale folosesc selecția automată a pașilor. Esența este aceasta. Să fie deja calculată valoarea . Se calculează valoarea
în trepte h, alese în timpul calculului . Apoi se efectuează doi pași de integrare cu pas , adică este adăugat un nod suplimentar
la mijloc între noduri Și
. Se calculează două valori
Și
în noduri
Și
. Se calculează valoarea
, Unde p– ordinea metodei. Dacă δ este mai mică decât precizia specificată de utilizator, atunci se presupune
. Dacă nu, atunci alegeți un nou pas h egal și repetați verificarea preciziei. Dacă în timpul primei verificări δ este mult mai mică decât precizia specificată, atunci se încearcă mărirea pasului. În acest scop se calculează
la nod
în trepte h din nod
si se calculeaza
în pași de 2 h din nod . Se calculează valoarea
. Dacă este mai mică decât precizia specificată, apoi pasul 2 h considerat acceptabil. În acest caz, este atribuit un nou pas
,
,
. Dacă mai multă precizie, atunci pasul este lăsat la fel.

Trebuie avut în vedere faptul că programele cu selecția automată a etapei de integrare ating exactitatea specificată numai atunci când efectuează un singur pas. Acest lucru se întâmplă din cauza preciziei aproximării soluției care trece prin punct
, adică aproximarea solutiei
. Astfel de programe nu țin cont de cât de mult este soluția
diferă de soluția dorită
. Prin urmare, nu există nicio garanție că precizia specificată va fi atinsă pe parcursul întregului interval de integrare.

Metodele descrise Euler și Runge–Kutta aparțin grupului de metode cu un singur pas. Aceasta înseamnă că pentru a calcula
la punct
este suficient să cunoaștem sensul la nod . Este firesc să ne așteptăm ca, dacă se folosesc mai multe informații despre o decizie, se vor lua în considerare mai multe valori anterioare ale deciziei.
,
etc., apoi noua valoare
se va putea găsi mai precis. Această strategie este utilizată în metode cu mai multe etape. Pentru a le descrie, introducem notația
.

Reprezentanții metodelor cu mai mulți pași sunt metodele Adams-Bashforth:


Metodă k-a comanda dă o eroare de ordine locală
sau global – ordine .

Aceste metode aparțin grupului de metode de extrapolare, adică. noul sens se exprimă clar prin cele anterioare. Un alt tip este metodele de interpolare. În ele, la fiecare pas, trebuie să rezolvați o ecuație neliniară pentru o nouă valoare . Să luăm ca exemplu metodele Adams-Moulton:


Pentru a utiliza aceste metode, trebuie să cunoașteți mai multe valori la începutul numărării
(numărul lor depinde de ordinea metodei). Aceste valori trebuie obținute prin alte metode, de exemplu metoda Runge–Kutta cu un pas mic (pentru a crește precizia). În multe cazuri, metodele de interpolare se dovedesc a fi mai stabile și permit efectuarea unor pași mai mari decât metodele de extrapolare.

Pentru a nu rezolva o ecuație neliniară la fiecare pas în metodele de interpolare, se folosesc metodele Adams cu predictor-corecție. Concluzia este că metoda extrapolării este aplicată mai întâi la pasul și la valoarea rezultată
este substituit în partea dreaptă a metodei de interpolare. De exemplu, în metoda de ordinul doi

Rezolvarea numerică a ecuațiilor diferențiale

Multe probleme din știință și tehnologie se reduc la rezolvarea ecuațiilor diferențiale obișnuite (ODE). ODE-urile sunt acele ecuații care conțin una sau mai multe derivate ale funcției dorite. În general, ODE poate fi scrisă după cum urmează:

Unde x este o variabilă independentă, este derivata i-a a funcției dorite. n este ordinea ecuației. Soluția generală a unei EDO de ordinul al n-lea conține n constante arbitrare, i.e. soluţia generală are forma .

Pentru a selecta o singură soluție, este necesar să setați n condiții suplimentare. În funcție de metoda de specificare a condițiilor suplimentare, există două tipuri diferite de probleme: problema Cauchy și problema valorii la limită. Dacă sunt specificate condiții suplimentare la un moment dat, atunci o astfel de problemă se numește problema Cauchy. Condițiile suplimentare din problema Cauchy se numesc condiții inițiale. Dacă sunt specificate condiții suplimentare în mai multe puncte, de ex. pentru diferite valori ale variabilei independente, atunci o astfel de problemă se numește problemă de valoare la limită. Condițiile suplimentare în sine sunt numite condiții la limită sau la limită.

Este clar că atunci când n=1 putem vorbi doar despre problema Cauchy.

Exemple de stabilire a problemei Cauchy:

Exemple de probleme de valoare la limită:

Este posibil să se rezolve astfel de probleme analitic numai pentru unele tipuri speciale de ecuații.

Metode numerice pentru rezolvarea problemei Cauchy pentru EDO de ordinul întâi

Formularea problemei. Găsiți o soluție pentru ODE de ordinul întâi

Pe segmentul furnizat

Când găsim o soluție aproximativă, vom presupune că calculele sunt efectuate cu un pas calculat, nodurile de calcul sunt punctele de interval [ X 0 , X n ].

Scopul este de a construi o masă

X i

X n

y i

y n

acestea. Valorile aproximative ale lui y sunt căutate la nodurile grilei.

Integrând ecuația pe interval, obținem

O modalitate complet naturală (dar nu singura) de a obține o soluție numerică este înlocuirea integralei din aceasta cu o formulă de cuadratura de integrare numerică. Dacă folosim cea mai simplă formulă pentru dreptunghiuri din stânga de ordinul întâi

,

atunci primim formula lui Euler explicită:

Procedura de plata:

Știind, aflăm, apoi etc.

Interpretarea geometrică a metodei lui Euler:

Profitând de ceea ce este la punct X 0 solutia este cunoscuta y(X 0)= y 0 și valoarea derivatei sale, putem scrie ecuația tangentei la graficul funcției dorite în punctul:. Cu un pas destul de mic h ordonata acestei tangente, obținută prin înlocuirea în partea dreaptă a valorii, ar trebui să difere puțin de ordonată y(X 1) soluții y(X) Probleme Cauchy. Prin urmare, punctul de intersecție al tangentei cu dreapta X = X 1 poate fi luat aproximativ ca noul punct de plecare. Prin acest punct tragem din nou o linie dreaptă, care reflectă aproximativ comportamentul tangentei la punctul respectiv. Înlocuind aici (adică intersecția cu linia X = X 2), obținem o valoare aproximativă y(X) la un moment dat X 2: etc. Ca urmare pentru i-al-lea punct obținem formula lui Euler.

Metoda explicită Euler are acuratețe sau aproximare de ordinul întâi.

Dacă utilizați formula dreptunghiului drept: , apoi ajungem la metoda

Această metodă se numește metoda Euler implicită, deoarece calcularea unei valori necunoscute dintr-o valoare cunoscută necesită rezolvarea unei ecuații care este în general neliniară.

Metoda implicită Euler are acuratețe sau aproximare de ordinul întâi.

În această metodă, calculul constă în două etape:

Această schemă se mai numește și metoda predictor-corector (predictive-correcting). În prima etapă, valoarea aproximativă este prezisă cu precizie scăzută (h), iar în a doua etapă această predicție este corectată astfel încât valoarea rezultată să aibă o precizie de ordinul doi.

Metode Runge-Kutta: ideea de a construi metode explicite Runge-Kutta p-al-lea este de a obține aproximări ale valorilor y(X i+1) după o formulă a formei

…………………………………………….

Aici A n ,b nj , p n, – unele numere fixe (parametri).

La construirea metodelor Runge–Kutta, parametrii funcției ( A n ,b nj , p n) sunt selectate în așa fel încât să se obțină ordinea dorită de aproximare.

Schema Runge–Kutta de ordinul al patrulea de precizie:

Exemplu. Rezolvați problema Cauchy:

Luați în considerare trei metode: metoda Euler explicită, metoda Euler modificată, metoda Runge–Kutta.

Solutia exacta:

Formule de calcul folosind metoda explicită Euler pentru acest exemplu:

Formule de calcul ale metodei Euler modificate:

Formule de calcul pentru metoda Runge–Kutta:

y1 – metoda lui Euler, y2 – metoda lui Euler modificată, y3 – metoda lui Runge Kutta.

Se poate observa că cea mai precisă este metoda Runge–Kutta.

Metode numerice pentru rezolvarea sistemelor de EDO de ordinul întâi

Metodele luate în considerare pot fi utilizate și pentru rezolvarea sistemelor de ecuații diferențiale de ordinul întâi.

Să arătăm acest lucru pentru cazul unui sistem de două ecuații de ordinul întâi:

Metoda explicită Euler:

Metoda Euler modificată:

Schema Runge-Kutta de ordinul al patrulea de precizie:

Problemele Cauchy pentru ecuații de ordin superior sunt, de asemenea, reduse la rezolvarea sistemelor de ecuații EDO. De exemplu, luați în considerare Problemă Cauchy pentru o ecuație de ordinul doi

Să introducem o a doua funcție necunoscută. Apoi problema Cauchy este înlocuită cu următoarea:

Acestea. în ceea ce priveşte problema anterioară: .

Exemplu. Găsiți o soluție la problema Cauchy:

Pe segment.

Solutia exacta:

Într-adevăr:

Să rezolvăm problema folosind metoda Euler explicită, modificată prin metoda Euler și Runge-Kutta cu pas h=0,2.

Să introducem funcția.

Apoi obținem următoarea problemă Cauchy pentru un sistem de două EDO de ordinul întâi:

Metoda explicită Euler:

Metoda Euler modificată:

Metoda Runge–Kutta:

Circuitul Euler:

Metoda Euler modificată:

Schema Runge - Kutta:

Max(teoria y-y)=4*10 -5

Metoda cu diferențe finite pentru rezolvarea problemelor cu valori la limită pentru ODE

Formularea problemei: găsiți o soluție la o ecuație diferențială liniară

îndeplinirea condiţiilor la limită:. (2)

Teorema. Lăsa . Atunci există o soluție unică la problemă.

Această problemă se reduce, de exemplu, la problema determinării deformărilor unei grinzi care este articulată la capete.

Etapele principale ale metodei diferențelor finite:

1) aria de schimbare continuă a argumentului () este înlocuită cu un set discret de puncte numite noduri: .

2) Funcția dorită a argumentului continuu x este aproximativ înlocuită cu funcția argumentului discret pe o grilă dată, i.e. . Funcția se numește funcție grilă.

3) Ecuația diferențială inițială este înlocuită cu o ecuație a diferenței în raport cu funcția grilă. Această înlocuire se numește aproximare a diferențelor.

Astfel, rezolvarea unei ecuații diferențiale se reduce la găsirea valorilor funcției grilă la nodurile grilei, care se găsesc din rezolvarea ecuațiilor algebrice.

Aproximarea derivatelor.

Pentru a aproxima (înlocui) prima derivată, puteți folosi formulele:

- derivată diferență dreaptă,

- derivată diferență stângă,

Derivată diferență centrală.

adică există multe modalități posibile de aproximare a derivatei.

Toate aceste definiții decurg din conceptul de derivată ca limită: .

Pe baza aproximării diferenței primei derivate, putem construi o aproximare a diferenței celei de-a doua derivate:

În mod similar, putem obține aproximări ale derivatelor de ordin superior.

Definiție. Eroarea de aproximare a derivatei a n-a este diferența: .

Pentru a determina ordinea de aproximare, se utilizează expansiunea seriei Taylor.

Să luăm în considerare aproximarea diferenței din partea dreaptă a primei derivate:

Acestea. derivata diferența corectă are mai întâi de h ordinea de aproximare.

Același lucru este valabil și pentru derivata diferenței din stânga.

Derivata diferenta centrala are aproximare de ordinul doi.

Aproximarea derivatei a doua conform formulei (3) are de asemenea un al doilea ordin de aproximare.

Pentru a aproxima o ecuație diferențială, este necesar să înlocuiți toate derivatele acesteia cu aproximările lor. Să luăm în considerare problema (1), (2) și să înlocuim derivatele din (1):

Ca rezultat obținem:

(4)

Ordinea de aproximare a problemei originale este 2, deoarece a doua și prima derivată sunt înlocuite cu ordinul 2, iar restul - exact.

Deci, în loc de ecuații diferențiale (1), (2), se obține un sistem de ecuații liniare pentru determinarea la nodurile grilei.

Diagrama poate fi reprezentată astfel:

adică, avem un sistem de ecuații liniare cu o matrice:

Această matrice este tridiagonală, adică toate elementele care nu sunt situate pe diagonala principală și cele două diagonale adiacente acesteia sunt egale cu zero.

Rezolvând sistemul de ecuații rezultat, obținem o soluție la problema inițială.

Introducere

Când rezolvați probleme științifice și de inginerie, este adesea necesar să descrieți matematic un sistem dinamic. Acest lucru se face cel mai bine sub formă de ecuații diferențiale ( DU) sau sisteme de ecuații diferențiale. Cel mai adesea, această problemă apare la rezolvarea problemelor legate de modelarea cineticii reacțiilor chimice și a diferitelor fenomene de transfer (căldură, masă, impuls) - transfer de căldură, amestecare, uscare, adsorbție, la descrierea mișcării macro și microparticulelor.

În unele cazuri, o ecuație diferențială poate fi transformată într-o formă în care cea mai mare derivată este exprimată în mod explicit. Această formă de scriere se numește ecuație rezolvată în raport cu cea mai mare derivată (în acest caz, cea mai mare derivată este absentă în partea dreaptă a ecuației):

O soluție a unei ecuații diferențiale obișnuite este o funcție y(x) care, pentru orice x, satisface această ecuație într-un anumit interval finit sau infinit. Procesul de rezolvare a unei ecuații diferențiale se numește integrarea unei ecuații diferențiale.

Din punct de vedere istoric, primul și cel mai simplu mod de a rezolva numeric problema Cauchy pentru o EDO de ordinul întâi este metoda Euler. Se bazează pe aproximarea derivatei prin raportul incrementelor finite ale variabilelor dependente (y) și independente (x) între nodurile unei grile uniforme:

unde y i+1 este valoarea dorită a funcției în punctul x i+1.

Precizia metodei lui Euler poate fi îmbunătățită dacă se folosește o formulă de integrare mai precisă pentru a aproxima integrala - formula trapezoidala.

Această formulă se dovedește a fi implicită față de y i+1 (această valoare se află atât pe partea stângă, cât și pe partea dreaptă a expresiei), adică este o ecuație față de y i+1, care poate fi rezolvată, de exemplu, numeric, folosind o metodă iterativă (într-o astfel de formă, poate fi considerată ca o formulă iterativă a metodei iterative simple).

Componența lucrării de curs: Lucrarea de curs constă din trei părți. Prima parte conține o scurtă descriere a metodelor. În partea a doua, formularea și rezolvarea problemei. În a treia parte - implementarea software-ului în limbajul computerului

Scopul lucrării de curs: studierea a două metode de rezolvare a ecuațiilor diferențiale - metoda Euler-Cauchy și metoda Euler îmbunătățită.

1. Partea teoretică

Diferențierea numerică

O ecuație diferențială este o ecuație care conține una sau mai multe derivate. În funcție de numărul de variabile independente, ecuațiile diferențiale sunt împărțite în două categorii.

    Ecuații diferențiale ordinare (ODE)

    Ecuații cu diferențe parțiale.

Ecuațiile diferențiale obișnuite sunt acele ecuații care conțin una sau mai multe derivate ale funcției dorite. Ele pot fi scrise ca

variabila independenta

Ordinul cel mai înalt inclus în ecuația (1) se numește ordinea ecuației diferențiale.

Cea mai simplă EDO (liniară) este ecuația (1) de ordin rezolvată în raport cu derivata

O soluție a ecuației diferențiale (1) este orice funcție care, după înlocuirea ei în ecuație, o transformă într-o identitate.

Principala problemă asociată cu ODE liniară este cunoscută sub numele de problema Kasha:

Găsiți o soluție a ecuației (2) sub forma unei funcții care satisface condiția inițială (3)

Din punct de vedere geometric, aceasta înseamnă că este necesar să se găsească curba integrală care trece prin punctul ) atunci când egalitatea (2) este satisfăcută.

Numeric din punctul de vedere al problemei Kasha înseamnă: este necesar să se construiască un tabel cu valorile funcției care să satisfacă ecuația (2) și condiția inițială (3) pe un segment cu un anumit pas. De obicei, se presupune că, adică condiția inițială este specificată la capătul din stânga segmentului.

Cea mai simplă metodă numerică de rezolvare a unei ecuații diferențiale este metoda Euler. Se bazează pe ideea de a construi grafic o soluție la o ecuație diferențială, dar această metodă oferă și o modalitate de a găsi funcția dorită în formă numerică sau într-un tabel.

Să fie dată ecuația (2) cu condiția inițială, adică problema Kasha a fost pusă. Să rezolvăm mai întâi următoarea problemă. Găsiți în cel mai simplu mod valoarea aproximativă a soluției la un anumit punct unde este un pas destul de mic. Ecuația (2) împreună cu condiția inițială (3) specifică direcția tangentei curbei integrale dorite în punctul cu coordonate

Ecuația tangentei are forma

Deplasându-ne de-a lungul acestei tangente, obținem o valoare aproximativă a soluției în punctul:

Având o soluție aproximativă într-un punct, puteți repeta procedura descrisă anterior: construiți o linie dreaptă care trece prin acest punct cu un coeficient unghiular și din aceasta găsiți valoarea aproximativă a soluției în punct.

. Rețineți că această linie nu este tangentă la curba integrală reală, deoarece punctul nu ne este disponibil, dar dacă este suficient de mic, valorile aproximative rezultate vor fi apropiate de valorile exacte ale soluției.

Continuând această idee, să construim un sistem de puncte egal distanțate

Obținerea unui tabel de valori ale funcției necesare

Metoda lui Euler constă în aplicarea ciclică a formulei

Figura 1. Interpretarea grafică a metodei lui Euler

Metodele de integrare numerică a ecuațiilor diferențiale, în care se obțin soluții de la un nod la altul, se numesc pas cu pas. Metoda lui Euler este cel mai simplu reprezentant al metodelor pas cu pas. O caracteristică a oricărei metode pas cu pas este că, începând cu a doua etapă, valoarea inițială din formula (5) este ea însăși aproximativă, adică eroarea la fiecare pas ulterior crește sistematic. Cea mai utilizată metodă de evaluare a acurateței metodelor pas cu pas pentru soluția numerică aproximativă a ODE este metoda de trecere a unui anumit segment de două ori cu un pas și cu un pas

1.1 Metoda Euler îmbunătățită

Ideea principală a acestei metode: următoarea valoare calculată prin formula (5) va fi mai precisă dacă valoarea derivatei, adică coeficientul unghiular al dreptei care înlocuiește curba integrală pe segment, nu este calculată. de-a lungul marginii stângi (adică în punct), dar în centrul segmentului. Dar, deoarece valoarea derivatei dintre puncte nu este calculată, trecem la secțiunile duble cu centru, în care se află punctul, iar ecuația dreptei ia forma:

Și formula (5) ia forma

Formula (7) se aplică doar pentru , prin urmare, valorile nu pot fi obținute din ea, prin urmare se găsesc folosind metoda lui Euler, iar pentru a obține un rezultat mai precis se procedează astfel: de la început, folosind formula (5) ei găsesc valoarea

(8)

La punct și apoi găsit conform formulei (7) cu pași

(9)

Odată găsite alte calcule la produs prin formula (7)

Laboratorul 1

Metode de rezolvare numerică

ecuații diferențiale obișnuite (4 ore)

Când rezolvați multe probleme fizice și geometrice, trebuie să căutați o funcție necunoscută pe baza unei relații date între funcția necunoscută, derivatele sale și variabilele independente. Acest raport se numește ecuație diferențială , iar găsirea unei funcții care satisface ecuația diferențială se numește rezolvarea unei ecuații diferențiale.

Ecuație diferențială obișnuită numit egalitate

, (1)

in care

este o variabilă independentă care se modifică într-un anumit segment, și - functie necunoscuta y ( X ) iar ea prima n derivate. numit ordinea ecuației .

Sarcina este de a găsi o funcție y care să satisfacă egalitatea (1). Mai mult decât atât, fără a prevedea acest lucru separat, vom presupune că soluția dorită are unul sau altul grad de netezime necesar construcției și aplicării „legale” a uneia sau alteia metode.

Există două tipuri de ecuații diferențiale obișnuite

Ecuații fără condiții inițiale

Ecuații cu condiții inițiale.

Ecuațiile fără condiții inițiale sunt ecuații de forma (1).

Ecuația cu condițiile inițiale este o ecuație de forma (1), în care se cere găsirea unei astfel de funcție

, care pentru unii îndeplinește următoarele condiții: ,

acestea. la punct

funcţia şi derivatele sale prime iau valori prestabilite.

Probleme Cauchy

La studierea metodelor de rezolvare a ecuaţiilor diferenţiale folosind metode aproximative sarcina principala conteaza Problema Cauchy.

Să luăm în considerare cea mai populară metodă de rezolvare a problemei Cauchy - metoda Runge-Kutta. Această metodă vă permite să construiți formule pentru calcularea unei soluții aproximative de aproape orice ordin de precizie.

Să derivăm formulele metodei Runge-Kutta de precizie de ordinul doi. Pentru a face acest lucru, reprezentăm soluția ca o bucată dintr-o serie Taylor, eliminând termenii cu un ordin mai mare decât al doilea. Apoi valoarea aproximativă a funcției dorite în punctul respectiv X 1 poate fi scris ca:

(2)

Derivată a doua y "( X 0 ) poate fi exprimată prin derivata funcției f ( X , y ) , totuși, în metoda Runge-Kutta, în locul derivatului, se folosește diferența

selectând valorile parametrilor în mod corespunzător

Atunci (2) poate fi rescris ca:

y 1 = y 0 + h [ β f ( X 0 , y 0 ) + α f ( X 0 + γh , y 0 + δh )], (3)

Unde α , β , γ Și δ – unii parametri.

Considerând partea dreaptă a lui (3) în funcție de argument h , hai să-l descompunem în grade h :

y 1 = y 0 +( α + β ) h f ( X 0 , y 0 ) + αh 2 [ γ f x ( X 0 , y 0 ) + δ f y ( X 0 , y 0 )],

și selectați parametrii α , β , γ Și δ astfel încât această expansiune să fie apropiată de (2). Rezultă că

α + β =1, αγ =0,5, α δ =0,5 f ( X 0 , y 0 ).

Folosind aceste ecuații ne exprimăm β , γ Și δ prin intermediul parametrilor α , primim

y 1 = y 0 + h [(1 - α ) f ( X 0 , y 0 ) + α f ( X 0 +, y 0 + f ( X 0 , y 0 )], (4)

0 < α ≤ 1.

Acum, dacă în loc de ( X 0 , y 0 ) în (4) înlocuitor ( X 1 , y 1 ), obținem o formulă de calcul y 2 valoarea aproximativă a funcției dorite la punctul respectiv X 2 .

În cazul general, metoda Runge-Kutta este aplicată unei partiții arbitrare a segmentului [ X 0 , X ] pe n părți, adică cu pas variabil

x 0 , x 1 , …, x n ; h i = x i+1 – x i , x n = X. (5)

Opțiuni α sunt alese egale cu 1 sau 0,5. Să scriem în sfârșit formulele de calcul ale metodei Runge-Kutta de ordinul doi cu pași variabili pentru α =1:

y i+1 =y i +h i f(x i + , y i + f(x i , y i)), (6.1)

i = 0, 1,…, n -1.

Și α =0,5:

y i+1 =y i + , (6.2)

i = 0, 1,…, n -1.

Cele mai utilizate formule ale metodei Runge-Kutta sunt formule de ordinul al patrulea de precizie:

y i+1 =y i + (k 1 + 2k 2 + 2k 3 + k 4),

k 1 =f(x i , y i), k 2 = f(x i + , y i + k 1), (7)

k 3 = f(x i + , y i + k 2), k 4 = f(x i +h, y i +hk 3).

Pentru metoda Runge-Kutta, regula lui Runge este aplicabilă pentru estimarea erorii. Lăsa y ( X ; h ) – valoarea aproximativă a soluției la punct X , obţinut prin formulele (6.1), (6.2) sau (7) cu pas h , A p ordinea exactității formulei corespunzătoare. Apoi eroarea R ( h ) valorile y ( X ; h ) poate fi estimată folosind o valoare aproximativă y ( X ; 2 h ) solutii la un moment dat X , obtinut in trepte 2 h :

(8)

Unde p =2 pentru formulele (6.1) și (6.2) și p =4 pentru (7).