COMPAN - xarakterestik ko’phadni matrisa ko’rinishida ifodalaydi. Sintaksisi: C = compan(p).
Misol. (x-1)(x-2)(x-3) = x3 - 7x + 6 polinomi koiffetsentalaridan tuzilgan vektor p = [1 0 -7 6]; yordamchi massiv quyidagicha bo’ladi:
C = compan(p)
C = 0 7 -6
1 0 0
0 1 0
Mos keluvchi funksiyalar: POLY, POLYVAL, POLYVALM.
Adamar, Hankel, Resser, Tiplets, Vandermond, Uilkenson va Gelbert matritsalari MATLABda qanday buyruqlar bilan ifodalanadi?
HADAMARD - Adamar matritsasini (Hadamard matrix) hosil qiladi.
Sintaksisi: H = hadamard(n).
HANKEL - Hankel matritsasini (Hankel matrix) hosil qiladi.
Sintaksisi: H = hankel(c)
H = hankel(c, r)
Misol: c = [1 2 3];
H = hankel(c)
H = 1 2 3
1 2 0
3 0 0
c = 1:3; r = 7:10; H = hankel(c, r)
Warning: Column wins anti-diagonal conflict.
HILB, INVHILB - Gelbert matritsasini (Hilbert matrix) hosil qiladi.
Sintaksisi:
H = hilb(n)
H = invhilb(n)
Misol. 4 - taribli Gilbert matritsasi 1.5514e+004 shartli songa ega bo’lsin. Uning teskari matritsasi-butun sonli matritsa ko’rinishi quyidagicha bo’ladi:
invhilb(4)
ans = 16
|
-120 240
|
-140
|
-120
|
1200 -2700
|
1680
|
240
|
-2700 6480
|
-4200
|
-140
|
1680 -4200
|
2800
|
Natijani qo’zg’aluvchi vergulli sonlar ko’rinishida tasvirlasak quiydagi hosil bo’ladi:
format long e,
inv(hilb(4))
1.0e+ 003
ans = 0.0160
|
-0.1200
|
0.2400
|
-0.1400
|
-0.1200
|
1.2000
|
-2.7000
|
1.6800
|
0.2400
|
-2.7000
|
6.4800
|
-4.2000
|
-0.1400
|
1.6800
|
-4.2000
|
2.8000
|
Resser matritsasini (Rosser matrix) hosil qiladi.
Sintaksisi:
R = rosser
Misol.
>> R=rosser R =
611
|
196
|
-192
|
407
|
-8
|
-52
|
-49
|
29
|
196
|
899
|
113
|
-192
|
-71
|
-43
|
-8
|
-44
|
-192
|
113
|
899
|
196
|
61
|
49
|
8
|
52
|
407
|
-192
|
196
|
611
|
8
|
44
|
59
|
-23
|
-8
|
-71
|
61
|
8 411 -599 208 208
|
-52
|
-43
|
49
|
44 -599 411 208 208
|
-49
|
-8
|
8
|
59 208 208 99 -911
|
29
|
-44
|
52
|
-23 208 208 -91 199
|
TOEPLITZ - Tiplets matritsasini (Toeplitz matrix) hosil qiladi.
Sintaksisi:
T = toeplitz(c);
T = toeplitz(c, r).
Misol.
c=1:4; T = toeplitz(c)
T = 1
|
2
|
3
|
4
|
2
|
1
|
2
|
3
|
3
|
2
|
1
|
1
|
4 3 2 1
VANDER - Vandermond matritsasini (Vandermonde matrix) hosil qiladi.
Sintaksisi: V = vander(x).
Misol: x = [1 2 3 4]; V = vander(x).
V =1
|
1
|
1
|
1
|
8
|
4
|
2
|
1
|
27
|
9
|
3
|
1
|
64
|
16
|
4
|
1
|
WILKINSON - Uilkenson matritsasini (Wilkinson matrix) hosil qiladi.
Sintaksisi: W = wilkinson(n).
Misol: W = wilkinson(7):
W = 3
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
2
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
2
|
1
|
0
|
0
|
0
|
0
|
0
|
1
|
3
|
Chiziqli tenglamalar sistemasi MATLABda qanday echiladu?
Chiziqli tenglamalar sistemasini 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, xi≥0, i=1,2,…,n. Minimallashtirish kriteriyasi: B - Ax ning ikkinchi normasini minimallashtirish;
3) x=isqnonneg(A,B,x0) - iterasiyalar 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 iterasiyalar 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.
Chiziqli tenglamalar sistemasini yechishning Kramer usulini tavsiflang.
Aniq usullardan Kramer usulini ko’rib chiqamiz. Buning uchun det(A)≠0 bo’lishi kerak. Usulni to’liq keltirish uchun sistemaning asosiy matrisasi A ning k-ustun elementlarini ozod had b bilan almashtirib Ak, k =1,n matrisalar hosil qilamiz. U holda det(A)≠0 shart asosida yechimni topish uchun , tengliklardan foydalanish mumkin. Bu yerda foydalanilgan det(A) MATLAB funksiyasi bo’lib, A matrisaning determinantini xisoblab beradi. Taqribiy usullardan iterasiya usulini keltiramiz. Buning uchun (3.1) sistemani quyidagicha ko’rinishga keltiramiz:
(3.3)
Bu yerda i≠j bo’lganda
U holda
belgilashlar kiritib (3.3) ni quyidagicha yozib olamiz.
x= β+ αx
Meshgrid funksiyasining vazifasini ayting;
MESHGRID - ikki o’lchamli va uch o’lchamli to’rlar tugunlarini hosil qiladi.
Sintaksisi:
[X, Y] = meshgrid(x, y)
[X, Y] = meshgrid(x)
[X, Y, Z] = meshgrid(x, y, z)
Misol. Funksiyani -2 < x < 2, -2 < y < 2 sohada hisoblash uchun quyidagi amallar ketma-ketligi bajariladi:
>> [X, Y] = meshgrid (-2:.2:2, -2:.2:2);
>> Z = X.*exp (-X.^2 - Y.^2);
>> mesh (Z).
Mos keluvchi funksiyalar: SURF, SLICE.
Ezplot funksiyasining vazifasi nima?
Symbolic Math paketining grafik imkoniyatlari. Simvolli funksiyalarning grafiklari – ezplot. Foydalanuvchilarga grafik qurishda qulayliklar yaratish uchun Symbolic paketiga ezplot buyrug’i kiritilgan.U quydagi ko’rinishlarga ega:
Ezplot(f) - simvoli berilgan f(x) funksiyaning grafikini mustaqil o’zgaruvchi x bo’yicha [-2*pi,2pi] intervalda ko’radi.
- Ezplot(f,xmin,xmax) - yuqoridagi bilan bir xil, faqat mustaqil x bo’yicha xmin dan xmax gacha bo’lgan intervalda grafik quradi.
- Ezplot (f,[xmin,xmax,ymin,ymax]) - f(x,y)=0 funksiyaning xmin, ymin uchun grafigini quradi.
Misol. x3+x2+x+1 funksiyaning grafigini -3 va 2 gacha bo`lgan intervalda qurish quydagicha amalga oshiriladi (3.20-rasm).
>>ezplot(‘x^3+x^2+x+1’,[-3 2]).
Bir o`zgaruvchili funksiya grafigi qanday quriladi?
Bir o`zgaruvchili funksiya grafigini qurush. Bevosita hisoblashlar rejimida amalda tizimning grafiklar qurushga taluqli barcha imkoniyatlaridan foydalanish mumkin. Avvaliga oddiy misol, sinusoidaning grafigini qurushni qaraylik. Funksiyaning x argumenti 0 da 10 gacha bo`lgan intervalda 0.1 qadam bilan o`zgarsin. Grafik qurush uchun avval x=0:0.1:10 vektorni kiritish, keyin esa grafik qurush buyrug’i plot (sin(x)) foydalanish yetarli bo’ladi.
Misol. y=sin(x) funksiyaning grafigini x=(-15:0.1:15) da qurish quydagicha amalga oshiriladi (3.22 - rasm).
>>x=(-15:0.1:15);
>>y=sin(x);
>>plot(x,y)
>>
Ikki va uch o’lchamli grafiklarni hosil qilish;
Yagona oynada bir necha funksiyaning grafigini qurush. Bir yo`la uchta sin(x), cos(x) va son(x)/x funksiyalarning grafiklarini qurushga harakat qilib ko`raylik. Bu funksiyalarni argumenti yaqqol ko`rsatilmaydigan y(x) ko`rinishidagi o`zgaruvchilar bilan belgilash mumkin:
>> y1=sin(x); y2=cos(x); y3=sin(x)/x;
Bunday imkoniyat ushbu o`zgaruvchilarning x o`zgaruvchi kabi vector bo`lganligi sababli o`rinli. Endi plot buyrug’ining shakillarining biridan foydalanish mumkin:
>>plot(a1,f1,a2,f2,a3,f3,…).
Bu yerda a1, a2, a3, …, - funksiya argumentlarining vektorlari (yuqoridagi holda ularning hammasi - x), f1, f2, f3, …, - grafiklari yagona oynada qurilayotgan funksiyalar qiymatlarining vektorlari.
Ko`rsatilgan funksiyalarning grafigini qurush uchun plot buyrug’ini quydagicha yozamiz (3.23 - rasm):
>>x=0:0.1:10;
>> y1=sin(x); y2=cos(x); y3=sin(x)/x;
>>plot(x,y1,x,y2,x,y3)
3.23 - rasm. MATLABda sin(x), cos(x) va son(x)/x funksiyalarning grafiklarini qurush.
Dasturlash, m-fayllar va funksiyalar;
Umuman olganda, MATLAB dasturlash tili interpretatorlar sinfiga kiradi. Demak, bundan kelib chiqadiki, tizimning har bir buyrug’i nomi bo’yicha aniqlanadi va zudlik bilan joriy qilinadi. Bu esa ixtiyoriy dasturiy kodni qism-qism bo’yicha tekshirishni osonlashtiradi.
Tizimning asosiy imkoniyatlardan biri bu uning ochiqligi va kengaytirish mumkinligidir.
Tizimning juda ko’plab buyruq va funksiyalari matnli formatdagi m-fayl (kengaytmasi .m) va C/C++ fayllari ko’rinishida bo’lib, barcha fayllarni modifikasiya qilish mumkin.
Umuman olganda, ma’lumotlarni kiritish va hisoblashlarni amalga oshirish
quyidagicha amalga oshiriladi:
Boshlang’ich ma’lumotlarni kiritishni ko’rsatish uchun >> belgidan foydalaniladi;
Ma’lumotlar oddiy yozuvli tahrir yordamida kiritiladi;
Sozlangan funksiyalar (masalan, sin) yozma xarflar bilan yoziladi, hamda ularning argumentlari oddiy qavslar ichida yoziladi.
Dslove funksiyasining vazifasi nima?
Do'stlaringiz bilan baham: |