logo

1-mavzu (1)

Yuklangan vaqt:

08.08.2023

Ko'chirishlar soni:

0

Hajmi:

5117.5 KB
Ma'ruza   1.
Kirish.   Kompyut е r   mat е matika   tizimi   Merkury,   Maple,   Mathematika,
Mat с ad   ,   Matlab   tizimini   paydo   bo’lish   tarixi.   MATLAB   tizimini
vazifalari   va   imkoniyatlari.   Sist е mani   k е ngaytmasi.   Yordam   tizimi.
Reja:
1. AMDP   faniga   kirish.Kompyut е r   mat е matika   Merkury,   
Maple,   Mathematika,         Mat с ad   ,   Matlab   tizimini   paydo   
bo’lish   tarixi;
2. MATLAB   tizimini   vazifalari   va   imkoniyatlari;
3. Tizim   k е ngaytmasi.Yordam   tizimi.
4. Matlabdagi   oddiy   hisoblashlar,   tizim   o’zgaruvchilari   va   
konstantalar.
1.AMDP       faniga       kirish .       Kompyut е r       mat е matika       tizimi-       Merkury,
Maple,   Mathematika,         Mat с ad   ,   Matlab   tizimini   paydo   bo’lish   tarixi.
Bugungi       kunda       fan       texnika       olamida       murakkab       bo’lgan       masalalarni,
vazifalarni       yechish       uchun       turli       xil       dasturlash       tillari       va       vositalardan
foydalaniladi.       Hisoblash       jarayonlarida       bir       qator       doimiy       takrorlanuvchi
standart       jarayonlar       alohida       paket       deb       ataluvchi       maxsus       dasturlar
tarkibiga       kiritiladi.       Dasturlar       paketi       o’z       navbatida       obyektli       modelni
vujudga       keltiradi.       Amaliy       masalalar       bir       nechta       paketlarga       bo’linib,
kompyuter       algebrasi       deb       ataluvchi       bir       necha       dasturiy       ta’minotlar
tarkibiga       kiritilgan.       Bularga       Merkury,       Maple,       Mathematika,       Mat с ad,
Matlab     kabi     dasturlar     kiradi.     Bu     dasturlarning     har     biri     o’z     kamchilik
va   yutuqlari   bilan   alohida   o’rganib   chiqishga   arziydi.   Matlab   dasturi   70-
yillar      oxirida     Moler      tomonidan     sodda      hisoblash      jarayonlarini      bajarish
uchun       yaratilgan.       U       asosan       3       avlod       EHM       da       ishlash       uchun
mo’ljallangan       edi.       80-yillar       o’rtalariga       kelib       Little       Mathworks
kompaniyasi       xodimi       tomonidan             Matlabning       4-avlod       EHM       ga
mo’ljallangan     PC     Matlab     versiyasi      ishlab     chiqildi.     Ushbu      versiyaning
oldingi       versiya       bilan       o’xshash       jihatlari       ko’p       bo’lib,       bir       nechta
matematik   paketlargina   oldingi   versiyadan   farqlab   turadi.   Bugungi   kunda
zamonaviy     kompyuterlarda     Matlabning     4,5,6     va     7     versiyalarni     ko’rish
mumkin.       4-versiyada       Matlabning       dastlabki       versiyalarni       xususiyatlari
saqlanib     qolgan.     5-versiya     tarkibida     ilk     bor     grafik     muhit     ishchi     stoli
yaratilgan.   Shu   bilan   birga   Matlabning   5-versiyasida   16   bit   va   24   bitli
RGB     ranglar     bilan     ishlash,     yuqori     o’lchamli     matritsalar     bilan     ishlash,
fazoviy     figuralarni     chizish      faqat      sonlar      bilan     emas,     balki      matematik
formulalar     bilan     ishlash     imkoniyatlari     kiritilgan.     Matlabning     6-versiyasi
bu       dastur       rivojining       eng       asosiy       cho’qqilardan       biri       hisoblanadi.       5-
versiyaga       qo’shimcha       ravishda       boshqa       dasturlash       tillariga       eksport       va import      murakkab     bo’lgan     jarayonlar     matematik     modelni     grafika     bilan
ishlash,       boshqa       kompyuter       algebrasi       dasturlar       bilan       moslasha       olish
jarayonlari   qo’shimcha   sifatida   kiritilgan.
Matlab       dasturiy       ta’minot       o’rnatish       jarayoni       boshqa       dasturlardan
farqlanmaydi.   Matlab   dasturi   ishga   tushirilganda   unda   asosan   3   ta   oyna
ko’rinadi:
                                                                                                                                     
Tarix                                                   Funksiya                         Ayni            
                     Buyruqlar
oynasi                                       chiqarish   satri                                  paytdagi   
                           oynasi                                       
            katalog
Ishchi
qism
1-rasm.   Matlab      tizimini   ishga   tushgandan   keying   ishchi   oynasi
1.Buyruqlar   oynasi    (Command   Window);
2.Brouzerning   ishchi   qismi    (Workspace   Browser);
3.Massiv   muharriri    (Array   Editor);
4.Buyruqlar   tarixi   oynasi    (Command   History);
5.Ayni   vaqtdagi   katalog   brouzeri    (Current   Directory   Browser);     6.Start   tugmasi    (Start);    
7.Brouzer   so’rovnomasi    (Help   Browser);    
8.Muharrir    (Editor/Debugger);    
9.Sharxlovchi (Profiler).                               
 
Asosiy       buyruqlar       oynasi       MATLAB       dagi       barcha       buyruqlarni
paketlarni   va   kutubxonalani   e’lon   qilish   oynasi   hisoblanadi.
O’zgaruvchilar       oynasi       dastur       tarkibida       e’lon       qilingan
o’zgaruvchilarni   daraxt   ko’rinishida   ifodalab   boradi.   
Buyruqlar       tarixi       oynasida       esa       dasturda       bajarilayotgan       buyruqlar
ketma-ketligi   saqlanib   qoladi.
Matlabda       sеans       ishi       tushunchasi       sеssiya       (session)       dеb
yuritiladi,   ya'ni   foydalanuvchi   ayni   vaqtda   foydalanayotgan   xujjat   –   bu
sеssiyadir.     Unda     kiritish-chi q arish     satrlari     va     xatoliklar      h a q ida     axborot
joylashgan       b o’ ladi.       Matlab       sеssiyaga       kiruvchi       barcha       o’zgaruvchi       va
funktsiyalar   qiymatlari   xotiraning   ishchi   qismida   joylashgan   bo’ladi.   Save
(sa q lash)       komandasi       yordamida       ularni       (matlab.mat)       –       da       sa q lash
mumkin.     Load     (yuklash)     komandasi      esa     ma'lumotlarni     diskdan     ishchi
sohaga       kiritish       imkonini       bеradi.       Diary       (kundalik)       komandasi       orqali
ma'lumotlarni   ayrim   qismlarini   kundalik   ko’rinishida   saqlash   mumkin.
Buyru q lar       oynasini       bosh q arish       komandalaridan       eng       mu h imlarini
kеltiramiz:   
-     clc     –     ekranni     tozalaydi      va     kursorni     bo’sh     ekranning     yuqori
chap   qismiga   joylashtiradi;   
-   home   –   kursorni   ekranning   yu q ori   chap    q ismiga    q aytaradi.
Jadal       su’ratlar       bilan       rivojlanib       borayotgan       kompyutеrlashgan
matеmatik      tizimlar      (KMT),      ayniqsa,      sonli       hisoblashlarga       yo’naltirilgan
tizimlar       orasida       MATLAB       matritsali       matеmatik      tizim       alohida      ajralib
turadi.   MATLAB   tizimini   tashkil   qiluvchi   pakеtlar   soni   ko’pligi   uning
juda      ko’plab       soha      masalalarini       hal       qilishga      joriy      etish       imkoniyatini
bеradi.     Hozirgi      kunga     kеlib     Matlab      tizimi      zamonaviy     matеmatik     va
ilmiy-tеxnikaviy   dasturiy   ta'minoti   sohasida   dеyarli   jahon   standarti   bo’lib
qoldi.
2.MATLAB       tizimini       vazifalari       va       imkoniyatlari.       Matlab       –
mat е matik   va   ilmiy-t е xnik   xisoblashlarni   amalga   oshirishga   mo’ljallangan
eng     qadimiy,     uzoq     vaqtlar     davomida     ishlab     chiqilgan     va     t е kshirilgan,
avtomatlashtirilgan       tizimlardan       biri       bo’lib,       u       matritsa       va       matritsaviy
amallarni   k е ngaytirilgan   talqini   ustiga   qurilgan.   Mazkur   tushuncha   uning
nomida       o’z       aksini       topgan,       ya'ni       MATLAB       –       matrix       laboratory       –
matritsali    laboratoriya.    Ma'lumki,    juda    ko’plab    dasturlar    va    ular    ustida
amallar       bajarish       sikllar       orqali       amalga       oshiriladi.       Bu       esa       dasturni
ishlashini       s е kinlashtiradi       va       ba'zi       bir       amallarni       bajarishni       dasturlash
tillarida   ko’p   o’lchamli,   xususan,   ikki   o’lchamli,   ya'ni   matritsalarni   e'lon
qilishni   murakkablashtiradi.   Matlabda   asosiy   ob' е kt   sifatida   matritsalardan
foydalanish   sikllar   sonini   k е skin   kamaytiradi.    Matlab   tizimini   yaratishdagi   asosiy   maqsadlardan   biri   bo’lib,   t е xnik
va   mat е matik   xisoblashlarga   yo’naltirilgan,   foydalanuvchi   uchun   qulay   va
sonli   usullarni   amalga   oshirish   uchun   tadbiq   etib   k е linayotgan   an'anaviy
dasturlash       tillari       imkoniyatlaridan       ustunroq             dasturlash       tilini       yaratish
xisoblanadi.     Mazkur      tizimni     yaratishda     xisoblashlar      t е zligini     oshirishga
hamda     tizimning     turli     xil     masalalarini     hal     qilishga     moslashuvchanligiga
katta   e'tibor   qaratilgan.
Matlab     tizimi     dasturlashning     uchta     asosiy     konts е psiyasini      amalga
oshiradi:
a)modullarni,       ya'ni       prots е dura       va       funktsiyalarni       yaratishga
asoslangan   prots е dura   modulli   dasturlash;   
          b)ob' е ktga       yo’naltirilgan       dasturlash       (ayniqsa,       tizimning       grafikli
vositalarini   joriy   qilish   ahamiyati);
c)foydalanuvchining       grafikli       int е rf е ysini       yaratishga       mo’ljallangan
vizual-yo’naltirilgan   dasturlash   (GUI-Graphics   User   Interface).
Umuman       olganda,       Matlab       dasturlash       tili       int е rpr е tatorlar       sinfiga
kiradi.   D е mak,   bundan   k е lib   chiqadiki,   tizimning   har   bir   buyrug’i   nomi
bo’yicha     aniqlanadi     va     zudlik     bilan     joriy     qilinadi.     Bu     esa           ixtiyoriy
dasturiy   kodni   qism-qism   bo’yicha   t е kshirishni   osonlashtiradi.   
Tizimning       asosiy       imkoniyatlardan       biri       bu       uning       ochiqligi       va
k е ngaytirish   mumkinligidir.   
Tizimning    juda    ko’plab    buyruq    va    funksiyalari    matnli    formatdagi
m-fayl     (k е ngaytmasi     .m)     va      C/C++      fayllari     ko’rinishida     bo’lib,     barcha
fayllarni   modifikatsiya   qilish   mumkin.         
MATLAB       tizimi       shunday       ishlab       chiqilganki,       hisoblashlarni,
foydalanuvchi   dasturini   tayyorlamasdan   to’g’ridan-to’g’ri   bajarish   mumkin.
Bunda       Matlab       sup е rkalkulyator       vazifasini       bajarib,       qatorli       komanda
r е jimida   ishlaydi.   Masalan,   2+3,   ans=5;   2*3,   ans=6   va   xokazo.
Tizimda      ishlash      muloqatli       (dialogli)      tavsifga      ega      bo’lib,      “savol
b е rildi   –   javob   olindi”   qoidasi   bo’yicha   ishlanadi.   Ya'ni   foydalanuvchi
klaviatura       yordami       xisoblanishi       lozim       bo’lgan       ifodani       kiritadi,       taxrir
qiladi     (agar      lozim      bo’lsa)     va     kiritishni      ENTER     klaviaturasini      bosish
bilan   yakunlaydi.   
Umuman     olganda,     ma'lumotlarni     kiritish     va     xisoblashlarni     amalga
oshirish   quyidagicha   amalga   oshiriladi:
Boshlang’ich   ma'lumotlarni   kiritishni   ko’rsatish   uchun   >>   b е lgidan
foydalaniladi;
Ma'lumotlar   oddiy   yozuvli   tahrir   yordamida   kiritiladi;
Biror   bir   ifoda   xisoblash   natijasini   blokirovka   qilish   uchun   mazkur
ifodadan   k е yin   ;   (nuqta   v е rgul)   qo’yiladi;
Xisoblashlar   natijasini   ko’rsatuvchi   o’zgaruvchi   aniqlanmagan   bo’lsa,
u   holda   Matlab   tizimi   bunday   o’zgaruvchi   d е b    ans    oladi;
O’zlashtirish   amali   sifatida   juda   ko’plab   dasturlash   tillari   kabi   “:=”
b е lgi   emas,   balki   mat е matikadagi   oddiy      “=”   ni   o’zi   olinadi; Sozlangan   funktsiyalar   (masalan,   sin)   yozma   xarflar   bilan   yoziladi ,
hamda   ularning   argum е ntlari   oddiy   qavslar   ichida   yoziladi;
Xisoblashlar   natijasi   yangi   qatorda   >>   b е lgisiz   chiqadi;
Muloqat   “Savol   b е rildi   –   javob   olindi”   ko’rinishida   amalga   oshadi.
Ma'lumki,   juda   ko’plab   mat е matik   tizimlarda,   agar   v   son   bo’lmasa,   u
holda   sin(v)   va   exp(v)   ifodalarni   hisoblab   bo’lmaydi,   ya'ni   tizim   bunday
ifodalarni       xato       d е b       b е radi.       Matlabda       esa       agar       b е rilgan       o’zgaruvchi
v е ktor       bo’lsa,       natija       ham       mazkur       o’lchamdagi       v е ktor       bo’ladi,       agar
matritsa   bo’lsa,   natija   xam   matritsa   bo’ladi.
Komandali       r е jimda      bir       qatordagi       b е lgilarning       maksimal       soni       –
4096,   m   –   fayllarda   esa   ch е garalanmagan.
Ma'lumki,     o’zgaruvchilar      kompyut е r     xotirasida,      ya'ni      ishchi      soha
(workspace)       da       ma'lum       bir       joy       egallaydi.       Ishchi       sohani       k е raksiz
o’zgaruvchilardan       tozalash       uchun       clear       funktsiyasining       turli       xil
ko’rinishlaridan   foydalaniladi,   masalan:         
clear   -   barcha   aniqlangan   o’zgaruvchilarni   yo’qotish;
clear   x   -   aniqlangan   x   o’zgaruvchini   yo’qotish;
clear   a,   b,   c   -   aniqlangan   bir   n е cha   o’zgaruvchilarni   yo’qotish.
Umuman     olganda,     AMDP     neyron     to’ri,     elektrotexnik     qurilmalarni
modellashtirish,       murakkab       matematik       masalalarni       yechish,       fizik
jarayonlarni   kompyuterda   modellashtirish   kabi   ko’plab   sohalarda   qo’llash
uchun   yaratilgan.   Shuning   uchun   ham   bu   sohani   chuqur   o’rganish   katta
ahamiyatga   ega.   
3.Tizim   k е ngaytmasi.Yordam   tizimi. MATLAB       dasturchilarga
quyidagi     sohalardagi     paketlar     kengaytmasini     taqdim     etdi:     harbiy     sanoat
majmualari,   energetika,   aerokosmik   va   avtomobil   qurilishi   va   b.   Ammo
shular      ichidan      turli       tizim      va      qurilmalarni       blokli       imitatsion      modelini
qiluvchi   Simulink   paketi   eng   mashhuriga   aylandi.
MATLAB+Simulink       tipik       kompleksi       katta       qiymatdagi       MATLAB
paketlar     instrumentlar     “qutisi”     Toolboxes     va     visual-mo’ljallangan     blokli
imitatsion       modellashgan       Simulink       dinamik       tizimini       imkoniyatlarni
kengaytiruvchi   Blocksets   dan   iborat.   Simulink   paketi   Matlab   bilan   birga
o’rnatiladi. 2-rasm.   MATLAB   +   Simulink   tizimi   tuzilishi
Simulink   paketu   to’grisida   keying   darslarimizda   batafsil   ma’lumot   berib
boramiz.
Yordam     tizimi     >>     help;     buyrug’i     yoki     menu     panelining
help       bo’limidan       olish       mumkin.       Help       bo’limi       Matlab
so’rovnoma     qismi     va     Matlab     dasturi     ishlab     chiqarish     haqida
ma’lumot   beradi.
Help       komandasi
bеrilgandan   kеyin   ekranda
<Matlab      /      <b o’ lim>      formatida      yordam       faylining      mundarijasi      chi q adi.
Kеrakli     bo’limni     tanlab     help     <bo’lim>           komandasi     kiritiladi.     Shundan
kеyin   ekrandagi   shu   bo’limdagi   funktsiya,   o’zgaruvchi   va   opеratorlarning
ro’hati       chiqadi.       Konkrеt       funktsiya       bo’yicha       yordamni       olish       help
<funktsiya   nomi,   o’zgaruvchi,   opеrator>   komandasidan   foydalaniladi.   
Agar   biror   kalit   so’z   bizga   ma’lum   bo’lsa   qidirayotgan   narsamizni
quyidagi   buyruq   yordamida   topamiz:
lookfor   <kalit   so’z>
4.       MATLABdagi       oddiy       h isoblashlar.       MATLAB       tizimi       shunday
ishlab     chiqilganki,     qisoblashlarni,     foydalanuvchi     dasturini     tayyorlamasdan
to’g’ridan-to’g’ri       bajarish       mumkin.       Bunda       Matlab       supеrkalkulyator
vazifasini     bajarib,     qatorli     komanda     rеjimida     ishlaydi.     Masalan,     >>2+3,
ans=5;   >>2*3,   ans=6   va   xokazo.   
Tizimda       ishlash       muloqotli       (dialogli)       tavsifga       ega       bo’lib,
“savol       bеrildi       –       javob       olindi”       qoidasi       bo’yicha       ishlanadi.       Ya'ni
foydalanuvchi      klaviatura      yordamida      hisoblanishi      lozim       bo’lgan      ifodani
kiritadi,       tahrir       qiladi       (agar       lozim       bo’lsa)       va       kiritishni       ENTER
klaviaturasini   bosish   bilan   yakunlaydi.   
Umuman       olganda,       ma'lumotlarni       kiritish       va       h isoblashlarni
amalga   oshirish   quyidagicha   amalga   oshiriladi:   
 Boshlan g’ ich   ma'lumotlarni   kiritishni   ko’rsatish   uchun   >>   bеlgidan
foydalaniladi;     Ma'lumotlar   oddiy   yozuvli   ta h rir   yordamida   kiritiladi;   
 Biror   bir   ifoda   hisoblash   natijasini   blokirovka   qilish   uchun   mazkur
ifodadan   kеyin   -   ;   (nuqta   vеrgul)      qo’yiladi;   
 Hisoblashlar   natijasini   ko’rsatuvchi   o’zgaruvchi   aniqlanmagan   bo’lsa,
u   holda   Matlab   tizimi   bunday   o’zgaruvchi   dеb   ans   oladi;   
 O’zlashtirish   amali   sifatida   juda   ko’plab   dasturlash   tillari   kabi   :   q
bеlgi   emas,   balki   matеmatikadagi   oddiy   q   ni   o’zi   olinadi;   
 Sozlangan   funksiyalar   (masalan,   sin)   yozma     h arflar   bilan   yoziladi
h amda   ularning   argumеntlari   oddiy   qavslar   ichida   yoziladi;   
 H isoblashlar   natijasi   yangi   qatorda   >>   bеlgisiz   chiqadi;   
 Muloqot   “Savol   bеrildi   –   javob   olindi”   ko’rinishida   amalga   oshadi.
Ma'lumki,       juda       ko’plab       matеmatik       tizimlarda,       agar       u       son
bo’lmasa,   u   holda   sin(v)   va   еxr(v)   ifodalarni   hisoblab   bo’lmaydi,   ya'ni
tizim     bunday     ifodalarni     xato     dеb     bеradi.     Matlabda     esa     agar     bеrilgan
o’zgaruvchi       vеktor       bo’lsa,       natija       ham       mazkur       o’lchamdagi       vеktor
bo’ladi,   agar   matritsa   bo’lsa,   natija   ham   matritsa   bo’ladi.   
Komandali       rеjimda       bir       qatordagi       bеlgilarning       maksimal       soni       –
4096,   m   –   fayllarda   esa   chеgaralanmagan.   
Barcha   matеmatik   tizimlarning   markaziy   tushunchasi   bu   matеmatik
ifodalardir.       Ma'lumki,       ular       ustida       amallar       bajarilayotganda,       asosan
ularning       sonli       qiymatlaridan       foydalaniladi       (kam       holatlarda       bеlgi
ko’rinishlaridan    h am   foydalaniladi).   
Matlab   ham   matеmatik   tizim   bo’lgani   uchun   bu   yеrda   ham
asosiy     tushuncha      matеmatik     ifodalardir.     Matlabda     matеmatik     ifodalarni
ifodalashni       qarab       chiqaylik.       Matlabda       ifodalar       bir       qator       ko’rinishida
ifodalanib,   sonlarni   butun   qismlarini   ajratish   uchun   vеrguldan   emas   balki
nuqtalardan    foydalaniladi.    Quyida    ba'zi    bir    ifodalarni    Matlab    va    oddiy
matеmatikadagi   ifodalanishini   ko’rib   chiqamiz:   
Matlabda
Matеmatikada
2+3
2+3
2 ^3*sqrt(y)/2;
2 3
√y/2   
2.301*sin(x);
2,301sin(x)   
4+exp(3)/5;
4+e 3
/5
Matеmatik     ifodalar     sonlar,     konstantalar,     o’zgaruvchilar,     opеratorlar,
funktsiyalar     va     turli     xil     maxsus     bеlgilar     ustiga     quriladi.     Ilgari     aytib
o’tganimizdеk,   nuqta   vеrgul,   ya'ni   ;   bеlgi   natijani   chiqishini   blokirovka
qiladi,       ammo       ans       maxsus       o’zgaruvchi       yordamida       natijani       olishimiz
mumkin.   
Son   –   Matlab   tilining   eng   oddiy   ob'еktlaridan   biri   bo’lib,   u
miqdoriy   ma'lumotlarni   ifodalab   bеradi.   Sonlarni   konstanta   dеb   qisoblash mumkin.     Sonlar     butun,     kasr,     fiksirlangan     va     suzuvchi     nuqtali     bo’lishi
mumkin.   Ularni   yaxshi   ma'lum   bo’lgan   ilmiy   shaklda,   ya'ni   mantissa   va
son   tartibini   ko’rsatgan    h olda   ifodalash   mumkin.   
   0
-3   
                              2.301
123.456е-24
-234.456е10
Yuqoridan   ko’rinib   turibdiki,   mantissadan   sonning   butun   qismi   kasr
qismidan,           juda     ko’plab     dasturlash     tillarida     qabul     qilinganidеk,     vеrgul
orqali       emas,       balki       nuqta       orqali       ajratiladi.       Son       tartibini       mantissadan
ajratish   uchun   ular   orasiga   е   bеlgisi   qo’yiladi.   “ + ”   ishora   sonlar   oldiga
qo’yilmaydi,             “-”       ishora       esa       qo’yiladi       va       uni       unar       minus       dеb
nomlanadi.   Sonlarda   bеlgilar   orasiga   probеl   (bo’sh   joy)   qo’yish   ruxsat
etilmaydi.   
Bundan     tashqari     sonlar     komplеks     bo’lishi     mumkin:     z=Re(z)
+Im(z)*i.   Bunday   sonlar   Re(z)   haqiqiy   va   Im(z)   mavhum   qismga   ega
bo’linadilar.   Mavhum   qism   kvadrat   darajasi   -1   ga   tеng   bo’lgan,   i   va   j
ko’paytuvchilarga   ega   bo’ladi:   
3i
2j
2+3i
-3.141i
-123.456+2.7e-3i
real   (z)   funksiya   komplеks   sonning   butun   qismini,   image(z)
–esa       mavhum       qismini       ajratib       bеradi.       Komplеks       sonning             modulini
(kattaligini)abs(z)      funksiya,            fazasini      angle(z)funktsiya       h isoblab     bеradi.
Masalan:   
>>   i
A ns =0+1.000i
>>z=2+3i
Z=2.000+3.000i   
>>abs(z)   
A ns =3.6056   
>>real(z)   
A ns =2
>>Imag(z)   
A ns =3
>>angle(z)   
A ns =0.9828  
Ma'ruza 2.
Matlabning asosiy ob'еktlari. Matlabda ma'lumotlarni tashkil qilish va
tasvirlash. Rеja:
1. Matlabda matеmatik ifodalar, konstanta va o’zgaruvchilar.
2. Matlabda funktsiyalar va sozlangan funktsiyalar. 
3. Ma'lumotlarni klaviatura orqali va faylli disklardan kiritish. 
4. Ma'lumotlarni matlab komandalari yordamida  h osil qilish. 
5. Matritsalarni almashtirish amallari. 
1.Matlabda   matеmatik   ifodalar,   konstanta   va   o’zgaruvchilar. Matlabda
ma'lumotlar   faqat   bir   shaklda,   ya'ni   matritsa   shaklida   tashkil   qilinadi.   Son   esa
matlabning   eng   oddiy   obyеktlaridan   bo’lib,   u   miqdoriy   ma'lumotlarni   ifodalab
bеradi.   Haqiqiy   sonlar   butun,   kasr,   fiksirlangan   va   suzuvchi   nuqtali   bo’lishi
mumkin.   Ularni   matlabda   mantissa   va   son   tartibini   ko’rsatgan   h olda   ifodalash
mumkin: 
0                   -3                     3.42                  5.2е-24                 -23.43е10 
Har bir sondagi raqamlar orasiga probеl qo’yilmaydi, “+” ishora son oldiga
qo’yilmaydi, “-” ishora esa qo’yiladi. 
Matlabda sonlarni ifodalash uchun quyidagi formatlardan foydalaniladi: 
Масалан, х=[4/3, 1.234e-6] vеktorni ko’raylik: 
format bank          1.33                       0.00
format short          1.333                     0.000 
format shorte        1.333E+000          1.234E-006 
format long           1.333...,8 (15)       0.00000 12340 00000 
format large          1.3…..3.8E+00     1.2340…..0E-006 
format rat  –sonlar ratsional ko’rinishda bеriladi. 
Masalan,y=[3.2   0.5  1.4]   matlabda son yoki vеktorlarni formatini bеrish uchun
umumiy     format < nom >     komandasidan foydalaniladi. 
Yuqoridagi y vеktor uchun format e'lon qilamiz: 
>> format bank 
>> y: 
y=[16/5       ½        7/5].  
Bu   formatlarning   bеrilishi   faqat   natijaviy   ma'lumotlarni   ko’rinishiga   ta'sir
etadi.   Barcha   hisoblashlar   ikki   karrali   aniqlikdagi   formatda   bajariladi,   sonlarni
kiritish esa ixtiyoriy qulay formatda bo’lishi mumkin. 
Matlabda   konstanta   (o’zgarmas)   –   bu   avvaldan   aniqlangan   sonli   yoki   bеlgili
qiymat bo’lib, u noyob nom (idеntifikator) bilan taqdim etiladi. Sonlar (masalan, 1,
-3, 1.5) nomsiz sonli konstanta hisoblanadi.
Matlabda   boshqacha   ko’rinishdagi   konstantalarni   tizim   o’zgaruvchilari   dеb
atash   qabul   qilingan,   sababi,   bir   tomondan   tizim   yuklanayotgan   vaqtda   ular   ham
bеriladi,   ikkinchi   tomondan   ular   dasturlarda   qayta   aniqlanishi   mumkin.   Matlabda
ishlatiladigan asosiy tizim o’zgaruvchilari quyidagilardir: 
- i ёки j – mav h um birlik; 
- p i-soni = 3.1415926...; 
- eps =  2 -52
  - sonlar ustida amallar bajarishdagi xatolik; 
- realmin= 2 -1022
 –suzuvchi nuqtali eng kichik son;   - realmax= 2 1023 
–suzuvchi nuqtali eng katta son;  
- in f –mashina chеksizlik qiymati; 
- NaN   –   ma'lumotni   sonli   tavsifga   ega   emasligini   ko’rsatuvchi   o’zgaruvchi
(Not a number); 
- ans   –   qiymati   boshqa   o’zgaruvchiga   o’zlashtirilmagan   amalning   natijasini
saqlovchi o’zgaruvchi; 
- bеlgili   konstanta   –   bu   apostrof   ichiga   olingan   bеlgilar   kеtma-kеtligi.
Masalan, ` haqiqiy son `, ` 3x+4y ` va x.k. 
Matlabda umumiy o’zgaruvchilar   h am mavjud bo’lib, ular nomga ega bo’lgan
ob y еktlar   h isoblanadi.   Bu   o’zgaruvchida   turli   xil   qiymatlarni   saqlash   mumkin.
O’zgaruvchilar   sonli,   bеlgili,   vеktorli   yoki   matritsali   bo’lishi   mumkin,   lеkin
matlabda ularning hammasi matritsa dеb tushuniladi. 
Matlab dasturlash tilida o’zgaruvchiga qiymat b e rish :  
<o’zgaruvchi nomi> = < ifoda qiymati > 
komandasi   yordamida        amalga  oshiriladi.  Bu  еrda ( = )  tayinlash  (qiymat   bеrish)
opеratori vazifasini bajaradi. 
Masalan, 
>> х= 5+ехр (3) ; 
Matlabning yaxshi xususiyatlaridan biri shuki, unda avvaldan o’zgaruvchini
turi   e'lon   qilinmaydi,   balki   uni   qiymatlariga   qarab   aniqlanavеradi.   Dеmak   ifoda
qiymati vеktor yoki matritsa bo’lsa, u holda o’zgaruvchi shunga mos bo’ladi. 
O’zgaruvchi   nomi   (idеntifikator)   –   boshlanishi   xarfdan   iborat   ixtiyoriy
sondagi bеlgilardan tashkil topgan bo’lishi mumkin, ammo faqat boshidagi 31 tasi
orqali   idеntifikatsiya   qilinadi.   O’zgaruvchi   nomi   boshqa   o’zgaruvchilar   bilan
ustma-ust   tushmasligi   kеrak,   ya'ni   nom   noyob   bo’lishi   lozim.   O’zgaruvchi   nomi
xarfdan   boshlangan   bo’lsada,   orasida   raqamlar   va   bеlgidan   (podchyorkivaniе)
iborat bo’lishi mumkin. Lеkin ularning orasiga maxsus bеlgilar, masalan   + , -, *,   /
va boshqalarni qo’yish mumkin emas. 
Matlabda ma'lumotlar ustida bajariladigan ma'lum bir amalni bajarish uchun
ishlatiladigan bеlgi opеrator dеyiladi. Masalan, oddiy arifmеtik amallar +, -, *, / -
opеratorlarga   misol   bo’ladi.   Bu   amallar   (1*1)   o’lchovlidan   yuqori   bo’lgan
matritsalar   ustida   bajarilsa   va   natija   ham   matritsa   bo’lsa,   u   holda   amallar
elеmеntlararo bajariladi va * amali. *, / esa./, /. kabi bеlgilab amalga oshiriladi. 
Masalan: 
>> х= [2  4  6  8] 
     х=  2  4  6  8 
>> у=  [1  2  3  4] 
      у= 1  2  3  4 
>> х/у 
     ans= 2 
>> х.*у 
     ans= 2  8  18  32 
>> х./у 
     ans= 2  2  2  2.  Matlabdagi   barcha   opеratorlar   ro’yxatini   ko’rish   uchun   help   ops
komandasidan foydalaniladi. 
2.   Matlabda   funksiyalar   va   sozlangan   funksiyalar.   Endi   funksiya
tushunchasini kеltiramiz. Funksiya – o’zining argumеntlari ustida ma'lum bir shakl
almashtirishlarni   bajaruvchi   va   unda   hosil   qilingan   natijalarni   qaytarish
xususiyatiga   ega   bo’lgan   noyob   nomli   obyеktdir.   Funksiyalar   bir   nеchta
argumеntlarga   ega   bo’lib   bir   emas,   bir   nеchta   natijani   qaytaradigan   bo’lsa
quyidagicha yoziladi: 
 [y
1 ,y
2 , …] = func (x
1 , x
2 , …) 
x
1 , x
2 , …, y
1 ,y
2 , … - mos ravishda kirish va chiqish paramеtrlari dеyiladi. 
Matlabdagi   elеmеntar   funktsiyalar   ro’yhati   bilan   help   elfun   komandasi,
maxsus   funktsiyalar   ro’yxati   bilan   esa   help   spasefun   komandasi   orqali   tanishish
mumkin.   Bu   funktsiyalar   matlabdagi   sozlangan   ichki   funksiyalarga   kiradi,   ya'ni
ularga argumеntlari bilan murojaat qilib, qiymatlarini olishimiz mumkin. 
Masalan: 
>>  cos (pi/5); 
>>  sin (0.9); 
>>  exp (3.3). 
Trigonomеtrik   funksiyalarga   faqat   radian   argumеnt   qo’yilishi   mumkin.
Matlabda   tashqi   funktsiyalar   dеb   m-fayllar   ga   aytiladi.   Bunday   funktsiyalarni
bеrish uchun maxsus m-fayllarni taxlil qiluvchi rеdaktordan foydalaniladi. 
Matlab   tizimida   juda   ko’p   sozlangan   va   kеngaytma   pakеtlarda   aniqlangan
funksiyalar bo’lsada, foydalanuvchi uchun yana qandaydir funksiyalar kеrak bo’lib
qolishi mumkin. Matlabda ana shunday yangi funksiyalarni yaratishning bir nеchta
imkoniyatlari   bor.   Shulardan   biri   inline   funksiyasidan   foydalanishdir.   Bunda
foydalanuvchi o’zi uchun zarur ifodani inline funksiya argumеntiga apostrof ichiga
yozishi  kеrak bo’ladi. Masalan,  sin2x + cos2u ifodani  qiymatlarini   h isoblash kеrak
bo’lsin. Matlabda quyidagicha amalga oshiriladi: 
>>  sin   cos   =  inline ( `sin   (x).^2+cos(y ) .^2`) 
sin cos = 
inline function: 
sin cos  ( x , у)  =sin   (x).^2 + cos   (x).^2 . 
Bu   yozuvlar   komandalar   oynasida   yoziladi   va   h isoblash   h am   shu   oynada
bajariladi: 
>>  sin   cos  (5.5) 
     ans =1.0000 
>>  sin   cos   (1.2) 
     ans =0.8813 
>>  sin   cos (2.1) 
     ans =1.1187 
Ma'lumki,     ko’p   h ollarda   tartiblangan   sonlar   kеtma-kеtligini   shakllantirish
zarurati tu g’ iladi. Bunday kеtma-kеtliklar grafik chizishda, jadval yaratishda kеrak
bo’ladi.   Ularni   hosil   qilish   uchun   matlabda   (:)   ikki   nuqta   komandasidan
(opеratoridan) foydalaniladi. Uning umumiy ko’rinishi quyidagicha: 
x
o  : h : x
1   bu еrda x
o   – boshlang’ich qiymat, h – qadam, x1 – esa oxirgi  qiymatdir. Bunday
konstruktsiyani   tadbiq   qilish   dasturiy   sikllar   bеrishni   kеskin   kamaytiradi.   Agar
qadam   bеrilmagan   bo’lsa,   u   holda   uning   qiymati   avtomatik   tarzda   1   dеb
hisoblanadi.   Agar   qadam   musbat   bo’lib,   boshlang’ich   qiymat   oxirgi   qiymatdan
katta bo’lsa, u holda dastur xatolik bеradi. Misolar ko’rib chiqaylik: 
>> 3 : 8
     ans = 3  4  5  6  7  8 
>> К = 0 : 3: 15 
     К= 0  1  3  6  9  12  15 
>> m= 10 : -2 . 2 
     m= 10  8  6  4  2
>> 0 : pi/2 : 2* pi 
     ans = 0  1.5708          3.1416     4.7124  6.2832  
>> 5 : 2 
     ans = Empty matrix  : 1 by 0 
Matlabning     imkoniyatlaridan   biriga   mu h im   tushunchalardan   biri   bo’lgan
“Matnli   izo h lar”   kiradi.   Matnli   izohlar   dasturni   tushunarli   bo’lishiga   va   ularni
vazifalarini   ochib   bеrishga   mo’ljallangan   bo’lib,   ularni   dasturni   ixtiyoriy   joyiga
qatordagi % bеlgisidan kеyin yozish mumkin bo’ladi. Masalan: 
% Kasr chiziqli funktsiyaning grafigi; 
% Funksiyaning o’sish oralig’i. 
m   –   fayl   yaxshi   yozilgan   hisoblanadi,   agar   uning   matnli   izoxi   to’la   kеltirilgan
bo’lsa. 
3.   Ma'lumotlarni   klaviatura   va   faylli   disklardan   kiritish.   Yuqorida
ta'kidlanganidеk,   matlabda   ma'lumotlar   faqat   matritsa   shaklida   tashkil   qilinadi.
Buning esa 3ta usuli bor: 
- ma'lumotlarni klaviaturadan to’qridan-to’qri kiritish; 
- ma'lumotlarni faylli disklardan kiritish; 
- ma'lumotlarni matlab komandalari yordamida xosil qilish. 
Klaviaturadan to’ g’ ridan-to’ g’ ri kiritishga misollar ko’raylik: 
>> х= [ 5  4  -3]yoki  >> х= [ 5, 4, -3] 
tеrilsa, x – vеktor-qator dеb qabul qilinib х(1) =5, х(2)=4, х(3)= -3 bo’ladi. 
>> у =  [ 0  2  2  3 
    5  -3  6  2 ]     yoki  у =  [ 0  2  2  3; 5  -3  6  2 ]  
у-(2х4)   o’lchovli   matritsa   bo’ladi   vа   у(1.1)=0,   у(1.2)=2,   у(1.3)=2,   у(1.4)=3,
у(2.1)=5,   у(2.2)=3,   у(2.3)= 6,   у(2.4)=2   bo’ladi.     Matritsada (;) qatorlar orasini
ajratish uchun kеrak. 
Matritsa elеmеntlari ifoda bo’lishi mumkin: 
Z= [sin(0)  sqrt(4)  2^3+1  5/2   3^2]. 
U  h olda quyidagi vеktor aniqlanadi: 
Z= [0  4.000  9.000  2.500  9.000] 
  Bеrilgan   matritsani   kеngaytirish   orqali   h am   matritsa   qolishi   mumkin.   Masalan,
x1q [x  1  2]  dеb olsak, 
х
1 = [5  4  -3  1  2]  xosil bo’ladi.  Agar х(5)= 7 dеsak, avvalgi x vеktor х= [5  4  -3  0  8]   kabi kеngaytiriladi,  bunda
ko’rinib turibdiki, x(4) ga “0” qiymat bеrildi. 
Endi u matritsadan foydalanib, 
c= [1  2  3  4] 
y
1 = [y; c]  
bеlgilash natijasida 
    y
1 =    [ 0  2  2  3  
5  -3  6  2  
1  2  3  4]  
matritsani xosil qilamiz. 
Matritsalarni faylli disklardan yuklab xam hosil qilsa bo’ladi.  Buning uchun 
load <fayl nomi  > 
komandasidan foydalaniladi. Agar komanda paramеtri yozilmasa bеrilganlar
matlab.mat nomli fayldan yuklanadi. 
Yuklanayotgan   bеrilganlar   avvaldan   tеkstli(ASC11)   formatida   ham   va
saqlab qo’yilgan bo’lishi mumkin. Buning uchun 
load <fayl nomi  >  х    y    z
komandasidan foydalaniladi. 
4.Ma'lumotlarni   matlab   komandalari   yordamida   h osil   qilish.   Matlabda
ma'lumotlarni uning komandalari yordamida bir nеcha usullarda  h osil qilsa bo’ladi.
Shulardan   biri   bo’lgan   (:)   komandasi   yordamida   h osil   qilinadigan   matritsalarni
misollarda ko’rib chiqamiz: 
>>а= 1: 7 
    [а= 1  2  3  4  5  6  7] 
>> b= 0 : 0.3 : 1.2 
     b= [0  0.3    0.6   0.9   1.2] 
Dеmak  a o’zgaruvchida  uzunligi   7ga,  b da  esa  uzunligi   5ga tеng  bo’lgan  vеktor-
qator hosil qilindi. 
Mavjud   matritsadan   vеktor   h osil   qilish   uchun   (:)   komandasini   ishlatsa
bo’ladi.  Agar: х= [ 2  5  7   
                  4  -2  1  
         0  3  4 ] 
bo’lsa,  y=  x (:, 1) natijasida 
у =  [ 2
       4
       0 ] 
vеktor-ustun va  yy=  x(:, 2) natijasida 
уу =  [ 5
       2
       3 ] 
vеktor-ustun  h osil qilinadi. 
хх = х(1, :) 
хх = [2  5  7]  qator-vеktorni xosil qiladi. (:) komandasini xy= x (:, 2:3) ko’rinishda  h am ishlatish
mumkin.   Bu   xolda   2-dan   3-ustungacha   bo’lgan   barcha   ustunlar   va   qatorlarning
hammasi qatnashgan (3x2) o’lchovli matritsa hosil bo’ladi: 
xy= [5    7;   -2    1;   3   4]. 
yx= x(1:2, 2:3)  komandasi esa elеmеntlari 1- va 2-qatorlar bilan hamda ustunlari 2
va 3-ustunlar bilan aniqlangan (2*2) o’lchovli quyidagi matritsani hosil qiladi. 
yx= [ 5   7;   -2   1 ]. 
5.   Matritsalarni   almashtirish   amallari.   Matlabda   matritsalar   ustida   oddiy
arifmеtik amallardan tashqari  maxsus amallar  va almashtirishlar  mavjud. Ulardan
biri matritsalarni transn p onirlashdir. Biror A matritsani trans p onirlash dеganda uni
mos   qatorlarini   ustunlar   bilan   almashtirish   tushuniladi   va   u   A'   kabi   bеlgilanadi.
Masalan, A =  [ 1   2   3; 4   5   6 ] bo’ladi. dеmak bunda (m*n) o’lchovli matritsaga
o’tadi. 
Bir nеchta matritsalarni birlashtirish uchun 
В= cat (<o’lchov> А
1 , А
2 , ... ) 
komanda ishlatiladi. Bu  h olda A1, A2, ..., matritsalar ko’rsatilgan o’lchov bo’yicha
birlashtiriladi: 
cat  (2, А, В) = [А, В]
cat  (1, А, В) = [А; В]
Matlabda   matritsalarni   burish   uchun   fliplr   (A),   flipud   (A)   komandalaridan
foydalaniladi.   fliplr   (A)   komandasi   A   matritsani   chapdan   o’ngga   ustunlarini
almashtirish   yo’nalishida   buradi.   flipud   (A)   esa   A   matritsani   pastdan   yuqoriga
qatorlarini almashtirish yo’nalishida buradi. Masalan, A quyidagicha bo’lsin: 
А= [ 2  3  
        7  1 
        9  0] 
U  h olda fliplr (A) q [9  0;  7  1;  2  3] , flipud (A) q [3  2 ; 1  7; 0  9]  kabi
bo’ladi.   Bеrilgan   matritsani   soat   strеlkasiga   qarshi   900   ga   buruvchi   rot   90   (A)
komandasidir. 
Misol:          B=[1  3  5  
                     7  9  11 
           2  3  4];   
     rot 90(B)=[5  1  4 ; 3  9  3 ; 1  7  2];   
- Undan   tashqari   matlabda   maxsus   ko’rinishdagi   matritsalarni   hosil   qilish
imkoniyati   bor.   Ana   shunday   matritsalarni   h osil   qiluvchi   komandalarni
kеltirib o’tamiz: 
- eye (m,n) –asosiy diagonalda 1, qolgan elеmеntlari 0 bo’lgan (m*n) matritsa
h osil qiladi; 
- lincpase   (a,   b,   [n])   –   [a,   b]   –oraliqda   tеkis   taqsimlangan   n   ta   elеmеntli
matritsa, n ko’rsatilmasa avtomatik tarzda 100 dеb olinadi; 
- ones (m, n) elеmеntlari faqat 1 dan iborat bo’lgan  (m*n) matritsa; 
- rand   (m,   n)   –elеmеntlari   (0,   1)   oraliqda   tеkis   taqsimlangan   tasodifiy
miqdorlar bo’lgan (m*n) matritsa; 
- zeros (m, n) - (m*n)o’lchovli faqat nollardan tuzilgan matritsa; 
- hilb (n) – n invhilb (n) – Gilbеrtning tеskari matritsasi;  - magic (n) –qator bo’yicha elеmеntlar yig’indisi ustunlar bo’yicha elеmеntlar
yig’indisiga tеng bo’lgan “sеhrli”  matritsa; 
- s ize  (А) – А matritsaning o’lchov i ; 
- l ength  (А) –A vеktor uzunligi (elеmеntlar soni); 
- n dims  (А) – А matritsa o’lchovlari soni; 
- isempty (А) – А matritsa  bo’sh bo’lsa 1, aks holda 0 qiymatni bеradi; 
- isegual (А, В) – А=В bo’lsa 1 ni bеradi, aks xolda “0” ni bеradi; 
- inumeric   (А)   –   А   matritsa   sonli   tipda   bo’lsa   1   ni   bеradi,   aks   holda   “0”   ni
bеradi; 
Маъруза   3.  
Мавзу :  Арифметик ва мантиқий амаллар. Векторлар ва матрицалар устида
амаллар. Математик функциялар   ва амаллар.
Режа:
1. Арифметик амаллар ;
2. Векторлар ва матрицалар устида амаллар ;
3. Солиштириш ва мантиқий амаллар ;
4. Матлабнинг асосий математик функциялари ва амаллари.  
1.Арифметик   амаллар.   Матлабда   скаляр   миқдорлар   устида   қуйидаги
оддий арифметик амалларни бажариш мумкин: 
+ - қўшиш; 
- - айириш; 
* - кўпайтириш; 
/ - ўнгдан бўлиш; 
\ - чапдан бўлиш; 
^  - даражага ошириш. 
Агар бир қатордаги ифодада бир нечта амаллар бўлса, уларни бажарилиш
кетма-кетлиги қуйидаги устиворлик қоидаси бўйича амалга оширилади: 
Устиворлик Амаллар
1 () Оддий қавс
2 ^   Даражага   ошириш,   чапдан-
ўнга
3 Кўпайтириш   ва   бўлиш,
чапдан-ўнга
4 қўшиш ва айриш, чапдан-ўнга
Матлабда бу қоидалар скаляр миқдорларга оддий усулда қўлланилади. 
 Масалан, 
                       команда                                                     натижа
                         2*5                                                            ans  =10                            5/8                                                            ans  =0.625 
                          5 \ 8                                                           ans = 1.600 
     x= pi/6; y= sin(x)                                                       y= 0.500 
     a =0;  z = exp  (4* a )/8                                                     z = 0.125 
1. Векторлар   ва   матрицалар   устида   амаллар .   Арифметик   амалларни
матрицалар устида ҳам бажариш мумкин, фақат уларни бажариш қоидалари
скаляр   миқдорларникидан   фарқли   бўлади.   Қўшиш   ва   айириш   амаллари
матрицалар   учун     уларнинг   мос   элементлари   орасида   бажарилади.   Шунинг
учун а ва b   матрицаларни қўшиш ва айириш учун уларнинг ўлчовлари бир
хил бўлиши талаб этилади: а ва b (nxm) ўлчовли бўлса, у холда 
с = a±b 
Матрица   элементлари   с[i,j]=a[i,j]+b[i,j]   тенгликлар   билан   аниқланади.
Масалан,
a=[1 2 3; 4 5 6] ,  
b=[4 5 3; 2 3 -4],
c=a+b, 
c=[5 7 6; 6 8 2] ,
d=a-b,
d=[-3 -3 0; 2 2 10].
а   ва   b   матрицалар   ўлчовлари   ҳар   хил   бўлса,   улар   устида   қўшиш   ва
айиришни бажариб бўлмайди.
Матрицаларни   кўпайтириш   эса   худди   алгебрадаги   қоида   бўйича
бажарилади.   Бу   ҳолда   чапдаги   матрицанинг   устунлари   сони   ўнгдаги
матрицанинг   қаторлари   сонига   тенг   бўлиши   керак:   а   нинг   ўлчови   (mxk)   b
ники (kxm) бўлса, у ҳолда с=a+b матрица (nxm) ўлчовли бўлади:
,      i =1, n  ,    j =1, m .
Масалан: 
а=[1 2 ,         b  =[0 1 2 3
               0 3 1 0 2 3
    2 2]
б ў лса,  c =а*  b   қ уйидагича б ў лади.
c =[2 1 6 9
     3 0 6 9
     2 2 8 12]
Агар скаляр ми қ дор матри ц ага к ў пайтирилаётган б ў лса, у матри ц анинг
ҳ ар бир элементига к ў пайтирилади:
d =3* b   б ў лса,  d =[0 3 6 9               га тенг б ў лади.
                            3 0 6 9]
Мисол: х=[2 1; 0 3; 2 3] ,  y =[1 2 3 4; 2 -1 3 1] матри ц аларда х*  y  амални
қў лда ва комп ь ютерда бажариб, натижаларни солиштиринг. Ундан   таш қ ари,   матлабда   матри ц аларни   мос   элементлари   орасида
бажариладиган   қ уйидаги   амаллар   мавжуд.   Бу   амалларни   бош қ алардан
ажратиш учун белги олдига (.) ну қ та  қў йилади.
а.*  b  - а нинг  ҳ ар бир элементи  b  нинг мос элементига к ў пайтирилади;
а./  b  -  а нинг  ҳ ар бир элементи  b  нинг мос элементига б ў линади;
а.\  b  - б нинг  ҳ ар бир элементи а нинг мос элементига б ў линади;
а.^   b   -   а   нинг   ҳ ар   бир   элементини   b   нинг   мос   элементи   даражасига
оширилади.
Масалан, а=[1 2 3; 2 3 1],  b  =[0 1 2; 2 1 2] б ў лса , у  ҳ олда  c =а.*  b   қ уйидагича
б ў лади:
c =[0 2 6; 4 3 2].
c  матри ц адан (:) командаси ёрдамида  c 1(1,:),  c 2(2,:)  қ атор- векторларни
ҳ осил  қ иламиз ва  c 2ни транспонерлаб  қ уйидагича 
c 1* c 2’=18
амалга   оширилган   к ў пайтмани   c 1   ва   c 2   векторларнинг   (ички)   скаляр
к ў пайтмаси дейилади.
c 1’* c 2
к ў пайтма   эса   (3х3)   ў лчовли   матри ц а   б ў лади.   Бу   к ў пайтма   таш қ и   к ў пайтма
дейилади.
3.   Солиштириш   ва   мантиқий   амаллар.   Мантиқий   амалларни   икки
гуруҳга бўлиб ўрганамиз:
а)солиштириш амаллари;
б) ҳ а қ и қ ий манти қ ий амаллар.
Солиштириш амалларига  қ уйидагилар киради:
а>б- катта амали;
а<б- кичик амали;
а<=б- кичик ёки тенг амали;
а>=б- катта ёки тенг амали;
а==б- тенг амали;
а~=б-тенг эмас амали.
Массивларни   солиштиришда   бу   амаллар   уларнинг   мос   элементлари
орасида   амалга   оширилади.   Бунда   солиштирилаётган   массив   ў лчовига   тенг
ў лчовли массив  ҳ осил б ў лади. Я ъ ни массивнинг мос элементи 1 б ў лади, агар
солиштириш   натижаси   “ро ст ”   б ў лса   ,   0   б ў лади   агар   солиштириш   натижаси
“ёл ғо н”   б ў лса.   Агар   солиштиришда   >,   <,   >=,   <=   амаллари   ишлатилса
элементларнинг   фа қ ат   ҳ а қ и қ ий   қ исми   солиштирилади,   ==   ёки   ~=   амаллари
ишлатилса   элементларнинг   ҳ ам   ҳ а қ и қ ий,   ҳ ам   мав ҳ ум   қ исмлари
солиштирилади.
Иккита   қ аторни   эквевалентлигини   текшириш   учун   strcmp   командасдан
фойдаланилади.   Бу   ҳ олда   векторларнинг   узунликлари   ҳ ар   хил   б ў лиши
мумкин.
Агар  солиштирилаётганлардан  бири  скаляр,  иккинчиси  матрица  бўлса,  у
ҳолда   солиштириш   учун   скалярни   матрица   ўлчовларига   тенг   қилиб,
матрицага тўлдирилади ва ундан кейин солиштирилади.  Масалан:
а=3; б=[1 4 0; 2 5 7];
б ў лса а>б натижаси  қ уйидагича б ў лади:
ans =[1 0 1; 1 0 0]
Матри ц а элем е нтлари комплекс б ў лган  ҳ олда мисол к ў рамиз:
c=[5+2i 4-i];
d=[5+7i 3-i];
d<=c  нинг   натижаси
ans =1 1,
c <= d  нинг натижаси
ans = 1 0
б ў лади.
Матлабда  ҳ а қ и қ ий манти қ ий ам а лларга  қ уйидагилар киради:
&=”ва” амали;
|-“ёки” амали;
~-“ё’=” амали.
Манти қ ий   амаллар   матри ц аларни   мос   элем е нтлари   орасида
бажарилади.   Бу   ам а лларни   бажаришда   0   ишлатилади,   агар   амал   натижаси
“ёл ғ он”   б ў лса   ва   “ро ст лик”ни   билдирувчи   манти қ ий   бир   ихтиёрий   нол
б ў лмаган сон б ў лиши мумкин.
Ю қ оридаги   барча   манти қ ий   амаллар   учун   “ро ст лик”   жадвали
қ уйидагича  б ў лади:
X y x&y x|y ~x
0 0 0 0 1
0 1 0 1 1
1 0 0 1 0
1 1 1 1 0
Ҳ а қ и қ ий   манти қ ий   амаллар   бажарилиши   б ў йича   арифметик   ва
солиштириш   амалларига   нисбатан   па ст   у ст уворликка   эга   б ў лади.   Манти қ ий
амаллар  ў з- ў зига нисбатан  қ уйидаги у ст уворлик  қ оидасига б ў йсунади:
а) ” йўқ ” амали энг ю қ ори у ст уворликка эга;
б)   ”ва”   билан   “ёки”   тенг   у ст уворликка   эга   ва   чапдан   ў нгга   кетма-кет
бажарилади.
Қ уйидаги мисолларни к ў рамиз:
1&0+2
3>5&1
Уларнинг натижаси мос равишда 1 ва 0 б ў лади. Биринчи ифодада аввал
0+2=2, ундан кейин эса 1&2 амали бажарилади. Иккинчи ифодада эса аввал
солиштириш амали 3>5=0, ундан кейин эса 0&1 манти қ ий амал бажарилади.
Қ уйидаги   келтирилган   мисолларда   эса   манти қ ий   амаллар   кетма-кет
чапдан  ў нгга  қ араб бажарилади:
1&0 | 1=1
0&0 | 0=0 
4. Матлабнинг асосий математик функциялари ва амаллари.    Юқорида
айтилганидек   Матлаб   пакети   асосан   ҳар   хил   математик   ва   амалий масалаларни   ечишга,   матрицалар   ва   векторлар   устида   ҳар   хил   амалларни
бажаришга   мўлжаллангандир.   Шунинг   учун   Матлабда   фойдаланувчи   учун
зарур   бўлган   математик   функциялар   мавжуддир.   Бу   функцияларни
қуйидагича иккита гуруҳга бўлиш мумкин:
а)   элементар   функциялар-   барча   юқори   даражадаги   тилларда   ҳам
мавжуд бўлади;
б)   махсус   функциялар-   фақат   Матлабда   қўлланиладиган   ва   мураккаб,
махсус функцияларни ҳисоблашга мўлжалланган.
Элемантар   функцияларга   тригонометрик,   даражали,   кўрсаткичли,
сонларга ишлов берувчи, қолдиқ ва яхлитлаш функциялари киради.
Э лементар функсиялар:
 sin- синус ;
 sinh- геперболик синус ;
 asin- арксинус ;
 asinh- геперболик арксинус ;
 cos-косинус;
 cosh-гиперболик косинус;
 acos-арккосинус;
 acosh-гиперболик арккосинус;
 tan-тангенс;
 tanh-гиперболик тангенс;
 atan-арктангенс;
 atanh-гиперболик арктангенс;
 cot-котангенс;
 acot-гиперболик котангенс;
 acoth-гиперболик арккотангенс;
 sec-секанс;
 sech-гиперболик секанс;
 asec- арксеканс;
 asech-геперболик арксеканс;
 csc-косиканс;
 csch-гиперболик косиканс;
 acsc-арккосиканс;
 acsch-гиперболик арккосеканс.
Даражали ва к ў рсаткичли функ ц иялар:
 exp- э кспонента;
 natural -л огарифм (e   асосли);
 log10- ў нли логарифм  (10   асосли);
 log2-2   асосли логарифм;
 pow2-2   сонини даржага ошириш;
 sqrt -квадрат   илдиз   (аргумент   манфий   б ў лса   комплекс   сонни
беради);  nextpow 2-   nextpow 2( n )   к ў ринишида   2^ p >=| n |   (| n |-модул   n )
тенгсизликка  қ аноатлантувчи биринчи  n  -сонини беради.
Сонларга ишлов берувчи функ ц иялар:
ab 1- соннинг абсол ю т  қ иймати(модули);
angle -комплекс соннинг бурчаги(фазаси);
  conj -комплекс соннинг т ў лдирувчиси;
  imag -комплекс соннинг мав ҳ ум  қ исми;
  real -комплекс соннинг  ҳ а қ и қ ий  қ исми;
  isreal -предикат.   Ҳ а қ и қ ий   элементли   матри ц алар   учун   “ро ст ”ни
(1) беради .
Қ олди қ  ва яхлитлаш функ ц иялар
fix -нол томонга яхлитлаш;
floor -(-∞)томонга яхлитлаш;
ceil -(+∞)томонга яхлитлаш;
round - э нг я қ ин бутун томонга яхлитлаш;
mod ( x , y )-б ў лиш натижасидаги  қ олди қ ;
rem ( x , y )-б ў лиш натижасидаги  қ олди қ ;
Агар х ва    y   нинг   қ ийматлари бир хил ишорали б ў лса   mod   ва   rem   бир
хил  қ ийматга эга б ў лади,  aks   ҳ олда  ҳ ар хил  қ ийматга эга б ў лади.
sign - соннинг ишорасини ани қ ловчи функ ц ия:
sign(x)=  
Масалан : sign( -5 ) = 1;   sign( 5 )= 1
Махсус   математик   функцияларга   классик   математика   функциялари   ва
сонлар назариясининг функциялари киради:
Классик математика функциялари.
   besselj -биринчи типдаги Бессел функ ц ияси;
bessely -иккинчи типдаги Бессел функ ц ияси;
besselh -учинчи типдаги Бессел функ ц ияси ёки Ханкел функ ц ияси;
besseli -биринчи типдаги модифика ц ияланган Бессел функ ц ияси;
besselk -иккинчи типдаги модифика ц ияланган Бессел функ ц ияси;
beta -  бета функ ц ияси;
beta   inc -тугатилмаган бета функ ц ияси;
betaln -логарифмик бета функ ц ияси;
ellipj -Якобининг эллипти c  функ ц ияси;
ellipke -тугатилган эллипти c  интеграл;
erf -хатолик функ ц ияси;
erfc - Қў шимча хатолик функ ц ияси; erfc   x -масштабланган  қў шимча хатолик функ ц ияси;
gamma -гамма функ ц ияси;
gammaink -тугатилмаган гамма функ ц ияси;
gammaln -логарифмик гамма функ ц ия;
legendre -Лежандрнинг бо ғ ланган функ ц ияси.
Сонлар назариясининг функсиялари.
Factor ( n ) - бу   сонларнинг   энг   кичик   умумий   карралисини   ани қ лайди.
Массивлар бу функ ц иядан  ҳ оли.
G=gsd(a,b) -бу а ва   b   массив ҳамма элементлари учун энг катта умумий
бўлинувчини   аниқлаб   беради.   Gsd(0,0)   функцияси   0   қийматни   қайтаради,
лекин қолган бошқа вазиятларда фақат мусбат қиймат қайтаради.
Lcm(a,b) -   бу   а   ва   b   массив   мос   элементларининг   энг   кичик   умумий
карралисини   ҳисоблайди.   А   ва   b   массив   элементлари   мусбат   бутун   сон   ва
элементлар сони тенг бўлиши керак.
Isprime   -   содда   сонлар   учун   ростлик   қийматини   берувчи   мантиқий
предикат;
Primes(n)-   n   дан   ошмайдиган   содда   сонлар   кетма-кетлигини   чиқариб
беради.
Юқорида келтирилган функциялар скаляр ва векторларга қўлланилиши
мумкин. Вектор бўлган ҳолда функциялар ҳар бир элементга қўлланилади.
4-ma’ruza Dasturlash asoslari. Dasturlashni asosiy vositalari. Matlabda ma’lumotlarni
va fayllarni toifa(tip)lari. Stеnariya   fayllarini tuzilishi   va xossalari.
Reja:
1.Matlabda ma’lumotlar toifalari;
2.Fayllarning toifalari;
3.Ishchi fayllar.Stenariy fayllarning tuzilishi va xossalari.
1.   Matlabda   ma’lumotlar   toifalari.   Matlab   tizimidagi   dasturlar   matn
formatidagi m-fayllardir. Matlab tizimida dasturlash tili quyidagi vositalarga ega:
 Har xil turdagi ma’lumotlar;
 Konstantalar va o’zgaruvchilar;
 Operatorlar(matematik   ifodal а rning   operatorlarini   ham   o’z
ichiga oladi) ;
 Biriktirilgan komanda va funksiyalar;
 Foydalanuvchining funksiyalari;
 Boshqaruvchi strukturalar;
 Sistema operatorlari va funksiyalar;
 Dasturlash tilining kengaytirish vositalari.
Matlab tizimida dasturlash kodlari yuqori darajali tild а   yoziladi va ushbu til
tipik interpretator  bo’lib hisoblanadi, ya’ni  dasturning har  xil  instruksiyasi  darhol
taniladi va bajariladi. Hamma instruksiyalarni, ya’ni to’liq dasturni kompilyatsiya
qilish   etapi   mavjud   emas.   Matlab   bajariluvchi   dasturlarni   yaratmaydi.   Dasturlar
faqat   m-fayllar   ko’rinishida   mavjud   bo’ladi.   Dasturlarning   ishlash   uchun   Matlab
muhiti   zarur.   Lekin   М atlabda   yozilgan   dasturlarni   C   va   C++   dasturlash   tillariga
translayatsiya   qiluvchi   kompelyatorlar   yaratilgan.   Ular   Matlab   muhitida
tayyorlangan   dasturlarni   bajariluvchi   dasturlarga   aylantirish   masalasini   hal   qilish
imkoniyatini   beradi.   Matlab   tizimi   uchun   kompilyatorlar   mustaqil   dasturiy
vositalardir.
Shuni   esda   tutish   kerakki,   Matlabning   hamma   instruksiyalari   ham
kompilyatsiya beravermaydi, ya’ni kompilyatsiyadan oldin bunday dasturni  qayta
ishlash   talab   qilinadi.   Kompilyatsiya   qilish   dasturlarning   bajarish   tezligi   10-15
martagacha ortishi mumkin.
Matlabda quyidagi toifadagi ma’lumotlardan foydalaniladi:
-sonli toifa;
-qatorlar va simvollar;
-obyektlar (matritsalar);
Sonli   toifadagi   berilgan   ikki   xil   haqiqiy   va   kompleks   sonlar   bo’lishi
mumkin.   Haqiqiy   sonlar   xuddi   matematikadagi   kabi   ishlatiladi.   Butun   va   kasr
qismlari nuqta(.) bilan ajratiladi. Kompleks sonlar esa, avval eslatganimizdek a+ib
yoki   a+bi   ko’rinishida  yoziladi,  bu  yerda  a  va   b  mos  ravishda  kompleks   sonning
haqiqiy   va   mavhum   qismlari   deyiladi,   i-belgi   (yoki   I,   J,   j)   mavhum   birlikni
bildiradi(i^2=-1).   Kompleks   sonni   bildiruvchi   I   belgi   b   ning   chap   yoki   o’ng
tomoniga   probelsiz   yozilishi   kerak,   aks   holda   Matlab   tizimi   xatolik   haqida
gapiradi.  Umuman,   ixtiyoriy   toifadagi   son   matritsalarni,   vektorlarni   yoki   skalyar
miqdorlarni elementlari (qiymatlari) bo’lishi mumkin. Xotirada barcha sonlar ikki
karrali   aniqlikdagi   son   ko’rinishida   saqlanadi.   Sonlar   aniqlangan   oraliqlarning
chegaralari hamda mashina aniqligi tizim o’zgaruvchilari eps, realmax va realmin
orqali beriladi.
Matlabda apostroflar ichiga joylashtirilgan simvollar ketma-ketligi qator deb
tushiniladi. Qatorlarga misol qilib quyidagilarni keltirish mumkin:
a=’Matlab’
b=’function’
Bir   nechta   qatorlarni   birlashtirish   uchun   xuddi   vector   va   matritsalar   kabi
([…]) kvadrat qavslar ishlatiladi. Masalan,
str1=[‘This’,’is’,’string’],
str2=[‘Sistema’,’Matlab’]
kabi ifodalar mos ravishda quyidagi simvolli qatorlarni beradi.
str1=‘This is string’
str2=‘Sistema Matlab’
Obyekt(matritsa)lar   haqida   avvalgi   darslarimizda   yetarlicha   ma’lumotlar
berilgan. 
Qatorlarni   xosil   qiluvchi   va   ularga   ishlov   beruvchi   Matlabning   ba’zi
funksiya(komanda)larini keltirib o’tamiz: 
 blanks(n)- n ta probeldan iborat qatorni bildiradi;
 num2str(n)- haqiqiy sonni qatorga aylantiradi;
 deblanks(s)- s qatordan kerak bo’lmagan probellarni yo’qotadi;
 index(s,t)-   s   qatorda   t   qator   ostining   birinchi   marta   ko’rinishi   holatini
chiqaradi. Agar qator osti bo’lmasa nolni chiqaradi;
 randex(s,t)-   s   qatorda   t   qator   ostining   oxirgi   marta   ko’rinshi   holatini
chiqaradi. Agar qator osti bo’lmasa nolni chiqaradi;
 strcmp(s1,s2)- 1 ni chiqaradi agar s1, s2 qatorlar bir xil bo’lsa, aks holda 0 ni
chiqaradi;
 strrep(s,x,y)- x qator ostining s qatorga barcha kirishlarni y qatorga kirishga
almashtiradi;
 bin2dec(s)-  qator   ko’rinishida   tasvirlangan  ikkilik  sistemasidagi  songa   mos
o’nlik sistemasidagi sonni chiqaradi;
 dec2bin(n)-   o’nli   sistemasidagi   manfiy   bo’lmagan   songa   mos   ikkilik
sistemsidagi sonni qator ko’rinishida chiqaradi;
o dec2hex(n)-   manfiy   bo’lmagan   o’nlik   sistemasidagi   songa   mos   o’n
oltilik sistemasidagi sonni qator ko’rinishida chiqaradi;
 hex2dec(s)-   o’n   oltilik   sistemasidagi   qator   ko’rinishidagi   songa   mos   o’nlik
sistemasidagi sonni chiqaradi;
 str2num(s)- s qatorni songa aylantiradi.
2.   Fayllarning   toifalari.   Shunday   masalalar   borki,   ularni   yechish   uchun   bir
nechta komandalar yoki qatorlarni, ularni bajarishdan avval yozishga to’g’ri keladi.
Bunday masalalarni hal qilish uchun Matlabda m-fayllardan foydalaniladi. Buning
uchun ya’ni m-faylda Matlabning bir nechta komandalari ketma-ketligi yoziladi va
ular   shu   faylga   nom   berib   saqlab   qo’yiladi.   Natijada   bu   fayldagi   komandalar ketma-ketligi Matlab komandalar oynasidan faylga murojat qilish orqali bajarilishi
mumkin.   Mana   shunday   qo’shimcha   xosil   qilingan   fayl   ishchi   fayl   yoki   fayl
stenariy   deyiladi.   Bunday   fayl   nom   berib   saqlanayotganda   tizim   avtomatik
ravishda uni nomiga *.m kengaytma beradi.
Demak, ishchi fayllar- Matlab komandalar ketma-ketligini o’z ichiga oluvchi
oddiy   fayllardir.   Ishchi   fayllar   matn(tekst)   taxririda   va   formatida   tayyorlangan
bo’lishi shart va Matlab yuklatilgan katalogda saqlangan bo’lishi kerak. Fayl nomi
ixtiyoriy faylga berish mumkin. 
.m kengaytmali  nom bo’ladi. Ishchi  m-fayl  yaratishga  doir  misol  ko’ramiz.
Quyidagi:
y=sin(x) , xє[-7Π; 7 Π]
Funksiyaning   grafigini   chizilsin.   Buning   uchun   ishchi   m-fayldan
foydalanamiz .  XXplot.m nomli fayl chaqiramiz va unda Matlabning matnli tahrir
va formatda quyidagicha komandalar ketma-ketligini kiritamiz:
% o dan boshlab kengayuvchi sinusoida grafigi
% funksiya ko’rinishi y=sin(x) 
x=-7*pi:pi/50:7*pi;
y= sin(x);
plot(x,y),…
title(‘kengayuvchi sinusoida’),…
xlabel(‘x’),…
ylabel( ‘y’),…
text(2,2,’y= sin(x)’),…
grid on
Natija: Bu   yerda   birinchi   ikkita   komanda   %   belgi   bilan   belgilangan   uchun   Matlab
tizimi   ularni   matnli   sharx   sifatida   qabul   qiladi.   Matlabda   %   belgidan   keyin
yozilgan   ixtiyoriy   komanda   yoki   matn   sharx   deb   qabul   qilinadi   va   bajarilmaydi.
Misollardagi boshqa komandalar ta’rifini kelgusi mavzularimizda keltiramiz.
Endi   yuqoridagi   komandalar   ketma-ketligi   yozilgan   fayl   XXplot.m   nomi
bilan   Matlabning   ishchi   katalogida   saqlab   qo’yilishi   kerak.   Biz   Matlab   tizimidan
XXplot komandasini terib, kengayuvchi sinusoidaning grafigini olsak bo’ladi.
3.   Ishchi   fayllar.Stenariy   fayllarning   tuzilishi   va   xossalari.   Komandalar
rejimida   ishlash   dasturlash   emas.   Matlab   tizimida   dasturlarning   tashqi   atributi
bo’lib m-faylda yozilgan amallarning ketma-ketligi hisoblanadi. Matlabda m-faylni
yaratish uchun biriktirilgan tahrirlagichdan yoki ASCII formatini qo’llaydigan har
qandau   matn   tahrirlagichdan   foydalanish   mumkin.   Tayyorlangan   va   diskka
yozilgan m-fayl Matlab tizimining bir qismiga aylanadi va uni komandalar satridan
yoki   boshqa   m-fayldan   chaqirish   mumkin.   Ikki   turdagi   m-fayllar   mavjud:   fayl
stenariyalar   va   fayl   funksiyalar.   Ular,   yaratilish   jarayonida   Matlab   tizimiga
biriktirilgan   m-fayllarning   tahrirlagich/sozlagich   yordamida   sintaksis   bo’yicha
nazoratdan o’tgan bo’lishi kerak.
Script-fayl   deb   ataluvchi   fayl-stenariyalar   kirish   va   chiqish   parametrlari
bo’lmagan   qator   komandalarning   to’plamidir.   Ular   quyidagi   tarkibga   ega
bo’ladilar:
 <<Asosiy izoh;
 %Qo’shimcha izoh;
 Turli ifodalarni o’z ichiga oluvchi faylning qobig’i.
Fayl-stenariy quyidagi xossalarga ega bo’ladi:
  Kirish va chiqiah argumentlari bo’lmaydi;
 Ishchi sohadagi ma’lumotlar bilan ishlaydi;
 Bajarilish vaqtida kompilyatsiya bo’lmaydi;
 Fayl   ko’rinishga   keltirilgan,   sessiyadagiga   o’xshash   amallar   ketma-
ketligidan iborat bo’ladi. Matnli izohning birinchi satri asosiy izoh va keying satrlari qo’shimcha izoh
bo’lib hisoblanadi. Asosiy izoh lookfor va help katalog_nomi komandalari, to’liq
izohlar esa help fayl_nomi komandasi bajarilganda ekranga chiqadi. Quyidagi fayl-
stenariyani ko’raylik:
x=xmin:0.1:xmax;
plot(x,sin(x), 'r' )
grid  on
 
Dasturni   pcr
nomi bilan   diskda
saqlaymiz   va
komandalar
oynasida quyidagilarni kiritamiz:
>> xmin=-5;
>> xmax=15;
>> pcr
Fayl stenariy ishga tushadi va ekranda quyidagicha tasvir hosil bo’ladi: Izohlarda % belgisi satrning birinchi pozitsiyasiga yozilishi kerak. Aks holda
help   name   komandasi   izohni   qabul   qilmaydi   va   No   help   comments   found   in-
name.m  ko’rinishidagi axborotni beradi.
Bunday faylni ishga tushirish uchun xmin va xmax o’zgaruvchilar oldindan
tayyorlangan   bo’lishi   kerak.   Fayl-stenariyalardaishlatiladigan   o’zgaruvchilar
global   o’zgaruvchilar   bo’lib   hisoblanadi,   ya’ni   ular   sessiya   komandalarda   ham
dasturiy bloklarning (jumladam  fayl-stenariyalarning)   ichida ham  bir  xil  ishlaydi.
Shuning   uchun   sessiyada   berilgan   qiymatlar   faylda   ishlatiladi.   Fayl-
stenariyalarning   nomlaridan   funksiyaning   parametrlari   sifatida   foydalanish
mumkin  emas,  chunki  fayl-stenariya  qiymatlarni   qaytarmaydi.  Fayl-stenariyalarni
kompelyatsiya qilib bo’lmaydi. Ular fayl-funksiyalarga aylantirilgandan keyingina
kompelyatsiya qilinishi mumkin.
5-маъруза
М- файл функ ц ияларини тузилиши   ва хоссалари. Локал ва глобал
ў згарувчилар.  Ў згарувчи   сондаги аргументли функ ц иялар.
Режа:
1. М- файл функцияларини тузилиши   ва хоссалари;
2. Локал ва глобал  ў згарувчилар;
3. Ў згарувчи   сондаги аргументли функ ц иялар.
1.М-   файл   функ ц ияларини   тузилиши   ва   хоссалари.   Матлаб   тизимида
фойдаланувчи учун аниқ бир мақсадли ҳисоблашларни бажарувчи ва Матлаб
каталогида   йў қ   б ў лган   функ ц ия   зарур   б ў либ   қолади.   Бунда   фойдаланувчи
янги функ ц ияни   ҳ осил қилиб Матлаб каталогига қ ў шиб қ ў йиш имкониятига
эга.   Янги   функ ц ияни   ташкил   қилувчи   команда   ва   функ ц иялар   ҳар   доим
матнли м-файлларда жойлашган б ў лади.
Янги   яратилган,   бир   нечта   командалар   кетма-кетлигидан   иборат
функциялар ўзининг номига,   локал характердаги  ўзгарувчиларга  эга бўлиб,
унга параметрлар орқали мурожат қилиш мумкин бўлади.
Функсция  яратиб,   сақланаётган  м-файлнинг  номи  алифбо  белгилардан
бошланиб *. m кенгайтмасига эга бўлади. Кенгайтмасиз м-файлнинг номи бу Матлабда мурожат қилиш мумкин бўлган файл функция ёки ишчи файлнинг
номидир.
Функция   яратилаётган   м-файлнинг   бошланғич   қаторлари   матнли
шарҳлардан   иборат   бўлиб,   м-файлда   яратилаётган   функцияни   моҳиятини
очиб   берувчи   бўлади.   Ундан   кейинги   биринчи   қаторда   аниқланган   функция
номи м-файлнинг кенгайтмасиз номи билан бир хил бўлиши керак. Умумий
кўринишида   м-файлдаги   функция   ҳар   доим   function   сўзидан   бошланиб,
қуйидагича бўлади:
Function y=<функция номи>.
Функция   номидан кейин оддий қавс ичига аргументлар (параметрлар)
вергул(,) билан ажратиб ёзилади.
Масалан, дискдаги sred.m номли файлдаги қуйидаги код:
function [y, sr, sd]=sred(x)
n=length(x);
sr=sum(x)/n;
sd=sqrt(sum(x-sr).^2/n);
y=(sr+sd)/2;
sred   номи   билан   аниқланган   ва   х   вектор   координаталари   ўрта
арифметигини   ( sr ),   стандарт   четланишини   ( sd )   ҳамда   уларнинг   ўртасини  
( y )   ҳисобловчи   янги   функцияни   аниқлайди.   Функция   ичидаги   барча
ўзгарувчилар   локал   характерга   эгадир,   sum(x)-эса   вектор     координаталари
йиғиндисини ҳисобловчи Матлаб функциясидир.
М-файл функция ичидагина кўринадиган функция ости функцияси ҳам
бўлиши   мумкин.   Бу   функция   ости   функцияси   ҳам   асосий   файл   функция
командалардан   кейин   ёзилиб,   у   ҳам   худди   асосий   файл   функция   каби
аниқланади. Масалан, srg функция sred файлдаги функция ости бўлса, код 
function [y, sr, sd]=sred(x)
n =length(x);
sr=srg(x,n);
sd=sqrt(sum((x-srg(x,n)).^2)/n);
function sr=srg(x,n)
sr=sum(x)/n;
Агар    Матлаб   функсияни   номи   б ў йича   топа   олмаса ,  у   ҳолда   шу   номдаги
файлни   қидиради .   Функ ц ия   топилгандан   кейин ,   уни   кейинчалик   ишлатиш
учун   Матлаб   тизими   функ ц ияни   хотирага   компеля ц ия   қилади .
Функ ц ионал   м-файлдан   чақирилса,   Матлаб   функ ц ияни   анализ   қилади
ва   хотирада   сақлаб   қ ў яди.   Бу   функ ц ия,   хотира   clear   буйру ғ и   билан
тозаланмагунча хотирада сақланиб туради.
Матлаб   каталогидаги   барча   тригонометрик   функ ц иялар   радиан
аргументларда   ҳисоблашни   бажаради.   Энди   биз   градусларда   берилган
ихтиёрий   бурчакнинг   синусини   ҳисоблаб   берувчи   файл   функ ц ия   ҳосил
қилиш   мисолини   к ў рамиз.   Бунда,   шунга   э ъ тибор   бериш   керакки,   функ ц ия
номи   файл   номи   билан   бир   хил   б ў лиши   керак.   Бу   функ ц ия   учун   sing ( x )
функ ц ия номи қилиб оламиз. Масалани ҳал қилувчи код қуйидагича б ў лади:
Function   y = sing ( x ) %Бу функ ц ия градусларда берилган
%аргументнинг   синусини ҳисоблаб беради
y = sin ( x .* pi ./180)
Энди   тизим   ичида   х   нинг   аниқ   градус   қийматлари   билан   sing ( x )   га
мурожат   қилсак,   унга   қиймат   чиқариб   берилади.   Юқоридаги   ўхшаш
мисоллардан бир нечтасини мустақил бажаринг.
м-файл функция қуйидаги хоссаларга эга бўлади:
 y function эълон билан бошланади, ундан кейин ўзгарувчининг номи ва
чиқиш параметрларнинг рўйҳати кўрсатилади;
 Функция   ўз   қийматини   қайтаради   ва   уни   математик   ифодаларда
номи(параметрлар рўйҳати) кўринишида ишлатиш мумкин;
 Файл-функциянинг   қобиғидаги   ҳамма   ўзгарувчилар   локал
ўзгарувчилардир, яъни фақат функциянинг ичида ўринли;
 Файл-функция мустақил дастурий модул бўлиб, бошқа модуллар билан
ўзининг кириш ва чиқиш параметрлари орқали алоқада бўлади;
 Файл-функ ц ия Матлаб тизимини кенгайтириш воситасидир;
 Файл-функ ц ия   компеля ц ия   қилинади   ва   бажарилади,   ҳосил   қилинган
машина кодлари Матлаб тизимининг ишчи соҳасида сақланади.
2.   Локал   ва   глобал   ў згарувчилар.   Функ ц ия   параметрларининг
р ў йҳатида   к ў рсатилган   параметрлар   локал   ў згарувчилар   б ў либ   функ ц ия
чақирилганда   уларнинг   ў рнига   қ ў йиладиган   қийматларни   олиб   ў тиш   учун
хизмат қилади.
Агар   функциядаги   ўзгарувчилар   глобал   бўлиши   зарур   бўлса,   улар
глобал  var 1,  var 2, … командаси ёрдамида эълон қилинади.
Қуйидаги   мисолни   кўрайлик.   Таҳрирлагич   ойнасида     Z= +
ифодани   ҳисобловчи   икки   ўзгарувчили   (x   вa   y)   fun   функцияси   ҳосил
қилинган.
Дастурда   х   ва   y   ўзгарувчилар   fun(x,y)   функциянинг   параметрлари
бўлганликлари   сабабли,   улар   локал   ўзгарувчилардир.   Функция   қобиғидан
ташқарида   уларга   нол   қийматлар   берилган.   Агар   функция   қобиғида
fun(2,3)нинг   қиймати   ҳисобланадиган   бўлса   уларга   x=2   вa   y=3   қийматлар
берилади.
2.   Lokal   va   global   o'zgaruvchilar.   Funksiya   parametrlarining   ro'yxatida
ko'rsatilgan   parametrlar   lokal   o'zgaruvchilar   bo'lib   funksiya   
chaqilirganda   ularning   o'rniga   qo'yiladigan   qiymatlarni   olib   o'tish   
uchun   xizmat   qiladi.
Agar   funksiyadagi   o'zgaruvchilar   global   bo'lishi   zarur   bo'lsa,   ular   
global   var1,   var2,…   komandasi   yordamida   e'lon   qilinadi.
quyidagi   misolni   ko'raylik.   Taxrirlagich   oynasida   Z=+   ifodani   
hisoblovchi   ikki   o'zgaruvchili   (x   va   y)   fun   funksiyasi   hosil   qilingan.
Dasturda       h       va       y       o'zgaruvchilar       fun(x,y)       funksiyaning
parametrlari       bo'lganliklari       sababli,       ular       lokal       o'zgaruvchilardir.
Funksiya     qobig`idan     tashqarida     ularga     nol     qiymatlar     berilgan.     Agar
funksiya     qobig`ida     fun(2,3)ning     qiymati     hisoblanadigan     bo'lsa     ularga
x=2   va   y=3   qiymatlar   beriladi.       Шунинг   учун   натижа   z=13     бўлади.   Лекин   функциянинг   қобиғидан
чиққандан   кейин   х   ва   y   ўзгарувчилар   ўзларининг   дастлабки   нолга   тенг
бўлган   қийматларини   олади.   Шундай   қилиб,   ушбу   ўзгарувчилар   ўз
қийматларини функция параметрларининг қийматларига фақат локал тарзда-
функция қобиғининг ичидагина ўзгартиради.
Ҳар қандай
функция қобиғида
аниқланган ўзгарувчи
сингари   z ўзгарувчи
ҳам   локал
ўзгарувчидир.   Дастлаб   унинг   қиймати   аниқланмаган   бўлади.   Функциянинг
ичида     у   z=13     қийматни   қабул   қилади.   Функциядан   қайтгандан   кейин
функцияда қўлланилганлигига қарамасдан, у ноаниқ бўлиб қолади.  Агар  z  ни
чиқаришга ҳаракат қилинса командалар ойнасида хатолик т ўғ рисида ахборот
ҳосил б ў лади. Бунга ишонч ҳосил қилиш учун қуйидаги мисолни к ў райлик:
Таҳрирлаш ойнасида функ ц ия киритамиз :    
>> fun(2,3)
z =    13
ans =    13
>> z
??? Undefined function or variable 'z'.
>>
Функ ц иядаги   ҳамма   амаллар   бажарилгандан   кейин ,   я ъ ни   функ ц ия
файлнинг   охирига   етилгандан   кейин   функ ц иядан   қайтилади .   Функ ц ия
шартли   операторлар ,   сикллар   ёки   танлаш   оператори   ишлатилганда
функ ц иянинг   ма ъ лум   жойидан   қайтиш   зарурияти   ҳосил   б ў лиши   мумкин .
Бунинг   учун  return  командаси   хизмат   қилади .  Ҳар   қандай   ҳолда   ҳам   функ ц ия
чиқиш   параметрининг   қийматини   қайтаради .   Юқоридаги   мисолда   z
ў згарувчиси   чиқиш   параметрик   б ў либ   ҳисобланади .
  3.Ўзгарувчи   сондаги   аргументли   функциялар.   Махсус   хусусиятларга
эга бўлган функцияларни яратишда қуйидаги икки функция фойдали бўлиши
мумкин:  Nargin   -берилган   функсиядаги   кириш   параметрларининг   сонини
қайтаради;
 Nargout   -берилган   функсиядаги   чиқиш   параметрларининг   сонини
қайтаради.
Айтайлик,   бешта   х1,   х2,   х3,   х4   ва   х5   аргументлар   квадратларининг
йи ғ индисини ҳисоблайдиган функ ц ия яратиш зарур б ў лсин.
Одатдаги  йў л билан  sum 2_5 номли функ ц ияни яратиш зарур б ў лсин.
Function f=sum2_5(x1,x2,x3,x4,x5);
Z = x 1^2+ x 2^2+ x 3^2+ x 4^2+ x 5^2;
Унинг ишлашини текшириб к ў рамиз:
>> sum2_5(1,2,3,4,5)
ans =    55
>> sum2_5(1,2)
??? Input argument "x3" is undefined.
Error in ==> sum2_5 at 2
f=x1^2+x2^2+x3^2+x4^2+x5^2;
Ш ундай   қилиб ,   бешта   аргумент   б ў лганда   функ ц ия   т ўғ ри   ишлайди .
Лекин   аргументлар   сони   бештадан   кам   б ў лса   хатолик   т ўғ рисида   ахборот
беради. Ҳар қандай сондаги кириш аргументлари б ў лганда (юқоридаги мисол
учун   бештагача)   т ўғ ри   ишлайдиган   функ ц ияни   яратиш   учун   nargin
функ ц иясидан фойдаланамиз:
  
Функ ц ия
ни
ишлашини текшириб к ў рамиз:
>> sum2_5(1)
ans =     1
>> sum2_5(1,2)
ans =     5
>> sum2_5(1,2,3)
ans =    14
>> sum2_5(1,2,3,4) ans =    30
>>
>> sum2_5(1,2,3,4,5)
ans =    55
>> sum2_5(1,2,3,4,5,6)
??? Error using ==> sum2_5
Too many input arguments.
Шундай қилиб, кириш параметрларининг сони 1 дан 5 тагача бўлганда
ҳисоблашлар   тшғрисида   ахборот   чиқади.   Бу   ахборотни   интерпретаторга
бириктирилган хатоликларни диагно ст ика қилиш тизими беради.
6-ма ъ руза
Матлабда да ст урлаш асослари.  Ш артли операторлар.  Ц икл
операторлари.Танлаш оператори. Уларга доир мисоллар.
Режа:
1.Тайинлаш ва шартли операторли;
2. Ц икл операторлари;
3.Танлаш операторлари;
4.Да ст урлашга   доир   мисоллар.   Ҳисоблашларда   тўхташлар
ҳосил қилиш.
1.   Тайинлаш   ва   шартли   операторли.   Матлабда   да ст урлаш   командалар
режимида   амалга   оширилади.   Бу   тизим   шундай   тузилганки,   ҳ исоблаш   учун
ишлатиладиган   ў згарувчиларни   қиймати   берилмаган   б ў лса,   уларни   у ст ида
ҳ ар   қандай   амални   бажариш   мумкин   б ў лмай   қолади.   Тайинлаш   оператори
сифатида  ў згарувчиларга қиймат бериш командаси б ў лган оддий “=” тенглик
белгиси ишлатилади. Демак, тайинлаш оператори қиймат   ў злаштирувчи   ҳ ар
бир  ў згарувчи ва функ ц ияларнинг қийматларини аниқлашда ишлатилади.
Матлабда  ҳ ар бир фойдаланувчи учун да ст ур тузиш имконияти бор. Бу
да ст урлар   кейинчалик   ало ҳ ида   функ ц ия   сифатида   ишлатилиши   мумкин.
Да ст урлашда   ҳ исоблашларни   бажарилишини   бошқариш   ва   назорат   қилиш
мақсадида   Матлабда   махсус   кон ст рук ц иялардан   фойдаланилади.   Бу
кон ст рук ц ия(оператор)лар   ичма-ич   жойлашган   б ў лиши   мумкин.   Ҳ ар   бир бошқариш оператори   ў зига мос оператор   end    билан ёпилган б ў лиши керак.
Бошқариш кон ст рук ц ия(оператор) ларга Матлабда   if ,  while ,  for   в a   switch - case
кабилар киради.
Улардан   бири   шартли   ў тиш   оператори   if   нинг   форматлари   билан
танишиб чиқамиз. Умумий  ҳ олда    if   операторининг формати :
if  <1- шарт >
{ оператор 1 }
elseif  <2- shart >
{ оператор2}
else  
{ оператор 3 }
end
к ў ринишида   б ў лади.   Агар   1-шарт   “ро ст ”   б ў лса,   бошқариш   {оператор1}ни
бажаришга   узатилади.   Акс   ҳ олда,   я ъ ни   1-шарт   “ёл ғ он”   б ў лса,   у   ҳ олда
бошқариш 2-шартни текширишга узатилади. Агар   y   “ро ст ” б ў лса бошқариш
{оператор2}ни   бажаришга   узатилади,   акс   ҳ олда   бошқариш   {оператор3}ни
бажаришга узатилади.
Юқоридаги   форматда   шартлар   сифатида   алгебраик   ифодалар,
мантиқий   ва   солиштириш   амаллари   б ў лган   >=,   <=,   <,   >,   ~=,   ==     кабилар
ишлатилиши мумкин.  Масалан, 
if  i==j
   a(i,j)=i+j+2;
elseif  abs(i-j)==1
a(i,j)=-1;
else
a(i,j)=1;
end .
Ш артли операторнинг қисқа форматларида  ҳ ам фойдаланиш мумкин:
a) if  <shart>
{operatorlar}
End
b) if  <shart>
{operatorlar1}
else
{operatorlar2}
end.
2. Ц икл операторлари.   Да ст урни   бажариш   йў лини   к ў рсатиб   берувчи
воситалардан   бири   танлов  операторлар   switch   ҳ исобланади.   Унинг   формати
қуйидагича б ў лади:
Switch <текширув ифода >
case < қ иймат >
оператор, оператор,…;
case {1-  қ иймат,2-  қ иймат,…}
operator, operator,…; otherwise,
оператор, оператор,… ;
end
Бу   операторлар   форматидаги  < текширилувчи   ифода >- скаляр   ифода   ёки
қатор ( символли )  б ў лиши   мумкин .  Оператор   қуйидагича   ишлайди :
< текширилувчи   ифода >case   о ст идаги <   қ иймат> га   тенг   б ў лса ,   унда
к ў рсатилган   операторлар   бажарилади ,   акс   ҳ олда   otherwise   дан   кейинг и
операторлар   бажарилади .
Қатор   (символли)   бўлган   ҳолда   <текширилувчи   ифода>нинг
<қийматга>   тенглиги   “рост”ни   беради,   агар   strcmp (<текширилувчи
ифода>,<қиймат>) “рост”ни берса.
Танлов операторларни қ ў ллашга доир мисоллар к ў рамиз.
а)Фараз қилайлик  method   ў згарувчиси мавжуд ва символлар б ў лсин. У  ҳ олда
switch  операторини қуйидагича ишлатилади:
switch   lower  ( method )
case {‘чизи қ ли’, ‘бичизи қ ли’},  disp {‘ чизи қ ли   усул’}
case {‘cubic’}, disp(‘cubic усул’)
case {‘nearest’}, disp(‘та қ рибий усул’)
otherwise, disp (‘нома ъ лум усул’)
end
b)ym.m номли м-файл яратамиз:
ва қуйидагича натижани оламиз:
>>  ym (1)
1-kavrtal
>> ym(4)
2-kvartal >> ym(8)
3-kvartal
>> ym(12)
4-kvartal
>> ym(15)
xato
>>
3.Танлаш   операторлари.   Матлабда   к ў рсатилган   операторлар   кетма-
кетлигини   ма ъ лум   марта   такрорлаб   бажариш   учун   for…end   операторидан
фойдаланилади. Унинг формати қуйидагича:
For <sikl hisoblagich> =<x0:h:xn>
operator
operator
end
Ц икл   қоби ғ ини   ташкил   қилувчи   операторлар   кетма-кетлиги   < ц икл
ҳ исоблагич>ниг   бошлан ғ ич   қиймат   х0   дан   бошлаб   h   қадам   билан   охирги
қиймати   xn   гача б ў лган қийматларида бажарилади.   Агар қадам   h   берилмаса,
тизим уни автоматик тарзда 1 деб  ҳ исоблайди.
Мисоллар :
1) for i=1:10
for j=1:10
a(i,j)=1/(i+j-1);
end
end
Бу   да ст ур   ишлаши   натижасида   (10х10)   ў лчовли   Гилберт   матри ц аси
ҳ осил қилинади.
2) for i=0:2:10
y(i)=x(i)*sin(x(i))+1/(x(i)+1);
end
Ц икл оператор while…end     нинг умумий к ў риниши қуйидагича б ў либ,
оператор   қоби ғ идаги   командалар   кетма-кетлги   нома ъ лум   сонда   (шарт
бажарилгунча) қайтарилади:
while <ifoda>
{operatorlar}
end
Бунда   {операторлар}   кетма-кетлиги   <ифода>   “ёл ғ он”   қиймат   қабул
қил г унча   такрор   бажарилаверади,   <ифода>   худди   шартли   оператор   if   даги
каби   солиштириш   амаллари   орқали   аниқланган   б ў лиши   керак.   Масалан,
қуйидагича
i=2;
x(1)=10;
x(2)=11;
while abs(x(i)-x(i-1))>=0.001
i=i+1
x(i)=(1000-x(i-1))^(1/3); end
>>z=(i,x(i))
кетма - кетликда   ёзилган   код хқ   тенгламанинг   0.0001
аниқликдаги   тақрибий ечимини   топиб   беради .   Бунда ,
while…end   оператор   қоби ғ идаги   ҳ исоблашлар   неча   марта   бажарилиши
нома ъ лум .   Ҳ осил   қилинган   z   векторнинг   биринчи   компонентаси
ҳ исоблашлар   сонини   билдирса , x(i)- ечимни   билдиради .
4.   Да ст урлашга   доир   мисоллар .   Ҳ исоблашларда   т ў хташлар   ҳ осил
қилиш . 1-мисол:   х   векторнинг   йиғиндиси   а   сонидан   ошмайдиган
биринчисидан бошлаб кетма-кет келган барча  координаталарини аниқласин.
Бу масалани ҳал қилувчи командалар кетма-кетлиги қуйидагича бўлади:
>> x , a ;
k=0;
s=0;
while s<=a
k=k+1;
s=s+x(k);
y(k)=x(k);
end
>>y 
2- мисол .   Юқоридаги   1- мисол   вазифасини   if…end   оператори   ёрдамида
бажариш   мумкин .  У  ҳ олда қуйидаги файл функ ц ияни ишлатиш мумкин:
Натижа:
>>  f (2,3)
n  =
     1
ans  =
     2
>> Ҳ исоблашларда паузалар(т ў хталишлар)  ҳ осил қилиш
Дастурнинг   ишлашини   вақтинча   тўхтатиб   туриш   учун   pause
операторидан фойдаланилади. У қуйидаги шаклларда ишлатилиши мумкин:
 pause –ҳисоблашлар бирор клавиша босилгунча тўхтаб туради;
 pause(N)-ҳисоблашлар  N секундга тўхтайди;
 pause on pauzaни қайта ишлаш режимини улайди;
 pause off-паузани қайта ишлаш режимини узади;
Қуйидаги  pause.m  деб номланган м-файлни кўрайлик:
x=0:0.1:10;
pause
y=sin(x);
plot(x,y)
y1=cos(x)
pause(2)
plot(x,y1)
pause(0.5)
y2=x.^2
plot(x,y2)
pause(3)
y3=1./x+2
plot(x,y3)
Ушбу дастур   F 5 клавишаси ёки командалар ойнасидан   pauza   командаси
ёрдамида   ишга   туширилгандан   кейин   pauza   оператори   таъсирида   бирор
клавиша босилгунча  кутиб туради.  Клавиша босилгандан  кейин   sin(x)     нинг
графиги  қурилади.  Кейинги  графиклар   pause(N)   операторларнинг  ишлашига
асосан   маълум   вақт   оралиқлардан   кейин   кетма-кет   қурилади,   яъни   2
секунддан   кейин   cos(x)   нинг,   0.5   секунддан   кейин   х^2   нинг   ва   3   секунддан
кейин 1/х-2 нинг графиги экранда пайдо бўлади.  Ҳ исоблашларда паузалар  ҳ осил қилиниб олинган графиклар.
7-ma’ruza
Oby е ktga   mo’ljallangan dasturlash. Oby е kt va sinfni yaratish.
Oby е ktni b е rilgan sinfga t е gishli ekanligini t е kshirish.
Reja:
1.Obyekt va sinfni yaratish;
2.Obyektni berilgan sinfga tegishliligini tekshirish;
3.Handle va inline funksiyasi;
1.Obyekt   va   sinfni   yaratish.   Biz   Matlab   tizimini   har   xil
obyektlarini   ko’p   marta   ishlatdik.   Bu   esa   obyektga   mo’ljallangan
dasturlashning belgilaridan biri hisoblanadi va bu belgi tashqi belgidir.
Obyektga   mo’ljallangan   dasturlashning   asosini   uchta   holat
belgilaydi:
-Inkapsulatsiya   -berilganlarni  va  dasturlarni  birlashtirish  va  ularni
funksiyalarni   kirituvchi   va   chiqaruvchi   parametrlari   orqali   uzatish.
Dasturlashni   bunday   elementi   obyekt   deyiladi.   Bu   dasturni   qadaydir
monolit   bo’linma   narsa   sifatida   olib   qaramay   ko’plab   mustaqil
elementlarga   bo’lishimkonini   beradi.   Har   bir   element   alohida   modul
sifatida   olib   qaraladi.   Inkapsulatsiya   tarjimasi-girmetik   berkitilgan,
tashqi ta’sirlardan himoyalangan dastur qismi deganidir.
- Me’rosxo’rlik( наследование ) -yangi   obyektlarni   yaratish   va
ularning   xossalarni   o’zida   saqlab   qolgan   tegishli   bo’lgan( дочерний )
obyektlarni   yaratish.   Bir   necha   obyektlarni   xossalarini   saqlab   qoluvchi
obyektlar   sinfini   ham   yaratish   mumkin.   Me’rosxo’rlikka   berilganlarni
turlarini   berish   va   boshqa   dasturlash   elementlari   kiradi.   Me’rosxo’rlik
yordamida paydo bo’lgan obyekt metod va xususiyatlari 3 ta ko’rinishga
ega bo’lishi mumkin: 1)o’ringa   o’rin   qo’yish(almashtirish)   yangi   obyekt   ajdodlarining
xususiyatlarini   shunchaki   o’zlashtirib   olmaydi,   balki   unga   ta’rif   ham
beradi;
2)yangi   sinf   yoki   obyekt   utunlay   yangi   metodlar   yoki
xususiyatlarni qo’shadi;
3)rekursiv, yangi obyekt o’z ajdodlarini xususiyatlarini to’g’ridan-
to’g’ri olib qoladi.
- Polimorfizm -yuqoridan pastgacha hosil qilingan obyektlar ketma-
ketligida   ishlatiluvchi   qandaydir   harakatga   bir   xil   nom   berish.   Bu
shunday holatki, bunda qandaydir bitta sinf ko’p shakllarga ega bo’ladi.
Dasturlashda   ko’p   shakllar   deganda   bitta   nom   bilan   avtomatik
mexanizm tomonidan tanlab olingan turli kodlarning nomidan ish qilish
tushiniladi.   Polimorfizm   yordamida   bitta   nom   turli   xususiyatlarni
bildirishi mumkin. Polimorfizmning 3 ta turi mavjud:
1)qo’shilish polimorfizmi;
2)parametrik polimorfizm;
3)ortiqcha yuklanish;
Bulardan   tashqari   Matlabning   o’zida   obyektlar   qismlarini
birlashtiruvchi va bir nechta obyektlarni birlashtirish imkoniyati mavjud.
Obyektlar sinfi
Obyektni aniq bir sinfga tegishli qandaydir struktura kabi aniqlash
mumkin. Matlabda obyektlarni yettita asosiy sinfi mavjud:
-double-ikkilangan aniqlikdagi sonly elementlar massivi;
-sparse-ikki o’lchovli sonli va kompleks matritsalar;
-struct-strukturalar (yozuvlar) massivi;
-cell-yacheykalar massivi;
-javaarray-java massivi;
-function_handle-funksiyalar diskreptorlari;
2.Obyektni   berilgan   sinfga   tegishliligini   tekshirish.   Biz   bu   sinflar
obyektlari   bilan   tanishganmiz,   lekin   ularni   qaysi   sinfga   tegishli
ekanligiga   urg’u   berilmagan.   Matlabga   xos   xususiyatlardan   biri   hech
qanday   sinflar   e’lon   qilinmaydi,   u   yangi   tuzilgan   bo’lsa   ham,   masalan
name=’nom’   o’zgaruvchisini   hosil   qilib   simvollar   massiviga   tegishli
bo’lgan name obyektini olamiz. Bu char sinfiga tegishli bo’ladi. Demak
har   bir   o’zgaruvchi   qabul   qilgan   qiymatiga   qarab   u   yoki   bu   sinfga
tegishli ekanligi aniqlanadi.
O’zgaruvchi   obyekligini   aniqlash   uchun   isobject(x)     funksiyasini
ishlatiladi.   Obyektni   va   obyektlar   sinfini   hosil   qilish   uchun   class   (obj) operatori ishlatiladi. Bu operator obj obyektining sinfini chiqarib beradi.
Masalan,(double, sparse, char, cell va hokazo bo’lishi mumkin )
Obj=class(s,’class name’, parent1, parent2,…)
Komandasi   ‘   ’ichidagi   sinfga   tegishli   bo’lgan   s-struktura   va   parent1,
parent2   obyektlar   bazasida   yangi   obj   obyektni   hosil   qilib   beradi.   Bu
oyekt   parent1   va   parent2   obyektlarning   strukturasini   va   boshqa
xossalarni o’zida mujassamlashtiradi.
isa(obj, ‘name class’)
komandasi   mantiqiy   1   ni   hosil   qiladi,   agar   obj   opostrif   ichidagi   sinfga
tegishli bo’lsa, aks holda 0 ni beradi.
>> x=[1 2 3];
>> isa(x,'char')
ans =
     0
>> isa(x,'double')
ans =
     1
>>
3.Handle   va   inline   funksiyasi.   Matlabda   handle   funksiya   deb
ataluvchi  alohida   obyektlar   yaratish  mumkin.   Handle   funksiyani   qurish
uchun   birlik   simvollar   @   dan   foydalaniladi.   Masalan,   fhsin   nomli
sinusni qiymatini hisoblovchi handle funksiyasi quyidagicha bo’ladi:
>> fhsin=@sin
fhsin = 
    @sin
Bu oddiy funksiya emasligi quyidagidan ko’rinadi:
>> fhsin(1)
ans =
    0.8415
>>
Bunda   hisoblash   bajarilmaydi,   balki   handle   funksiyaning   oddiy
aniqlanishi   berildi.   Demak,   handle   funksiya   o’z   nomi   bilan
xarakterlanadi, lekin argumentga ega emasdir. Bu funksiyaning nomi ha
xuddi fayl funksiyaning nomi kabi bo’lishi kerak.
Handle funksiyani hisoblash uchun quyidagi buyruq bajariladi:
>>feval(<handle funksiya nomi>,<handle funksiya argumentlari>)
Bu yerda handle funksiya nomi @-belgisiz ishlatiladi. Endi biz yuqorida
hosil   qilingan   sinusni   qiymatini   hisoblovchi   handle   fuksiyasini
hisoblashiniz mumkin. >> feval(fhsin,1)
ans =
    0.8415
>>
Handle funksiyaning grafigini chizish mumkin, masalan:
>> plot(feval(fhsin,0:.01:2*pi))
Matlabda
foydalanuvchining
funksiyalarini
beruvchi yana   bir   muhim
funksiyalar   sinfi
bu   inline funksiyalardir.   Bu
funksiyaning quyidagi ko’rinishlari bor:
d=inline(‘ifoda’)
d=inline(‘ifoda’, <argumentlar>)
d=inline(‘ifoda’, <parametrlar soni>)
<parametrlar> quyidagi  p1, p2,… ko’rinishida bo’ladi. Eng muhimi ‘ifoda’
ixtiyoriy   matematik   ifoda   bo’lishi   mumkin,   argumentlar   esa   bitta   yoki   bir   nechta
bo’lishi mumkin.
Masalan, f(x,y)=
>> fc=inline('sin(2*x+y)^2+cos(x-y)^2')
fc =
     Inline function:
     fc(x,y) = sin(2*x+y)^2+cos(x-y)^2
>> fc(0,0)
ans =
     1
>> fc(3,4)
ans =
    0.5879
>> fc(pi/7,pi/11)
ans =
    1.8307  
8-ma’ruza
MATLAB ni oddiy grafikasi. Ikki o’lchamli grafika. Gistogramma. Uch
o’lchamli grafika.
Reja:
1. Matlabda grafik chizishning imkoniyatlari.Ikki o’lchovli grafika;
2. Gistogrammalar. Polyar koordinatalarda grafika.
3. Uch o’lchovli grafika. Grafik chizishga doir misollar;
4. Bir nechta grafiklarni hosil qilish va boshqa imkoniyatlar. 1.   Matlabda grafik chizishning imkoniyatlari. Ikki o’lchovli grafika.   Matlab
tizimining   eng   katta   xususiyatlaridan   biri,   unda   grafik   chizish   imkoniyatini
mavjudligidir. Biz Matlabda ikki vektor grafigini chizishning eng soda va umumiy
komandalari bilan tanishamiz.
Matlabda   grafiklarni   har   xil   koordinata   sistemalarda   qurish   mumkin.
Bulardan   to’g’ri   burchakli   dekart   koordinatalari   sistemasi,   polyar   koordinatalari,
sferik   va   silindrik   sistemalarni   keltirish   mukin.   Undan   tashqari   koordinatalrni   bir
sistemadagi ko’rinishidan boshqa ko’rinishga o’tkazish mumkin.
Biror   bir   sistemada   grafik   chizish   uchun   umumiy   bo’lgan   ba’zi
koordinatalarni keltiramiz:
 Plot(x,y)-x va y vektorlarning dekart tekisligidagi grafigini hosil qiladi;
 Plot(y)- y ning y-vektor elementlari nomerlarga nisbatan grafigini yasaydi;
 Semilog(x,y)- “x”ni logarifmi grafigini “y”ga nisbatan grafigini yasaydi;
 Semilogy(x,y)-“x”ning   grafigini   “y”ning   logarifmiga   nisbatan   grafigini
yasaydi;
 Loglog(x,y)-“x”ni logarifmini “y”ni logarifmiga nisbatan grafigini yasaydi;
 Grid-koordinatalar sistemasida to’rni hosil qiladi;
 Title(‘matn’)- grafik tepasiga matn yozadi;
 Xlabel(‘matn’)- “matn”ni “x” o’qi ostiga yozadi;
 ylabel(‘matn’)- “matn”ni “y” chap tomoniga yozadi;
 text(x,y,’matn’)- “matn”ni (x,y) nuqtaga yozadi;
 polar(theta,   r)-   r   va   theta   vektorlarning   polyar   koordinatalar   sistemasida
grafigini yasaydi (bu yerda theta faqat radianlarda beriladi);
 bar(x) yoki stairs(x)- “x” vektorning gistogrammasini yasaydi;
 bar(x,y)   yoki   stairs(x,y)-“y”   vector   elementlarini   gistogrammasini   “x”
vektorning elementlariga mos to’plamga joylashtirib chizadi;
Dekart   koordinatalar   sistemasida   grafik   chizish   (x,y)   juftligini   qiymatlafini
berib,   hosil   bo’lgan   nuqtalarni   kesmalar   bilan   tutashtirish   orqali   hosil   qilinadi.
Demak  (x,y)  juftliklar   soni   qanchalik ko’p  bo’lsa  grafik  ham   shunchalik  silliq va
aniqroq   bo’ladi.   Juftliklar   avvaldan   berilgan   bo’lishi   yoki   ma’lum   funksiyaning
argumenti   va   qiymatlaridan   hisoblab   hosil   qilinishi   mumkin.   Masalan,  
funksiyaning   xє[0,2]   dagi   grafigini   chizish   kerak   bo’lsa,   u   holda   quyidagi
komadalar ketma-ketligi yetarli bo’ladi:
>> x=0:1:2;
>> y=exp(x); >> plot(x,y)
>>
Plot(x,y)-
komandasi
grafik oynani
ochadi. Yangi
komandani
e’lon qilish
kursorni
komandalar
darchasiga   o’tkazishimiz   kerak.Darcha   qayta   chizmaslik   uchun   …   (qatorni
davomi) belgisini ishlatish mukin.
>> plot(x,y)...
>> grid,...
>> title('korsatkichli funksiya'),...
>> xlabel('x'),...
>> ylabel('exp(x)'),...   
Ko’pincha grafik komandalar M-faylga joylashtiriladi (Ishchi fayl yoki fayl
funksiyalar). Bu usul xatoliklarni to’g’rilash uchun yaxshi imkoniyat beradi.
x:0.:1:10;
loglog(x,sin(x),’--ob’);
grid on Bu yerda   ‘--’   -
liniya   turi,
‘0’- aylana
tugun
nuqta   turi,
‘b’- havorang
liniya
rangi.
>>
x=0:0.5:10;
>> semilogy(x,sin(x),'--or')
>> grid on
2.Gistogrammalar.   Polyar   koordinatalarda   grafika.   Amaliy   hisoblarda   biror
vector tarkibini tasvirlaydigan ustunli diagrammalar deb ataluvchi gistogrammalar ko’p   uchraydi.     Bunda   vektorning   har   elementi   balandligi   uning   qiymatiga   mos
bo’lgan   ustun   shaklida   ko’rsatiladi.   Ustunlar   tartib   raqamlariga   va   eng   baland
ustunning   maksimal   qiymatiga   nisbatan   ma’lum   masshtabga   ega   bo’ladi.   Bunday
grafiklar bar(a) komandasi yordamida quriladi:
>> a=[2 4 6 8 10 12];
>> bar(a)
Bundan
tashqari
gistogramma
qurishning
yana boshqa   usuli
ham mavjud bo’lib, bu hist funksiyasi yordamida amalga oshiriladi:
 N=hist(Y)-   avtomatik   tanlandan   10   intervalli   vector   qiymatini
qaytaradi;
 N=hist(Y,M)-huddi   yuqoridagi   kabi,   faqat   M   (M-skalyar)   intarvalda
qaytaradi;
Quyidagi misolni ko’ramiz:
>> x=-3:0.2:3; y=randn(1000,1);
>> hist(y,x); h=hist(y,x)
h =
  Columns 1 through 13
     2     3     4     5     4    12    20    22    30    32    39    56    73
  Columns 14 through 26
    64    66    88    81    71    72    60    47    33    35    25    20    12
  Columns 27 through 31
     8     7     3     3     3
>> Qutbli   koordinatalr   tizimida   ixtiyoriy   nuqta   xuddi   radius   vektor   oxiri   kabi
boshlang’ich koordinatlar tizimidan chiqib, RHO uzunlikka va THETA burchakka
egaligini   ko’rsatadi.   RHO(THETA)   funksiya   garfigini   qurish   uchun   quyida
keltirilgan buyruqlardan foydalaniladi. THETA burchagi odatda 0 dan 2*pi gacha
o’zgaradi. Qutbli koordinatalar tizimida funksiya grafigini qurish uchun polar(…)
tipidagi buyruqdan foydalaniladi :
 Polar(THETA,   RHO)   qutbli   koordinatalar   tizimida   radius-vektor   oxirining
o’z   holatidagi   RHO   uzunlik   bilan   va   THETA   burchakni   ko’rsatuvchi
garfikani quradi;
 Polar(THETA,   RHO,   S)   analogli   avvalgi   buyruqda   ishtirok   etgan,   lekin     S
qatorli   konstanta   yordamida   qurish   uslubini   analogli   plot   buyrug’i   asosida
ruxsat beradi.
Quyidagi misolni ko’ramiz:
>> angle=0:.1*pi:3*pi;
>> r=exp(angle/10);
>> polar(angle,r),...
>> polar(angle,r);
>> title('polar koordinatida grafik');
>> grid on 3.Uch
o’lchovli
grafika.
Grafik
chizishga
doir misollar.
Uch o’lchovli
fazoda   garifa
chizish uchun plot3(x,y,z) buyrug’idan foydalaniladi. Bunda x,y,z-vektorlar bir xil
sondagi koordinatalarga ega bo’lish kerak. Masalan,
>> t=0:pi/50:10*pi;
>> plot3(sin(t),cos(t),t)
Bundan tashqari 
quyidagi komandalar 
mavjud:
 mesh -bu uch 
o’lchovli 
“to’r”ni chizadi;
 surf -uch 
o’lchovli sirt;
 fill3 -uch o’lchovli to’ldirilgan ko’pburchak. Meshgrid funksiyasi x,y larning qiymatlaridan x,y matritsalar hosil qiladi. Agar x
va   y   larning   qiymatlari   bir   xil   to’plamda   bo’lsa   meshgrid   funksiyaning
argumentida   1   ta   argument   qiymati   ko’rsatilsa   yetarli.   Masalan,   Z= ,  
,
x,yє[- 8,8]   bo’lsin,   u
holda 
>>
[x,y]=meshgrid(-8:.5:8);
>> R=sqrt(x.^2+y.^2)+eps;
>> z=sin(R)./R;
>> mesh(z)
Buyruqlar ketma-ketligi sirtni grafigini fazoda chizib beradi.
>> [x,y]=meshgrid(-7:0.1:7);
>> z=x.*sin(x+y);
>> meshc(x,y,z)
4.Bir nechta
grafiklarni hosil   qilish va   boshqa   imkoniyatlar.   Matlabda   bir   grafik   oynasida   bir   necha   grafiklar   hosil
qilish mumkin. Buning uchun grafik darchasini ochiq holda saqlash kerak. Bu esa
hold   buyrug’i   yordamida   amalga   oshiriladi.   Masalan,   y=sin(x),   z=cos(x)   xє[0,π]
funksiyalar grafigini bir oynada chizish uchun quyidagicha buyruqlar ishlatiladi:
>> x=0:.4*pi:pi;
>> y=sin(x);
>> plot(x,y)
>> hold
>> z=cos(x);
>> plot(x,z)
Shundan   keyin   holg off
komandasini   hold   ni
ishlashini   to’xtatuvchi
sifatida   ishlatishi   mumkin.
Matlabda grafiklarni faqat nuqtalar orqali ham chiqarish mumkin. U holda nuqtalar
uchun   quyidagi   belgilar   ishlatiladi:   .,   +,   *,o   va   boshqalar.   Masalan,   plot(x,y,’o’)
har bir nuqtani o kabi belgilab, grafikni nuqtalar ketma-ketligi shaklida tasvirlaydi.
Chiziqlarni rangli qilib ham chiqarsa bo’ladi. Buning uchun r-qizil, g-bargrang, b-
havorang, w-oq rang. 
Grafik qurishning quyidagi boshqa imkoniyatlari mavjud:
1. Silindrni uch o’lchovli fazoda qurish: 
-[x,y,z]=cylinder(R,N)-x,y,z   massivlarni   hosil   qiladi.   Bu   massivlar   R
radiusli silindr hosil qiladi. N tugun nuqtalar sonini bildiradi. Shunday siklni qurish
uchun surf(x,y,z) buyrug’I ishlatiladi.
-[x,y,z]=cylinder(R)   yoki   [x,y,z]=cylinder   xuddi   yuqoridagi   kabi   bo’lib,
bunda R=[11], N=[20]
Masalan, [x,y,z]=cylinder(10,30); surf(x,y,z,x). Bunda surf buyrug’i x vector orqali
aniqlanuvchi rangga funksional buyoq berish imkoniyatini beradi.
2. Sfera uch o’lchovli fazoda:
x,y,z sfera koordinatalarni aniqlash uchun sphere funksiyasi ishlatiladi. 
-[x,y,z]=sphere(N)   x,y,z-matritsalar   hosil   qiladi.   Ular   (N+1)x(N+1)
o’lchovli bo’ladi. Sfera qurish uchun surf(x,y,z) yoki surfl(x,y,z) ishlatiladi.
-[x,y,z]=sphere   xuddi   avvalgidek,   N=20.Masalan,   [x,y,z]=sphere(30);
surfl(x,y,z). Bunda vektor ranggi z bilan berilyapdi, u x yoki y bilan ham berilishi
mumkin.
9-ma’ruza Maxsus grafika. Animatsiyani bajarish vositalari. Diskriptorli grafika.
Foydalanuvchi int е rf е ysini yaratish
Reja:
1. Animatsiyani bajarish vositalari;
2. Diskriptorli grafika ;
3. Foydalanuvchi intеrfеysini yaratish ;
4. Uch o’lchovli grafika galeriyasi va unga kirish.
1.Animatsiyani   bajarish   vositalari.   Nuqtaning   tekislikda   harakatlanish
trayektoriyasini   aks   ettirish   uchun   comet   komandasidan   foydalaniladi.   Bunda
nuqta   izga   ega   bo’lgan   kometaning   yadrosini   eslatadi.   Ushbu   komanda   quyidagi
ko’rinishlarda qo’llaniladi:
 comet(y)-“kometa”ning   y   vector   bilan   berilgan   trayektoriya   bo’yicha
harakatlanishini aks ettiradi;
 comet(x,y)-“kom е ta”ning  y  va  x  vektorlar juftligi bilan berilgan trayektoriya
bo’yicha harakatlanishini aks ettiradi;
 comet(x,y,z)-avvalgi   komandaga   o’xshash,   faqat   kometa   izining   uzunligini
ham ko’rsatish mumkin. Kometaning izi boshqa rangga bo’yalgan bo’ladi, u
p*length(y)   ko’rinishida   beriladi(length(y)-   y   vektorning   o’lchami,   p<1,
sukut bo’yicha p=0,1).
Quyidagi comet komandasidan foydalanishga doir misol keltirilgan:
>> t=0:.01:2*pi;
>> comet(y,x,0.3);
>> y=sin(2*t).*(sin(t).^2);
>> =cos(2*t).*(cos(t).^2);
>> comet(y,x,0.3);
>>
Nuqtaning fazoda
harakatlanishi
Nuqtaning   uch
o’lchamli   fazoda
harakatlanishini   kuzatish   uchun   quyidagi   ko’rinishlarga   ega   bo’lgan   comet3
komandasidan foydalaniladi:
 comet3(z)-nuqtaning   z   vector   bilan   berilgan   uch   o’lchamli   egri   chiziq
bo’yicha harakatlanishini aks ettiradi;
 comet3(x,y,z)-“kometa”   nuqtaning   fazoda   [x(i),   y(i),z(i)]   nuqtalar   bilan
aniqlanadigan egri chiziq bo’yicha harakatlanishini aks ettiradi;  comet3(x,y,z,p)-avvalgi   komandaga   o’xshash,   faqat   kometa   izining
uzunligini   ham   ko’rsatish   mumkin.   Kometaning   izi   p*length(y)
ko’rinishida   beriladi(length(y)-y   vektorning   o’lchami,   p<1,   sukut
bo’yicha p=0,1).
Quyida comet3 komandasidan foydalanishga misol keltirilgan:
>> t=-10*pi:pi/250:10*pi;
>> z=(sin(5*t).^5).*cos(t);
>> (cos(2*t).^2).*sin(t),t;
>> comet3(z);
Nuqtaning   ikki   va   uch   o’lchamli   faz а dagi   harakati   eng   sodda
animatsiyalardan   bo’lishiga   qaramasdan   dinamik   masalalarni   grafik
vizuallashtirish imkoniyatlarini kengaytiradi. 
2.Diskriptorli   grafika.   Diskreptorli   grafika   bilan   tanishishdan   avval,   grafik
ustida   bajarilishi   mumkin   bo’lgan   ba’zi   yordamchi   tushunchalarni   o’rganamiz. Bulardan   biri   grafik   chiziqlarni   markerlash   va   formatlashtirishdir.   Dekart
tekisligida   kursorni   chiziq   ustiga   qo’yib   sichqonchani   chap   tugmasini   bosilsa,
chiziq ustida uni xarakterlovchi qora kvadratchalar hosil bo’ladi va chiziq alohida
ko’rinishga   ega   bo’ladi.   Ma’lumki,   dekart   tekisligida   grafik   chiziqlari   berilgan
(x,y)   juftlik   nuqtalarni   mos   oraliqdagi   o’rinlarni   tutashtirish   natijasida   hosil
qilinadi.   Shu   nuqtalar   har   xil   belgilar   (markerlar)   bilan   belgilanishi   mukin.
Masalan,   bu  belgilar   “o,*,x”   va   boshqalar   bo’lishi   mukin.  Grafik  chiziqlar   ustida
markerlarni   hosil   qilganda   ularni   o’lchamlarini,   rangini   berish   mumkin   bo’ladi.
Grafik   chiziqlarda   markerlarni   ishlatish   ularni   alohida   ajratib,   ko’rinarliroq
bo’lishini ta’minlaydi.
Undan tashqari quyidagi grafik oyna interfeysidan foydalanish mumkin:
-Copy Figure – grafikni buferga nusxalash;
-Copy Options-grafik parametrlarni nusxalash;
-Figure Properties-grafik xossalari oynasini chiqarish;
-Axes Properties- grafik o’qlari xossalari oynasini chiqarish;
-Current Object Properties – joriy obyekt xossalari oynasini chiqarish.
Foydalanish   uchun   zarur   bo;lgan   Tools   mexanizmlar   menyusi
quyidagichadir:
-Edit Plot-grafikni tahrirlash;
-Zoom In-grafik masshtabni kattalashtirish;
-Zoom Out-grafik masshtabini kichiklashtirish;
-Rotate 3D-fazoda (uch o’lchovli) grafikni burish(aylantirish);
-Basic Fitting-appraksimatsiya qilish;
-Data-grafik nuqtalari uchun statistik ma’lumotlarni olish;
-Rectangle(to’g’ri   to’rtburchak)-bo’lgan   to’g’ri   to’rtburchaklarni   yaratuvchi
obyekt;
-Surface(sirt)-sirtni yaratuvchi obyekt;
-Text(matn)-tekstli yozuvlarni yaratuvchi obyekt;
-Light(yorug’lik)-yorug’lik effektini yaratuvchi obyekt.
Obyektlar   o’zaro   bog’langandir   va   qandaydir   grafik   effektini   hosil   qilish
uchun bir- biriga murojat qilishi mumkin.
Koordinata   o’qlarini   yaratish   va   boshqarish   uchun   quyidagi   komandalar
ishlatiladi:
-axes-koordinata o’qlarini yaratuvchi komanda;
-box(quti)-rasmni atrofida to’rtburchak qurish komandasi;
-cla-axes qurishlarni olib tashlash;
-hold-koordinata o’qlarini saqlab turish;
-ishold-hold     statusini tekshirish(1 ga teng agar hold ishlayotgan bo’lsa, aks holda
0 ga teng).
Diskriptor   grafikasi   obyektini   qo’llashga   misol:(0,1),   (2,4)   va   (5,-1)
nuqtalardan   o’tuvchi   chiziq   grafigi   qurish   talab   qilinsin.   Buning   uchun   line
obyektidan   foydalanamiz.   Bu   obyekt   xuddi   shu   nomdagi   quyidagi   grafik
komandasi bilan quriladi:
>> line([0 2 5],[1 4 -1],'color','blue') Line
komandasining   xususiyatlari   shundan   iboratki,   unda   grafik   qurishning   barcha
shartlari   ochiq   holda   ko’rsatilgan   bo’ladi.   Bular   yuqoridagi   misolda   konkret
nuqtalar koordinatalari, rang parametrlari, color va rangning o’zi ‘blue’.
Obyektlar diskreptorlari.
Diskriptor   grafikasi   obyektlari   tushunchasi   bilan   obyektlarning   alohida
xususiyatini   bildiruvchi   diskriptor   bog’langandir.   Diskriptorni   obyektlarni
aniqlovchi qandaydir son deb tushunish mumkin. Root obyektlarning diskrptori har
doim  0  ga teng,  figure  obyektlariniki   grafik oynaning  nomerini   bildiruvchi   butun
son,   boshqa   obyektlarniki   esa   suzuvchi   vergulli   sonlardir.   Bitta   shunday
obyektning   diskriptori   bitta   son   bo’ladi,   bir   necha   obyektlarning   diskriptori   bir
nechta sonlar(vektorlar) bo’ladi.
Bu faylda 3ta obyekt berilgan: 
fh-figure sinfining obyekti;
ah metkali o’qlar-axes sinfining obyekti;
sh-surface sinfining obyekti.
Bu ms faylni 1-qo’yishda setka hosil bo’ladi:
>>view(3) komandasi esa uch o’lchovli sirtni hosil qiladi.
3.Foydalanuvchi   int е rf е ysini   yaratish.   Matlab   tizimi   bilan   ishlash
imkoniyatini   foydalanuvchi   interfeysi   orqali   amalga   oshiriladi.   Instrumentlar
paneli oynasi Matlab dasturi oynasining asosiy qismlardan biri:
        1
       2
         3 4
       5 6 7 8 9 10
1. New M_file  ( Новый  m_ файл )  – Yangi m-faylni ochish;
2. Open file  ( Открыть   файл )  – m-faylni ochish;
3. Cut  ( Вырезать ) – belgilangan qismni kesib oladi va buferga joylashtiradi ;
4. Copy  ( Копировать )  – belgilangan buffer fragmentidan nusxa oladi;
5. Paste   ( Вставить )   –   chiqarish   kerak   bo’lgan   qatorga   buffer   fragmentini
joylashtiradi;
6. Undo  ( Отменить )  – avvalgi operatsiyani bekor qilish;
7. Redo  ( Повторить )  – bekor qilingan so’nggi operatsiyani qayta tiklash ;
8. Simulink   – Simulink kutubxonasidan brauzer oynasini ochish;
9. GUIDE   – grafik interfeysli kengaytirilgan oynani ochish;
10. Help  ( Помощь )  – ma’lumotnoma oynasini ochish.
M atlabda   kiritilayotgan   buyruqlarni   ko’rsatib   borish   vazifasi
alohida   grafik   interfeysga   yuklatiladi.   Bu   interfeys   foydalanuvchi
interfeysi deyiladi-GUI(Graphe User Interface). Ushbu dasturda boshqa
yuqori darajadagi obyektga mo’ljallangan dasturlashda bo’lgani kabi bir
nechta   ma’lumotlarni   kiritish   vositalardan   foydalanish   mumkin.   Ularni
ifodalash uchun an’anaviy grafik interfeysdan foydalanish yetarli emas.
Buning uchun maxsus visual grafik interfeys tashkil etilgan bo’lib, uning
nomi GUIDE(Graphe User Interface Designer). Ushbu  interfeys alohida
kutubxona   ko’rinishida   tashkil   etilgan   bo’lib,   uning   tarkibiga   barcha
visual ma’lumot kiritish obyektlari joylashtirilgan. Ularga misol sifatida
tugma, checkbox, radio, matn kiritish obyekti, grafik chizish obyekti va
boshqalarni olish mumkin. Ushbu kutuxonani ishga tushirish uchun GUI
foydalanuvchi ishchi stoliga quyidagicha buyruq beriladi:
>>guide
Ushbu   buyruq   kiritilganda   maxsus   oyna   ochilib,   bu   oyna
yordamida   foydalanuvchi   o’ziga   kerakli   bo’lgan   dizayndagi   oynani
tanlash mumkin. Bu oynalarni 4 xil variant bor: 1
2
3
   4
1. S
tan dart
uskunalar oynasi  Blank GUI (default).  Bunda barcha uskunalar va obyektlar passiv
holatda   bo’ladi.   Bo’sh   formaning   o’zi   mavjud   bo’lib,   kerakli   uskunalarni
foydalanuvchi o’zi o’rnatadi.
2. GUI
with
Uicontrols.  Ushbu bo’limda bir qancha obyektlar aktiv hisobalanib, undan shablon
sifatida foydalanish mukin. 3. GUI   with
Axes and Menu.  Ushbu bo’lim ham 2-bo’lim kabi bir qancha aktiv obyektlarni o’z
ichiga oladi. Bularga grafik chizish obyekti va menu obyektlarni olish mumkin.
4. Modal
Question Dialog.
Ushbu   bo’limda   bir   nechta   muloqot   oynalar   bilan   ishlash   jarayoni   keltirilgan.
Matlabda bir necha o’nlab muloqot oynalari mavjud. Bularga xatoliklarni bosmaga
chiqaruvchi   muloqot   oynasi,   xujjatlarni   saqlash   muloqot   oynasi,   saqlangan
xujjatlarni   ochish   muloqot   oynasi,   ogohlantirish   muloqot   oynasi   va   boshqalar.
Dasturda   nafaqat   yangi   interfeys   yaratibgina   qolmasdan,   oldin   mavjud   bo’lgan
interfeyslarni ochish mumkin.
4.Uch
o’lchovli
grafika galeriyasi   va
unga kirish.
Matlabda 3-o’lchovli grafik imkoniyatlari bilan tanishish uchun professional tarzda bajarilgan   grafik   dasturlar   galereyasi   mavjuddir.   Ular   kirish   demonstratsiya
rejimidan   ham   (komanda   Examples   and   Demos→menu   help   komandnogo   okno
Matlab) va komandalar rejimidam ham (ma’lum faylni nomini terib) murojat qilish
mumkin.
Galereya quyidagi shakllar  va fayllar bilan aniqlanadi:
Figura nomi Fayl Figura tuzilishi
Knot Knot.m Bog’langan (uzel) xalqa
Quiver Quiv demo.m Vektor hajmli maydon
Kleinll Kleinl.m Hajmli xalqa
Cruller Cruller.m Mebiusning hajmlisi
Hoops Tory4.m 4 ta hajmli xalqalar
Slosh Spharm2.m O’rdakka o’xshash xalqani qurish
Modes Modes.m Uch o’lchovli sirt animatsiya
fazalarni ko’rsatish
Logo Logo.m Matlab sistemasi logotipini qurish
Misollar: 
knot.m cruller.m
10-
Ma’ruza
Matlab paketining kengaytmasi. Matlabda kutubxonalardan foydalanish
Reja: 1.Matlabning strukturasi;
2.Wavelet kutubxonasi;
3.Image Processing kutubxonasi;
4.Signal Processing kutubxonasi.
1. Matlabning strukturasi.  Matlab strukturasini (tuzilishini) umuman olganda
ikkita katta qismdan iborat deb hisoblash mumkin: 
1.Yadro;
2.Kutubxonalar.
Matlabning   yadrosi   asosan   umumiy   harakterga   ega   bo’lgan   operatsiyalar   va
funksiyalardan   iboratdir.   Kutubxonalar   esa   tor   mutaxassislikdagi   funksiyalardan
iborat   bo’lib,   foydalanuvchilar   uchun
shu   mutaxassisliklar   doirasida
berilganlarga   ishlov   berish   va
hisoblashlarni   bajarish   imkoniyatini
beradi.
Matlab   tizimida   juda   ko’p
kutubxonalar   mavjud   bo’lib,   ularni   bir
qismi   MathWorks   kompaniyasi
tomonidan   yaratilgan,   bir   qismi   esa
foydalanuvchilar   tomonidan
yaratilgandir.   Kutubxonalarni   yana
kengaytirish   imkoniyati   ham
mavjuddir.   Kutubxonalardagi
funksiyalar   matematik   mantiq,
boshqarish   nazariyasi,   neyron   to’rlar,
matematik   modellashtirish,   signallarga
ishlov   berish   va   boshqa
yo’nalishlardagi   masalalarni   yechishga
mo’ljallangan. 
MATLAB   dasturchilarga
quyidagi   sohalardagi   paketlar
kengaytmasini   taqdim   etdi:   harbiy
sanoat   majmualari,   energetika,
aerokosmik va avtomobil qurilishi va b.
Ammo   shular   ichidan   turli   tizim   va
qurilmalarni   blokli   imitatsion   modelini   qiluvchi   Simulink   paketi   eng   mashhuriga
aylandi.
MATLAB+Simulink   tipik   kompleksi   katta   qiymatdagi   MATLAB   paketlar
instrumentlar   “qutisi”   Toolboxes   va   visual-mo’ljallangan   blokli   imitatsion
modellashgan Simulink dinamik tizimini imkoniyatlarni kengaytiruvchi Blocksets
dan iborat. Simulink paketi Matlab bilan birga o’rnatiladi. 2.Wavelet   kutubxonasi.   Wavelet   kutubxonasi-Matlab   bazasida
shakllantirilgan funksiyalar to’plami bo’lib, ular elementar to’lqinlar va elementar
to’lqinlar   paketini   ishlatuvchi   signal   va   tasvirlarni   Matlab   strukturasida   analiz   va
sintez qilishning instrumental vositalari bilan ta’minlab beradi.
Instrumental vositalar ikki xil bo’lishi mumkin:
-komandalar qatori funksiyalar;
-grafik interaktiv instrumental vositalar.
Birinchi   turdagi   vositalar   bu   shunday   funksiyalarki,   ularni   bevosita
komandalar   qatoridan   chaqirish   mukin   bo’ladi.   Bu   funksiyalar   asosan   M-fayllar
bo’lib,   ular   elementar   to’lqinlarning   maxsus   analizini   amalga   oshiradi.   Bu
funksiyalar kodini:
Type<funksiya nomi>
komanda   yordamida   o’rganish   mumkin   bo’ladi.Yoki   Matlab   dasturiga   Demos
buyrug’ini   berib,   u   yerdan   Toolbox   bo’limi   orqali   yuqoridagi   kutubxona   haqida
ma’lumot olish mumkin.
 Funksiya bosh qismini(yordamchi qism)
>>Help<funksiya nomi>
komanda   orqali   ko’rish   mumkin   bo’ladi.   Wavelet   kutubxonasining   barcha
funksiyalari ro’yhatini:
>>Help wavelet
komandasi   ko’rsatib   beradi.   Kutubxonadagi   ixtiyoriy   funksiyani   ishlatishini
o’zgartirish   mumkin.   Buning   uchun   uni   nusxasini   nomi   o’zgartirilgan   M-faylga
joylashtiriladi.   Wavelet   kutubxonasini   yangi   funksiyalar   bilan   kengaytirish
mumkin. Ikkinchi   turdagi   instrumental   vositalarga   grafik   instrumental   vositalar
interfeysi majmuasi kiradi. Bu vositalar yordamida keng funksional imkoniyatlarga
kirish   imkoniyati   yaratiladi.   Bu   vositalarga   komandalar   qatoridan   Wavemenu
komandasi orqali murojat qilinadi.
Bunda   kerakli   bo’lim   tanlanadi,   masalan,   Wavelet   2-D   ni   tanlab   quyidagi   natijaga
erishamiz: Wavelet Toolbox har xil ko’rinishidagi signal va tasvirlarni analiz va sintez
qilish uchun uzluksiz “diskrit veyvlet o’zgartirishlar” deb tushunsa bo’ladi.
3.Image   Processing   kutubxonasi.   Bu   shunday   funksiyalar   majmuasiki,   ular
Matlabning   imkoniyatlarni   yanada   kengaytiradi.   Bu   kutubxona   tasvirlarga   ishlov
berish bo’yicha keng diapazondagi amaliyotlarni amalga oshiradi. Ulardan:
 Geometrik amaliyotlar;
 Chiziqli filtrlash va filtrlarni ishlab chiqish;
 Almashtirishlar;
 Tasvirlarni analiz qilish;
 Ikkilik tasvirlar bilan amaliyotlar. 
Bu kutubxonaning II versiyasi  I ga nisbatan ancha ko’p afzalliklarga ega. I
versiyaning   ko’p   funksiyalari   tezlik   va   kam   xotira   ishlatish   maqsadida   ko’chirib
yozilgandir va boshqa yangi funksiyalar ham kiritilgan.
Kutubxonaning barcha funksiyalari ro’yhatini olish uchun:
Helpwin images/contents
komandasidan foydalaniladi. Bunda   ham   Wavelet   kutubxonasi   singari   demos
orqali murojat qilib, batafsil ma’lumot olish mumkin. Masalan: 4.Signal   Processing   kutubxonasi.   Bu   kutubxona-   Matlab   bazasida
shakllantirilgan   instrumental   vositalar   to’plami   bo’lib,   signallarga   ishlov   berish
bo’yicha   keng   diapazondagi   operatsiyalarni   amalga   oshiradi.   Bunday
amaliyotlarga to’lqinlarni o’zgartirishdan tortib, parametrik modellashtirishdagi va
spektral analizdagi filtrlarni ishlab chiqish a amalga oshirishlar kiradi. Kutubxona
ikkita kategoriyadagi instrumental vositasidan iborat:
 Signallarga ishlov beruvchi funksiyalar;
 Grafik, interaktiv instrumental vositalar;
Birinchi kategoriyadagi instrumental vositalar   funksiyalari komandalar qatoridagi
yoki boshqa ilovalardan chaqirish mumkin bo’lgan funksiyalardir.
Ikkinchi kategoriya - bu shunday interaktiv instrumental vositalarki, ular yordamida
foydalanuvchining grafik interfeysi (GUI) orqali ko’p funksiyalarga murojat qilish
mumkin. 
GUI   ga   asoslangan   instrumental   vositalar   filtrlarni   loyihalash,   analiz   qilish
va bajarish uchun integrallangan muhit yaratib beradi. Masalan, GUI yordamida:
 Filtr   xarakteristikasini   grafik   jihatdan   tahrirlash   uchun   “sichqoncha”dan
foydalanish   yoki   signal   og’maligini   visual   ekran   lineykasi   yordamida
o’lchash;
 Menu   holatidan   va   tugmalardan   foydalanib   signalni   ovoz   apparatlari
vositasida bajarishi(proigrat);
 Ochilayotgan   menudan   foydalanib   signalning   parametrlarini   va   hisoblash
usullarni   sozlash.   Bu   bo’limda   analog   va   raqamli   signallarni   qayta   ishlash
imkoniyati mavjud.
Quyidagi misolni ko’ramiz:
11-Ma’ruza
Simulink pakеti–dinamik tizimlarni vizual modеllashtirish      tizimi Reja:
1. Simulink paketining umumiy vazifalari;
2. Modellashtirishda Simulink paketining roli;
3. Stateflow dasturi. Misollar.
1.Simulink   paketining   umumiy   vazifalari.   Oxirgi   yillarda   Simulink   paketi
fan va sanoatda dinamik sistemalarni modellashtirish va simulyatsiya qilishda eng
keng foydalaniladigan dasturiy paketlardan biridir.
Simulinkni   ishlatib,   namunalardan   osongina   model   yaratish   mumkin   yoki
mavjud modellarga komponentalar qo’shish mumkin. Simulyatsiya qilish jarayoni
interaktiv   bo’lgani   uchun,   ish   jarayonida   parametr   qiymatlarini   o’zgartirib,
natijalarni   o’zgarishini   ko’rish   mumkin   bo’ladi.   Bu   paketdan   Matlabning   barcha
analiz qiluvchi instrumental vositalarga to’g’idan-to’g’ri kirish imkoniyati bo’lgani
uchun,   natijlarni   analiz   qilish   va   kerakli   grafiklarni   qurish   va   o’rganish   mumkin
bo’ladi. 
Simulink   yordamida   real   chiziqsiz   bo’lgan   modellarni   o’rganish   va   qurish
mumkin   bo’ladi.   Bunday   modellar,   bizga   ma’lumki,   qarshilik,   ishqalanish,   havo qarshiligi   mexanizmlarni   sirpanishi   va   boshqalarni   hisobga   olish   imkoniyatini
beradi.
Simulink-   bu   dinamik   sistemalarni   modellashtirish,   simulyatsiya   va   analiz
qilishga   mo’ljallangan   dasturlar   paketidir.   Bu   paket   uzluksiz   vaqt   mobaynida
modellashtirilgan   chiziqli   va   chiziqsiz   bo’lgan,   ma’lum   vaqt   oralig’ida   berilgan
tizimlarni qo’llab quvvatlaydi. Sistemalar tezlikda bo’lishi, ya’ni sistemani har xil
bo’lishi har xil tezliklarda bajariladi.
2.Modellashtirishda   Simulink   paketining   roli.   Modellashtirish   uchun
Simulink   paketi   modelni   blok-sxema   sifatida   shakllantirish   uchun
foydalanuvchining   grafik   interfeysi   bilan   ta’minlanaydi.   Bunda   “sichqoncha”
vositasida “click-and-drag” operatsiyasidan foydalaniladi. Bu interfeys yordamida
modellarni   qalam   va   qog’oz   ishlatib   “chizish”   mumkin.   Simulink   har   xil
bo’liklardan   (qabul   qiluvchi,   manbalar,   chiziqli   va   chiziqsiz   kompanentalar,
ulagichlar)   iborat   bo’lgan   kutubxonani   belgilab   beradi.   Undan   tashqari
foydalanuvchi o’z bloklarini yaratish va sozlash mukin.
Barcha   modellar   iyerarxik   tuzilishga   ega.   Shuning   uchun,   modellarni
o’suvchi   yoki   kamayovchi   nuqtai-nazardan   kelib   chiqib   shakllantirish   mumkin.
Sistemani   yuqori-darajada   qarash   mumkin   va   bloklarda   ikkita   “bosish”   natijasida
darajalar   bo’yicha   pasayib,   model   detallarning   o’suvchi   darajalariga   kirishni
ta’minlash   mumkin   bo’ladi.   Bu   nuqtai   nazar   yordamida   modelning   tuzilishini   va
uning qismlarini qanday birgalikda ishlashini tushunishni ta’minlab beradi.
Model   aniqlangandan   keyin   uni   foydalanish   uchun   qo’ysa   bo’ladi.   Bunday
ishni   integrallash   metodidan   yoki   Simulink   menyusidan   yoki   Matlab   buyruqlar
oynasidan   ma’lum   buyruq   kiritib   amalga   oshirish   mumkin.   Interaktiv   ishlash
jarayonida menyudan foydalanish qulay bo’lsa, paketli modellashtirish jarayonida
buyruqlar   oynasidan   foydalanish   qulaydir.   Maxsus   demonstratsion   bloklardan
foydalanib,  simulyatsiya  bajarilayotgan  bo’lsa   ham, simulyatsiya   baj а rilmayotgan
bo’lsa ham, simulyatsiya natijalarni ko’rish mumkin. Undan tashqari parametrlarni
o’zgarib,   birdaniga   u   qanday   natija   berganini   ko’rish   mumkin.
Modellashtirish( симуляция )   natijalari   Matlabning   ishchi   fazosiga   joylashtirib,
keyinchalik qayta ishlab vizulallashtirish mumkin bo’ladi.
Modellarni analiz qilish instrumentlariga chiiqlashtirish va qurish vositalari
kiradi.   Bu   vositalar   buyruqlar   oynasidan   chaqiriladi.   Undan   tashqari   Matlabning
ko’p instrumental vositalari va kutubxonalaridan ham foydalanish mumkin. Matlab
va   Simulink   tizimlarining   hisobiga   bu   tizimning   ixtiyoriy   nuqtasida
modellashtirish analiz qilish va modellarni to’g’rilash mumkin bo’ladi.
    3.   Stateflow   dasturi.   Misollar.   Stateflow-kuchli   grafik   instrument   bo’lib,
boshqarish   va   nazorat   qilishning   murakkab   masalalarni   loyihalashtirish   va
rivojlantirish uchun mo’ljallangan.
Stateflowdan foydalanib:
-chekli   avtomatlar   nazariyasiga   asoslangan   kompleks   reaktiv   sistmalarni
visual modellashtirish va simulyatsiya qilish;
-markaziy   nazoratning   determinerlangan   tizimlarini   loyihalashtirish   va
rivojlantirish; -blok-sxemalarda   belgilashlar   sistemasini   ishlatish,   stateflow   paketi   bitta
diagrammasidagi holat o’zgarishlari belgilashlar tizimini ishlatish;
-loyihaning   ixtiyoriy   qismida   oson   o’zgartirish   kirita   olish,   natijalarni
baxolash va tizim o’zini tutishini bilish;
-Matlabning Simulink bilan integrallashganlik afzalligidan foydalanish kabi
ishlarni amalga oshirish mumkin.
Stateflow quyidagi komponentlardan iborat:
-stateflowning grafik tahrir; 
-stateflowning boshlovchisi( проводник );
-stateflowning qidiruv vositalari;
-stateflow modellashtirish obyektlashgan kodining generator;
-stateflow sozlagichi.
Stateflow paketini qo’llanilishi quyidagi yo’nalishlarda bo’lishi mumkin:
 Tadbiq etilgan tizimlar
-aviatsiya(samolyotlar);
-avtomobil sanoati;
-berilganlarni uzatish;
-tijorat.
 Inson-mashina interfeysi 
-foydalanuvchining grafik interfeysi;
 Gibrid sistemalar
-xavo harakatini boshqarish sistemasi;
Stateflow  paketi,  chekli  avtomatlar  nazariyasini  ishlatib,  murakkab  tizimlar
faoliyatini aniq va qisqa qilib ochib beradi. Undan tashqari bu paket tizim va uning
loyihasiga   quyiladigan   texnik   talablarni   bir-biriga   yaqinlashtiradi.   Bu   juda   sodda
amalga   oshiriladi:   loyiha   yaratiladi   va   stenariyning   har   xil   variantlari   ko’riladi,
iteratsiyalar   esa   stateflow   paketi   diagrammasi   modelini   kerakli   faoliyatini   hosil
qilmaguncha davom etadi.
12-ma’ruza Chiziqli t е nglamalar sist е masini y е chish. ChTS y е chish masalasini qo’yish va
ularni  е chish uchun MATLAB funksiyalari. Masalar y е chish
Reja:
1. Chiziqli tenglamalar sistemasi(CHTS);
2. CHTS ni yechish usullari;
3. CHTS ni yechishda Matlab usullari;
4. CHTS ga doir misollar.
1.Chiziqli tenglamalar sistemasi(CHTS).   Juda ko’p masalalarni hal qilishda
CHTS   ga   duch   kelamiz.   Umumiy   holda   CHTS   ning   umumiy   ko’rinishi
quyidagicha bo’ladi.
               (1)
Bu yerda x
1 , x
2 , …, x
n - noma’lum o’zgaruvchilar, a
11 , a
12 , …, a
nn , va b
1 , b
2 ,
… ,
b
n  lar haqiqiy sonlar.
(1)   Tizimining yechimi deb uni tenglamalarni ayniyatlarga aylantiruvchi
x
1  ,x
2  ,…, x
n  sonlarga aytiladi.
CHTS ni vektor ko’rinishda quyidagicha yozish mumkin:
Ax=b   (2)
Bu yerda 
A=
(nxn) o’lchovli matritsa,
X=
(nx1) o’lchovli noma’lum vector ustun, b=
(nx1) o’lchovli ozod had deb ataluvchi vector ustun.
A*=[A,b]-kengaytirilgan   matritsani   kiritamiz.   Chiziqli   algebra   kursidan
ma’lumki (Kronel-Kapelli teoremasi) A va A* matritsalarning ranglari teng bo’lsa
(1) yoki (2) sistemaning yechimi mavjud bo’ladi.
2.CHTS   ni   yechish   usullari .   ChTS   ni   yechishning   aniq   usullaridan   keng
qo’llaniladiganlari Gauss, Kramer va teskari matritsa usullaridir, taqribiy usullarga
esa itiratsiyalar, Zeydel va kichik kvadratlar usullarni keltirish mumkin.
Aniq usullardan Kramer usulini ko’rib chiqamiz:
Buning uchun det(A)≠0 bo’lishi kerak. Usulni to’liq keltirish uchun asosiy A
matritsani k-ustun elementlari ozod had b bilan almashtirib A
k , k=    matritsalar
hosil qilamiz. U holda  det(A)≠0 shart asosida yechimni topish uchun 
x
k =     , k=1,2,…,n
tengliklardan   foydalanish     mumkin.   Taqribiy   usullardan   iteratsiya   usulini
keltiramiz. Buning uchun (1) sistemani quyidagicha ko’rinishga keltiramiz:
   (3)
Bu yerda 
,    , i≠j,
U holda    ,    β=
belgilashlar kiritib (3) ni quyidagicha yozib olamiz.
x= β+ x    (4)
(4)   sistemani   ketma-ket   yaqinlashish   (iteratsiya)   usuli   bilan   yechamiz.
Boshlang’ich  yaqinlashish   uchun x (0)
= β  ozod  hadni  olamiz  va ketma-ket   keyingi
yaqinlashishlarni hosil qilamiz:
x (1)
= β+ x (0)
;
x (2)
= β+ x (1)
;
…………
x (k+1)
= β+ x (k)
;
Agar   x (0)
,  x (1)
,…,  x (k)
,…  sonlar   ketma-ketligi   limitga  ega   bo’lsa,   u  holda  bu
limit   (3)   yoki   (4)   sistemaning   yechimi   bo’ladi.   Yaqinlashishlarni   ochiq   holda
quyidagicha yozish mumkin:
                        ,
 i=  , k=0,1,2,…      (5)
Yechimni taqribiy hisoblashning ana shunday usuli iteratsiya usuli deyiladi.
Iteratsiya   protsessining   yaqinlashuvchi   bo’lishini   yetarli   shartini   quyidagicha
teoremada keltiramiz:
Teorema: Agar o’zgartirilgan (3) sistema quyidagi shartlardan
1)  ,   i=1,2,…,n.
2)   ,   i=1,2,…,n.
biri   bajarilsa,   u   holda   bu   sistema   uchun   hosil   qilingan   (5)   iteratsiya   jarayoni
yagona yechimga yaqinlashuvchi bo’ladi, ixtiyoriy boshlang’ich nuqta x (0)
 uchun.
Vektor   ko’rinishidagi   (2)   sist е mani   detA≠0   bo’lgan   holda   teorema   shartini
qanoatlantiradigan sistemaga keltirish mumkin:
(A -1
-ε)Ax=Db, D= A -1
-ε;  (6) =[ ]- yetarli   kichik   sonlardan   iborat   bo’lgan   matritsa   (6)dan   quyidagini
olamiz.
x=β+αx, (7)
bu   yerda   α= A,   β=Db,   bo’lib   Σ
ij   lar   yetarli   kichik   qilib   olinsa   teorema   shartlari
bajariladi.
3.CHTS   ni   yechishda   Matlab   usullari.   CHTS   ni   yechish   uchun   Matlab
funksiyalari   (usullari)   juda   ko’p   bo’lib,   biz   ulardan   bir   nechtasini   keltiramiz.
Birinchi usul “chapdan bo’lish” usulidir:
1)   x=A\B
2)   x=isqnonneg(A,B)-Ax=B   chiziqli   tenglamalar   sistemasini   kichik
kvadratlar   usuli   bilan   yechadi.   Bunda   A-(nxn)   o’lchovli,   B-(nx1)   o’lchovli,   x
i ≥0,
i=1,2,…,n.   Minimallashtirish   kriteriyasi:   B-Ax   ning   ikkinchi   normasini
minimallashtirish;
3)   x=isqnonneg(A,B,x0)-Iteratsiyalar   uchun   chiziqli   tenglamalar
sistemasining aniq berilgan nomanfiy boshlang’ich qiymatlarda yechib beradi;
4 )   [x,w]=isqnonneg(…)-yechim   bilan   birga   qoldiqlar   vektori   kvadrati
ikkinchi normasini qaytaradi;
5)     [x,w,w1]=isqnonneg(…)-xuddi   avvalgi   buyruq   kabi,   yana   qoldiqlar
vektori w1 ni qaytaradi;
6)     bicg(A,B)-Ax=B   ning   x   yechimini   qaytaradi;   A(nxn),   B(nx1).   Bunda
hisoblash iteratsiyalar yaqinlashguncha yoki min{20,n} gacha bajariladi;
7)  bisc(A,B,tol)-yechimni tol xatolik bilan qaytaradi;
8)  bisc(A,B,tol,maxit)-avvalgi buyruq kabi, yechimni undan tashqari maxit-
maksimal iteratsiyalar soni bilan qaytaradi.
4.CHTS ga doir misollar. 
1.Tenglamalar   sistemasini   chapdan   bo’lish   va   2),   3)   buyruqlar   yordamida
yeching va Kramer usulida yechilgan bilan solishtiring.
A=[2 1 1 1; 3 -1 -2 1; 1 2 -3 2; 5 -2 3 -1],
B=[8;2;8;1]
13-ma’ruza
Kuzatish natijalarini birlamchi qayta ishlash. Strukturali    va param е trik
id е ntifikatsiya usullari.  Ma'lumotlar statistik  q ayta ishlash uchun   MATLAB
funksiyalari.
Reja:
1. Ma’lumotlarni statistik qayta ishlash masalasi;
2. Strukturali identifikatsiya usullari; 3. Parametrik identifikatsiya usullari;
4. Ma’lumotlarni   statistic   qayta   ishlash   uchun   Matlabning   asosiy
funksiyalari.
1.Ma’lumotlarni statistik qayta ishlash masalasi. Umumiy holda boshlang’ich
ma’lumotlarni   birlamchi   qayta   ishlash   masalasi   quyidagicha   qo’yiladi:faraz
qilaylik,   o’rganish   natijasida   x   miqdorning   x1,   x2,   …,   xn   qiymatlarga   y
miqdorning   y1,y2,…,yn   qiymatlari   mos   qo’yilgan   bo’lsin.   Shu   x   va   y   miqdorni
bog’lovchi   y=f(x)   funksiyaning   analitik   ko’rinishini   topish   talab   qilinadi.   Mana
shunday, tajriba natijasida hosil qilingan analitik bog’liqlik emperik deb ataladi.
Empirik bog’liqlikni aniqlashni ikkita bosqichga ajratish mumkin:
-parametrlarga   bog’liq   bo’lgan   emperik   formulani   tanlash(strukturali
identifikatsiya);
-tanlangan formuladagi parametrlarni aniqlash(parametrik edentifikatsiya).
Strukturali identifikatsiya masalasi ancha murakkab masalalardan biri bo’lib,
aniqlangan   funksiya   bir   nechta   analitik   funksiyalar   davomidan   iborat   bo’lishi
mumkin.
2. Strukturali identifikatsiya usullari.   Faraz qilaylik, qidirilayotgan funksiya
y bir o’zgaruvchili va ikkita a hamda b parametrlarga ega bo’lsin. U holda empirik
bog’liqlikni quyidagi funksiyalardan tanlab olinishi mumkin bo’ladi.
1) Chiziqli funksiya y=ax+b;
2) Ko’rsatkichli funksiya y=a*b x
;
3) Kasr ratsional funksiya y=  ;
4) Logarifmik funksiya y=alnx+b;
5) Darajali funksiya y=ax b  
(agar b>0- bu parabolic bog’liqlik; agar b<0-
bu giperbolik bog’liqlik; agar b=0- bu chiziqli bog’liqlik);
6) Giperbolik bog’liqlik y=a+ ;
7) Kasr-ratsional funksiya y=  .
Empirik   funksiyani   yuqoridagi   funksiyalar   ichidan   tanlanishi   bu   bir   nazar
bo’lib,   umuman   olganda   bunday   funksiyalar   sinfi   ixtiyoriy   bo’lishi   mumkin.   Biz
bu yerda empirik bog’liqlikni tanlashni bir usulini ko’ramiz xolos.
Bu usul bo’yicha strukturali identifikatsiya qilishning boshlang’ich bosqichi
bo’lib, berilganlar massivlari x va y larning grafigini qurish hisoblanadi. Shundan
so’ng quyidagicha yordamchi hisoblashlarni bajaramiz:
X miqdorning qiymatlaridan yetarli darajada ishonchli bo’lgan va bir-biridan
uzoqda joylashgan 2 ta nuqta olamiz, masalan x
1 , x
n  lar bo’lsin. Bu nuqtalar uchun
x
ar =(x
1 +x
n )/2   o’rta   arifmetikni,   x
geom =   -   o’rta   geometriklarni   hisoblaymiz. Chizilgan   grafik   yordamida   topilgan   x   miqdorning   qiymatlariga   mos   bo’lgan   y
ning qiymatlarini aniqlaymiz:
x
ar →y
1 *
,
x
geom →y
2 *
,
x
garm →y
3 *
.
Xuddi   yuqoridagi   hisoblashlarni   y   miqdorning   qiymatlari   uchun   ham
bajaramiz:
y
ar =(y
1 +y
n )/2, 
y
geom = ,
y
garm =2*y
1 *y
n /(y
1 +y
n ).
Xosil   qilingan   y
ar ,   y
geom ,   y
garm ,   y
1 *
,   y
2 *
,   y
3 *
  sonlardan   foydalanib
quyidagilarni hisoblaymiz:
ε
1 =|  y
1 *
- y
ar  |,
ε
2 =|  y
1 *
- y
geom  |,
ε
3 =|  y
1 *
- y
garm  |,
ε
4 =|  y
2 *
- y
ar  |,
ε
5 =|  y
2 *
- y
geom  |,
ε
6 =|  y
3 *
- y
ar  |,
ε
7 =|  y
3 *
- y
geom  |.
Bu   sonlarning   minimumini   aniqlaymiz:   ε=min(ε
1 ,   ε
2 ,   ε
3 ,   ε
4 ,   ε
5 ,   ε
6 ,   ε
7 ).
Minimal xatolik ε ni aniqlab, strukturali identifikatsiyani quyidagi qoida bo’yicha
amalga oshiramiz.
1) Agar   ε=ε
1   bo’lsa   analitik   bog’lanish   chiziqli   y=ax+b   ko’rinishda
olinadi;
2) Agar   ε=ε
2   bo’lsa   analitik   bog’lanish   ko’rsatkichli   y=a*b x
  ko’rinishda
olinadi;
3) Agar   ε=ε
3   bo’lsa   analitik   bog’lanish   kasr-ratsional   funksiya   y=
ko’rinishda olinadi;
4) Agar   ε=ε
4   bo’lsa   analitik   bog’lanish   logarifmik   funksiya   y=alnx+b
ko’rinishda olinadi;
5) Agar   ε=ε
5   bo’lsa   analitik   bog’lanish   ko’rsatkichli   funksiya   y=a*x b
ko’rinishda olinadi;
6) Agar   ε=ε
6   bo’lsa   analitik   bog’lanish   giperbolik   funksiya   y=a+
ko’rinishda olinadi; 7) Agar   ε=ε
7   bo’lsa   analitik   bog’lanish   kasr-ratsional   funksiya   y=
ko’rinishda olinadi;
Shunday   qilib   ε   qiymatiga   mos   ravishda   aniq   bir   analitik   formula   (2   ta
parametrli) tanlanadi.
3.   Parametrik   identifikatsiya   usullari.   Empirik   funksiyaning   ko’rinishi
topilgandan keyin a va b parametrlarning qiymati aniqlanadi.
Umuman   olganda   parametrlarni   aniqlashni   bir   nechta   usullari   mavjud.   Biz
ulardan:
a) Tanlangan nuqtalar usuli;
b) Kichik kvadratlar usuli;
kabi metodlardan ishlatamiz.
Tanlangan   nuqtalar   usuli   eng   sodda   usul   bo’lib,   kam   hisoblashlarni   talab
qiladi.   Lekin,   bu   usulning   aniqligi,   funksiya   grafigini   chizishga   bog’liq   bo’lib,
yetarli darajada bo’lmasligi mumkin.
Bu   usulning   mohiyati   shundaki,   undan   foydalanayotganda   qurilgan
boshlang’ich grafikdan ikkita ixtiyoriy M
1 (x
1 *
, y
1 *
), M
2 (x
2 *
, y
2 *
) nuqtalar olamiz va
tenglamalar sistemasini a va b noma’lum parametrlarga nisbatan yechib, a va b lar
aniqlanadi.
Kichik   kvadratlar   usuli   (KKU)   tanlangan   nuqtalar   usuliga   nisbatan   ancha
aniq   natijalar   beradi,   lekin   bu   usulda   hisoblashlar   ko’p   bo’ladi.   KKU   ni   keltirish
uchun avval Δ
i   xatolik tushunchasini kiritamiz. Δ
i   xatolik y miqdorning tajribaviy
qiymati   y
i   bilan   f(x,a,b)   funksiyaning   x
i   nuqtadagi   qiymati   ayirmasi   kabi
aniqlanadi.
Δ
i = y
i -f(x
i , a, b)
KKU usuliga asosan eng yaxshi a, b parametrlar deb 
F(a,b)= →min
minimumga   erishtiruvchilar   olinadi.   Bu   funksiyani   (a,b   bo’yicha)   minimumini
topish uchun kritik nuqtalarni aniqlaymiz, ya’ni F(a,b) funksiyani a va b bo’yicha
birinchi tartibli xususiy xosilalarini nolga tenglab olamiz.
yoki Bu   tenglamalar   sistemasini   a   va   b   ga   nisbatan   yechib,   kerakli   qiymatlarni
topamiz.
Agar empirik bog’liqlik y=ax 2
+bx+c ko’rinishda bo’lsa
F(a,b,c)=
Funksiyani   minimumini   (a,b,c)   bo’yicha   talab   qilinadi.   Yechilishi   kerak   bo’lgan
tenglamalar sistemasi quyidagicha bo’ladi:
Bu   tenglamalar   sistemasini   yechib   va   F(a,b,c)   funksiyani   shu   nuqtada
ekstremumga tekshirish, a,b,c-parametrlarining kerakli qiymatlarini aniqlaymiz.
4.Ma’lumotlarni   statistik   qayta   ishlash   uchun   Matlabning   asosiy
funksiyalari.   Berilgan   ma’lumotlar   ustida   statistik   operatsiyalar   bajarish   uchun
Matlabning quyidagi funksiyalarini qo’llash mumkin. Masalan:
 mean(x)- x vektor elementlarini o’rta qiymatini qaytaradi, yoki x matritsa
bo’lsa ustunning o’rta qiymatlaridan tuzilgan qator vektorni qaytaradi;
 median(x)-   xuddi   mean(x)   kabi   ,   faqat   x   vektorning   (matritsaning)
medianasini qaytaradi;
 std(x)-   x   vektor   o’rta   kvadratik   xatoligini   qaytaradi,   x   matritsa   uchun
qatorlarni o’rta kvadratik xatolilardan tuzilgan vektor qatorni qaytaradi;
 hist(x)-   x   vektor   elementlarini   gistogrammasini   chizadi.   O’nta   nuqta
maksimum va minimum orqali masshtablanadi;
 hist(x,n)-   n   ta   nuqtaning   gistogrammasini   maksimum   va   minimumga
nisbatan masshtab chizadi.
Berilgan sonlarni (ma’lumotlarni) tartiblash va ajratib berish uchun quyidagi
komandalar bor:
 max(x)-   x   vektor   elem е ntlarini   maksimumini   yoki   x   matritsa   bo’lsa
ustunlarning maksimumlardan iborat vektor qatorni qaytaradi;
 min(x)- xuddi max(x) kabi faqat minimumni qaytaradi;
 sort(x)- x vector koordinatalarini o’sish tartibida joylashtiradi. Massiv elementlarini yig’indi va ko’paytmasini xosil qilish komandalari:
 sum(x)-   x   vekor   elementlari   yig’indisini   qaytaradi.   x   matritsa   bo’lsa,
matritsaning mos ustun elementlari yig’indisini qaytaradi;
 prod(x)- xuddi sum(x) kabi, faqat ko’paytma qaytaradi.
Quyidagi misollarni mustaqil ravishda amalga oshiring:
1-misol: Berilgan tajribaviy qiymatlar yordamida empirik bog’liqlikni aniqlang.
X 1 2 3 4 5 6 7 8 9
Y 521 308 240,5 204 183 171 159 152 147
 
2-misol:   Empirik   bog’liqlik   y=ax 2
+bx+c   bo’lganda   KKU   yordamida   a,b,c
parametrlarni aniqlang. Boshlang’ich qiymatlar quyidagi jadvalda berilgan.
X 2 2,2 2,4 2,6 2,8 3
Y 0,3010 0,3424 0,3802 0,4150 0,4472 0,4771
 
14-ma’ruza
Bir yoki ko’p o’zgaruvchili funksiyalar uchun optimallashtirish.
Optimallashtirish masalalarini yechish uchun Matlab funksiyalari
OPTIMIZATION kutubxonasi
Reja:
1. Funksiyalar uchun optimallashtirish masalasining qo’yilishi;
2. Funksiyalar uchun optimallashtirish masalasini yechish usullari;
3. Optimallashtirish masalasini yechish Matlab funksiyalari;
4. Optimization kutubxonasining imkoniyatlari. Misollar.
1.Funksiyalar   uchun   optimallashtirish   masalasining   qo’yilishi.   Juda   ko’p
nazariy   va   amaliy   masalalarni   xal   qilishda   bir   nechta   o’zgaruvchiga   bog’liq
bo’lgan   funksiyalarning   ekstremumini   (maksimum   yoki   minimum)   topish
masalasiga duch kelinadi (masalan, parametrik identifikatsiya masalasida). Bunday
funksiyani   umumiy   holda   f(x
1 ,   x
2 ,…,   x
n ,)   ko’rinishida   yozib,   x=(   x
1 ,   x
2 ,…,   x
n ,)
vektorni   kiritsak,   u   holda   f(x)   funksiya   uchun   ekstremumni   (ma’lum   bir   A
to’plamda) topish quyidagicha qo’yiladi:
x vektorning berilgan (aniqlangan) to’plamga tegishli shunday x* qiymatini
topingki, u uchun (maksimum) 
  
tenglik   o’rinli   bo’lsin.   Albatta,   bu   nuqtada   f(x),   xєA,   funksiya   uchun   f(x)≤f(x*),
xєA tengsizlik o’rinli bo’ladi. Umuman x* nuqta funksiyaning maksimum nuqtasi
deyiladi.   Xuddi   shunga   o’xshash   minimum   nuqta   haqida   ham   gapirish   mumkin.
Umuman olganda, maksimum va minimum masalalarda birinchisidan ikkinchisini keltirish   mumkin.   Masalan,   f(x),   xєA   funksiyani   maksimumini   topish   masalasi
g(x)=-f(x), xєA funksiyaning maksimumini topishga ekvivalentdir.
Funksiyaning   minimumini   yoki   maksimumini   topishni   optimallashtirish
masalasi deb ataymiz.
2.   Funksiyalar   uchun   optimallashtirish   masalasini   yechish   usullari.
Matematikada   har   xil   tipdagi   funksiyalarni   optimallashtirish   usullari   juda   ham
ko’p, lekin ularni masalani yechishga talqin qilish bo’yicha ikkita guruhga ajratish
mumkin.
Birinchi   guruhga   masalani   hal   qilish   uchun   qo’llaniladigan   bilvosita
usullarni   kiritish   mumkin.   Bu   holda   ko’p   o’zgaruvchili   funksiyalar   uchun   x*
nuqtada ekstremum  shartining natijasi  bo’lgan chiziqli  yoki  chiziqsiz  tenglamalar
sistemasini   yechimini   topishga   keltiriladi.   Bizga   ma’lumki,   ekstremum   nuqtada
funksiyaning barcha birinchi tartibli xususiy xosilalari nolga teng bo’ladi:
,   i=1,2,…,n.
Shu   tenglamalar   sistemasini   yechib   ekstremum   bo’lish   mumkin   bo’lgan
nuqta   aniqlanadi.   Undan   tashqari   birinchi   guruh   usullarga   urinmalar   usulini,
vatarlar usulini, Nyuton usulini va boshqalarni kiritish mumkin.
Bu   usullarning   asosiy   kamchiliklariga   chiziqsiz   tenglamalar   sistemasini
yechishdagi   murakkabliklar   kiradi.   Shuning   uchun,   ko’pincha   optimallashtirish
masalasini   amalda   yechish   uchun   usullar   qo’llaniladi.   Bu   holda   optimallashtirish
masalasini yechish uchun shunday x 0
, x 1
,…, x n
,…vektorlar ketma-ketligi tuziladiki,
ular uchun
f(x 0
)< f(x 1
)<…< f(x n
)<…
tengsizlik o’rinli bo’lsin. Natijada, ma’lum qadamdan keyin ekstremum nuqtaning
taqribiy   qiymati   topiladi.   Umuman   olganda,   boshlang’ich   nuqta   x 0
  ixtiyoriy
bo’lishi   mumkin,   lekin   uni   tanlashda   funksiya   va   uni   ekstremumi   haqida   barcha
ma’lumotlarni   ishlatib   x 0
ni   ekstremum   nuqtaga   iloji   boricha   yaqin   qilib   tanlash
maqsadga muvofiqdir.
3.Optimallashtirish   masalasini   yechish   Matlab   funksiyalari.
Optimallashtirish  masalasini  yechish  uchun  Matlab   paketi  yadrosidagi  va  maxsus
Optimization   kutubxonasidagi   (vositalar   to’plami)   funksiyalardan   foydalanish
mumkin. Bu funksiyalarni ko’rishdan avval Matlabda ishtirok etuvchi qo’shimcha
element –foptions1 massividir. Bu massivda <standart parametrlar> (< параметр ы
по   умолчанию >)   deb   nomlanuvchi   va   optimizatsiya   protiduralarda
foydalaniladigan   parametrlar   saqlanadi.   Shu   massivning   har   bir   elementini   ko’rib
chiqamiz.
 options(1)-akslantirish parametric standart qiymati( по   умолчанию ) 0 ga teng, 1
qo’yilganda ba’zi natijalarni akslantiradi;
 options(2)-x uchun hisoblashlar to’xtatilishining aniqligi;  по   умолчанию  1е-4;
 options(3)-F uchun hisoblashlar to’xtalishining aniqligi;  по   умолчанию  1е-4;
 options(4)-chegara buzilishida uzish kriteriysi;  по   умолчанию  1е-6;
 options(5)-algoritm: strategiya:har doim ham ishlatilavermaydi;  options(6)-algoritm:Optimizator: Har doim ham ishlatilavermaydi;
 options(7)-algoritm: Chiziqli qidiruv algoritmi;  по   умолчанию  0;
 options(8)-Lyambda funksiyaning qiymati;
 options(9)-Agar   foydalanuvchi   taklif   qilgan   gradiyentlarni   tekshirish   kerak
bo’lsa, bu parametrga 0 qo’yiladi;
 options(10)-funksiya va chegaralarni baholashlar soni;
 options(11)-funksiya gradiyentini baholashlar soni;
 options(12)-chegaralarni baholashlar soni;
 options(13)-tenglikka qo’yilgan chegaralar soni;
 options(14)-funksiyaning maksimal baholashlar soni;
 options(15)-maqsadli funksiyani maxsus maqsadlar uchun ishlatish;
 options(16)-chekli   ayirmali   gradiyentlar   uchun   o’zgaruvchilarni   minimal
o’zgarishi;
 options(17)-chekli   ayirmali   gradiyentlar   uchun   o’zgaruvchilarni   maksimal
o’zgarishi;
 options(18)-qadam uzunligi( по   умолчанию  ≤1);
Har   xil   optimizatsiya   jarayonlar   uchun   bu   parametrlardan   har   xillari
ishlatiladi.   Shuning   uchun   konkret   optimizatsiya   jarayon   uchun   qanday   parametr
berilgan   bo’lishi   va   qanday   param е tr   ma’lum   natijani   qaytarishi   alohida   aytib
o’tishi kerak bo’ladi.
Parametrlar avvaldan aniqlab olingandan so’ng, funksiyani optimallashtirish
jarayoniga   o’tsa   bo’ladi.   Matlab   yadrosida   optimallashtirish   masalasini   yechish
uchun 2 ta funksiya : 
fmin-bir o’zgaruvchili funksiyalar uchun ; 
fmins-ko’p o‘zgaruvchili funksiyalar uchun 
mavjuddir. Birinchi funksiya fmin bir nechta formulalarda yoziladi:
 x=fmin(‘fun’,x1,x2);
 x=fmin(‘fun’,x1,x2,options);
 x=fmin(‘fun’,x1,x2,options,p1,p2);
 x=fmin(‘fun’,x1,x2,options,p1,p2,…);
 [x,options]=fmin(…)
Birinchi   ko’rinishdagi   x=fmin(‘fun’,x1,x2)   Matlab   funksiyasi   fun(x)
funksiyaning   x1<x<x2   oraliqdagi   minimumga   erishtiruvchi   x   ning   qiymatini
aniqlaydi;
x=fmin(‘fun’,x1,x2,options)-funksiyasi   esa   xuddi   yuqoridagidek   vazifani
bajarib, unda qo’shimcha boshqarish parametrlarini ishlatadi;
x=fmin(‘fun’,x1,x2,options,p1,p2,…)-funksiya   ham   yuqoridagidek   vazfani
bajaradi,   lekin   bunda   fun(x)   funksiyaga   parametrlar   sifatida   p1,p2,…,   larning
qiymatlarini kiritadi, natijada fun(x,p1,p2,…) funksiya olinadi.
[x,options]=fmin(…)-funksiya   options(10)   parametrda   bajarilgan   qadamlar
sonini chiqaradi. Yuqoridagi funksiyalarda options boshqarish parametrlari vektori
bo’lib 18 ta komponentdan faqat uchtasigina ishlatiladi;
 options(1)-agar   0   bo’lmasa,   masala   yechilishidagi   qadamlarni
ko’rsatadi.  По   умолчанию -0;
 options(2)-hisoblashlarni to’xtatish aniqligi.  По   умолчанию  1е-4;  options(14)-qadamlarning makimal  soni.   По   умолчанию   (berilmasa-
500);
Ko’p   o’zgaruvchili   funksiyalar   uchun   yaratilgan   fmins   funksiya   ham   bir
nechta formatlarga ega:
 x=fmin(‘fun’,x0)
 x=fmin(‘fun’,x0,options)
 x=fmin(‘fun’,x0,options,[ ],p1,p2,…)
 [x,options]=fmins(…)
x=fmin(‘fun’,x0)-bu funksiya fun(x) funksiyaning x0 nuqta atrofidagi lokal
minimumga qiymatini beruvchi x vektorni chaqiradi.
  x=fmin(‘fun’,x0,options)-xuddi   yuqoridagi   funksiya   kabi   vazifani   bajarib,
undan farqi qo’shimcha boshqarish parametrlaridan foydalaniladi.
x=fmin(‘fun’,x0,options,[   ],p1,p2,…)-bu   ham   xuddi   yuqoridagidek   vazifani
bajarib, bunda fun(x) funksiyaga parametrlar sifatida p1,p2,larning qiymatlarini
kiritadi, natijada fun(x,p1,p2,…) funksiya olinadi.
[x,options]=fmins(…)-bu   komanda   formatida   options(10)   parametrida
bajarilgan qadamlar sonini chiqaradi;
fmin funksiya argumentlari:
xo-boshlang’ich vektor;
p1,p2,…,-fun funksiyaga beriladigan argumenlar.
[   ]-Opimization   kutubxonasidagi   fminu   funksiya   bilan   birgalikdalikni
ta’minlovchi argument;
 options(1)-agar bu parameter nolga teng bo’lmasa yechish protsessidagi
oraliq qadamlar ko’rsatiladi. Aytilmasa 0 bo’ladi;
 options(2)   va   option(3)-hisoblashlarni   to’xtatish   aniqligi   (x   va
function(x) uchun). Aytilmagan bo’lsa ikkala qiymat 1е-4;
 options(14)-qadamlarning maksimal soni. Aytilmasa-500;
4.Optimization   kutubxonasining   imkoniyatlari.   Misollar.   Optimization
kutubxonasida   chiziqli   va   chiziqli   bo’lmagan   funksiyalarni   optimallashtirishga
mo’ljallangan bo’lib, bu kutubxona quyidagi xossalarga ega:
-chiziqli bo’lmagan funksiyalarni shartsiz optimallashtirish;
-kichik kvadratlar usuli va chiziqli bo’lmagan interpolyatsiya;
-chiziqli bo’lmagan tenglamalar yechimi;
-chiziqli dasturlash;
-kvadratik dasturlash;
-chiziqli bo’lmagan funksiyalarni shartli minimizatsiya qilish;
-minimaks usuli;
-ko’p kriteriyli optimallashtirish;
Bu kutubxonada quyidagi algoritmlar ishlatiladi:
-shartsiz optimallashtirish: Nelder-Mid simpleks qidiruv usuli;
-shartli   ko’p   kriteriyli   optimallashtirish   va   minimaks   usuli:   ketma-ket
kvadratik dasturlash usulining har xil variantlari:
-chiziqli va kvadratik dasturlash usullari: proyeksiyalar usuli;
-optimallashtirish   usuli   va  chiziqli  qidiruv  strategiyasini  tanlash   imkoniyati
borligi. Undan   tashqari,   kutubxonada   bitta   masalani   bir   nechta   usullar   yordamida
yechish mumkinligini ko’rsatuvchi misollar ham mavjuddir.
15-ma’ruza
Signallarni raqamli qayta ishlash masalalarni yechish. Signallarni tahlili.
Signallarni va tasvirlarni qayta ishlash uchun MATLAB vositalari
Reja:
1. Raqamli signallarni qayta ishlash tushunchasi(RSQI);
2. RSQI masalalarni yechish uchun MATLAB muhiti;
3. RSQI standart masalalarni yechishga doir misollar.
1.Raqamli signallarni qayta ishlash tushunchasi(RSQI).  Zamonaviy dunyoda
odamlar har xil ko’rinishdagi signal   t urlari bilan o’ralgan.Ulardan ayrimlari tabiiy
bo’lsa,   asosiy   qismi   insonlar   tomonidan   hosil   qilingan.   Ayrimlari   zarur
signallar(nutq),   ayrimlar   yoqimli(muzika).   Injenerlar   nuqtai   nazardan   signallar
axborot   tashuvchilardir.   Demak,   foydali   axborotni   qarama   qarshi   axborot
“aralashmasi”dan   olib   tashlash   yoki   kuchaytirish,   signalni   qayta   ishlashni   oddiy
ko’rinishi mavjud.
Umuman   olganda   axborotni   qayta   ishlash   deganda   axborotni   kengaytirish,
yaxshilash, saqlash va kerakli ma’lumotni uzatish jarayoni tushiniladi.
Quyida   SAQI   qanday   bo’lishini   ko’ramiz.   Amaliyotda   duch   keladigan
signallarning   asosiy   qismi   analog   signallardir.   Bu   signallar   vaqt   va   amplituda
bo’yicha uzluksiz o’zgarib turadi va aktiv - passiv elementli sxema yordamida qayta
ishlanadi.   Bu   munosabat   bizga   signallarni   analog   qayta   ishlash   (SAQI)   kabi
ma’lum, masalan, radiopriyomnik va televizor.
Analog signal Analog signal
X
a (t) Y
a (t)
    SAQI  sxemasi
Bu   signallarni   summator,   kuchaytirgich   va   mantiqiy   elementdan   iborat
bo’lgan   raqamli   apparat   vositalari   yoki   maxsus   vazifalarni   bajaruvchi
mikroprotsessorlar   yordamida   qayta   ishlanadi.   Biroq   analog   signallar   ko’rinishini
o’zgartirish raqamli apparat ta’minotiga mos kelish uchun talab qilinadi. Bu signal
ko’rinishi   raqamli   signal   deyiladi.   Signal   vaqtning   aniq   momentda   ularning
sonidan   oxirgi   bitta   qiymatni   qabul   qiladi   va   haqiqatdan   ham   ikkilik   raqam   yoki
bitlarda ko’rsatish mumkin.
ASignallarni analog
qayta ishlash
Ekvevalent analog signallarni qayta ishlash
A
     Diskret tizimi
CHFRAO’KF ARO’ Signallarni
raqamli qayta
ishlash SRQI  jarayoni blok-sxemasi
Bu blok-sxemada:
KF-kiruvchi filtr, kerakli signalni ajratib oladi;
ARO’-   analog   raqamli   o’zgartirgich,   analog   signal   bitlar   oqimini   amalga
oshiradi;
Signallarni raqamli qayta ishlash-   SRQI ni “yuragi”, kompyuterning umumiy
vazifasini o’zida aks etadi (masalan, ish stoli SHK), maxsus vazifa uchun ishlovchi
protsessor, raqamli sxema va boshqalar;
RAO’-   raqamli-analog   o’zgartirgich,   ikkilik   ketma-ketlikdagi   raqamdan
zinasimon to’lqinni hosil qiladi;
CHF-   chiquvchi   filtr,   istalgan   analog   signal   zinasimon   to’lqinni   to’g’rilash
uchun mo’ljallangan.
Yuqorida ko’rsatilgan holda signallarni qayta ishlash shu narsaga olib kelishi
mumkinki,  SRQI  juda murakkab va “oson ko’ringan”  SRQI  ga solishtirish bo’yicha
ko’p komponentlardan tashkil topgan. Yagona savol bilan murojat qilish mumkinki
nima   uchun   SRQI   kerak?   Savolga   javob   shu   afzallikda   yotibdiki,   ya’ni   SRQI
tavsiya qiladi.
SAQI   ning eng katta kamchiligi  signalni  murakkab ilovalarda qayta ishlash
imkoniyati   chegaralangan.   Tizimni   loyihalashtirishning   murakkabligi   va
“mustahkamligi”ni   qayta   ishlashda   aks   etadi.   Qisqa   qilib   aytganda   bu   yakuniy
mahsulot va ilovalarni qimmatlashishiga olib keladi. Boshqa tomondan   SRQI   dan
foydalanib   quvvatli   signallarni   qayta   ishlovchi   qimmat   bo’lmagan   SHK   ga
aylantirsa bo’ladi.  SRQI  afzalliklari quyidagilar:
1. Vazifa   umumiy   komponentlarda   “ishlaydigan”   dasturiy   ta’minotdan
foydalanib ishlab chiqarish mumkin. Shuning uchun   SRQI   testlash va
ishlab   chiqarish   uchun   juda   muhim.   Shuningdek   bunday   holda
dasturiy ta’minot olib yurishga qulay.
2. SRQI   da   operatsiyalar   faqat   murakkablik   va   ko’paytirishga
asoslangan.   Ya’ni   qayta   ishlash   istisnolikka   olib   keladiki,masalan
haroratga bog’liqmaslik;
3. SRQI   operatsiyalarni   osongina   modifikatsiya   qilish   mumkin.   Real
vaqtda   registorlarni   yuklash   yoki   dasturni   osongina   o’zgartirish
mumkin;
4. SRQI   tizimlari   apparat   komponenetlarning   doimiy   arzonligi   sababli
bahosi past bo’ladi. 
SRQI   ning   asosiy   kamchiligi   harakat   va   operatsiyalarning   tezligi   ya’ni
asosan   katta   chastotadan   iborat.   SRQI   ning   yuqorida   aytib   o’tilgan   afzalliklari
ko’pgina   texnologiya   va   ilovalarni   yechishda   foydalanuvchiga   asoslangan,
shuningdek,   masalan,   maishiy   elektronika,   kommunikatsiya,   mobil   aloqa.   SRQI
ko’p   operatsiyalar   quyidagi   signallarni   tahlil   qilish   yoki   filtr   masalalari
quyidagicha bo’ladi:
                                               Raqamli signal O’zgarish                                          Raqamli signal
SRQI   klassifikatsiya masalalari
Signallarni tahlil qilish
Signallarni tahlil qilish masalasi signal xossalarini o’zgarishiga bog’liq. 
Prinsipda bu chastotasi, sohasining operatsiyasidir. Ba’zi ilovalarda bulardan 
quyidagilar zarur:
- Spektral (chastotali yoki ikki fazali) analiz tahlili;
- Nutqni tanish;
- Maqsadlarni aniqlash.
Signallarni filtrlash
Signallarni   filtrlash   masalalar   holati   kirishda   signal-chiqishda   signal   bilan
harakterlanadi.   Tizimlar   bu   masalalarni   bajaruvchi,   umumiy   holda   filtrlar   deb
ataladi. Odatda bu operatsiyalar vaqt sohasidan iborat.
Quyidagi filtratsiya ilovalari :
1. Istalmagan fonli shovqinni o’chirish;
2. Halaqitlarni o’chirish;
3. Chastotali polosalarni ajratish;
4. Spektr signallarni formalashtirish.
Ba’zi ilovalarda signal avval uning harakteristikasini o’rganish uchun tahlil
qilinadi,   ya’ni   sintetik   ovozni   amalga   oshirish   uchun   raqamli   filtratsiyadan
foydalanish mumkin.
2.RSQI   masalalarni   yechish   uchun   MATLAB   muhit.   Matlab   yadrosining
o’zi   RSQI   ni   amalga   oshirish   uchun   hech   qanday   maxsus   vositaga   ega   emas.
Shuning   uchun   foydalanuvchilar   shunday   vositalarga   qiziqqanda   o’zlari   ishlab
chiqarish   kerak,   biroq   yuqorida   aytilgandek,   signal   qayta   ishlash   uchun   ikkita
kutubxonaga ega:
1.Signal Processing;
2.Wavelet.
Ya’ni   ularda   juda   katta   zaruriy   funksiya   bajariladi.   Undan   tashqari   o’zgarishsiz
holatda   Matlab   yadrosi   kutubxona   bilan   birga   qo’yilgan   bo’ladi.   Shuning   uchun
istalgan   foydalanuvchi   amaliy   jihatdan   uni   o’rnatish   uchun   ruxsat   olish   mumkin.
Signal Processing kutubxona vositasiz signallarni qaytish ishlashga mo’ljallangan.
Bunda   100   da   ortiq   funksiya   bor.   Hamma   guruhlar   ma’nosi   bilan   nomlangan.
Quyidagi guruhlarga tavsif beramiz:
-“ Signallarni amalga oshirish va ularning tasvirini grafik orqali tasvirlash”.
Berilgan   signal   forma   signallarni   amalga   oshirish   uchun   sinusoidal,   doimiy
amplitudali, so’nuvchi, funksiyalardan tashkil topgan;
-“ Filtrlar   tahlil   qilish   va   amalga   oshirish”.   Bu   bo’lim   funksiyalari   ba’zi
standart   filtrlashning   algoritmlarini   amalga   oshiradi.   Chiquvchi   ma’lumot, Raqamli filtr
Analiz shuningdek   filtr   parametrlari   funksiya   ko’rinishida   amalga   oshirib,   chiqishda
funksiyaga o’xshab uzatiladi;
-“ Tizmni   chiziqli   o’zgartirish” .   O’zgaruvchan   tizimni   bajarish   funksiya
polinom ko’rinishida boshqasidan boshqasiga o’tish tasvirlangan;
-“ Cheksiz   impulsli   harakteristikasining(CHIX)   to’g’ri   va   klasssik   filtrni
ishlab   chiqish”.   Bu   bo’lim   funksiyalari   filtrlashning   klassik   ba’zi   filtrlarni-
Basseliya, Chabisheva(I va II tiplar), Battervortani ishlab chiqishni bajaradi;
-“CHIX   bilan   filtr   tartibini   tanlash” -Battervorta,   Chabeshiv   va   elliptic
filtrlarni tartibini tanlash funksiyasidan tashkil topgan;
-“ Chekli   impulsli   xarakteristika   filtrini   ishlab   chiqish(CHIX)” -chekli   filtrni
harakterlash   uchun   oynalar   kichik   kvadratlar   usuli   va   ba’zi   standart   metod
funksiyalardan tarkib topgan;
-“ O’zgartirish”.   Furye o’zgartirish usuli bajarish uchun funksiyadan tashkil
topgan;
- “Signallarni   qayta   ishlash   statistikasi” -bu   bo’lim   signallarni   qayta
ishlashni   bajaradi.   O’zaro   aloqa   korrelatsiya   aniq   spektral   energiya   zich,   ba’zi
statistic parametrlarni aniqlash;
-“Oyna” -turli   oynalar   metodini   amalga   oshiradi(Bartleta,   Chebisheva,
Kayzer oynasi va b);
-“Parametrik modellashtirish” -ma’lumotlar  asosida  filtrlarni  identifikatsiya
qilishga ruxsat beradi;
  -“Maxsuslashtirilgan   operatsiyalar” -ma’lumotlar   ustida   qo’shish
operatsiyasini bajarish uchun funksiyalardan tarkib topgan;
-“Analogli   prototipni   ishlab   chiqish” -analog   prototip   klassik   filtr   ishlab
chiqishga ruxsat beradi(Basseliya, Chabisheva(I va II tiplar), Battervorta);
-“Chastotani   o’zgartirish” -past   chastotali   analogli   signlni   boshqasiga
o’zgartirish uchun funksiyalardan tashkil topgan;
- “Filtrni diskretlash”- analogni raqamli o’zgartirish funksiyasi;
- “Interaktiv   vositalar”- bu   bo’lim   sptool   signallarni   qayta   ishlash,   spectral
tahlil   va   filtrlash   uchun   interaktiv   visual   vositalarni   yuklaydi,   ya’ni   sptool
funksiyadan tashkil topgan.
3.RSQI   standart   masalalarni   yechishga   doir   misollar.   RSQI   standart
masalalardan   birini   ko’ramiz.   Spektr   signalni   aniqlash   uchun   Furye
o’zgaruvchisidan   foydalaniladi.   Bu   masalalarni   yechish   yo’lini   ko’ramiz.   Buning
uchun   spektr   signal   tushunchasini   aniqlashimiz   kerak.   Agar   qandaydir   tebranish
jarayoni  turli  chastotalarni  garmonik tebranishlari summa ko’rinishida ifodalansa,
unda   spektr   tebranish   jarayoni   funksiya   deyiladi,   ya’ni   u   turli   chastota   bo’yicha
amplitude   taqsimoti   tushuntiriladi.   Spektr   shuni   ko’rsatadiki,   qaysi   turdagi
tebranish jarayoniga ega bo’ladi va uning ichki strukturasi nimadan iborat.
Spektr   signal   aniqlash   Furye   o’zgaruvchi   funksiyadan   foydalaniladi,   ya’ni
chastotali sohada signalni tavsiflash uchun qo’llaniladi.
Spektr   sifatida   X
a (jω)   analog   signal   X
a (t)   to’g’ri   Furye   o’zgaruvchi   deb
ataladi:
  (1) Furye   o’zgaruvchisini   teskari   Furye   o’zgaruvchisi   yordamida   spektr   orqali
signalni aniqlab oladi.
  (2)
  spektr   diskret   signal   uchun   x(nT)   to’g’ri   Furye   o’zgaruvchi   deb
ataladi:
X( )=Ф{x(nT)}=    (3)
Signal x(nT) spektr qaytuvchi Furye o’zgaruvchi orqali aniqlanadi.
X(nT)=    (4)
O’zgarmas funksiya uchun Furye o’zgaruvchini aniqlashda topish mumkin.
Furye   diskret   o’zgaruvchi   (1)-orqali   aniqlanadi:   x(nT)   oralig’I   ketma-
ketligining   davri   –NT   bo’lsin,   x(nT)=x(nT+mNT),   m-butun.   Furye   diskret
o’zgaruvchisini bir xil qiymatli o’zgaruvchilar guruhi deb nomlanadi.
X(k)=X(kΩ)=   , k=0,1,…,N-1  (5)
X(n)=X(nT)=   , n=0,1,…,N-1  (6)
(5)   tenglik   o’zgaruvchi   diskret   Furye   o’zgaruvchini   aniqlaydi.   (6)   qaytuvchini
aniqlaydi.
Ω=    bu o’zgaruvchilarda asosiy chastota o’zgaruvchisi burchak qayrilishi
  ,   Furye   diskret   o’garuvchisi   qaytuvchi   o’zgaruvchini
quyidagicha yozish mumkin:
X(k)=   , k=0,1,…,N-1  (7)
X(n)=   , n=0,1,…,N-1  (8)
Diskret   Furye   o’zgaruvchi   X(k)   x(n)   ketma-ketligi     o’zi   n   oralig’i   k
argument bo’yicha davr funksiyasi 
m-butun. Diskret Furye o’zgaruvchisi x(nT) ketma-ketlikda ko’rsatish foydalanish
uchun   N   chekli   uzunlik   uchu   n=0,1,2,3,…,N-1   da   aniqlash   [0;N-1]   intervaldan
tashqari 0 ga teng. Haqiqatdan ham bunday ketma-ketlik bitta davr ketma-ketligiga muvofiqligi   ko’rib   chiqiladi   (7)   va   (8)   o’zgaruvchilardan   foydalanish   [o;   N-1]
intervaldan tashqari shunday hisob kitob qilinadiki X(k) va x(n) o gat eng bo’ladi.
Spektrni solishtirishda chekli diskret signal (3) formula bilan aniqlanib o’zgaruvchi
diskret   Furye   o’zgaruvchiki   FDO’   bu   N   spektrning   hisobiki   chastota   bo’yicha
diskretlash intervali davridan olingan Ω=2π/NT.
Signal Processing kutubxonasi FDO’ni bajarish uchun ikkita funksiyaga ega:
y=fft(x,N)-FDO’   ning   aniq   N   ni   hisoblaydi.   Agar   x   vektor   uzunligi   kichik
bo’lsa, N ga nisbatan x
0  ga to’ldiriladi. Agar N argument qoldirilgan bo’lsa, FDO’
uzunligi x vector uzunligiga teng. Agar x matritsa N FDO’ ning aniqligi x har bir
qator uchun bajariladi. 
y=ifft(x,N)-qaytaruvchi   FDO’   Nni   hisoblaydi.   Bu   funksiya   parametrlari
analogli   parametrlari   funksiyalar   (x,N)   bu   funksiya   farqli   qismi   mashina   tilida
yozilganda,   bundan   tashqari   maxsus   algoritmlarni   amalga   oshiradi.   Furye
o’zgaruvchilarni   tez   algoritmlar   deb   ataladi,   ya’ni   FDO’   ni   bajarilishini   qisman
kamaytiradi.   Barcha   bu   summalar   juda   yuqori   FDO’   bajarish   uchun   yuqori
tezlikdagi fft va ifft funksiyalardan foydalaniladi.
fft() funksiyada foydalanuvchi quyidagi misolni ko’ramiz:
Misol:   s=3.5cos(0.3πt) ifoda signalni  tavsiflaydi. Diskretlash vaqti T_s=0.3
sek,   M=30   hisoblar   miqdori   berilgan   vaqt   kesmasida   signal   grafigini   quramiz.
Furye   o’zgaruvchini   signal   ustida   bajaradi.   Absolut   qiymat   grafigi   va   signal
o’zgaruvchisini quramiz.
Bu faylning natijalari quyidagi rasmlarda ko’rsatilgan: Berilgan vaqt kesmasida signal grafigi           Chastota sohasidagi signal amplituda grafigi
16-ma’ruza
Xulosa. Zamonaviy kompyuter matematikasining Mathematica, Matchad,
Maplellarni rivojlanish tendensiyalari va taraqqiyot yo’nalishlari
Reja:
1. Zamonaviy kompyuter matematikasi haqida umumiy tushuncha;
2. Mathematica va uning kompyuter algebrasida tutgan o’rni;
3. Mathcad va uning ishchi oynasi;
4. Maple va uning ishchi oynasi.
1.Zamonaviy   kompyuter   matematikasi   haqida   umumiy   tushuncha.   Keyingi
yillarda   kompyuter   matematikasi   tizimlari( Maple,   Matlab,   Mathcad   va   h.k.)
qo'llanilmayotgan   sohalami   topish   juda   qiyin .   Hozirgi   kunda   turli   xarakterdagi
boshqaruv   tizimlarini   modellarini   qurish   va   ularni   elektron   hisoblash
mashinalarida   tadqiq   qilish   "Avtomatlashtirish   va   boshqaruv"   yo'nalishidagi
fanlarning asosiy masalalaridan biri hisoblanadi.
Ma'lumki.   kompyuter   texnologiyasiniiig   rivojlanishi   bilan   murakkab
tizimlarni tadqiq qilishda mashinali modellash usuli eng samarali va bu usulining
yordamisiz   texnika   va   texnologiyaning   ba'zi   muammolarini   hal   etish   qiyinlashib
qoldi. Shu sababdan muhandis-texnologlarni tayyorlashdagi dolzarb masalalardan
biri - matematik modellashtirish nazariyasining asoslarini va usullarini o'zlashtirish
hisoblanadi. Bu masala nafaqat o’rganilayotgan obyektlarning modellarini qurish,
ular dinamikasini tahlil qilish va model bilan mashinali eksperimentni boshqarish
imkonini   beradi,   balki   o'rganilayotgan   tizimlarga   yaratilayotgan   modellarining
monandligini   ma’lum   miqdorda   qo’llanish   chegarasida   fikr   yuritish   mumkinligi
hamda   zamonaviy   hisoblash   texnika   vositalarida   tizimlarning   modellashni   to'g'ri
tashkil qilish imkonini beradi.
Shu   kunlarda   rivojlangan   mamlakatlarda   muhandislar.   texnologlar   aniq
fanlar mutaxassislari o’zlarining ilmiy tadqiqotlarida zamonaviy dasturiy tizimlar -
Mathematica.   Mathcad.   Maple.   Matlab   ning   imkoniyatlaridan   unumli
foydalamnoqdalar.   Jahonning   yetakchi   universitetlari   o'zlarining   o'quv
jarayonlariga bu tizimlarni keng ko'lamda joriy qilganlar.
Hozirgi   kunda   amaliy   masalalarni   sonli   va   analitik   yechishda
Mathematicadan   tashqari   Maple,   Mathcad,   Matlab,   Derive,   Statistica   va   shunga
o'xshash   dasturiy   tizimlar   ham   keng   qo'llanilmoqda.   Foydalanuvchi   oldida, tabiiyki, quyidagicha savol paydo bo'ladi:   «Mavjud tizimlardan qaysi biridan qanday
sharoitda foydalanish maqsadga muvofiq?»
Ushbu savolga javobni quyidagi jadvaldan ko'rish mumkin:
N Dasturiy
tizim Vazifa va imkoniyatlari Kamchiliklari
1 Derive 4.01|
4.11 O’rta maktab o’quvchilari va oily 
o’quv yurt boshlang’ich kurs 
talabalri uchun mo'ljallangan.
l)Funksional dasturlashni o'rganish
imkoniyatining mavjudligi;
2)Uncha   murakkab   bo'lmagan
analitik   hisoblashlarni   bajarish
mumkinligi;
3)Barcha   buyruqlarini   rus   tiliga
o'girilganligi. 1 )   Operatorli   dasturlash
imkoniyatini   mavjud
emasligi;
2 )Maxsus   funksiyalarning
qiymatlarini   analitik
hisoblash   imkoniyatini
yo'qligi.
2 Mathcad 8|
2000 l)Grafiklar   qurush   imkoniyati   juda
ajoyib   bo'lib,   foydalanuvchi   bilan
muloqot   muhiti   namunali   yo'lga
qo'yilgan;
  2)Ma'lumotlarni   palitralar
vositasida   kiritish   imkoniyatini
mavjudligi;
3)Operator   va   funksiyalarni   o'rinli
tanlanganligi;
4)Bu   sohada   adabiyotlarni   yetarli
darajada mavjudligi. l)Analitik   hisoblashlar
imkoniyatini   chegaralanga
nligi;
2)Dasturlash   tilining
soddaligi va imkoniyatini
Chegaralanganligi;
3)EHMda katta resurslarni
talab qilinishi;
4)Ruslashtirilgan a'lumotlar
tizimini mavjud emasligi.
3
Maple V R4|
R5|R6I l)Universitetlarning yuqori bosqich
talabalari va ilmiy rexnik 
hiblashlarga  mo'ljallangan;
2)3000   taga   yaqin   analitik
hisoblashlarni   bajarishga
mo'ljallangan   funksiyalari   va
buyruqlari mavjud;
3)Ma ’
lumotlar   tizimi   juda   qulay
shaklda tashkil etilgan;
4)Hujjatlarni   yuqori   saviyada
formatlash imkoniyati mavjud. l)Tovushlarni   sintez   qilish
imkoniyatining yo'qligi;
2)Katta   hajmda   EHM   re-
surslarini talab qilinishi;
3)Yuqori   malakali
mutaxassklarga   va
matematiklarga
mo’jallanganligi. 4 Mathematica
-4|5 l)Universitetlarning yuqori 
bosqich talabalari va ilmiy texnik
hisoblashlarga mo'ljallangan;
 2) Turli platformadagi 
EHMlarga mo 'ljallanganligi;
 3)Tovushlami sintez qilish 
imkoniyatining mavjudligi;
4) Ma'lumotlar tizimi juda 
qulay shaklda taslikil etilgan;
5) Hujjatlarni yuqori saviyada 
formatlash imkoniyati mavjud. l)Katta   hajmda   EHM   re-
surslarini talab qilinishi;
2)Yuqori malakali mutaxas-
sislarga   va   matematiklarga
mo'ljallanganligi.
2.Mathematica   va   uning   kompyuter   algebrasida   tutgan   o’rni.   M athematical
integrallashgan   sistemasi   hozirgi   kunda   mavjud   kompyuter   dasturlari   orasida
yetakchi   o'rinlardan   birini   egallaydi.   Mathematica   sistemasining   4(2000   yil)-   va
5(2003   yil)   -   variantlari   o'zlarining   qulay   va   tushunarli   interfeysi
(foydalanuvchining   muloqot   muhiti)   va   turli-tuman   xarakterdagi   hisoblash
jarayonlariga   qo’llanilish   imkoniyatining   mavjudligi   bilan   o'zlarining   oldingi
avlodlaridan   keskin   farq   qiladi.   Keyingi   20   yil   ichida   Mathematica   sistemasi
takomillashib   juda   katta   muvaffaqqiyatlarga   erishdi.   Shu   kunlarda   muhandislar.
iqtisodchilar.   aniq   fanlar   mutaxassislari   o’zlarining   ilmiy   tadqiqotlarida
Mathematica   dasturiy   sistemasining   imkoniyatlaridan   unumli   foydalanmoqdalar.
Jahonning   yetakchi   universitetlari   o'zlarining   o’quv   jarayonlariga   bu   sistemani
keng ko'lamda  joriy qilganlar. O'rta  umumiy ta'lim   o’quv  yurtlarida  Mathematica
dasturiy   sistemasini   o'quvchilarga   aniq   fanlarni   o’qitishda   muvaffaqiyatli
qo'llamoqdalar.
Mathematica sistemasi va kompyuter algebrasi tizimlari
orasida tutsan o'rni.
Amerika   Qo'shma   Shtatlarining   Wolfram   Research.   Inc.   kompaniyasi
tomonidan   yaratilgan   Mathematica   tizimi   fizik   olim   Stefan   Volfram   tomonidan
1987   yilda   taklif   etilgan   bo'lsada,   1988   yilda   Mathematica   tizimining   l-
lahjasi(versiyasi) jamoatchilik hukmiga havola etildi. Mathematica dasturiy tizimi
Amerika   jamoatchiligi   tomonidan   shu   yilda,   ya'ni   1988   yilda   yaratilgan   buyuk
texnik   va   matematik   kashfiyotlarning   10   tadan   bittasi   sifatida   qayd   etilgan.
Mathematicaning dastlabki varianti asosan Macintosh turidagi kompyuterlar uchun
mo'ljallangan   bo’lsada   ko'p   o'tmay   (oradan   6   oydan   so'ng)   MS-DOS   operatsion
tizimi   muhitida   ishlaydigan   Mathematica   tizimining   yangi   versiyasi   ham   paydo
bo'ldi. 1991 yilda tizimning Mathematica 2 versiyasi, 1996 yilda esa Mathematica
3.0   versiyalan   taklit   etildi.   Shundan   keyun   bu   dasturiy   tizim   20   dan   ortiq
operatsion   tizimlar,   ya'ni   Microsoft   Windows.   Windows   NT.   OS/2.   Linux,   Unix
va boshqa operatsion tizimlar muhitida ishlash uchun moslashtirildi.
Hozirgi   kunda   Mathematica   4   (2000   yil)   va   Mathematica   5   (2003   yil)
tizimlari   keng   ko'lamda   foydalanilmoqda.   Mathematica   4.0   va   Mathematica   5.0 tizimlari   o'zlarining   qulay   va   tushunarli   interfeysi   turli-tuman   xarakterdagi
hisoblash   jarayonlariga   qo'llanilish   imkoniyatining   mavjudligi   bilan   o'zlarining
oldingi   avlodlaridan   keskin   farq   qiladi.   Shu   kunlarda   muhandislar.   iqtisodchilar,
aniq   fanlar   mutaxassislari   o'zlarining   ilmiy   tadqiqotlarida   Mathematica   dasturiy
tizimining   imkoniyatlaridan   unumli   foydalanmoqdalar.   Jahonning   yetakchi
universitetlari   o'zlarining   o'quv   jarayonlariga   bu   tizimni   keng   ko'lamda   joriy
qilganlar.
Shunday   tabiiy   savol   tug'iladi:   « Shuncha      ilm      ahlini,   muhandislarni,   
qolaversa   o'qituvchi   -   professorlarni,   talabalarni   o'zining   imkoniyatlari      bilan   
o'ziga   rom   q ilgan   bu      tizimning   imkoniyatlari   qay   darajada?   U   o'zining   qaysi   
tomonlari   bilan   mavjud   tizimlar     va     dasturlash tillarida    m        farq     qiladi?    »
Mathematica   dasturiy   tizimi.   avvalo   sonli   va   analitik(simvolli)
hisoblashlarni yuqori tezlikda va aniq bajarishga mo'ljallangan dasturiy tizimdir.
Bu   tizim   yuqorida  sanalgan   tizimlar   kabi   amaliy   dasturlar   ta'minoti   (ADT)
yaratuvchi mutaxassislar uchun quyidagi:
• matematik   amallar:   ifodalarni   soddalashtirish,   ular   ustida   algebraik
shakl   almashtirishlar   bajarish,   turli   tenglama   va   tengsizliklarni   sonli
va   analitik   yechish,   differensiallash,   integrallash,   matritsalar   ustida
algebraik amallarni bajarish, optimallash masalalarini  hal  qilish, turli
ko'rinishdagi   (oshkor,   oshkormas,   parametrik   va   h.k)   funksiyalarni
grafiklarini yasash masalalarni tez va aniq amalga oshirish;
• hujjatlar  va dasturlarni  yaratish hamda tanlash imkoniyatini  beruvchi
matn muharrirlari;
• foydalanuvchilar uchun interaktiv rejimda (bevosita muloqot asosida)
ishlash imkoniyatini beruvchi ko'p oynali interfeys;
• yuqori saviyada tashkil etilgan ma'lumotnoma tizimi;
• analitik va sonli ifodalar ustida amallar bajaruvchi protsessor;
• muloqot jarayonidagi noaniqliklarni ko'rsatuvchi diagnostika tizimi;
• tizimning  bevosita  yadrosiga biriktirilgan tayyor dastur va 
funksiyalar kutubxonas;
vositalardan inumli foydalanish imkonini beradi.
Yuqorida   sanalgan   vositalar   amaliy   dasturiy   ta'minot   yaratish   jarayonida
o'rganiladigan masalaning matematik modelini qurish, hisoblash usullarini tanlash.
Hisoblash eksperimentlarini o'tkazish va olingan natijalarni tahlil qilish jarayonini
to'liq   avtomatlashtirish   imkonini   beradi.   Bu   esa   ADT   ni   tashkil   etishning
protsedurasini   va   masalalarni   EHM   da   yechishning   an’anaviy   ketma-ketligini
tubdan o'zgartirishga olib keladi.
Shunday qilib, yuqoridagi jadvalga qo'shimcha ravishda shuni aytish
mumkinki.   Mathematica   5.0   tizimida   barcha   bajariladigan   ishlar   bloknot
(hujjat)   sifatida   tashkil   qilinib.   muloqot   interaktiv   rejimda   amalga
oshiriladi.
Yuqoridagi   jadvalda   tavsiflari   keltirilgan   dasturiy   tizimlardan
foydalanislining ommaviylashuviga quyidagi faktorlar:
• kompyuterlar odatdagi uy elektr jihozlari qatoridan o'rin olayotganligi; • hozirgi zamon talabasi. ilmiy xodimi va mutaxassisi hayotida Internet 
tarmog’idan foydalanish kundalik ehtiyojga aylanganligi;
• o'quvchi va talabalarga bilim berishda dasturiy tizimlardan o"qitish 
vositasi sifatida foydalanish darajasining oshishi:
• dasturiy tizimlardan foydalanishga doir maxsus adabiyotlami 
ko'payganligi asos - sabab bo’lmoqda.
Holbuki   rivojlangan   mamlakatlarda   bu   tizimlar   o'qitish   jarayonining
ajralmas   qismiga   aylanib   qolgandir.   Masalan,   AQSh,   Xitoy,   Yaponiya   va
Germaniya   davlatlarida   bu   tizimlardan   nafaqat   o'qitish   jarayonida,   balki
ilmiy-texnik   hisoblashlarda   unumli   foydalanilmoqda.   MDH   mamlakatlari
orasida   bu   borada   Belorussiya   respublikasining   professor   o'qituvchilari,
muhandislari va olimlari peshqadamlikni qo'ldan bermay kelmoqdalar.
3.Mathcad   va   uning   ishchi   oynasi.   Umuman   olganda   Mathcad   –   bu
kompyutеr   matеmatikasining   zamonaviy   sonli   usullarini   qo`llashning   unikal
kollеktsiyasidir. U o`z ichiga yillar ichidagi matеmatikaning rivojlanishi natijasida
yig`ilgan tajribalar, qoidalar va matеmatik hisoblash usullarini olgan.
Mathcad   pakеti   muxandislik   hisob   ishlarini   bajarish   uchun   dasturiy   vosita
bo`lib,   u   profеssional   matеmatiklar   uchun   mo`ljallangan.   Uning   yordamida
o`zgaruvchi   va   o`zgarmas   paramеtrli   algеbraik   va   diffеrеntsial   tеnglamalarni
еchish,   funktsiyalarni   tahlil   qilish   va   ularning   ekstrеmumini   izlash,   topilgan
еchimlarni   tahlil   qilish   uchun   jadvallar   va   grafiklar   qurish   mumkin.   Mathcad
murakkab masalalarni еchish uchun o`z dasturlash tiliga ham ega. 
Mathcad   intеrfеysi   Windowsning   barcha   dasturlari   intеfеysiga   o`xshash.
Mathcad   ishga   tushurilgandan   so`ng   uning   oynasida   bosh   mеnyu   va   uchta   panеl
vositasi   chiqadi:   Standart   (Standart),   Formatning   (Formatlash)   va   Math
(Matеmatika).   Mathcad   ishga   tushganda   avtomatik   ravishda   uning   ishchi   hujjat
fayli   Untitled   1   nom   bilan   ochiladi   va   unga   Workshet   (Ish   varag`i)   dеyiladi.
Standart (Standart) vositalar panеli bir nеcha fayllar bilan ishlash uchun buyruqlar
to`plamini   o`z   ichiga   oladi.   Formatting   (Formatlash)   formula   v a   matnlarni
formatlash   bo`yicha   bir   nеcha   buyruqlarni   o`z   ichiga   oladi.   Math   (Matеmatika)
matеmatik   vositalarini   o`z   ichiga   olgan   bo`lib,   ular   yordamida     simvollar   va
opеratorlarni   hujjat   fayli   oynasiga   joylashtirish   uchun   qo`llaniladi.   Quyidagi
rasmda Mathcadning oynasi va uning matеmatik panеl vositalari ko`rsatilgan . 4.Maple   va   uning   ishchi   oynasi.   MAPLE   sistemasi   -   kompyuterda   turli
yo'nalishdagi:   iqtisodiyot,   mexanika,   matematika,   fizika,   muhandislik
masalalarining   analitik   va   sonli   yechimlarini   aniq,   tez,   samarali   hal   etish
uchun   mo'ljallangan   sistemadir.   Unda   4000   dan   ortiq   buyruqlar   mavjud
bo'lib, bu buyruqlar matematika  fanining  Algebra,  Geometriya,  Matematik
tahlil,     Matematik   statistika   kabi   turli   sohalari   masalalarini   hal   etishga
mo'ljallangan. 
Maplening ish stoli quyidagi bo'limlardan iborat:
Sarlavha satri: Ishchi soha: Asosiy menyular satri; Holat satri.
Usknnalar paneli; Chiza'ich va yurg'izish yo'lakchalari
Maplening ishchi maydoni uch qismga bo'linadi:
1. Kiritish maydoni - buyruqlar satridan tashkil topgan. Har bir buyruq
satri > simvoli bilan boshlanadi;
2. Chiqarish   maydoni-kiritilgan   buyruqlarni   qayta   ishlangandan   so'ng
hosil bo’lgan ma'lumotlar (analitik ifodalar, grafiklar va xabarlar)ni
o’z ichiga oladi;
3. Matnli   izohlar   maydoni   -   ro'y   bergan   xatoliklar   yoki   bajarilgan
buyruqlarga izohlar, turli xarakterdagi xabarlar.
Buyruqlar satrini matnl rejimiga o'tkazish uchun uskunalar panelidan
sichqoncha yordamida             
ni tanlaymiz.
Buyruqlar satriga o'tish uchun esa uskunalar panelidan    tanlaymiz.

Ma'ruza 1. Kirish. Kompyut е r mat е matika tizimi Merkury, Maple, Mathematika, Mat с ad , Matlab tizimini paydo bo’lish tarixi. MATLAB tizimini vazifalari va imkoniyatlari. Sist е mani k е ngaytmasi. Yordam tizimi. Reja: 1. AMDP faniga kirish.Kompyut е r mat е matika Merkury, Maple, Mathematika, Mat с ad , Matlab tizimini paydo bo’lish tarixi; 2. MATLAB tizimini vazifalari va imkoniyatlari; 3. Tizim k е ngaytmasi.Yordam tizimi. 4. Matlabdagi oddiy hisoblashlar, tizim o’zgaruvchilari va konstantalar. 1.AMDP faniga kirish . Kompyut е r mat е matika tizimi- Merkury, Maple, Mathematika, Mat с ad , Matlab tizimini paydo bo’lish tarixi. Bugungi kunda fan texnika olamida murakkab bo’lgan masalalarni, vazifalarni yechish uchun turli xil dasturlash tillari va vositalardan foydalaniladi. Hisoblash jarayonlarida bir qator doimiy takrorlanuvchi standart jarayonlar alohida paket deb ataluvchi maxsus dasturlar tarkibiga kiritiladi. Dasturlar paketi o’z navbatida obyektli modelni vujudga keltiradi. Amaliy masalalar bir nechta paketlarga bo’linib, kompyuter algebrasi deb ataluvchi bir necha dasturiy ta’minotlar tarkibiga kiritilgan. Bularga Merkury, Maple, Mathematika, Mat с ad, Matlab kabi dasturlar kiradi. Bu dasturlarning har biri o’z kamchilik va yutuqlari bilan alohida o’rganib chiqishga arziydi. Matlab dasturi 70- yillar oxirida Moler tomonidan sodda hisoblash jarayonlarini bajarish uchun yaratilgan. U asosan 3 avlod EHM da ishlash uchun mo’ljallangan edi. 80-yillar o’rtalariga kelib Little Mathworks kompaniyasi xodimi tomonidan Matlabning 4-avlod EHM ga mo’ljallangan PC Matlab versiyasi ishlab chiqildi. Ushbu versiyaning oldingi versiya bilan o’xshash jihatlari ko’p bo’lib, bir nechta matematik paketlargina oldingi versiyadan farqlab turadi. Bugungi kunda zamonaviy kompyuterlarda Matlabning 4,5,6 va 7 versiyalarni ko’rish mumkin. 4-versiyada Matlabning dastlabki versiyalarni xususiyatlari saqlanib qolgan. 5-versiya tarkibida ilk bor grafik muhit ishchi stoli yaratilgan. Shu bilan birga Matlabning 5-versiyasida 16 bit va 24 bitli RGB ranglar bilan ishlash, yuqori o’lchamli matritsalar bilan ishlash, fazoviy figuralarni chizish faqat sonlar bilan emas, balki matematik formulalar bilan ishlash imkoniyatlari kiritilgan. Matlabning 6-versiyasi bu dastur rivojining eng asosiy cho’qqilardan biri hisoblanadi. 5- versiyaga qo’shimcha ravishda boshqa dasturlash tillariga eksport va

import murakkab bo’lgan jarayonlar matematik modelni grafika bilan ishlash, boshqa kompyuter algebrasi dasturlar bilan moslasha olish jarayonlari qo’shimcha sifatida kiritilgan. Matlab dasturiy ta’minot o’rnatish jarayoni boshqa dasturlardan farqlanmaydi. Matlab dasturi ishga tushirilganda unda asosan 3 ta oyna ko’rinadi: Tarix Funksiya Ayni Buyruqlar oynasi chiqarish satri paytdagi oynasi katalog Ishchi qism 1-rasm. Matlab tizimini ishga tushgandan keying ishchi oynasi 1.Buyruqlar oynasi (Command Window); 2.Brouzerning ishchi qismi (Workspace Browser); 3.Massiv muharriri (Array Editor); 4.Buyruqlar tarixi oynasi (Command History); 5.Ayni vaqtdagi katalog brouzeri (Current Directory Browser);

6.Start tugmasi (Start); 7.Brouzer so’rovnomasi (Help Browser); 8.Muharrir (Editor/Debugger); 9.Sharxlovchi (Profiler). Asosiy buyruqlar oynasi MATLAB dagi barcha buyruqlarni paketlarni va kutubxonalani e’lon qilish oynasi hisoblanadi. O’zgaruvchilar oynasi dastur tarkibida e’lon qilingan o’zgaruvchilarni daraxt ko’rinishida ifodalab boradi. Buyruqlar tarixi oynasida esa dasturda bajarilayotgan buyruqlar ketma-ketligi saqlanib qoladi. Matlabda sеans ishi tushunchasi sеssiya (session) dеb yuritiladi, ya'ni foydalanuvchi ayni vaqtda foydalanayotgan xujjat – bu sеssiyadir. Unda kiritish-chi q arish satrlari va xatoliklar h a q ida axborot joylashgan b o’ ladi. Matlab sеssiyaga kiruvchi barcha o’zgaruvchi va funktsiyalar qiymatlari xotiraning ishchi qismida joylashgan bo’ladi. Save (sa q lash) komandasi yordamida ularni (matlab.mat) – da sa q lash mumkin. Load (yuklash) komandasi esa ma'lumotlarni diskdan ishchi sohaga kiritish imkonini bеradi. Diary (kundalik) komandasi orqali ma'lumotlarni ayrim qismlarini kundalik ko’rinishida saqlash mumkin. Buyru q lar oynasini bosh q arish komandalaridan eng mu h imlarini kеltiramiz: - clc – ekranni tozalaydi va kursorni bo’sh ekranning yuqori chap qismiga joylashtiradi; - home – kursorni ekranning yu q ori chap q ismiga q aytaradi. Jadal su’ratlar bilan rivojlanib borayotgan kompyutеrlashgan matеmatik tizimlar (KMT), ayniqsa, sonli hisoblashlarga yo’naltirilgan tizimlar orasida MATLAB matritsali matеmatik tizim alohida ajralib turadi. MATLAB tizimini tashkil qiluvchi pakеtlar soni ko’pligi uning juda ko’plab soha masalalarini hal qilishga joriy etish imkoniyatini bеradi. Hozirgi kunga kеlib Matlab tizimi zamonaviy matеmatik va ilmiy-tеxnikaviy dasturiy ta'minoti sohasida dеyarli jahon standarti bo’lib qoldi. 2.MATLAB tizimini vazifalari va imkoniyatlari. Matlab – mat е matik va ilmiy-t е xnik xisoblashlarni amalga oshirishga mo’ljallangan eng qadimiy, uzoq vaqtlar davomida ishlab chiqilgan va t е kshirilgan, avtomatlashtirilgan tizimlardan biri bo’lib, u matritsa va matritsaviy amallarni k е ngaytirilgan talqini ustiga qurilgan. Mazkur tushuncha uning nomida o’z aksini topgan, ya'ni MATLAB – matrix laboratory – matritsali laboratoriya. Ma'lumki, juda ko’plab dasturlar va ular ustida amallar bajarish sikllar orqali amalga oshiriladi. Bu esa dasturni ishlashini s е kinlashtiradi va ba'zi bir amallarni bajarishni dasturlash tillarida ko’p o’lchamli, xususan, ikki o’lchamli, ya'ni matritsalarni e'lon qilishni murakkablashtiradi. Matlabda asosiy ob' е kt sifatida matritsalardan foydalanish sikllar sonini k е skin kamaytiradi.

Matlab tizimini yaratishdagi asosiy maqsadlardan biri bo’lib, t е xnik va mat е matik xisoblashlarga yo’naltirilgan, foydalanuvchi uchun qulay va sonli usullarni amalga oshirish uchun tadbiq etib k е linayotgan an'anaviy dasturlash tillari imkoniyatlaridan ustunroq dasturlash tilini yaratish xisoblanadi. Mazkur tizimni yaratishda xisoblashlar t е zligini oshirishga hamda tizimning turli xil masalalarini hal qilishga moslashuvchanligiga katta e'tibor qaratilgan. Matlab tizimi dasturlashning uchta asosiy konts е psiyasini amalga oshiradi: a)modullarni, ya'ni prots е dura va funktsiyalarni yaratishga asoslangan prots е dura modulli dasturlash; b)ob' е ktga yo’naltirilgan dasturlash (ayniqsa, tizimning grafikli vositalarini joriy qilish ahamiyati); c)foydalanuvchining grafikli int е rf е ysini yaratishga mo’ljallangan vizual-yo’naltirilgan dasturlash (GUI-Graphics User Interface). Umuman olganda, Matlab dasturlash tili int е rpr е tatorlar sinfiga kiradi. D е mak, bundan k е lib chiqadiki, tizimning har bir buyrug’i nomi bo’yicha aniqlanadi va zudlik bilan joriy qilinadi. Bu esa ixtiyoriy dasturiy kodni qism-qism bo’yicha t е kshirishni osonlashtiradi. Tizimning asosiy imkoniyatlardan biri bu uning ochiqligi va k е ngaytirish mumkinligidir. Tizimning juda ko’plab buyruq va funksiyalari matnli formatdagi m-fayl (k е ngaytmasi .m) va C/C++ fayllari ko’rinishida bo’lib, barcha fayllarni modifikatsiya qilish mumkin. MATLAB tizimi shunday ishlab chiqilganki, hisoblashlarni, foydalanuvchi dasturini tayyorlamasdan to’g’ridan-to’g’ri bajarish mumkin. Bunda Matlab sup е rkalkulyator vazifasini bajarib, qatorli komanda r е jimida ishlaydi. Masalan, 2+3, ans=5; 2*3, ans=6 va xokazo. Tizimda ishlash muloqatli (dialogli) tavsifga ega bo’lib, “savol b е rildi – javob olindi” qoidasi bo’yicha ishlanadi. Ya'ni foydalanuvchi klaviatura yordami xisoblanishi lozim bo’lgan ifodani kiritadi, taxrir qiladi (agar lozim bo’lsa) va kiritishni ENTER klaviaturasini bosish bilan yakunlaydi. Umuman olganda, ma'lumotlarni kiritish va xisoblashlarni amalga oshirish quyidagicha amalga oshiriladi: Boshlang’ich ma'lumotlarni kiritishni ko’rsatish uchun >> b е lgidan foydalaniladi; Ma'lumotlar oddiy yozuvli tahrir yordamida kiritiladi; Biror bir ifoda xisoblash natijasini blokirovka qilish uchun mazkur ifodadan k е yin ; (nuqta v е rgul) qo’yiladi; Xisoblashlar natijasini ko’rsatuvchi o’zgaruvchi aniqlanmagan bo’lsa, u holda Matlab tizimi bunday o’zgaruvchi d е b ans oladi; O’zlashtirish amali sifatida juda ko’plab dasturlash tillari kabi “:=” b е lgi emas, balki mat е matikadagi oddiy “=” ni o’zi olinadi;

Sozlangan funktsiyalar (masalan, sin) yozma xarflar bilan yoziladi , hamda ularning argum е ntlari oddiy qavslar ichida yoziladi; Xisoblashlar natijasi yangi qatorda >> b е lgisiz chiqadi; Muloqat “Savol b е rildi – javob olindi” ko’rinishida amalga oshadi. Ma'lumki, juda ko’plab mat е matik tizimlarda, agar v son bo’lmasa, u holda sin(v) va exp(v) ifodalarni hisoblab bo’lmaydi, ya'ni tizim bunday ifodalarni xato d е b b е radi. Matlabda esa agar b е rilgan o’zgaruvchi v е ktor bo’lsa, natija ham mazkur o’lchamdagi v е ktor bo’ladi, agar matritsa bo’lsa, natija xam matritsa bo’ladi. Komandali r е jimda bir qatordagi b е lgilarning maksimal soni – 4096, m – fayllarda esa ch е garalanmagan. Ma'lumki, o’zgaruvchilar kompyut е r xotirasida, ya'ni ishchi soha (workspace) da ma'lum bir joy egallaydi. Ishchi sohani k е raksiz o’zgaruvchilardan tozalash uchun clear funktsiyasining turli xil ko’rinishlaridan foydalaniladi, masalan: clear - barcha aniqlangan o’zgaruvchilarni yo’qotish; clear x - aniqlangan x o’zgaruvchini yo’qotish; clear a, b, c - aniqlangan bir n е cha o’zgaruvchilarni yo’qotish. Umuman olganda, AMDP neyron to’ri, elektrotexnik qurilmalarni modellashtirish, murakkab matematik masalalarni yechish, fizik jarayonlarni kompyuterda modellashtirish kabi ko’plab sohalarda qo’llash uchun yaratilgan. Shuning uchun ham bu sohani chuqur o’rganish katta ahamiyatga ega. 3.Tizim k е ngaytmasi.Yordam tizimi. MATLAB dasturchilarga quyidagi sohalardagi paketlar kengaytmasini taqdim etdi: harbiy sanoat majmualari, energetika, aerokosmik va avtomobil qurilishi va b. Ammo shular ichidan turli tizim va qurilmalarni blokli imitatsion modelini qiluvchi Simulink paketi eng mashhuriga aylandi. MATLAB+Simulink tipik kompleksi katta qiymatdagi MATLAB paketlar instrumentlar “qutisi” Toolboxes va visual-mo’ljallangan blokli imitatsion modellashgan Simulink dinamik tizimini imkoniyatlarni kengaytiruvchi Blocksets dan iborat. Simulink paketi Matlab bilan birga o’rnatiladi.