Eylerning 1-takomillashtirilgan usuli Eylerning 2-takomillashtirilgan usuli


Eylerning 1-takomillashtirilgan usuli



Download 129,06 Kb.
bet2/2
Sana31.12.2021
Hajmi129,06 Kb.
#255532
1   2
Bog'liq
11-маъруза

Eylerning 1-takomillashtirilgan usuli


Ushbu usulda f(xi, yi) ning orniga f(xi, yi) va f(xi+1, yi+1) larning orta arifmetigi olinadi. U holda


(*)

Bu oshkormas sxema hisoblanib, uni ikkita iteratsiya bilan amalga oshiriladi: avvalo yi ni dastlabki qiymat deb hisoblab, boyicha birinchi yaqinlashish topiladi:



,

So‘ngra bu qiymatni (*) ning o‘ng qismidagi yi+1 ning o‘rniga olib borib qo‘yiladi:



2-misol. tenglamani yeching, bunda [0;1] da va deb oling.



Yechilishi: va

da

da ;



da ;

va hokazo hisoblashlar bajariladi.



3. Eylerning 2-takomillashtirilgan usuli

Har bir olingan yi qiymat uchun iteratsion qayta ishlashni qo‘llab, Eyler usulini yanada aniqlashtirish mumkin.

Xususan, oldiniga

birinchi qo‘pol yaqinlashishdan kelib chiqib, quyidagi sxema bo‘yicha iteratsion jarayon quriladi



.

Ikkita ketma-ket , yaqinlashishlarning mos o‘nlik belgilari ustma-ust tushmaguncha iteratsiya davom etadi va  deb faraz qilinadi.

Qoidaga ko‘ra, yetarlicha h kichik qadamlarda iteratsiya tezroq yaqinlashadi. Agar 3-4 iteratsiyadan keyin ham mos o‘nlik belgilari ustma-ust tushmasa, hisoblash qadami h kichraytiriladi. yi qiymatni bunday qayta ishlashdan keyin navbatdagi xi+1 tugunga o‘tiladi.

3-misol. [0;1] kesmada tenglamaning yechimlari jadvalini Eyler usuli yordamida tuzing. Bunda qadamni h = 0.2, boshlang‘ich shartni y(0) = 1 deb oling.

Hisoblash natijalarini jadvalga joylashtiramiz:



i

xi

yi

yi

Aniq yechim

у =

0

0

1,0000

0,2000

1,0000

1

0,2

1,2000

0,1733

1,1832

2

0,4

1,3733

0,1561

1,3416

3

0,6

1,5294

0,1492

1,4832

4

0,8

1,6786

0,1451

1,6124

5

1,0

1,8237




1,7320

Birinchi satrda i = 0 bo‘lganda x0 = 0, y0 =1,000 deb yoziladi va shular asosida f(x0, y0) = 1 hisoblanadi, so‘ngra y0=hf(x0, y0)= 0,2 topiladi. U holda formuladan y1=1+0,2 = 1,2 qiymatni olamiz.



i = 1 bo‘lgandagi x1 = 0,2 va y1 = 1,2000 qiymatlar 2-satrga yoziladi. Ulardan foydalanib, quyidagilarni hisoblash mumkin:

f(x1,y1) = 0,8667; y1=hf(x1,y1)=0,20,8667=0,1733.

U holda y2 = y1 + y1 = 1,2 + 0,1733 = 1,3733.



i=2,3,4,5 bo‘lgan hollar uchun ham shunga o‘xshash hisoblashlar bajariladi. Jadvalning oxirgi ustuniga taqqoslash maqsadida aniq yechim joylashtirilgan. Jadvaldan ko‘rinadiki, y5 uchun absol’yut xatolik ga teng, ya’ni 9% foizni tashkil etadi.

Eyler usulida , y(0) = 1, [0;1], h = 0.2 Koshi masalasini yechish dasturi:

#include

#include

using namespace std;

int main()

{

const int n=5;

double a=0, b=1, h,x[n], y[n],z[n],e[n];

h=(b-a)/n;

x[0]=0; y[0]=1;

for(int i=0;i<=n;i++)

{

x[i+1]=x[i]+h;

y[i+1]=y[i]+h*(y[i]-2*x[i]/y[i]);

}

for(int i=0; i

{

z[i]=pow(2*x[i]+1,1/2);

e[i]=(z[i]-y[i]);

cout<
  • Ikkinchi tartibli Runge-Kutta usuli.

    Ushbu usul asosida turli aniqlik darajalariga ega bolgan ayirmaviy sxemalarni qurish mumkin. Usul goyasi izlanayotgan y=y(x) funksiyani torning tugunlari atrofida Teylor qatoriga yoyishdan iborat.


    Ushbu usulda у
    i+1 qiymatlar quyidagi formulalardan topiladi:

    уi+1 = уi + ∆уi;

    уi=уi1 + ∆уi2 ,





    U holda .

    Belgilash kiritamiz: y*i+1 = yi+h f (xi,yi),
    shunda .
    y'=x2+y2 tenglama uchun Runge - Kutta usulida Koshi masalasini yechish dasturi:

    #include

    #include

    using namespace std;

    int main()

    {

    const int n=5;

    double a=0, b=1, h,x[n], y[n],y1[n],z[n],e[n];

    h=(b-a)/n;

    x[0]=0; y[0]=0;

    for(int i=0;i<=n;i++)

    {

    x[i+1]=x[i]+h;

    y1[i+1]=y[i]+h*pow(x[i]+y[i],2);

    y[i+1]=y[i]+h/2*(pow(x[i]+y[i],2)+pow(x[i]+y1[i+1],2));

    }

    for(int i=0; i

    {

    z[i]=tan(x[i])-x[i];

    e[i]=(z[i]-y[i]);

    cout<

  • To‘rtinchi tartibli Runge-Kutta usuli.

    Amaliyotda kopincha 4-tartibli Runge-Kutta usulidan foydalaniladi. Bu usulda yi+l kattaliklar quyidagi formulalardan topiladi:

    уi+1 = уi + ∆уi;

    , bunda i=1,2,…;

    k1=f(xi,yi);

    k2=f(xi+h/2, yi+hk1/2);

    k3=f(xi+h/2, yi+hk2/2);

    k4=f(xi+h, yi+hk3);

    5-misol. у' = ух differensial tenglama у(0)=1,5 boshlangich shart bilan berilgan bolsin. Runge-Kutta usuli bilan х= 1,5 uchun ε = 0,01 aniqlikda tenglamani yeching.

    Yechilishi: h=0,25 bolsin deylik. Butun integrallanuvchi [0; 1,5] kesmani 6 ta nuqta bilan bolaklarga ajratamiz:

    x0=0; х1=0,25; х2=0,5; х3=0,75; х4=1; х5=1,25; х6=1,5.

    Boshlangich shartlardan х0=0; у0=1,5 larga egamiz.

    Birinchi yaqinlashishni topamiz:

    y1=y0+∆y0, bunda ;

    Runge-Kutta usulidan foydalanib, quyidagilarni aniqlaymiz:

    k1=(y0+x0)h= 1.50.25=0.375;

    k2=[(y0+k1/2)-(x0+h/2)]h=[(1.5+0.187)-0.125]•0.25=0.39;

    k3 =[(y0+k2/2)-(x0+h/2)]= 0.392;

    k4 =[(y0+k3)-(x0+h)]h= 0.41.

    Bulardan у0 = (0.375 + 2 • 0.39 + 2 • 0.392 + 0,41) = 0,392.

    Shunday qilib, у1 = 1.5 + 0.392 = 1.892 va h.k.

    Xulosa qilib shuni ta’kidlaymizki, bir qadamli Runge-Kutta usulidan 1–tartibli differensial tenglamalar sistemalarini yechishda foydalanish mumkin.



    4–tartibli Runge-Kutta usuli bilan y'=x2+y2 tenglamani yechish dasturi:

    #include

    #include

    using namespace std;

    int main()

    {

    const int n=5;

    double a=0, b=1, h,x[n], y[n],y1[n],z[n],e[n],k0,k1,k2,k3;

    h=(b-a)/n;

    x[0]=0; y[0]=0;

    for(int i=0;i

    {

    k0=pow(x[i]+y[i],2);

    k1=pow(x[i]+h/2+y[i]+h/2*k0,2);

    k2=pow(x[i]+h/2+y[i]+h/2*k1,2);

    k3=pow(x[i]+h+y[i]+h*k2,2);

    y[i+1]=y[i]+h/6*(k0+2*k1+2*k2+k3);

    x[i+1]=x[i]+h;

    }

    for(int i=0; i

    {

    z[i]=tan(x[i])-x[i];

    e[i]=fabs(z[i]-y[i]);

    cout<Download 129,06 Kb.
    Do'stlaringiz bilan baham:
  • 1   2




    Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
    ma'muriyatiga murojaat qiling

    kiriting | ro'yxatdan o'tish
        Bosh sahifa
    юртда тантана
    Боғда битган
    Бугун юртда
    Эшитганлар жилманглар
    Эшитмадим деманглар
    битган бодомлар
    Yangiariq tumani
    qitish marakazi
    Raqamli texnologiyalar
    ilishida muhokamadan
    tasdiqqa tavsiya
    tavsiya etilgan
    iqtisodiyot kafedrasi
    steiermarkischen landesregierung
    asarlaringizni yuboring
    o'zingizning asarlaringizni
    Iltimos faqat
    faqat o'zingizning
    steierm rkischen
    landesregierung fachabteilung
    rkischen landesregierung
    hamshira loyihasi
    loyihasi mavsum
    faolyatining oqibatlari
    asosiy adabiyotlar
    fakulteti ahborot
    ahborot havfsizligi
    havfsizligi kafedrasi
    fanidan bo’yicha
    fakulteti iqtisodiyot
    boshqaruv fakulteti
    chiqarishda boshqaruv
    ishlab chiqarishda
    iqtisodiyot fakultet
    multiservis tarmoqlari
    fanidan asosiy
    Uzbek fanidan
    mavzulari potok
    asosidagi multiservis
    'aliyyil a'ziym
    billahil 'aliyyil
    illaa billahil
    quvvata illaa
    falah' deganida
    Kompyuter savodxonligi
    bo’yicha mustaqil
    'alal falah'
    Hayya 'alal
    'alas soloh
    Hayya 'alas
    mavsum boyicha


    yuklab olish