logo

Aniq integrallarni taqribiy hisoblash. To'g'ri to'rtburchak usulini dasturini ishlab chiqish

Yuklangan vaqt:

19.11.2024

Ko'chirishlar soni:

0

Hajmi:

108.23828125 KB
Aniq integrallarni taqribiy hisoblash. To'g'ri to'rtburchak usulini dasturini   ishlab
chiqish .”
REJA:
KIRISH ............................................................................................................ 3
I Bob. Nazariy ma'lumotlar ............................................................................. 4
1.1. Raqamli integratsiya ............................................................................. 4
2. To'rtburchaklar usuli. ............................................................................... 6
2.4.Matematik formula. ............................................................................... 8
II Bob. To'rt tomonlama usul dasturini ishlab chiqish. ................................. 10
 Dastur dizayni. .......................................................................................... 10
Algoritm. ................................................................................................... 11
 Amalga oshirish. ....................................................................................... 12
III Bob. Natijalar va tahlillar. ........................................................................ 17
 Sinov holatlari.. ........................................................................................ 17
 Aniqlik va konvergentsiya. ....................................................................... 22
 Faoliyatni baholash.. ................................................................................. 24
XULOSA ....................................................................................................... 30
              FOYDALANILGAN ADABIYOTLAR RO’YXATI 2FOYDALANILGAN ADABIYOTLAR RO’YXATI 3 KIRISH
Raqamli   integratsiya   hisoblash   matematikasining   asosiy   usuli   bo'lib,   aniq
integrallarning   qiymatini   taxmin   qilish   uchun   ishlatiladi.   Bunga   erishish   uchun
turli usullar ishlab chiqilgan, ularning har biri o'zining afzalliklari va cheklovlariga
ega.   Ushbu   usullar   orasida   to'rtburchaklar   usuli   tartibsiz   sohalar   bo'yicha
integrallarni   yaqinlashtirishda   soddaligi   va   samaradorligi   bilan   ajralib   turadi.
Ushbu   kurs   ishi   aniq   integrallarni   taxminiy   hisoblash   uchun   to'rtburchaklar   usuli
dasturini   ishlab   chiqish   va   amalga   oshirishni   o'rganadi.   Maqola   uchta   bobdan
iborat:   (1)   Nazariy   ma'lumot,   (2)   To'rt   tomonlama   metod  dasturini   ishlab   chiqish
va (3) Natijalar va tahlil.
Ushbu   kurs   ishining   maqsadi   aniq   integrallarni   yaqinlashtirishning
to'rtburchaklar   usulini   o'rganishdir.   O'rta   nuqta   yoki   Rieman   yig'indisi   usuli
sifatida ham tanilgan bu usul eng oddiy sonli integratsiya usullaridan biridir. Kurs
ishi quyidagi jihatlarni qamrab oladi:
      Nazariy   asos:   To'rtburchaklar   usulining   matematik   formulasi   va   tamoyillarini
tushunish. Implementation: To'rtburchak usulni amalga oshirish uchun kompyuter
dasturini ishlab chiqish.
  Ilova:   To‘rtburchak   usuldan   foydalanishni   misollar   bilan   ko‘rsatish   va   uning
aniqligi va cheklovlarini muhokama qilish. 4I Bob.   Nazariy ma'lumotlar
1.1.  Raqamli integratsiya
Raqamli   integratsiya   raqamli   tahlilning   aniq   integrallar   qiymatini
yaqinlashtirishga   qaratilgan   bo'limi   bo'lib,   ayniqsa   analitik   yechimni   olish   qiyin
yoki   imkonsiz   bo'lganda.   Asosiy   maqsad   funktsiyaning   integralini   ma'lum   oraliq
yoki soha bo'yicha yuqori aniqlik bilan baholashdir.
Yopiq   [a,b]   oraliqda   aniqlangan   ?????? ( ?????? )   (x)   funksiya   berilgan   bo lsa,   a   dan  ʻ ??????
gacha bo lgan aniq integrali quyidagicha ifodalanadi:	
ʻ
Ko'pgina   amaliy   stsenariylarda   bu   integralni   analitik   tarzda   hisoblash
mumkin   emas.   Raqamli   integratsiya   usullari   ushbu   integralni   intervalning
belgilangan   nuqtalarida   funksiya   qiymatlarining   chekli   yig'indisidan   foydalangan
holda taxmin qiladi.
                        1.2 Umumiy usullar
        Raqamli   integratsiyaning   bir   necha   usullari   mavjud   bo'lib,   ularning   har   biri
integralni yaqinlashish uchun o'ziga xos yondashuvga ega. Eng ko'p ishlatiladigan
usullardan ba'zilari:
Trapezoidal qoida:
   Trapetsiya qoidasi [a,b] oralig‘ini teng kenglikdagi   ??????   subintervallarga bo‘lish va
egri   chiziq   ostidagi   maydonni   trapetsiya   qatori   sifatida   yaqinlashtirish   orqali
integralga yaqinlashadi. Integral quyidagicha taxmin qilinadi:
      qayerda        5       Simpson qoidasi:
      Simpson   qoidasi   parabolalarni   funktsiya   segmentlariga   moslash   orqali   aniqroq
yaqinlashishni   ta'minlaydi.   Bunga   erishish   uchun   u   juft   sonli   subintervallardan
foydalanadi. Taxminan quyidagicha ifodalanadi:
Qayerda 
Gauss kvadrati:
    Gauss kvadraturasi - bu yaqinlashish uchun nuqta va og'irliklarni optimal tanlash
orqali kamroq funktsiyalarni baholash bilan yuqori aniqlikni ta'minlaydigan kuchli
usul. Integral quyidagicha taxmin qilinadi:
bu   yerda   x
i     ortogonal   ko phadlarning   ildizlari   (masalan,   Legendreʻ
ko phadlari) va 	
ʻ w
i  mos keladigan og irliklardir.	ʻ
                              1.3 Yuqori o'lchovli integratsiya
    Bir  nechta  o'zgaruvchining  funktsiyalari   uchun  raqamli   integratsiya   tushunchasi
yuqori   o'lchamlarga   tarqaladi.   D   sohasi   bo‘yicha   aniqlangan   f(x,y)   funksiya
berilgan bo‘lsa, qo‘sh integral:
Yuqori o'lchamli integratsiyaning umumiy usullariga quyidagilar kiradi:
     Monte-Karlo integratsiyasi:
Monte-Karlo   usullari   integralga   yaqinlashish   uchun   tasodifiy   tanlab   olishdan
foydalanadi. Ushbu usul, ayniqsa, an'anaviy usullarni hisoblash mumkin bo'lmagan
yuqori o'lchamli integrallar uchun foydalidir. 6     Kubatura qoidalari:
Kvadrat   qoidalarini   yuqori   o'lchamlarga   kengaytirish,   kubatura   qoidalari   deb
nomlanadi,   domenning   strategik   tanlangan   nuqtalarida   funktsiya   qiymatlarini
yig'ish orqali integralga yaqinlashadi.
       Chekli elementlar usuli:
Cheklangan   elementlar   usuli   domenni   kichik,   oddiy   mintaqalarga   (elementlarga)
ajratadi   va   har   bir   element   ustidagi   integralni   taxmin   qiladi.   Ushbu   usul
muhandislik dasturlarida keng qo'llaniladi.
                                   1.4 Ilovalar
   Raqamli integratsiya turli fan va muhandislik sohalarida muhim ahamiyatga ega,
jumladan:
      Fizika   va   muhandislik:   Fizik   tizimlarning   maydonlari,   hajmlari   va   boshqa
xususiyatlarini hisoblash.
   Statistika:  Statistik taqsimotlarda ehtimollik va taxminlarni hisoblash.
Iqtisodiyot: Ekonometrik modellarda integrallarni baholash.
Kompyuter grafikasi: sahnalarni ko'rsatish va yorug'lik o'zaro ta'sirini hisoblash.
Funksiyalar masalani kichikroq kichik masalalarga bo‘lish orqali hal qiladi.
Bu   muammoning   takrorlanishini   bildiradi   (rekursiya).   Rekursiya   -   bu
muammoning mohiyatini aks ettiruvchi va intuitivroq echimlarni yaratishga imkon
beruvchi konstruksiya.
3. Samarali yechim:  Ayrim muammolar uchun rekursiv yechimlar samarali
ishlashi   mumkin.   Xususan,   agar   muammo   o'z-o'zidan   takrorlanadigan   bo'lsa   va
iterativ   jarayonlarni   optimallashtirish   mumkin   bo'lsa,   rekursiv   echimlar   kamroq
qadamlar qo'yishi va tezroq natijalar berishi mumkin.
2.  To'rtburchaklar usuli.
To'rtburchaklar   usuli   tartibsiz   domenlarda,   ayniqsa   ikki   o'lchovli   fazoda
integrallarni   qayta   ishlash   uchun   maxsus   ishlab   chiqilgan   raqamli   integratsiya
usulidir.   Oddiy   shakllar   uchun   ko'proq   mos   keladigan   trapezoidal   qoida   yoki 7Simpson   qoidasi   kabi   an'anaviy   usullardan   farqli   o'laroq,   to'rtburchaklar   usuli
domenni   to'rtburchak   elementlarga   bo'lish   orqali   ixtiyoriy   geometriyalar   bo'yicha
taxminiy integrallarga moslashuvchan yondashuvni taklif qiladi.
                     2.1 Prinsiplar va ish jarayoni
To'rtburchak   usul   domenni   diskretlashtirish   va   mahalliy   yaqinlashtirish
printsipi   asosida   ishlaydi.   Ish   jarayoni   odatda   quyidagi   bosqichlarni   o'z   ichiga
oladi:
1. Domenni diskretlashtirish:
To'rtburchaklar   usulida   birinchi   qadam   D   integratsiya   sohasini   to'rtburchak
elementlar to'plamiga diskretlashtirishdir. Ushbu elementlar o'zlarining cho'qqilari
bilan   belgilanadi   va   butun   domenni   qoplaydigan   to'rni   hosil   qiladi.   Ba'zi   boshqa
usullarda   qo'llaniladigan   tizimli   panjaralardan   farqli   o'laroq,   to'rtburchak
elementlar   shakli   va   o'lchamlari   bo'yicha   farq   qilishi   mumkin,   bu   esa   tartibsiz
domenlarni samarali tasvirlash imkonini beradi.
2. Mahalliy taxmin:
            Domen   diskretlashtirilgandan   so'ng,   har   bir   to'rtburchak   element   ustidagi
integral   alohida-alohida   taxmin   qilinadi.   Bunga   har   bir   element   ichida   tegishli
kvadratura   qoidasini   qo'llash   orqali   erishiladi.   Gauss   kvadraturasi   kabi   umumiy
kvadratura   qoidalari,   to'rtburchakning   muayyan   nuqtalarida   funktsiyani   baholash
va   natijalarni   tegishli   og'irliklar   bilan   yig'ish   orqali   integralni   hisoblash   uchun
ishlatilishi mumkin.
     3.Global integratsiya:
    Har bir to'rtburchak element bo'yicha integralni yaqinlashtirgandan so'ng, barcha
elementlarning   hissalari   butun   domen   bo'yicha   umumiy   integralni   olish   uchun
birlashtiriladi. Bu odatda individual hissalarni yig'ish yo'li bilan amalga oshiriladi,
natijada integralning yakuniy yaqinlashuvi olinadi.
                                         2.2 Afzalliklar
     To'rtburchaklar usuli an'anaviy raqamli integratsiya usullariga nisbatan bir qator
afzalliklarga ega: 8Moslashuvchanlik:   Usul   tartibsiz   domenlar,   jumladan   egri   chegaralari   yoki
murakkab geometriyalari bo'lgan integrallarni boshqarishi mumkin.
Mahalliy   moslashuv:   Har   bir   to'rtburchak   element   ichida   integralni   mahalliy
sifatida   yaqinlashtirish   orqali   usul   domenning   turli   qismlarida   funksiya   xatti-
harakatlaridagi o'zgarishlarga moslashishi mumkin.
Samaradorlik:   To'rtburchak   elementlardan   foydalanish   tartibsiz   domenlarni
samarali   namoyish   qilish   imkonini   beradi,   bu   esa   nozik   diskretizatsiyani   talab
qiladigan usullarga nisbatan hisoblash xarajatlarini kamaytiradi.
                              2.3 Ilovalar
           To'rtburchak usul  tartibsiz domenlar ustida integrallar paydo bo'ladigan turli
sohalarda ilovalarni topadi, jumladan:
Cheklangan   elementlar   tahlili:   tizimli   mexanika   yoki   suyuqlik   dinamikasi   kabi
tartibsiz   geometriyalarni   o'z   ichiga   olgan   fizik   hodisalarning   raqamli
simulyatsiyasi.
Geografik   modellashtirish:   integrallarni   relef   yoki   geografik   ob'ektlar   bo'yicha
tartibsiz chegaralarga yaqinlashtirish.
Tasvirga   ishlov   berish:   Tibbiy   tasvir   yoki   masofadan   zondlash   kabi   qiziqish
uyg'otadigan to'rtburchaklar bo'lmagan hududlarga ega tasvirlarni tahlil qilish.
2.4.Matematik formula.
Ushbu   bo'limda   biz   raqamli   integratsiyaning   to'rtburchak   usulining
matematik   formulasini   ko'rib   chiqamiz.   Biz   to'rtburchak   elementlardan
foydalangan   holda   tartibsiz   sohalarda   integrallarni   taxmin   qilish   uchun
ishlatiladigan asosiy tushunchalar va tenglamalarni ko'rib chiqamiz.
                       3.1 Integral yaqinlashish
Teo-o‘lchovli   Dekart   koordinata   tizimidagi   D   sohasi   bo‘yicha   aniqlangan
f(x,y)   funksiyani   ko‘rib   chiqaylik.   Maqsad,   f   ning   D   ga   nisbatan   integralini∫	D	f(x,y)
  bilan   belgilangan.,   bu   yerda   d   A   differensial   maydon   elementini
ifodalaydi. 9D sohasi  n ta to'rtburchak elementga diskretlangan Q
i , bu erda i=1,2,....., n.
Har   bir   to'rtburchak   element   Q
i   Dekart   koordinata   tizimidagi   cho'qqilari   bilan
belgilanadi.
                    3.2 Mahalliy kvadraturalarni yaqinlashtirish
Q
i   ning har bir to'rtburchak elementi ustidagi integralni taxmin qilish uchun
mahalliy   sifatida   kvadratura   qoidasi   qo'llaniladi.   Q
i   doirasidagi   kvadratura
nuqtalari   (x
i ,   y
i )   va   mos   keladigan   og'irliklar   wj   bo'lsin.   Q
i   ustidagi   integral
quyidagicha taxmin qilinadi:
                          3.3 Global integratsiya
Bir marta barcha to'rtburchak elementlarning integrallari 
Q
i   taxminiy   hisoblanadi,   hissalar   butun   D   domeni   bo'yicha   umumiy
integralni olish uchun yig'iladi:
Qayerda     w
j (i)
    va   (x
j (i)
  ,   y
j (i)
  )   mos   ravishda   i-chi   to'rtburchak   element   Q
i
uchun og'irliklar va kvadratura nuqtalari.  
                3.4 Xatolarni tahlil qilish
To'rtburchak   usulining   to'g'riligi   bir   nechta   omillarga   bog'liq,   jumladan
kvadratura qoidasini tanlash, kvadratura nuqtalari soni va domenni diskretizatsiya
qilish   sifati.   Xatolarni   tahlil   qilish   usullari,   masalan,   kesish   xatosini   baholash   va
yaqinlashuv   xususiyatlarini   o'rganish,   usulning   aniqligi   va   yaqinlashuv   xatti-
harakatlarini baholash uchun ishlatilishi mumkin.
         10II Bob.  To'rt tomonlama usul dasturini ishlab chiqish.
Ushbu   bobda   tartibsiz   sohalarda   aniq   integrallarni   yaqinlashtirish   uchun
to'rtburchaklar   usuli   dasturini   loyihalash   va   amalga   oshirish   tafsilotlarini
muhokama   qilamiz.   Biz   dasturning   asosiy   komponentlarini,   jumladan,   domen
diskretizatsiyasini,   kvadratura   qoidalarini   amalga   oshirishni   va   dasturiy
ta'minotning umumiy tuzilishini ko'rib chiqamiz.
 Dastur dizayni.
      Amalga   oshirish   tafsilotlariga   sho'ng'ishdan   oldin,   quyidagi   dizayn   jihatlarini
hisobga olish kerak:
                           Modullilik va qayta foydalanish imkoniyati
      Dastur   modullilikni   hisobga   olgan   holda   ishlab   chiqilishi   kerak,   bu   esa   turli
integratsiya   vazifalari   uchun   osongina   moslashtirilishi   mumkin   bo'lgan   qayta
foydalanish mumkin bo'lgan komponentlarga imkon beradi. Modulli dizayn kodni
saqlash, disk raskadrovka va kelajakdagi yaxshilanishlarni osonlashtiradi.
                        Kirishning moslashuvchanligi
      Dastur   integratsiya   domenini   va   integratsiya   qilinadigan   funktsiyani
belgilaydigan   ma'lumotlarni   qabul   qilishi   kerak.   U   foydalanuvchilarga
cho'qqilarning   koordinatalarini   taqdim   etish   yoki   chegara   tenglamalarini   aniqlash
orqali tartibsiz domenlarni belgilash imkonini berishi kerak.
                        Samaradorlik
      Domenni   diskretlashtirish,   kvadratura   qoidalarini   qo'llash   va   global
integratsiyani   boshqarish   uchun   samarali   ma'lumotlar   tuzilmalari   va
algoritmlaridan   foydalanish   kerak.   Hisoblash   samaradorligini   oshirish   uchun
optimallashtirish   usullari   qo'llanilishi   mumkin,  ayniqsa   keng   ko'lamli   integratsiya
vazifalari uchun.
                    Xatolarni qayta ishlash va hisobot berish
   Dastur noto'g'ri kirishlar, raqamli beqarorliklar yoki boshqa ish vaqtidagi xatolar
bilan kurashish uchun ishonchli  xatolarni qayta ishlash mexanizmlarini  o'z ichiga 11olishi kerak. Muammolarni tashxislash va hal qilishda foydalanuvchilarga yordam
berish uchun aniq va ma'lumot beruvchi xato xabarlari taqdim etilishi kerak.
Algoritm.   
            To'rtburchaklar   usuli   dasturining   algoritmik   bajarilishi   tartibsiz   domenlar
bo'yicha aniq integrallarni aniq yaqinlashish uchun juda muhimdir. Ushbu bo'limda
biz dasturning bosqichma-bosqich algoritmini, jumladan domenni diskretlashtirish,
kvadratura qoidalarini qo'llash va global integratsiyani ko'ramiz.
                             Domenni diskretlashtirish
1.Kirish   domeni:   D   integratsiya   sohasini   belgilovchi   ma lumotni   cho qqilarningʼ ʻ
koordinatalarini   ko rsatish   yoki   chegara   tenglamalarini   taqdim   etish   orqali   qabul	
ʻ
qiling.
2.Mesh   Generation:   Kirish   asosida   D   domenini   qoplaydigan   to'rtburchak
elementlar   to'rini   yarating.   Bu   domenni   kichikroq   to'rtburchak   elementlarga
bo'lish, tegishli qamrov va ruxsatni ta'minlashni o'z ichiga oladi.
3.Elementni   identifikatsiyalash:   Keyingi   hisob-kitoblar   davomida   mos   yozuvlar
uchun har bir to'rtburchak elementga noyob identifikatorlarni tayinlang.
                           Kvadratlar qoidasini qo'llash
4.Kadratura   qoidasini   tanlash:   Kerakli   aniqlik  va   samaradorlik  asosida   tegishli
kvadratura qoidasini (masalan, Gauss kvadraturasini) tanlang.
5.Kadratura   nuqtalari   va   vaznlari:   kvadratura   nuqtalarini   ( ??????
i , ??????
j )   va   mos
keladigan og irliklarni aniqlang. 	
ʻ
??????
j  tanlangan kvadratura qoidasi uchun.
6.Mahalliy   yaqinlik:   har   bir   to'rtburchak   element   Q
i   uchun ,   element   ustidagi
integralni taxminan hisoblash uchun kvadratura qoidasini qo'llang:
                       
                      bu erda m - kvadratura nuqtalari soni.
                          Global integratsiya 12Xulosa: butun domen bo'yicha umumiy integralni olish uchun barcha to'rtburchak
elementlarning hissalarini yig'ing:
bu   erda   ??????   -   to'rtburchak   elementlarning   umumiy   soni   va   w
j (i)
    va   (x
j (i)
  ,   y
j (i)
  )   i-
element uchun og'irliklar va kvadratura nuqtalari 
O'z navbatida Q
i .
                                Xatolarni bartaraf etish
         Xatolarni aniqlash: Domen diskretizatsiyasi, kvadratura qoidalarini qo'llash va
global   integratsiya   paytida   xatolarni   aniqlash   va   qayta   ishlash   mexanizmlarini
amalga oshirish.
         Xatolar haqida xabar berish: foydalanuvchilarga muammolarni hal qilishda va
integratsiya   natijalarining   ishonchliligini   ta'minlashda   yo'l-yo'riq   ko'rsatish   uchun
informatsion xato xabarlarini taqdim eting.
  Amalga oshirish.
    Ushbu bo'limda biz tartibsiz domenlar bo'yicha aniq integrallarni yaqinlashtirish
uchun to'rtburchak usul dasturini amalga oshirish tafsilotlarini muhokama qilamiz.
Biz   dasturning   asosiy   komponentlarini   amalga   oshirish   uchun   ishlatiladigan   kod
tuzilishi, ma'lumotlar tuzilmalari va algoritmlarni ko'rib chiqamiz.  
Kod tuzilishi:
#include <iostream>
#include <vector>
using namespace std;
// To'rtburchak elementni ifodalash uchun strukturani aniqlang
struct Tortburch_element {
    int id; // Element uchun noyob identifikator
   // To'rtburchakning uchlarini aniqlang (2D koordinatalarini hisobga olgan holda)
    double x1, y1, x2, y2, x3, y3, x4, y4; 13};
// Domenni to'rtburchak elementlarga diskretlash funktsiyasi
vector<Tortburch_element>   domenni_diskretlash(//   Domenni   to'rtburchak
elementlarga diskretlash funksiyasi* Kirish parametrlari */) {
    // Domenni diskretlashtirish algoritmini amalga oshirish
     // Domenni qamrab oluvchi to'rtburchak elementlarni yarating
     // Har bir elementga noyob identifikatorlarni tayinlash
    vector<Tortburch_element> tortburchak_elementlar;
    // Misol: to'rtburchak elementlarni yaratish uchun kod
      // QuadrilateralElement elementi;
     // element.id = 1;
     // element.x1 = ...;
      // element.y1 = ...;
     // ...
     // to'rtburchak elementlar.push_back(element);
    return ;Tortburch_element
}
int main() {
        //   To'rtburchak   elementlarni   olish   uchun   discretizeDomain   funksiyasini
chaqiring
    vector<QuadrilateralElement> elements = discretizeDomain(/* Input parameters
*/);
    // Yaratilgan to'rtburchak elementlarni qayta ishlash
     // ...
    return 0;
}
  Kvadratchalar qoidasini qo'llash
Kod tuzilishi:
#include <iostream> 14#include <vector>
using namespace std;
// To'rtburchak elementni ifodalash uchun strukturani aniqlang
struct Tortburchak_element {
    int id; // Element uchun noyob identifikator
    // To'rtburchakning uchlarini aniqlang (2D koordinatalarini hisobga olgan holda)
    double x1, y1, x2, y2, x3, y3, x4, y4;
};
//   Har   bir   element   ustida   kvadratchalar   va   taqribiy   integral   qoidasini   qo'llash
funksiyasi
vector<double>   Kvadratlar_qoidasini_qollang(const
vector<Tortburchak_element>& elementlar) {
    vector<double> element_integrallari;
    // Har bir to'rtburchak elementni aylantiring
    for (const auto& element : elementlar) {
       // Kvadratchalar qoidasini amalga oshirish
         // Element ustidagi integralni taxmin qiling va natijani saqlang
        double integral = /* Kvadratlar qoidasidan foydalanib integral hisoblash */;
        element_integrallari.push_back(integral);}
    return element_integrallari;}
int main() {
    // To'rtburchak elementlar allaqachon yaratilgan deb faraz qilamiz
       vector<Tortburchak_element> elementlar; // Yaratilgan to'rtburchak elementlar
bilan to'ldirish
        //   Har   bir   element   ustida   integralni   taxmin   qilish   uchun   kvadratlar   qoidasini
qo'llang
        vector<double>   element_integrallari   =
Kvadratlar_qoidasini_qollang(elementlar);
    // Har bir element uchun taxminiy integrallarni qayta ishlash 15    // ...
    return 0;
}
      Yuqorida   keltirilgan   kod   tuzilmasida   C++   dasturlash   tili   har   bir   to'rtburchak
element ustidagi integralni taxminan hisoblash uchun kvadratlar qoidasini qo'llash
uchun ishlatiladi.  To'rtburchak_element  strukturasi har bir to'rtburchak elementni
ifodalaydi   va   Kvadratlar_qoidasini_qo'llang   funksiyasi   kvadratlar   qoidasi
yordamida   har   bir   element   uchun   integral   yaqinlashishni   hisoblaydi.   Asosiy
funktsiya   to'rtburchaklar   elementlari   bilan   Kvadratlar_qoidasini_qo'lla
funksiyasini   qanday   chaqirishni   va   har   bir   element   uchun   taxminiy   integrallarni
qayta ishlashni ko'rsatadi.
  Global integratsiya
  Kod tuzilishi:
#include <iostream>
#include <vector>
using namespace std;
// To'rtburchak elementni ifodalash uchun strukturani aniqlang
struct Tortburchak_element {
    int id; // Element uchun noyob identifikator
    // To'rtburchakning uchlarini aniqlang (2D koordinatalarini hisobga olgan holda)
    double x1, y1, x2, y2, x3, y3, x4, y4;
};
//   Har   bir   element   ustida   kvadratchalar   va   taqribiy   integral   qoidasini   qo'llash
funksiyasi
vector<double>   Kvadratlar_qoidasini_qollang(const
vector<Tortburchak_element>& elementlar) {
    vector<double> element_integrallari;
    // Har bir to'rtburchak elementni aylantiring
    for (const auto& element : elementlar) { 16        // Kvadratchalar qoidasini amalga oshirish
         // Element ustidagi integralni taxmin qiling va natijani saqlang
        double integral = /* Kvadratlar qoidasidan foydalanib integral hisoblash */;
        element_integrallari.push_back(integral);
    }
    return element integrallari;
}
int main() 
{
    // To'rtburchak elementlar allaqachon yaratilgan deb faraz qilamiz
     vector<Tortburchak_element > elementlar; // Yaratilgan to'rtburchak elementlar
bilan to'ldirish
        //   Har   bir   element   ustida   integralni   taxmin   qilish   uchun   kvadratlar   qoidasini
qo'llang
    vector<double> element_integrallari = Kvadratlar_qoidasini_qollang(elements);
    // Har bir element uchun taxminiy integrallarni qayta ishlash
     // ...
    return 0;
}
          Yuqorida   keltirilgan   kod   tuzilmasida   C++   dasturlash   tili   global   integratsiya
bosqichini amalga oshirish uchun ishlatiladi, bunda umumiy integralni olish uchun
barcha   to'rtburchak   elementlarning   hissalari   yig'iladi.   QuadrilateralElement
strukturasi   har   bir   to'rtburchak   elementni,   shu   jumladan   uning   noyob
identifikatorini,   uchlarini   va   integral   yaqinlashuvini   ifodalaydi.
performGlobalIntegration   funktsiyasi   har   bir   element   bo'ylab   takrorlanadi   va
umumiy   integralni   hisoblash   uchun   ularning   integral   hissalarini   yig'adi.   Asosiy
funksiya   hosil   qilingan   to'rtburchak   elementlar   bilan   performGlobalIntegration
funksiyasini qanday chaqirish va umumiy integralni chiqarishni ko'rsatadi. 17III Bob. Natijalar va tahlillar.  
  Sinov holatlari..   
              Raqamli   integratsiya   uchun   to'rtburchak   usul   dasturining   aniqligi   va
ishonchliligini   ta'minlash   uchun   turli   test   holatlarini   ishlab   chiqish   kerak.   Ushbu
test   holatlari   oddiy   geometrik   shakllar,   murakkab   tartibsiz   domenlar   va   har   xil
xususiyatlarga   ega   funktsiyalarni   o'z   ichiga   olgan   bir   qator   stsenariylarni   qamrab
olishi   kerak.   Quyida   kutilgan   natijalar   bilan   birga   bir   nechta   test   holatlarining
batafsil tavsiflari keltirilgan.
Test ishi 1:  Birlik kvadrat ustidagi integral
Tavsif:
Funktsiyani birlashtirish 
f ( x ,va)=1tomonidan belgilangan birlik kvadrat ustida
0≤x≤1va 0≤va≤1
Kutilayotgan natija ning integrali
f ( x ,va )=1birlik kvadrat ustida bo'lishi kerak1
               Amalga oshirish:
vector<TortburchakElement>birlikKvadratElementlari   =
hududniDiskretlashtirish(/* Birlik kvadrat uchlarini aniqlash */);
for (auto& element : birlikKvadratElementlari) {
    element.integral = birlikKvadratUchunKvadratQoidalariniQollash(element);
}
double natija = globalIntegratsiyaniBajarish(birlikKvadratElementlari);
cout << "Sinov Holati 1 - Kutilgan: 1, Hisoblangan: " << natija << endl;
vector<To'rtburchakElement>birlikKvadratElementlari   =
birlikKvadratHududlariniDiskretlashtirish(/* Birlik kvadrat uchlarini aniqlash */);
for (auto& element : birlikKvadratElementlari) {
    element.integral = birlikKvadratUchunKvadratQoidalariniQo'llash(element);
} 18double natija = globalIntegratsiyaniBajarish(birlikKvadratElementlari);
cout << "Test Holati 1 - Kutilgan: 1, Hisoblangan: " << natija << endl;
    Test ishi 2: To‘g‘ri burchakli uchburchak ustidagi integral
Tavsif: 
     Funktsiyani birlashtirish
f ( x ,va )=x+va  uchlari bo'lgan to'g'ri burchakli uchburchak ustida ( 0 ,0 ),
( 1 ,0 ), va ( 0 ,1 ).
Kutilayotgan natija: 
ning integrali f ( x va )=x+vauchburchak ustida bo'lishi kerak 1/3.
Amalga oshirish:
vector<Tortburchakelement> Togriuchburchakelementlari = domennidiskretlash(/*
To‘g‘ri burchakli uchburchak uchlarini aniqlang*/);
for (auto& element : Togriuchburchakelementlari) {
    element.integral = applyRuleOfSquaresForTriangle(element);
}
double result = GlobalIntegratsiyaniamalgaoshirish(Togriuchburchakelementlari);
cout << "Test ishi 2 - Kutilayotgan: 1/3, Hisoblangan: " << result << endl;
Test ishi 3: Aylana domenidagi integral
Tavsif: 
  Funktsiyani birlashtirish  f ( x ,va )=x 2
 +va 2
 radiusi 1 bo'lgan doiraviy domen bo'ylab markazning koordinatasida joylashgan.
Kutilayotgan natija:  ning integrali f ( x ,va )=x 2
 +va 2
 birlik doira ustida bo'lishi kerak  P
i /2 .
      Amalga oshirish:
vector<TortburchakElement>doiraElementlari   =
doiraHududlariniDiskretlashtirish(/*   Doira   uchlarini   aniqlash   yoki   chegaralar
ishlatish */);
for (auto& element : doiraElementlari) {
    element.integral = doiraUchunKvadratQoidalariniQo'llash(element);
} 19double natija = globalIntegratsiyaniBajarish(doiraElementlari);
out << "Sinov Holati 3 - Kutilgan: pi/2, Hisoblangan: " << natija <<endl;
Test ishi 4: tartibsiz ko‘pburchak ustidagi integral
Tavsif: 
  Funktsiyani birlashtirish
f   (   x   ,va   )=Bu(x   +   y)       ixtiyoriy   cho'qqilar   to'plami   bilan   aniqlangan   tartibsiz
ko'pburchak ustida.
Kutilayotgan natija: 
kutilayotgan   natija   ko‘pburchakning   o‘ziga   xos   cho‘qqilariga   bog‘liq   bo‘ladi.
Ushbu   test   ishi   birinchi   navbatda   dasturning   tartibsiz   domenlarni   boshqarish
qobiliyatini tekshiradi.
Amalga oshirish:
vector<TortburchakElement>   noaniqliTortburchakElementlar   =
noaniqliTortburchakniDiskretlashtirish(/*   Noaniqli   to'rtburchak   uchlarini   aniqlash
*/);
for (auto& element : noaniqliTortburchakElementlar) {
        element.integral   =
noaniqliTortburchakUchunKvadratQoidalariniQollash(element);
}
double natija = globalIntegratsiyaniBajarish(noaniqliTortburchakElementlar);
cout << "Sinov Holati 4 - Hisoblangan: " << natija <<endl;
Test ishi 5: Teshigi bo'lgan domen ustidagi integral
Tavsif: 
Funktsiyani   birlashtirish   f   (   x   ,va   )=sin(x) ⋅ chunki   (   va   )dumaloq   teshikli   kvadrat
domen ustida. Kutilgan natija: 
kutilgan   natija   kvadratning   o'lchamlari   va   teshik   radiusiga   bog'liq   bo'ladi.   Ushbu
test   ishi   dasturning   ichki   chegaralar   bilan   murakkab   geometriyalarni   boshqarish
qobiliyatini tekshiradi.
Amalga oshirish:
#include <iostream> 20#include <vector>
#include <chrono>
using namespace std;
//   To'rtburchakElement   tuzilmasi   va   kerakli   funksiyalar   allaqachon
aniqlangan deb hisoblaymiz
struct TortburchakElement {
    // To'rtburchakElement tuzilmasi uchun zaruriy a'zolar
    double integral;
    // Boshqa kerakli a'zolar...
};
vector<TortburchakElement> teshikdagiHududniDiskretlashtirish() {
    // Teshikdagi hududni diskretlashtirish funksiyasi
    vector<TortburchakElement> elementlar;
    // Diskretlashtirish jarayoni...
    return elementlar;
}
double
teshikdagiHududUchunKvadratQoidalariniQollash(TortburchakElement&
element) {
    // Kvadrat qoidalarini qo'llash funksiyasi
    double integral = 0.0;
    // Integral hisoblash jarayoni...
    return integral;
}
double   globalIntegratsiyaniBajarish(const   ector<TortburchakElement>&
elementlar) {
    // Global integratsiya funksiyasi
    double umumiyIntegral = 0.0;
    for (const auto& element : elementlar) {
        umumiyIntegral += element.integral; 21    }
    return umumiyIntegral;
}
void test() {
        vector<TortburchakElement>   teshikdagiHududElementlar   =
teshikdagiHududniDiskretlashtirish(/*   Teshikdagi   kvadrat   bilan   doira   holati
uchlarini aniqlash */);
    for (auto& element : teshikdagiHududElementlar) {
                element.integral   =
teshikdagiHududUchunKvadratQoidalariniQollash(element);
    }
    double natija = globalIntegratsiyaniBajarish(teshikdagiHududElementlar);
    cout << "Sinov Holati 5 - Hisoblangan: " << natija << endl;
}
int main() {
    test();
    return 0;
}
Yuqoridagi   testlarni   5   chigacha   qisman   korib   o’tdik.   5   chi   testda   esa   dasturni
to’liq qismini kordik.
          Yuqorida   keltirilgan   test   holatlari   oddiydan   murakkabgacha   bo'lgan
stsenariylarni   qamrab   oladi,   bu   to'rtburchak   usul   dasturining   aniqligi   va
mustahkamligi uchun sinchkovlik bilan sinovdan o'tkazilishini ta'minlaydi. Ushbu
test   holatlarida   dasturning   ishlashini   tekshirish   orqali   biz   uning   turli   tartibsiz
domenlarda   integrallarni   yaqinlashtirish   uchun   ishonchliligini   tasdiqlashimiz
mumkin.   Keyingi   bo'limda   ushbu   test   holatlarini   bajarish   natijasida   olingan
natijalar   va   dastur   samaradorligini   oshirish   uchun   zaruriy   tuzatishlar   muhokama
qilinadi. 22  Aniqlik va konvergentsiya.
                  Raqamli   integratsiya   uchun   to'rtburchak   usul   dasturi   ham   to'g'ri,   ham
konvergent bo'lishini ta'minlash uchun uning turli test holatlari bo'yicha ishlashini
tahlil   qilish   juda   muhimdir.   Ushbu   bo'limda   ushbu   baholash   natijalari   bilan   bir
qatorda   aniqlik   va   konvergentsiyani   baholash   metodologiyalari   muhokama
qilinadi.
                                       Aniqlikni baholash
            Aniqlikni   baholash   to'rtburchak   usul   dasturidan   olingan   raqamli   natijalarni
ma'lum   bo'lgan   analitik   echimlar   yoki   yuqori   aniqlikdagi   sonli   taxminlar   bilan
solishtirishni   o'z   ichiga   oladi.   Xato   odatda   mutlaq   xato   va   nisbiy   xato   kabi
ko'rsatkichlar yordamida aniqlanadi.
Xato ko'rsatkichlari:
Mutlaqo xato:  Mutla xato= I∣
aniq  – I
taxminan ∣
Nisbiy xato:  Nisbiy xato=  I
∣
aniq  – I
taxminan   I	∣
aniq
Qayerda   Ianiq   integralnin   aniq   qiymamti   va   Itaxminan   dasturdan   olingan
taxmininy  qiymatdir.
1-test uchun hiosblash misoloi:
Sinov ishi 1: Integratsiya f(x,va)=1birlik kvadrat ustida 0≤x≤1 va 0≤va≤1.
Aniq integral: Ianiq=1
Taxminny integral: Itaxminiy(dastur tomonidan hiosblangan )
double aniqliIntegral = 1.0;
double   hisoblanganIntegral   =
performGlobalIntegration(unitSquareElements);
double absolutXato = fabs(aniqliIntegral - hisoblanganIntegral);
double nisbiyXato = absolutXato / fabs(aniqliIntegral);
cout << "Sinov Holati 1 - Absolut Xato: " << absolutXato << ", Nisbiy Xato: "
<< nisbiyXato <<endl; 23                                     Konvergentsiya tahlili
     Konvergentsiya tahlili domenning diskretizatsiyasi qanchalik nozik bo'lsa, sonli
yaqinlashishning   aniqligi   qanday   yaxshilanishini   tekshiradi.   To'rtburchak
elementlarning   o'lchami   kamayishi   (ya'ni,   to'rning   tozalanganligi   sababli)   xatolik
kamaysa, usul konvergent hisoblanadi.
Konvergentsiyani tahlil qilish bosqichlari:
1.Turli xil aniqlikdagi meshlarni yarating: 
Domenning turli darajadagi nozikliklari bilan bir nechta diskretizatsiyasini yarating
(masalan, nozik va qo'polroq to'rlar).
2.Har bir to'r uchun integrallarni hisoblash: 
har bir tarmoq o'lchamlari uchun integralni hisoblash uchun to'rtburchaklar usulini
qo'llang.
3 . Plot Error vs. Mesh Size:  
    Xatoni   (mutlaq   yoki   nisbiy)   to‘rtburchak   elementlarning   xarakterli   o‘lchamiga
(masalan, maksimal yon uzunligi yoki o‘rtacha maydon) nisbatan chizing.
Konvergentsiya tahlilini amalga oshirishga misol:
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
struct Tortburchakelement{    };
vector<Tortburchakelement>   MeshSizebilandomennidiskretlash(double
meshSize);
double performGlobalIntegration(const vector<Tortburchakelement>& elements);
int main() {
    // Aniq integrallarni aniqlash
    double aniqintegral = 1.0;
    // Turkumlar o'lchami uchun vector
    vector<double> meshSizes = {0.1, 0.05, 0.01}; 24    // Xatoliklar uchun vector
    vector<double> xatolar;
    for (double meshSize : meshSizes) {
        // Berilgan turkumlar o'lchami uchun to'rtburchak elementlarini yaratish
                vector<Tortburchakelement>   elementlar   =
MeshSizebilandomennidiskretlash(meshSize);
        // Kvadrat usuli yordamida integrallarni hisoblash
        double hisoblanganintegral = GlobalIntegratsiyaniamalgaoshirish(elementlar);
        // Xatolikni hisoblash
        double mutlaqxato
        xato = fabs(aniqintegral - hisoblanganintegral);
        xatolar.push_back(mutlaqxato);
    }
        //   Xatoliklar   va   turkumlar   o'lchamlarini   plot   qilish   (bu   dastur   kutubxona   yoki
dastur orqali amalga oshirilishi mumkin)
    return 0;}
          To'rtburchak   usul   dasturining   to'g'riligi   va   yaqinligini   baholash   xato
ko'rsatkichlarini   baholash   va   yaqinlashuv   tahlilini   o'tkazishni   o'z   ichiga   oladi.
Ushbu   baholashlarni   o'tkazish   orqali   biz   dastur   tartibsiz   domenlar   bo'yicha
integrallarning ishonchli va to'g'ri sonli taxminlarini taqdim etishini tasdiqlashimiz
mumkin.   Ushbu   tahlillar   natijalari,   shuningdek,   dastur   samaradorligini   yanada
oshirish   uchun   takomillashtirish   va   optimallashtirish   uchun   har   qanday   potentsial
sohalarni aniqlashga yordam beradi.
  Faoliyatni baholash..
          To'rtburchak   usul   dasturining   hisoblash   samaradorligi   turli   xil   o'lchamdagi
muammolar   uchun   ish   vaqtini   o'lchash   yo'li   bilan   baholanadi.   To'rtburchak
usulning   afzalliklari   va   cheklovlarini   ta'kidlash   uchun   ishlash   boshqa   raqamli
integratsiya usullari bilan taqqoslanadi.
                            Ish faoliyatini baholash metodologiyalari 251. Hisoblash vaqti: 
Turli   domenlar  va   funktsiyalarda   integratsiyani   amalga  oshirish  uchun   sarflangan
vaqtni   o'lchang.   Bunga   vaqt   domenini   diskretlashtirish,   kvadratura   qoidalarini
qo'llash va global integratsiya kiradi.
2. Masshtablilik: 
to'rtburchak   elementlarning   soni   va   integralning   murakkabligi   kabi   muammoning
o'lchami bilan dasturning ishlashi qanday o'lchanishini baholang.
3. Xotiradan foydalanish: 
Dasturning xotira sarfini, ayniqsa nozik diskretizatsiya bilan bog'liq keng ko'lamli
muammolar uchun hisoblang.
                                     Hisoblash vaqti
Muayyan sohada funktsiyani birlashtirish uchun hisoblash vaqti dastur ishlashining
muhim ko'rsatkichidir. Biz har bir asosiy bosqichga sarflangan vaqtni o'lchashimiz
mumkin: diskretizatsiya, kvadratura qoidalarini qo'llash va global integratsiya.
Amalga oshirish misoli
#include <iostream>
#include <vector>
#include <chrono> // Vaqt o'lchash uchun
using namespacestd;
//   To'rtburchakelement   strukturasi   va   kerakli   funksiyalar   allaqachon   aniqlangan
deb hisoblaymiz
int main() {
    // Integratsiya domeni va funksiyasini aniqlash
    vector<Tortburchakelement> elementlar; // Domen aniqlanishi bilan to'ldiriladi
    // Domenni diskretlashtirish uchun vaqtni o'lchash
    auto boshlanish = chrono::high_resolution_clock::now();
    elementlar = diskretlashtirishDomeni(/* Kiritish parametrlari */);
    auto tugash = chrono::high_resolution_clock::now();
    chrono::duration<double> diskretlashtirishVaqti = tugash - boshlanish; 26    cout << "Diskretlashtirish vaqti: " << diskretlashtirishVaqti.count() << " soniya"
<<endl;
    // Kvadrat qoidani qo'llash uchun vaqtni o'lchash
    boshlanish = chrono::high_resolution_clock::now();
    for (auto& element : elementlar) {
        element.integral = kvadratQoidaniQollash(element);
    }
    tugash = chrono::high_resolution_clock::now();
    chrono::duration<double> kvadratVaqti = tugash - boshlanish;
       cout << "Kvadrat qoida qo'llash vaqti: " << kvadratVaqti.count() << " soniya"
<< endl;
    // Global integratsiya uchun vaqtni o'lchash
    boshlanish = chrono::high_resolution_clock::now();
    double umumiyIntegral = globalIntegratsiyaniBajaring(elementlar);
    tugash = chrono::high_resolution_clock::now();
    chrono::duration<double> globalIntegratsiyaVaqti = tugash - boshlanish;
        cout   <<   "Global   integratsiya   vaqti:   "   <<   globalIntegratsiyaVaqti.count()   <<   "
soniya" << endl;
    return 0;
}
                              Masshtablilik
          Masshtablilikni   baholash   uchun   dasturning   ishlashi   muammo   o'lchamlarini
oshirish bilan sinovdan o'tkazilishi kerak. Bu to'rni tozalash va hisoblash vaqti va
aniqligiga ta'sirini baholash orqali to'rtburchak elementlarning sonini ko'paytirishni
o'z ichiga oladi.
Masshtablilik testini amalga oshirishga misol:
#include <iostream>
#include <vector>
#include <chrono>
using namespace std; 27// To'rtburchakElement tuzilmasi va kerakli funksiyalar allaqachon aniqlangan deb
hisoblaymiz
struct TortburchakElement {
    // To'rtburchakElement tuzilmasi uchun zaruriy a'zolar
    double integral;
    // Boshqa kerakli a'zolar...
};
vector<TortburchakElement> hududniDiskretlashtirish() {
    // Hududni diskretlashtirish funksiyasi
    vector<TortburchakElement> elementlar;
    // Diskretlashtirish jarayoni...
    return elementlar;
}
double   birlikKvadratUchunKvadratQoidalariniQollash(TortburchakElement&
element) {
    // Kvadrat qoidalarini qo'llash funksiyasi
    double integral = 0.0;
    // Integral hisoblash jarayoni...
    return integral;
}
double   globalIntegratsiyaniBajarish(const   vector<TortburchakElement>&
elementlar) {
    // Global integratsiya funksiyasi
    double umumiyIntegral = 0.0;
    for (const auto& element : elementlar) {
        umumiyIntegral += element.integral;
    }
    return umumiyIntegral;
}
void test() { 28        vector<TortburchakElement>   birlikKvadratElementlari   =
hududniDiskretlashtirish(/* Birlik kvadrat uchlarini aniqlash */);
    for (auto& element : birlikKvadratElementlari) {
        element.integral = birlikKvadratUchunKvadratQoidalariniQollash(element);
    }
    double natija = globalIntegratsiyaniBajarish(birlikKvadratElementlari);
    cout << "Sinov Holati 1 - Kutilgan: 1, Hisoblangan: " << natija << endl;
}
int main() {
    test();
    return 0;
}
                                   Xotiradan foydalanish
                 Xotiradan  foydalanish,  ayniqsa   katta hajmdagi   muammolar   uchun  muhim
omil   hisoblanadi.   Xotira   iste'molini   monitoring   qilish   dasturning   murakkab
integratsiyalarni   ortiqcha  resurslardan   foydalanmasdan  boshqarishini   ta'minlashga
yordam beradi.
     Xotiradan foydalanishni monitoring qilish uchun misol: 
Batafsil   xotira   profili   odatda   maxsus   vositalarni   talab   qilsa-da,   asosiy   monitoring
tizim   qo'ng'iroqlari   yoki   tashqi   kutubxonalar   yordamida   amalga   oshirilishi
mumkin. Bu erda tizim ma'lumotlaridan foydalanishning oddiy usuli.
#include <iostream>
#include <vector>
#include <chrono>
using namespace std;
// To'rtburchakElement tuzilmasi va kerakli funksiyalar allaqachon aniqlangan deb
hisoblaymiz
void xotiraFoydalanishniKuzatish() {
    // Bu haqiqiy xotira foydalanishni kuzatish uchun joy ajratish 29    // Amalda, platformaga xos vositalar yoki kutubxonalarni foydalaning, masalan,
Python'da psutil yoki C++da tizim chaqiruvlari
}
void xotiraFoydalanishTesti() {
    // Integratsiya hududini va funksiyani aniqlash
    vector<TortburchakElement> elementlar; // Hudud ta'rifi bilan toldirish
    // Integratsiya oldidan xotirani kuzatish
    xotiraFoydalanishniKuzatish();
    // Integratsiyani bajarish
    elementlar = hududniDiskretlashtirish(/* Kirish parametrlari */);
    for (auto& element : elementlar) {
        element.integral = kvadratQoidalariniQollash(element);
    }
    double umumiyIntegral = globalIntegratsiyaniBajarish(elementlar);
    // Integratsiyadan keyin xotirani kuzatish
    xotiraFoydalanishniKuzatish();
}
int main() {
    xotiraFoydalanishTesti();
    return 0;
}
            To'rtburchak   usul   dasturining   ishlashini   baholash   hisoblash   vaqtini,
miqyoslilikni   va   xotiradan   foydalanishni   baholashni   o'z   ichiga   oladi.   Ushbu
jihatlarni sinchiklab baholab, biz dasturning nafaqat to g ri va ishonchli, balki turliʻ ʻ
integratsiya   vazifalari   uchun   samarali   va   kengaytirilishiga   ishonch   hosil   qilamiz.
Ushbu   keng   qamrovli   ish   faoliyatini   baholash   optimallashtirish   sohalarini
aniqlashga   yordam   beradi   va   dastur   katta   va   murakkab   domenlarni   samarali
boshqarishini ta'minlaydi. 30 XULOSA
        Xulosa   qilib   aytadigan   bo'lsak,   ushbu   kurs   ishida   aniq   integrallarni   taqribiy
hisoblash uchun to'g'ri to'rtburchaklar usuli asosida dastur ishlab chiqildi. Bu usul
oddiy va samarali bo'lib, matematik integrallarni hisoblashda keng qo'llaniladi.
Kurs ishining asosiy natijalari quyidagilardan iborat:
1. Nazariy Asoslar: 
To'g'ri   to'rtburchaklar   usulining   matematik   asoslari   o'rganildi.   Bu   usulda
integral hisoblash uchun funksiya oraliq intervallar bo'yicha teng qismlarga
bo'linadi va har bir qismda funksiya qiymati bo'yicha to'rtburchaklar yuzasi
hisoblanadi.
2. Algoritmning Tavsifi:
  To'g'ri to'rtburchaklar usulining algoritmi batafsil tasvirlandi. Algoritmning
har   bir   bosqichi,   ya'ni   oraliq   intervallarni   aniqlash,   funksiya   qiymatlarini
hisoblash va umumiy natijani yig'ish jarayonlari tushuntirildi.
3. Dasturiy Ta'minot:
  Mazkur usulni amalga oshirish uchun dastur ishlab chiqildi. Dastur Python
dasturlash tilida yozildi va foydalanuvchi kiritgan funksiya, boshlang'ich va
oxirgi chegara hamda oraliq soni bo'yicha integralni taqribiy hisoblaydi.
4. Sinovlar va Natijalar: 
Dastur   bir   qator   test   funksiyalar   bilan   sinovdan   o'tkazildi.   Sinov   natijalari
dasturning   yuqori   aniqlikda   ishlashini   ko'rsatdi,   ayniqsa   kichik   oraliqlarda
hisoblashda yuqori aniqlikka erishildi. 315. Xulosalar va Takliflar:
  To'g'ri   to'rtburchaklar   usuli   matematik   integrallarni   taqribiy   hisoblashda
oddiy   va   samarali   usul   ekanligi   isbotlandi.   Kelgusida   dasturga   boshqa
taqribiy   hisoblash   usullarini   (masalan,   trapetsiya   yoki   Simpson   usullari)
qo'shish, hamda dastur interfeysini takomillashtirish taklif etildi.
Kurs   ishi   davomida   amalga   oshirilgan   tadqiqot   va   dasturiy   ta'minot   matematik
integrallarni   taqribiy   hisoblashda   foydalanish   mumkin   bo'lgan   ishonchli   vositani
taqdim   etdi.   Bu   dastur   nafaqat   ta'lim   jarayonida,   balki   ilmiy   tadqiqotlarda   ham
qo'llanishi   mumkin.Ushbu   loyihada   ishlab   chiqilgan   to'rtburchak   usul   dasturi
tartibsiz   domenlar   bo'yicha   integrallarni   yaqinlashtirish   uchun   moslashuvchan,
aniq   va   samarali   vositani   taklif   qiluvchi   raqamli   integratsiya   texnikasi   haqida
yetarlicha   ma’lumot   berdim.   Keng   qamrovli   sinov   va   samaradorlikni   baholash
dasturning   ishonchliligini   va   turli   ilmiy   va   muhandislik   sohalarida   amaliy
qo'llanilishiga   tayyorligini   ta'minlaydi.   Qo'shimcha   yBerilgan   ma’lumotlar   va
optimallashtirishlar   ushbu   asosga   asoslanib,   raqamli   integratsiya   bilan   erishish
mumkin bo'lgan masalalarni yechishga yordam beradi.
                 32                            ADABIYOTLAR RO’YXATI :
1.  Numerical Methods for Engineers by Steven C. Chapra, Raymond P. Canale
2.  Numerical   Recipes   by   William   H.   Press,   Saul   A.   Teukolsky,   William   T.
Vetterling, Brian P. Flannery.
3. C The Complete Reference Schildt, McGraw Hill Education (Gna)UZ
4. C++ and Object Oriented Programming - Jana, PHI Learning
5. Object Oriented Programming with C++ - Rajiv Sahay, Oxford
6.   Numerical   Analysis   by   Richard   L.   Burden,   J.   Douglas   Faires   Btype_id
%5D=1&Book%5Bcategory_id%5D=53&Book%5Btitle%5D=&Book
%5Bdescription%5D=&Book%5Blanguage_id%5D=&yt0=Qidiruv

Aniq integrallarni taqribiy hisoblash. To'g'ri to'rtburchak usulini dasturini ishlab chiqish .” REJA: KIRISH ............................................................................................................ 3 I Bob. Nazariy ma'lumotlar ............................................................................. 4 1.1. Raqamli integratsiya ............................................................................. 4 2. To'rtburchaklar usuli. ............................................................................... 6 2.4.Matematik formula. ............................................................................... 8 II Bob. To'rt tomonlama usul dasturini ishlab chiqish. ................................. 10 Dastur dizayni. .......................................................................................... 10 Algoritm. ................................................................................................... 11 Amalga oshirish. ....................................................................................... 12 III Bob. Natijalar va tahlillar. ........................................................................ 17 Sinov holatlari.. ........................................................................................ 17 Aniqlik va konvergentsiya. ....................................................................... 22 Faoliyatni baholash.. ................................................................................. 24 XULOSA ....................................................................................................... 30 FOYDALANILGAN ADABIYOTLAR RO’YXATI

2FOYDALANILGAN ADABIYOTLAR RO’YXATI

3 KIRISH Raqamli integratsiya hisoblash matematikasining asosiy usuli bo'lib, aniq integrallarning qiymatini taxmin qilish uchun ishlatiladi. Bunga erishish uchun turli usullar ishlab chiqilgan, ularning har biri o'zining afzalliklari va cheklovlariga ega. Ushbu usullar orasida to'rtburchaklar usuli tartibsiz sohalar bo'yicha integrallarni yaqinlashtirishda soddaligi va samaradorligi bilan ajralib turadi. Ushbu kurs ishi aniq integrallarni taxminiy hisoblash uchun to'rtburchaklar usuli dasturini ishlab chiqish va amalga oshirishni o'rganadi. Maqola uchta bobdan iborat: (1) Nazariy ma'lumot, (2) To'rt tomonlama metod dasturini ishlab chiqish va (3) Natijalar va tahlil. Ushbu kurs ishining maqsadi aniq integrallarni yaqinlashtirishning to'rtburchaklar usulini o'rganishdir. O'rta nuqta yoki Rieman yig'indisi usuli sifatida ham tanilgan bu usul eng oddiy sonli integratsiya usullaridan biridir. Kurs ishi quyidagi jihatlarni qamrab oladi: Nazariy asos: To'rtburchaklar usulining matematik formulasi va tamoyillarini tushunish. Implementation: To'rtburchak usulni amalga oshirish uchun kompyuter dasturini ishlab chiqish. Ilova: To‘rtburchak usuldan foydalanishni misollar bilan ko‘rsatish va uning aniqligi va cheklovlarini muhokama qilish.

4I Bob. Nazariy ma'lumotlar 1.1. Raqamli integratsiya Raqamli integratsiya raqamli tahlilning aniq integrallar qiymatini yaqinlashtirishga qaratilgan bo'limi bo'lib, ayniqsa analitik yechimni olish qiyin yoki imkonsiz bo'lganda. Asosiy maqsad funktsiyaning integralini ma'lum oraliq yoki soha bo'yicha yuqori aniqlik bilan baholashdir. Yopiq [a,b] oraliqda aniqlangan ?????? ( ?????? ) (x) funksiya berilgan bo lsa, a dan ʻ ?????? gacha bo lgan aniq integrali quyidagicha ifodalanadi: ʻ Ko'pgina amaliy stsenariylarda bu integralni analitik tarzda hisoblash mumkin emas. Raqamli integratsiya usullari ushbu integralni intervalning belgilangan nuqtalarida funksiya qiymatlarining chekli yig'indisidan foydalangan holda taxmin qiladi. 1.2 Umumiy usullar Raqamli integratsiyaning bir necha usullari mavjud bo'lib, ularning har biri integralni yaqinlashish uchun o'ziga xos yondashuvga ega. Eng ko'p ishlatiladigan usullardan ba'zilari: Trapezoidal qoida: Trapetsiya qoidasi [a,b] oralig‘ini teng kenglikdagi ?????? subintervallarga bo‘lish va egri chiziq ostidagi maydonni trapetsiya qatori sifatida yaqinlashtirish orqali integralga yaqinlashadi. Integral quyidagicha taxmin qilinadi: qayerda

5 Simpson qoidasi: Simpson qoidasi parabolalarni funktsiya segmentlariga moslash orqali aniqroq yaqinlashishni ta'minlaydi. Bunga erishish uchun u juft sonli subintervallardan foydalanadi. Taxminan quyidagicha ifodalanadi: Qayerda Gauss kvadrati: Gauss kvadraturasi - bu yaqinlashish uchun nuqta va og'irliklarni optimal tanlash orqali kamroq funktsiyalarni baholash bilan yuqori aniqlikni ta'minlaydigan kuchli usul. Integral quyidagicha taxmin qilinadi: bu yerda x i ortogonal ko phadlarning ildizlari (masalan, Legendreʻ ko phadlari) va ʻ w i mos keladigan og irliklardir. ʻ 1.3 Yuqori o'lchovli integratsiya Bir nechta o'zgaruvchining funktsiyalari uchun raqamli integratsiya tushunchasi yuqori o'lchamlarga tarqaladi. D sohasi bo‘yicha aniqlangan f(x,y) funksiya berilgan bo‘lsa, qo‘sh integral: Yuqori o'lchamli integratsiyaning umumiy usullariga quyidagilar kiradi: Monte-Karlo integratsiyasi: Monte-Karlo usullari integralga yaqinlashish uchun tasodifiy tanlab olishdan foydalanadi. Ushbu usul, ayniqsa, an'anaviy usullarni hisoblash mumkin bo'lmagan yuqori o'lchamli integrallar uchun foydalidir.