Calculul temperaturii prin calcul matematic

Metoda diferenței finite.

Acesta este numele metodei de rezolvare a problemelor de valoare limită, bazate pe o înlocuire aproximativă a derivatelor care intră în ecuații diferențiale și condiții limită cu relații non-finite. Această înlocuire ne permite să reducem problema valorii limită la problema rezolvării unui sistem de ecuații algebrice.

Diferențe finite și derivate. Fie o funcție y (x) definită pe intervalul [a, b]. Presupunem că este continuu și în mod repetabil diferențiat în acest interval. Împărțim segmentul în părți egale cu lungimea h și desemnează punctele de divizare x0, x1. xi. xn. Desemnăm funcțiile în aceste puncte cu y0, y1, respectiv. yi. yn. Prima diferență centrală în punctul i (i = 1,2, n-1) este diferența:

Cu ajutorul acestei diferențe, putem calcula aproximativ valoarea primei derivate a lui y 'la punctul i.

Extinzim funcția y (x) într-o serie de putere. luând pentru centrul de descompunere punctul xi și ne limităm la patru termeni:

În mod asemănător, găsim valoarea f-tiunii în acest punct

,distanța de la centrul expansiunii pe pas (-h):

Astfel, derivatul y `este aproximativ înlocuit de o relație finită-diferență cu o eroare a ordinului h * h:

A doua diferență centrală a funcției y (x) la punctul i este cantitatea:

Cu ajutorul acestei diferențe putem aproxima valoarea celui de-al doilea derivat y '' la punctul i. Acum folosim 5 termeni ai expansiunii seriei Taylor:

Astfel, al doilea derivat y 'cu o eroare a ordinului h * h poate fi înlocuit în mod aproximativ printr-o relație finită-diferență:

La determinarea diferențelor la punctul i, s-au folosit valorile funcției la punctele dispuse simetric în raport cu xi. Prin urmare, aceste diferențe se numesc centrale.

Există, de asemenea, diferențe stânga și dreaptă utilizând punctele situate spre stânga și respectiv spre dreapta punctului xi. Cu ajutorul acestor diferențe, se pot aproxima și valorile derivatelor, dar eroarea va fi mai mare decât ordinea h.

Sistemele diferențiale de ecuații sunt compilate în următoarea ordine.

1. Ecuația diferențială inițială este transformată în această formă, pentru a obține cel mai simplu sistem diferențial de ecuații din ea. Se ia în considerare aici că coeficienții derivatelor intră simultan în schema de diferențe în câțiva dintre termenii săi și apoi vor fi extinși la întregul sistem de ecuații. Prin urmare, este de dorit să existe coeficienți unitari pentru derivați în ecuația inițială.

2. În gură, intervalul de integrare a grilei uniforme a ecuației originale navlivayut cu un pas h și schema de diferență înregistrată, înlocuind aproximativ derivatele corespunzătoare cenți eral relații de diferență finită.

3. Aplicând schema de diferențe pentru nodurile de rețea scrieți ecuații diferențiale. În acest caz, se pot obține ecuații care conțin necunoscute necunoscute, adică necunoscute la punctele din afara rețelei stabilite.

4. În forma diferită, condițiile de limită sunt scrise și se compune întregul sistem de ecuații diferențiale.

Estimarea erorii soluției problemei valorii limită

Soluția sistemului diferențial al ecuațiilor oferă o soluție aproximativă a problemei valorii limită. Prin urmare, se pune întrebarea cu privire la acuratețea acestei soluții aproximative.

Pentru probleme de valoare liniară la limită, o teoremă este dovedită că ordinea de acuratețe a soluției unei probleme de valoare a limitei nu este mai mică decât ordinea de acuratețe a aproximării derivatelor prin relații de diferență finită. Estimarea erorii este efectuată de Runge. Problema de limită-valoare este rezolvată de două ori: cu distanța între grilă h și spațierea grilei H = kh, eroarea soluției cu pas mic h este estimată prin formula:

unde y (h) și y (H) sunt soluțiile obținute pentru același punct -xi al segmentului de integrare cu diferite etape. Eroarea relativă E este estimată din formula:

În cazul în care diferența în pregătirea sistemului de ecuații Execu-formează o diferență de stânga sau de dreapta, eroarea de decizie va fi mai mare, de ordinul 0 (h), precum și pentru evaluarea în formulele ar trebui să fie înlocuită cu k * k de k.

Aplicarea metodei diferenței finite pentru rezolvarea ecuațiilor în derivate parțiale

Pentru a aplica metoda diferenței în domeniul schimbării variabilelor non-dependente, introduceți o grilă. Toți derivații care intră în condițiile de ecuație și limită sunt înlocuiți cu diferențe în valorile funcției la nodurile rețelei și astfel obțin un sistem algebric de ecuații. Rezolvând acest sistem, găsiți o soluție aproximativă a problemei la nodurile rețelei.

c PROGRAMUL DE COMPOZIȚIE A SISTEMULUI DE EQUACAȚII

c METODA FINALĂ DE DIFERENȚĂ

c real H-step de-a lungul axei x

c real K-treaptă de-a lungul axei Y

c real N-număr de ecuații (număr aproximativ, de preferință N = M * P)

c real y (6, N) - matrice de ieșiri de ecuații, care conține următoarele câmpuri:

c y (1, N) este numărul punctului de-a lungul axei X.

c y (2, N) - numărul unui punct de-a lungul axei Y

c y (3, N) este coeficientul ecuației pentru Q (y (1, N) -1, y (2, N))

(4, N) este coeficientul ecuației pentru Q (y (1, N), y (2, N) -1)

c y (5, N) este coeficientul ecuației pentru Q (y (1, N) + 1, y (2, N))

c y (6, N) este coeficientul ecuației pentru Q (y (1, N), y (2, N)

c întregul M este numărul de noduri de-a lungul axei X.

c întregul P este numărul de noduri din axa Y.

c real Q (M, P) este matricea valorilor Y

c numărul întregului N-ieșire al ecuațiilor rezultate

Valorile necunoscute în nodurile matricei situate pe axa simetriei sunt calculate prin formula:

Metoda Seidel se referă la numărul de metode iterative, în care factorul de acumulare a erorilor este în esență absent. Prin urmare, este utilizat pe scară largă pentru a rezolva sisteme mari de ecuații. Vom considera rădăcinile sistemului rezolvate ca componente ale unor vectori y. Ideea de bază a tuturor metodelor iterative este aceea că valoarea aproximată a vectorului y este luată și noua valoare aproximativă a vectorului y este calculată din formulele compilate pe baza ecuațiilor rezolvate. Numim aceste valori aproximative y (k) și y (k + 1), respectiv. Deoarece aproximația inițială a fost aleasă arbitrar, y (k + 1), la rândul său, poate servi drept punct de plecare pentru obținerea noii aproximări y (k + 2) prin aceleași formule. Evident, acest proces poate fi continuat atâta timp cât vă place. Se spune că procesul de iterație converge dacă secvența rezultată a vectorilor y (k) (k = 0,1,2.) Are ca limită vectorul y care este o soluție exactă a sistemului:

În practică, este imposibil să se atingă această limită, dar este posibil să se aproximeze cu orice precizie precizată. Acestea specifică o anumită eroare, vectorul aproximării inițiale, și obțin aproximări succesive până când eroarea efectivă a rădăcinilor devine mai mică decât eroarea prescrisă.

Diferitele metode diferă unele de altele în ceea ce privește calcularea apropierii următoare, dar în toate metodele există două probleme principale:

asigurarea convergenței procesului de iterație;

estimarea erorii realizate.

Să fie dat un sistem liniar

Presupunând că sunt coeficienții diagonali

rezolva prima ecuație cu privire la y1. al doilea este relativ y2, și așa mai departe.

Apoi, obținem un sistem echivalent

Un astfel de sistem va fi numit redus.

Metoda Seidel este după cum urmează. După alegerea vectorului aproximării inițiale

înlocuiți componentele sale în partea dreaptă a primei ecuații a sistemului și calculați prima componentă y`1 a noului vector y "(cp). În partea dreaptă a celei de-a doua ecuații, înlocuim componentele (y1, y2, y3, yn) și se calculează a doua componentă y`2 'a vectorului nou. În a treia ecuație, înlocuiți (y`1, y`2, y3.Yn), etc. Evident, prin înlocuirea în fiecare ecuație, după ce ajungem la ultima ecuație, actualizăm toate componentele vectorului original și obținem prima aproximare a soluției

Mai departe. luând ca vector inițial vectorul y '(cp). executați a doua iterație și obțineți y`` (cp). Acest proces va continua până la atingerea gradului dorit de precizie.

Estimarea erorii aproximărilor procesului Seidel

Pentru a estima eroarea, mai întâi calculați rata de convergență

Adică, pentru fiecare rând al matricei de coeficienți a sistemului

se calculează suma modulelor de coeficienți situate în partea dreaptă a diagonalei principale

și suma modulilor coeficienților situați la stânga diagonalei principale:

Pentru fiecare rând i (i = 1,2, N), raportul

maximul acestor relații este luat. Mai puțin este

, cu atât este mai mare rata de convergență.

Următoarea estimare a erorii aproximării K este valabilă pentru procesul Seidel:

adică modulul de abatere a oricărei rădăcini i-a sistemului în aproximarea K de la valoarea exactă a aceleiași rădăcini

nu mai mult decât înmulțit cu un factor

Maximul incrementelor rădăcinilor obținute ca urmare a trecerii de la aproximarea (K-1) la K-mu.

Dacă setăm eroarea absolută

și cer această condiție

apoi condiție

adică un anumit grad de precizie la iterația K va fi atins. În practică, aceasta înseamnă că după fiecare repetare este necesar să se identifice rădăcina a cărei schimbare, comparativ cu valoarea anterioară, a fost cea mai mare în modul. Creșterea acestei rădăcini trebuie înmulțită cu

și comparați rezultatul cu eroarea absolută aleasă

Condiții suficiente pentru convergența procesului Seidel

Dacă modulele coeficienților sistemului satisfac cel puțin una dintre condiții

procesul Seidel pentru sistemul redus corespunzător merge Xia la soluția unică pentru orice alegere a vektsra y inițială (Miercuri) Astfel de sisteme sunt numite sisteme cu diagonală dominant-Niemi.

Metoda lui Zeidet are o proprietate care face posibilă asigurarea convergenței procesului pentru orice sistem de ecuații cu o matrice nespecifică de coeficienți.

Dacă ambele părți ale sistemelor cu matrice nonsingulară de coeficienți A = [aij] se înmulțesc din stânga cu matricea de transpunere A * [aij]. atunci se va obține un sistem inițial nou, echivalent, numit normal. Procesul Seidel pentru sistemul redus obținut din sistemul normal se converge întotdeauna independent de alegerea aproximării inițiale.

Subrutina metodei lui Seidel.

PROGRAM CODE PENTRU SOLUȚIONAREA SISTEMULUI DE EQUACAȚII PRIN METODA DE SEIZON

cu număr întreg de intrări N de ecuații

c real y (6, N) - intrări de ecuații, conținând următoarele câmpuri:

c y (1, N) este numărul punctului de-a lungul axei X.

c y (2, N) - numărul unui punct de-a lungul axei Y

c y (3, N) este coeficientul ecuației pentru Q (y (1, N) -1, y (2, N))

(4, N) este coeficientul ecuației pentru Q (y (1, N), y (2, N) -1)

c y (5, N) este coeficientul ecuației pentru Q (y (1, N) + 1, y (2, N))

c y (6, N) este coeficientul ecuației pentru Q (y (1, N), y (2, N)

c întregul M este numărul de noduri de-a lungul axei X.

c întregul P este numărul de noduri din axa Y.

c real Q (M, P) este matricea de intrare a valorilor inițiale Y

c real Q (M, P) este matricea de ieșire a valorilor calculate ale Y

c eroare E reală a calculelor