Skaitiniai metodai: uždaviniai su sprendimais žingsnis po žingsnio

Nemokami uždaviniai tema Skaitiniai metodai su brėžiniais, užuominomis ir išsamiais sprendimais. Kiekvieną kartą naujos reikšmės, trijų lygių: šaknų radimas ir interpoliacija, trapecijų ir Simpsono formulės, Oilerio, Hoino ir Rungės–Kutos metodai.

Nemokamas pratybų uždavinysLengvas
xyx₀ = 0

Taikykite Niutono–Rafsono metodą f(x) = e−x − x su pradine reikšme x₀ = 0. Raskite x2.

f(x) = e−x − xf′(x) = −e−x − 1x₀ = 0
Kitas uždavinys →

Ką praktikuositės

  1. Lengvasšaknų radimas ir interpoliacija
  2. Vidutinistrapecijų ir Simpsono formulės
  3. SunkusOilerio, Hoino ir Rungės–Kutos metodai

Kaip spręsti uždavinius tema Skaitiniai metodai

  1. Šakniai: pusiaukirtai patikrinkite ženklo pokytį, Niutono metodui apskaičiuokite f ir f′, o iteracijų lentelėje palikite šešis ar daugiau skaitmenų.
  2. Lentelės reikšmei: tiesiškai interpoliuokite tarp dviejų gretimų taškų.
  3. Integralui: raskite h = (b − a)/n, išvardykite f kiekviename mazge, pritaikykite svorius (1, 2, …, 2, 1 trapecijų; 1, 4, 2, …, 4, 1 Simpsono, kai n lyginis) ir padauginkite iš h/2 arba h/3.
  4. Diferencialinei lygčiai: žengkite nuo t₀ su yₙ₊₁ = yₙ + h·f(tₙ, yₙ) (Oileris) arba vidurkintu nuolydžiu (Hoinas), po eilutę kiekvienam žingsniui, kol pasieksite prašomą t.

Dažnos klaidos

  • Palikti netinkamą pusiaukirtos intervalo pusę arba klaidingai suskaičiuoti žingsnius.
  • Niutono–Rafsono metode rašyti x − f′/f vietoje x − f/f′.
  • Trapecijų formulėje vidiniams mazgams duoti svorį 1 arba naudoti Simpsono formulę su nelyginiu juostų skaičiumi.
  • Per anksti apvalinti iteracijas.
  • Atlikti vienu Oilerio žingsniu per mažai ar per daug, kad pasiektumėte galutinį laiką.

Pagrindinės formulės

Pusiaukirta
c = (a + b)/2, width after n steps (b − a)/2ⁿ
Niutono–Rafsono metodas
xn+1 = xₙ − f(xₙ)/f′(xₙ)
Tiesinė interpoliacija
y = y₁ + (y₂ − y₁)(x − x₁)/(x₂ − x₁)
Trapecijų formulė
T = (h/2)[f₀ + 2f₁ + … + 2fn−1 + fₙ], h = (b − a)/n
Simpsono formulė (n lyginis)
S = (h/3)[f₀ + 4f₁ + 2f₂ + … + 4fn−1 + fₙ]
Trapecijų paklaidos įvertis
|E| ≤ (b − a)h²M/12, M = max|f″|
Oileris
yn+1 = yₙ + h·f(tₙ, yₙ)
Hoinas
yn+1 = yₙ + (h/2)(k₁ + k₂), k₂ = f(tₙ + h, yₙ + hk₁)
RK4
yn+1 = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄)

Išmokite Skaitiniai metodai nuo nulio

Prieš tai: Išvestinės, Integralai, Diferencialinės lygtys

1Kodėl skaitiniai metodai, ir pusiaukirta

Daugelis lygčių ir integralų neturi atsakymo formulės: x = cos x, ∫e−x²dx ar dauguma diferencialinių lygčių. Skaitiniai metodai apskaičiuoja atsakymą žingsnis po žingsnio bet kokiu jums reikalingu tikslumu.

Pusiaukirtos metodas randa f(x) = 0 šaknį intervale [a, b], kuriame f keičia ženklą. Imkite vidurio tašką c = (a + b)/2 ir palikite pusę, kurioje ženklas vis dar keičiasi.

Pavyzdys: f(x) = x² − 2 intervale [1, 2]. c₁ = 1,5 duoda f = 0,25 > 0, taigi paliekame [1, 1,5]. c₂ = 1,25 duoda f = −0,4375 < 0, taigi paliekame [1,25; 1,5]. Tada c₃ = 1,375.

Kiekvienas žingsnis perpus sumažina intervalą, todėl po n žingsnių jo plotis yra (b − a)/2ⁿ. Pusiaukirta lėta, bet visada veikia, kai turite ženklo pokytį.

Savikontrolė Pusiaukirta prasideda 1 ilgio intervale. Koks intervalo plotis po 10 žingsnių?
  1. 1/100
  2. 1/1024
  3. 1/10
  4. 1/20

Atsakymas: 1/1024. Kiekvienas žingsnis jį perpus sumažina: 1/2¹⁰ = 1/1024 ≈ 0,001. Dalijant iš 10 ar 20 perpus sumažėjimas traktuojamas tarsi sudėtinis.

2Niutono–Rafsono metodas

Niutono–Rafsono metodas seka liestinę iki x ašies ir tos sankirtos tašką naudoja kaip kitą spėjimą:

xn+1 = xₙ − f(xₙ)/f′(xₙ)
xx₀ = 2x₁ = 1,5√2f(x) = x² − 2

Kai f(x) = x² − 2, f′(x) = 2x ir x₀ = 2: x₁ = 2 − 2/4 = 1,5, x₂ = 1,5 − 0,25/3 = 1,416667, x₃ = 1,414216. Šaknis yra √2 = 1,414214.

Prie šaknies Niutono metodas maždaug padvigubina teisingų skaitmenų skaičių kiekviename žingsnyje. Jis gali nepavykti, kai f′(xₙ) artima 0 arba kai pradinis taškas toli nuo šaknies.

Kiekvienoje iteracijoje palikite bent šešis skaitmenis; per ankstyvas apvalinimas neleidžia metodui gerėti.

Savikontrolė Vienas Niutono žingsnis f(x) = x² − 5 nuo x₀ = 2 duoda…
  1. 1,75
  2. 2,25
  3. 2,2
  4. 2,5

Atsakymas: 2,25. f(2) = −1 ir f′(2) = 4, taigi x₁ = 2 − (−1)/4 = 2,25. Pridėjus −1/4, o ne atėmus, gaunama 1,75.

3Tiesinė interpoliacija

Lentelėse reikšmės pateikiamos tik tam tikruose taškuose. Tiesinė interpoliacija nubrėžia tiesę tarp dviejų gretimų lentelės taškų:

y = y₁ + (y₂ − y₁)·(x − x₁)/(x₂ − x₁)

Pavyzdys: lentelė duoda f(1) = 2,0 ir f(2) = 2,6. Kai x = 1,4, dalis yra 0,4, taigi f(1,4) ≈ 2,0 + 0,6·0,4 = 2,24.

Atvirkštinė interpoliacija veikia taip pat, tik atvirkščiai: norint rasti, kur y = 2,3, dalis yra (2,3 − 2,0)/0,6 = 0,5, taigi x ≈ 1,5.

4Trapecijų ir Simpsono formulės

Norėdami integruoti f nuo a iki b, padalykite intervalą į n juostų, kurių plotis h = (b − a)/n, su mazgais x₀, x₁, …, xₙ.

Trapecijų formulė kiekvienoje juostoje kreivę pakeičia tiese. Kiekvienas vidinis mazgas priklauso dviem juostoms, todėl skaičiuojamas du kartus:

T = (h/2)[f₀ + 2f₁ + 2f₂ + … + 2fn−1 + fₙ]
0,51y = x²x

Simpsono formulė per kiekvienus tris mazgus nubrėžia parabolę. Jai reikia lyginio n:

S = (h/3)[f₀ + 4f₁ + 2f₂ + 4f₃ + … + 4fn−1 + fₙ]

∫01 x² dx = 1/3, kai n = 2 (h = 0,5): T = 0,25·(0 + 0,5 + 1) = 0,375, o S = (0,5/3)·(0 + 1 + 1) = 0,3333, tiksliai.

Trapecijų paklaida mažėja kaip h², o Simpsono – kaip h⁴: perpus sumažinus h, Simpsono formulė tampa maždaug 16 kartų tikslesnė.

Savikontrolė Kokius svorius trapecijų formulė suteikia mazgams x₀, x₁, x₂, x₃?
  1. 1, 1, 1, 1
  2. 1, 2, 2, 1
  3. 1, 4, 2, 1
  4. 1, 4, 4, 1

Atsakymas: 1, 2, 2, 1. Du kraštiniai taškai priklauso vienai juostai, o vidiniai – dviem, taigi 1, 2, 2, 1 su daugikliu h/2. Ketvertai priklauso Simpsono formulei.

5Oilerio ir Hoino metodai diferencialinėms lygtims

Lygčiai y′ = f(t, y), kai y(t₀) = y₀, žengiame laike pirmyn žingsniu h. Oilerio metodas naudoja nuolydį kiekvieno žingsnio pradžioje:

yn+1 = yₙ + h·f(tₙ, yₙ)

Hoino metodas (patobulintas Oilerio) prognozuoja Oilerio metodu, tada vidurkina nuolydžius abiejuose galuose: k₁ = f(tₙ, yₙ), k₂ = f(tₙ + h, yₙ + h·k₁), yn+1 = yₙ + (h/2)(k₁ + k₂).

Oilerio paklaida proporcinga h, Hoino – h². Klasikinis Rungės–Kutos metodas (RK4) naudoja keturis nuolydžius ir yra tikslus iki h⁴.

Išspręstas pavyzdys

Išspręskite y′ = y, y(0) = 1 Oilerio metodu su h = 0,1 iki t = 0,3 ir palyginkite su tiksliu sprendiniu eᵗ.

1

1 žingsnis

y₁ = 1 + 0,1·1 = 1,1
2

2 žingsnis

y₂ = 1,1 + 0,1·1,1 = 1,21
3

3 žingsnis

y₃ = 1,21 + 0,1·1,21 = 1,331
4

Palyginkite

Tiksli reikšmė yra e0,3 = 1,349859, taigi globalioji paklaida yra 0,0189. Vienas Hoino žingsnis nuo y₀ duotų 1 + 0,05·(1 + 1,1) = 1,105, palyginti su e0,1 = 1,105171.

Atsakymas

y(0,3) ≈ 1,331 Oilerio metodu; paklaida 0,019 mažėja maždaug proporcingai h.

6Dažnos klaidos ir egzamino klausimai

  • Pirmąjį pusiaukirtos vidurio tašką laikyti 0 žingsniu arba palikti netinkamą intervalo pusę.
  • Niutono metode rašyti x − f′/f vietoje x − f/f′.
  • Pamiršti daugiklį 2 vidiniams mazgams arba naudoti h vietoje h/2 trapecijų formulėje.
  • Naudoti Simpsono formulę su nelyginiu juostų skaičiumi.
  • Oilerio metode naudoti nuolydį žingsnio gale arba atlikti vienu žingsniu per mažai.

Lengvi: pusiaukirta, Niutono iteracijos ir interpoliacija lentelėje. Vidutiniai: trapecijų ir Simpsono formulės, jų paklaida ir reikalingas juostų skaičius. Sunkūs: Oilerio, Hoino ir Rungės–Kutos žingsniai diferencialinėms lygtims.

Savikontrolė y′ = 2y, kai y(0) = 1. Ką duoda vienas Oilerio žingsnis su h = 0,2?
  1. 1,2
  2. 1,49
  3. 1,4
  4. 2,4

Atsakymas: 1,4. y₁ = 1 + 0,2·(2·1) = 1,4. Pamiršus daugiklį 2 nuolydyje gaunama 1,2; 1,49 yra tikslioji reikšmė e0,4.

Mokykitės žingsnis po žingsnio programėlėjeMokykitės žingsnis po žingsnio programėlėje

Išspręsti pavyzdžiai

Pavyzdys 1Lengvas

Pusiaukirtos metodas prasideda 4 ilgio intervalu. Kiekvienas žingsnis padalija intervalą pusiau. Kiek žingsnių n reikia bent, kad intervalas taptų trumpesnis nei 0,0001?

b − a = 4ε = 0,0001

Raskite n

Rodyti užuominas
  1. Po n žingsnių intervalo ilgis yra (b − a)/2ⁿ.
  2. Išspręskite 4/2ⁿ < 0,0001, taigi 2ⁿ > 40000.
  3. n > log₂(40000) = 15,29
Rodyti atsakymą ir sprendimą žingsnis po žingsnio

Šaknų radimas ir interpoliacija: pusiaukirtos metodas išlaiko intervalą [a, b], kuriame f keičia ženklą; kiekviename žingsnyje imamas vidurio taškas c = (a + b)/2 ir paliekama pusė, kurioje ženklas vis dar keičiasi, todėl po n žingsnių intervalo plotis yra (b − a)/2ⁿ. Niutono–Rafsono metodas seka liestinę iki ašies: xn+1 = xn − f(xn)/f′(xn); prie paprastosios šaknies jis maždaug padvigubina teisingų skaitmenų skaičių per žingsnį. Tiesinė interpoliacija tarp dviejų lentelės taškų: y = y₁ + (y₂ − y₁)(x − x₁)/(x₂ − x₁).

Sąlyga

4/2ⁿ < 0,0001 → 2ⁿ > 40000

Logaritmas

n > ln(40000)/ln 2 = 15,29
n = 16

Patikra

2¹⁵ = 32768 < 40000 < 2¹⁶ = 65536

Atsakymas

n = 16
Pavyzdys 2Vidutinis
xy00,511,5

Trapecijų formule su n = 3 juostų apytiksliai apskaičiuokite ∫01,5 √(1 + x³) dx. Pateikite T.

f(x) = √(1 + x³)[a, b] = [0, 1,5]n = 3

Raskite T

Rodyti užuominas
  1. h = (1,5 − 0)/3 = 0,5; mazgai yra 0, 0,5, 1, 1,5.
  2. Svoriai: 1, 2, 2, …, 2, 1; T = (h/2)·Σ wᵢfᵢ.
  3. Svertinė suma yra Σ wᵢfᵢ = 8,041398.
Rodyti atsakymą ir sprendimą žingsnis po žingsnio

Skaitinis integravimas: padalykite [a, b] į n juostų, kurių plotis h = (b − a)/n, su mazgais x₀ … xₙ. Trapecijų formulė: T = (h/2)[f₀ + 2f₁ + 2f₂ + … + 2fn−1 + fₙ]. Simpsono formulė (n lyginis): S = (h/3)[f₀ + 4f₁ + 2f₂ + 4f₃ + … + 4fn−1 + fₙ]. Trapecijų paklaida mažėja kaip h² (įvertis (b − a)h²·M/12, kur M = max|f″|), Simpsono – kaip h⁴, todėl su tais pačiais mazgais Simpsono formulė paprastai yra gerokai tikslesnė.

ixᵢf(xᵢ)svoris001110,51,060662211,414214231,52,091651

Mazgai ir reikšmės

h = 0,5
Σ wᵢfᵢ = 1 + 2·1,06066 + 2·1,414214 + 2,09165 = 8,041398

Trapecijų formulė

T = (0,5/2)·8,041398 = 2,01

Atsakymas

T = 2,01

Šis integralas neturi elementariosios pirmykštės funkcijos, būtent tada ir reikia skaitinio metodo.

Pavyzdys 3Sunkus
00,10,20,30,40,40,60,81ty(0, 0,5)

Hoino metodu (patobulintu Oilerio) su h = 0,2, kai y′ = 1 + sin(ty), y(0) = 0,5, įvertinkite y2 ≈ y(0,4).

y′ = 1 + sin(ty)y(0) = 0,5h = 0,2

Raskite y2

Rodyti užuominas
  1. Kiekvienas žingsnis: k₁ = f(tₙ, yₙ), k₂ = f(tₙ + h, yₙ + h·k₁), yn+1 = yₙ + (h/2)(k₁ + k₂).
  2. 1 žingsnis: k₁ = 1, k₂ = 1,139543, y₁ = 0,713954.
  3. Norint pasiekti t = 0,4, reikia 2 žingsnių.
Rodyti atsakymą ir sprendimą žingsnis po žingsnio

Skaitinis y′ = f(t, y) sprendimas: Oilerio metodas žengia išilgai nuolydžio kiekvieno žingsnio pradžioje: yn+1 = yₙ + h·f(tₙ, yₙ). Hoino metodas (patobulintas Oilerio) vidurkina nuolydį pradžioje ir Oilerio prognozės taške: k₁ = f(tₙ, yₙ), k₂ = f(tₙ + h, yₙ + h·k₁), yn+1 = yₙ + (h/2)(k₁ + k₂). Klasikinis Rungės–Kutos metodas (RK4) sujungia keturis nuolydžius: yn+1 = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄). Oilerio globalioji paklaida proporcinga h, Hoino – h², RK4 – h⁴.

ntₙyₙk₁k₂yₙ₊₁000,511,1395430,71395410,20,7139541,1423061,3681010,964995

Hoino žingsniai

y₁ = 0,5 + (0,2/2)(1 + 1,139543) = 0,713954
y₂ = 0,713954 + (0,2/2)(1,142306 + 1,368101) = 0,964995
00,10,20,30,40,40,60,81ty

Grafikas

y2 = 0,965

Atsakymas

y2 = 0,965

Klausimai ir atsakymai

Skaitiniai metodai: kas tai?

Daugelis lygčių ir integralų neturi atsakymo formulės: x = cos x, ∫e−x²dx ar dauguma diferencialinių lygčių. Skaitiniai metodai apskaičiuoja atsakymą žingsnis po žingsnio bet kokiu jums reikalingu tikslumu.

Pavyzdys: f(x) = x² − 2 intervale [1, 2]. c₁ = 1,5 duoda f = 0,25 > 0, taigi paliekame [1, 1,5]. c₂ = 1,25 duoda f = −0,4375 < 0, taigi paliekame [1,25; 1,5]. Tada c₃ = 1,375.

Skaitiniai metodai: kaip spręsti uždavinius žingsnis po žingsnio?
  1. Šakniai: pusiaukirtai patikrinkite ženklo pokytį, Niutono metodui apskaičiuokite f ir f′, o iteracijų lentelėje palikite šešis ar daugiau skaitmenų.
  2. Lentelės reikšmei: tiesiškai interpoliuokite tarp dviejų gretimų taškų.
  3. Integralui: raskite h = (b − a)/n, išvardykite f kiekviename mazge, pritaikykite svorius (1, 2, …, 2, 1 trapecijų; 1, 4, 2, …, 4, 1 Simpsono, kai n lyginis) ir padauginkite iš h/2 arba h/3.
  4. Diferencialinei lygčiai: žengkite nuo t₀ su yₙ₊₁ = yₙ + h·f(tₙ, yₙ) (Oileris) arba vidurkintu nuolydžiu (Hoinas), po eilutę kiekvienam žingsniui, kol pasieksite prašomą t.
Skaitiniai metodai: kokios klaidos dažniausios?
  • Palikti netinkamą pusiaukirtos intervalo pusę arba klaidingai suskaičiuoti žingsnius.
  • Niutono–Rafsono metode rašyti x − f′/f vietoje x − f/f′.
  • Trapecijų formulėje vidiniams mazgams duoti svorį 1 arba naudoti Simpsono formulę su nelyginiu juostų skaičiumi.
  • Per anksti apvalinti iteracijas.
  • Atlikti vienu Oilerio žingsniu per mažai ar per daug, kad pasiektumėte galutinį laiką.
Skaitiniai metodai: ką lavinsite?
  • Lengvas: šaknų radimas ir interpoliacija
  • Vidutinis: trapecijų ir Simpsono formulės
  • Sunkus: Oilerio, Hoino ir Rungės–Kutos metodai

Kiekviename uždavinyje naujos reikšmės, todėl išmokstate metodą, o ne atsakymą. Strigote? Pirmiausia atverkite nedidelę užuominą, o visą paaiškinimą – tik kai jo prireiks.

Kaip vyksta praktika

  • Kiekviename uždavinyje naujos reikšmės, todėl išmokstate metodą, o ne atsakymą.
  • Strigote? Pirmiausia atverkite nedidelę užuominą, o visą paaiškinimą – tik kai jo prireiks.
  • Jūsų pažanga, klaidos ir išsaugoti uždaviniai išlieka, todėl prieš egzaminą galite viską pakartoti.

Temos prieš šią ir po jos

Pirmiausia išmokite

Kursai su šia tema

Daugiau temų: Matematika ir statistika

Spausdinamas užduočių lapas