-Mavzu: Approksimasiya masalalarini yechishda ortogonal funksiyalardan



bet42/141
Sana15.01.2024
Hajmi
#138013
1   ...   38   39   40   41   42   43   44   45   ...   141
Bog'liq
KM majmua (1)

11-Mavzu: Approksimasiya masalalarini yechishda ortogonal funksiyalardan
foydalanish
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;


98
-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;


99
·
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);


100
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.


101
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:
·<·%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


102
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:


103
Izohlarda % belgisi satrning birinchi pozitsiyasiga yozilishi kerak. Aks holda

Download
1   ...   38   39   40   41   42   43   44   45   ...   141




Bosh sahifa
Aloqalar

    Bosh sahifa



-Mavzu: Approksimasiya masalalarini yechishda ortogonal funksiyalardan