MATLAB VE UYGULAMALARI. Command Window. Yrd.Doç.Dr. Hikmet ÇAĞLAR İstanbul Kültür Üniversitesi Matematik-Bilgisayar Bölümü. Kısa MATLAB Tarihi

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "MATLAB VE UYGULAMALARI. Command Window. Yrd.Doç.Dr. Hikmet ÇAĞLAR İstanbul Kültür Üniversitesi Matematik-Bilgisayar Bölümü. Kısa MATLAB Tarihi"

Transkript

1 MATLAB VE UYGULAMALARI Yrd.Doç.Dr. Hikmet ÇAĞLAR İstanbul Kültür Üniversitesi Matematik-Bilgisayar Bölümü. Kısa MATLAB Tarihi 1984 yılında Cleve Moler ve Jack Little tarafında kurulan MathWorks, Inc. tarfından geliştirilen bir programdır.matlab(matrix LABoratory) matrix tabanlı saysal hesaplamalar yapabilmek için tasarlanmıştır.c++ benzeri programlama, data girişi, grafik olanaklar ve birçok toolboxa sahiptir. MATLAB Endüstri Uygulamaları Signal generation RADAR/SONAR simulasyonu Modelleme ve digital signal processing modellerin analizi Complex matematik hesaplamaları Control Sistemlerinin Modellenmesi Yardım alınabilecek MathWorks website adresi: Command Window MATLAB icon tıklanarak program çalıştırılır. Command Window ekranı görülür. Bu ekran kullanılarak basit komutlar ve program yazılabilir. 1

2 Örneğin, S=1+2 S= 3 f=sin(pi/4) f= Burada kullanılan sin,pi tanımlı fonksiyon ve sabittir. Değişken isimleri harfle başlar, sayılar ve underscores içerebilir.bir değişken içinde en fazla 31 karekter kullanılabilir. Format long komutuyla hesaplamada kullanılan anlamlı digit sayısı değiştirilebilir. hesaplanan f değeri, Örneğin daha once f = Tekrar default formata donmek için format short f = Exit komutu ile MATLAB tan çıkılır. Bu arada Workspace kaybolur. MATLAB 3 tip sayı sistemine sahiptir. integers real complex İşlemsel Semboller Toplama + Çıkarma Çarpma * bölme / veya \ üs alma ^ MATLAB ta iki bölme işlemi farklıdır, r = 47/3 r = /47 işlemi aşağıdaki gibi yapılabilir. 2

3 d = 47\3 (3/47) d = workspace alanındaki değişkenler save komutu ile saklanır.load komutu ile bu alan yüklenebilir.clear komutu workspace alanını siler, save d clear load d d = Whos komutu ile workspace alanındaki tüm değişkenler görülebilir. whos Name Size Bytes Class s 1x1 8 double array Grand total is 1 elements using 8 bytes Name Size Bytes Class ans 1x1 16 double array (complex) fun 1x1 8 double array ld 1x1 8 double array rd 1x1 8 double array s 1x1 8 double array xi 1x1 8 double array xr 1x1 8 double array Grand total is 7 elements using 64 bytes who komutu ile sadece değişken isimleri listelenir. Your variables are: ans ld s xr fun rd xi Herhangibir komut hakkında yardım almak için help kullanılır, Help plot Eğer yapılan bir işlemin sonucunu command window ekranında gormek istemiyorsanız deyimin sonuna ; işareti koyuınuz. S=12+3; clc : command window ekranını siler. quit : MATLAB tan çıkışı sağlar. MATLAB Workspace Bu ekran kullanılarak değişkenler erişilerek düzeltmeler yapılabilir.herhangibir değişken silinmek istenirse clear komutu kullanılır.clear tüm değişkenleri workspace den siler. Clear a, sadece a değişkenini siler. 3

4 MATLAB da kullanılan Trigonometric fonksiyonlar, sin sinh asin asinh cos cosh acos acosh tan tanh atan atan2 atanh sec sech asec asech csc csch acsc acsch cot coth acot acoth - Sine. - Hyperbolic sine. - Inverse sine. - Inverse hyperbolic sine. - Cosine. - Hyperbolic cosine. - Inverse cosine. - Inverse hyperbolic cosine. - Tangent. - Hyperbolic tangent. - Inverse tangent. - Four quadrant inverse tangent. - Inverse hyperbolic tangent. - Secant. - Hyperbolic secant. - Inverse secant. - Inverse hyperbolic secant. - Cosecant. - Hyperbolic cosecant. - Inverse cosecant. - Inverse hyperbolic cosecant. - Cotangent. - Hyperbolic cotangent. - Inverse cotangent. - Inverse hyperbolic cotangent. Sayısal fonksiyonlar fix reel sayının tam kısmını verir floor negatif sayıya yuvarlama. ceil pozitif sayıya yuvarlama. round En yakın integer sayıya yuvarlama. rem Bölmeden sonar kalan. sign Signum function. (1/0) Inf, sonsuz (0/0 ) nan sqrt kare kök conv convolution fft fast Fourier transform ifft inverse fast Fourier transform length length of a vector size bir matrisin booyutlarını verir gcd en büyük ortak bölen lcm en küçük ortak bölen exp üstel fonksiyon log doğal logoritma log10 10 tabanlı logoritma mod moduler aritmetik Değişkenler Çalışma sırasında tüm değişkenler belirli bir formatta kullanılabilir.istenirse tek olarakta format tanımı yapılabilir. 4

5 v = değerini tanımlarsak, format short long short e long e e e+001 rat 1000/81 Sanal sayılar a+bi şeklinde tanımlanır, 3+2i ans = i sqrt(-1) ans = i Sanal saylarla ilgili fonksiyonlar. abs angle cos sin exp real imag conj : Komplex sayının magnitude (real sayılar için mutlak değer) : Komplex sayının pirimitiv argumanı : Komplex sayının cos fonksiyonu : Komplex sayının sin fonksiyonu : Komplex sayının üstel fonksiyonu : Komplex sayının real kısmı : Komplex sayının sanal kısmı : Komplex sayının eşleniği String String bilgiler aşağıdaki gibi tanımlanır. str = ' MATLAB ' str = MATLAB 5

6 Herhangibir stringin ASCII değerleri double fonksiyonu ile bulunur, str1 = double(str) str1 = ASCII kodlardan karekter formuna dönmek için char fonksiyonu kullanılabilir. str2 = char(str1) str2 = MATLAB İki stringi strcmp fonksiyonu ile karşılaştırılabiliriz. iseq = strcmp(str, str2) iseq = 1 İki string stscat fonksiyonu ile birleştirilebilir, strcat(str,str2) ans = MATLABMATLAB Elemanları string olan vektör tanımlayalım,. a = {'ad = '; 'soyad = '; 'telefon = '} a = 'ad = ' 'soyad = ' 'telefon = ' MATLAB ta karekter kontrolu için 2 fonksiyon mevcuttur, isletter ve isspace. isletter(str) ans = Eğer karekter harf ise 1 aksi taktirde 0 döner. isspace(str) ans = 6

7 Eğer karekter boşluk ise 1 aksi taktirde 0 döner. Random sayı üreten randn fonksiyonu ile 3x3 matris üretelim, A = randn(3) A = int2str fonksiyonu sayıları tamsayı olarak stringe çevirir B = int2str(a) B = num2str fonksiyonu ise reel sayı olarak çevirir, C = num2str(a) C = D = num2str(a, 18) D = Input Output Sisteme bilgi girişi için input fonksiyonu kullanılr, A=input( bir sayı giriniz ) Girilen değer değişkene atanır. Herhangibir değeri görüntülemek için disp kullanılır, disp( 'MATLAB' ); disp(a) disp( [ 'Kültür ' 'Universitesi' ] ); ad = 'ali'; disp( [ 'merhaba ' ad ] ); d = [ num2str(16) '-subat-' num2str(2004) ]; 7

8 disp(d); 16-subat-2004 x = 44.2; disp( [ 'sonuc = ' num2str(x) ] ); cevap=44.2 formatlı çıkış için, fprintf fonksiyonu kullanılır, fprintf( format, data ) format için aşağıdaki karekterler kullanılır, %d integer %f floating point format %e exponential format \n new line character \t tab character fprintf( 'yarıçapı %d olan dairenin alanı %f', 3, pi*3^2 ); yarıçapı 3 olan dairenin alan x = pi; fprintf( 'x = %10.2f', x ); x = 3.14 Save, Load Bir dosya veya değişken save komutu ile saklanır, load ile çalışma alanına getirilir. save dosya-adı değişken1 değişken2 load dosya-adı değişken1 değişken2 Vektör ve matris Satır vektör a = [1 2 3] a = Sütün vector b = [1;2;3] b = ' operatörü transpose için kullanılır. complex formda, a + i*b' 8

9 (a+i*b')' ans = i i i (a+i*b').' ans = i i i length fonksiyonu vektördeki elaman sayısını verir length(a) ans = 3. operatörü MATLAB da çok önemlidir. Örnek: a*a işlemi boyut hatası verir, A vektörünün elemanlarının karşılıklı çarpımını elde etmek için, a.*a ans = ayni işlem aşağıdaki gibi yapılabilir a.^2 ans = Benzer biçimde bölme işlemi a.\b' ans = a vectörü sütün olarak değiştirilebilir, a = a' a = çarpma işlemi c = a'*b c = 5 c = a*b' c =

10 3 6 9 İki vectörün vektörel çarpımı, b = [-2 1 2]; cp = cross(a,b) cp = Matris MATLAB da matrisler aşağıdaki gibi tanımlanır, Boş matris M=[ ] A=[1 1 3;4 0 6;2,5,-1] A = B=[1 0-1 ; ;-1 1 0] B = İki matrisin çarpımı, C=A*B C =

11 transpose si A' ans = matrisin karesi D=B^2 D = DD=B.^2 DD = matrisin determinantı det(a) ans= 46 matrisin inversi inv(a) 11

12 ans = matrisin rank rank(d) ans = 2 Bir matrisin özdeğer ve özvektörü, [P,LAMDA]=eig(D) P = LAMDA = Matrislerle ilgili bazı özellikler: A = [1 2 3;4 5 6;7 8 10] A = A matrisinden alt matrix elde edilebilir,örneğin 1 ve 3 satırlar ile 1 ile 2 sütünlar B = A([1 3], [1 2]) B = A matrixinden 1 ve 3 üncü satırları yer değiştirebiliriz. C = A([3 2 1],:) 12

13 C = : operatörü sutünün veya satırın tüm elemanları anlamında kullanılır. A(:) ans = Herhangibir satır(sütün) silmek için, A(:, 2) = [] A = inci sütün silindi. Vektörleri kullanarak matrix yaratılabilir, A = [A(:,1) [2 5 8]' A(:,2)] A = yeni bir matrix yaratalım, A = [-1 2 3;0 5 1] A = A > 1 ans = A(A > 1) ans = A = [1 2 3; 3 2 1] ; 13

14 A.*A ans = A*A??? Error using ==> * Inner matrix dimensions must agree. Diag fonksiyonu bir matrixin diyagonalı yaratır, d = [1 2 3]; D = diag(d) D = Tersine bir matrixte kullanılırsa matrixin diagonalını verir, d = diag(d) d = Ayni boyuttaki matrisler bir değişkende saklanabilir, a={[1 2; 3 4],[6 7; 8 9]} a = [2x2 double] [2x2 double] a{1} ans = m tane matrisin lineer kombinasyonunu bulan fonksiyonu yazalım, function M = linkomb(v,a) % m tane ayni boyutta matrisin Linear kombinasyonu % katsayılar v = {v1,v2,,vm} % A = {A1,A2,...,Am} m = length(v); [k, l] = size(a{1}); M = zeros(k, l); for i = 1:m M = M + v{i}*a{i}; 14

15 end v={2,3} v = [2] [3] linkomb(v,a) ans = Bazı özel Matrisler ones(4,3) ans = zeros(2,4) ans = eye(4) ans = eye(5,3) ans =

16 eye(4,5) ans = Hilbert matrisi H=hilb(4) ans = H = rational formda istenirse, rats(h) ans = 1 1/2 1/3 1/4 1/2 1/3 1/4 1/5 1/3 1/4 1/5 1/6 1/4 1/5 1/6 1/7 Diagonal matris elde etmek için d=1:5; m=diag(d) 16

17 m = s1=diag(d,1) s1 = s2=diag(d,-1) s2 = rand(n,m) uniform dağılımdan nxm matris randn(n,m) normal dağılımdan nxm matris triu(a) üst üçgen matris tril(a) alt üçgen matris M-Files Program codlarını içeren file m-file adı verilir. Pull-down menu ile File-new seçeneği ile yaratılır. Script files veya function files olmak üzere 2 biçimde yazılabilir.script file input arguman ve output arguman içermez. 17

18 Örnek script file, % Script file x = pi/100:pi/100:10*pi; y = sin(x)./x; plot(x,y) grid ornek1 olarak save ediniz. Yukarıdaki ornek programda % ile başlayan satır açıklama satırı. Ikinci satırda x değişkeni [pi/100,10*pi] kapalı aralığında pi/100 artımla yaratılıyor. Üçüncü satırda x değerleri için hesaplanan sin(x)/x değerleri y değişkeninde saklanıyor. Plot(x,y) ile grafik çiziliyor. Grid grafik ekranın grid oluşturlması için kullanılmıştır. Command Window da ornek1 yazılarak enter yapılırsa script file run edilmiş olur. Function file için bir vectoru büyükten küçüğe sıralayan programı yazalım yazalım. function [b, j] = sirala(a) % Function a vectorunu büyükten küçüğe sıralar % b argumanı sıralanmış vector % j sıralama sonrası elemanların index değerlerini verir. [b,j] = sort(-a); b = -b; Command window da, a = [pi ]; [b, j] =sirala(a) b = j = Bazı zamanlarda çalışma anında kullanılmak üzere function tanımlamak gerekebilir.bu durumda inline fonction kullanılır. f = inline('sqrt(x.^2+y.^2)','x','y') f = Inline function: f(x,y) = sqrt(x.^2+y.^2) herhangibir değeri hesaplamak için f(3,4) ans = 5 yukarıda yazılan inline function matrix içinde kullanılabilir. Örneğin: A = [1 2;3 4] A = and 18

19 B = ones(2) B = C = f(a, B) C = Karekterlerden oluşan string bilgiler aşağıdaki gibi tanımlanabilir s = ' MATLAB' s = MATLAB Döngüler,Kontrol MATLAB programlamada aşağıdaki düngü ve kontrollar kullanılabilir. for loops while loops if-else-end switch-case for loops for k = dizi deyimler end for ve end arasındaki deyimler dizide belirtilen her eleman için icra edilir.örneğin n = 0, 1,, 10 için n/10 noktalarında sin değerlerini hesap edelim. for n=0:10 x(n+1) = sin(pi*n/10); end x x = Columns 1 through Columns 8 through for döngüsü iç içe kullanılabilir, H = zeros(5); for k=1:5 for l=1:5 H(k,l) = 1/(k+l-1); end end 19

20 H H = Bulunan matrix Hilbert matrix olarak adlandırılır. 10x10 boyutunda A = [akl], matrixini, akl = sin(k)cos(l) olacak şekilde elde etmek isteyelim, A = zeros(10); for k=1:10 for l=1:10 A(k,l) = sin(k)*cos(l); end end yukarıdaki program daha kısa yazılabilir k = 1:10; A = sin(k)'*cos(k); Bu işlem MATLAB vectorization olarak adlandırılır. While loops Bu döngünün yapısı, While koşul Deyimler End Döngünün tekrar sayısını bilmiyorsa kullanılır.bunun için aşağıdaki örneğe bakalım, q = pi; while q > 0.01 q = q/2; end q q = if deyimi Bir koşula bağlı programın akışını değiştirmek için kullanılır, If koşul 20

21 deyimler end Bir başka kullanım biçimi, If koşul Deyimler (Eğer koşul doğruysa) Else Deyimler (Eğer koşul yanlışsa) End İç içe if lerde kullanılabilir, if koşu l 1 Deyimler (Eğer koşul 1 doğruysa) elseif koşu l 2 Deyimler (Eğer koşul 2 doğruysa) elseif... else Deyimler (Eğer tüm koşullar yanlışsa) End İf deyiminde aşağıdaki operatörler kullanılabilir, Operator < <= > >= == Eşit ~= Eşit değil Mantıksal operatörler, And & Or ~ Not Örnek : Sayısal analizde önemli yeri olan Chebyshev polinomlarını hesap edelim, Tn(x), n = 0, 1, 21

22 Tn(x) = 2xTn 1(x) Tn 2(x), n = 2, 3,, T0(x) = 1, T1(x) = x. function T = ChebT(n) % Coefficients T of the nth Chebyshev polynomial of the first kind. % They are stored in the descending order of powers. t0 = 1; t1 = [1 0]; if n == 0 T = t0; elseif n == 1; T = t1; else for k=2:n T = [2*t1 0] - [0 0 t0]; t0 = t1; t1 = T; end end Kübik Chebyshev polinomlarının katsayıları, coeff = ChebT(3) coeff = T 3 (x) = 4x 3 3x. Switch-case Genel yapısı, switch deyim (sayısal veya string) case değer1 (Eğer deyimin değeri değer1 ise) komutlar case değer2 (Eğer deyimin değeri değer2 ise) komutlar... otherwise komutlar end Örnek: Rastgele üretilen integer sayılar {1, 2,, 10} kümesi içinde, eğer x=1 veya x=2 ise %20 olasılık,x=3 veya x=4,x=5 ise %30 olasılık, diğer durumlarda %50 olasılık mesajı veren programı yazınız. 22

23 % Script M file (olasılık) x = ceil(10*rand); switch x case {1,2} disp('olasılık = 20%'); case {3,4,5} disp('olasılık = 30%'); otherwise disp('olasılık = 50%'); end Programda kullanılam MATLAB fonksiyonlar rand uniform dağılımdan rastgele sayı üretir (0, 1) ceil round towards plus infinity infinity (see Section 2.5 for more details) disp string/sayısal bilgileri ekranda görüntüler Yukarıdaki programı Command windowda çalıstıralım for k = 1:10 olasılık end olasılık = 50% Probability = 30% Probability = 50% Probability = 50% Probability = 50% Probability = 30% Probability = 20% Probability = 50% Probability = 30% Probability = 50% Örnek: a = [ ] a = i = (a == 1) i = Değeri 1 olan elemanlar başka bir diziye atanabilir b = a(i) b =

24 Başka bir biçimdede kullanılabilir ind = find(a == 1) ind = b = a(ind) b = Örnek: x = randn(1,7) x = ind = (x >= 1) (x < -0.2) ind = y = x(ind) y = Dizide elemanların varlığını sorgulayan isempty fonksiyonu için örnek verelim, isempty(y) ans = 0 y dizisi boş olmadığı içi 0 döner. isempty([ ]) ans = 1 Boş dizi içinse 1 döner. Örnek:Bir polinomun türev katsayılarını veren fonksiyonu yazalım, function dp = derp(p) % dp türev polinomu % p verilen polinom n = length(p) - 1; p = p(:)'; % p yi satır haline getirir dp = p(1:n).*(n:-1:1); % katsayıları hesapla k = find(dp ~= 0); if ~isempty(k) 24

25 dp = dp(k(1):end); % sıfırları sil else dp = 0; end p(x) = x 3 + 2x polinomu için yukarıdaki fonksiyon kullanılırsa dp = derp([ ]) dp = MATLAB Grafik Matlab birçok grafik fonksiyona sahiptir.iki ve üç boyutlu grafikler kolaylıkla çizilebilir. F(x)= x/(1+x^2) fonksiyonunu çizelim. % Script file % Fonksiyon y = x/(1+x^2). for n=1:2:5 n10 = 10*n; x = linspace(-2,2,n10); y = x./(1+x.^2); plot(x,y,'r') title(sprintf('graph %g. Plot based upon n = %g points.', (n+1)/2, n10)) axis([-2,2,-.8,.8]) xlabel('x') ylabel('y') grid pause(3) end Yukarıdaki programı incelersek, linspace(a, b, n) : [a,b] aralığını n noktaya bölerek yaratır 'r' : renk kodu (red) title sprintf : grafik üzerine açıklayıcı bilgilerin yazılmasını sağlar. : string ve sayısal bilgilerin birlikte oluşturulmasını sağlar. 25

26 %g : integer sayılar için format xlabel,ylabel : Exsenlerin etiketlerini yazmak için axis pause : Eksenleri düzenler : grafik ekranı bekletmek için kullanılır Ayni grafiği tek bir grafik ekranda çizebiliriz.bu amaçla subplot kullanalım. % Script file % y = x/(1+x^2) k = 0; for n=1:3:10 n10 = 10*n; x = linspace(-2,2,n10); y = x./(1+x.^2); k = k+1; subplot(2,2,k) % 2x2 4 grafik çizilecek, k=grafiğin indexi plot(x,y,'r') title(sprintf('grafik %g. n = %g ', k, n10)) xlabel('x') ylabel('y') axis([-2,2,-.8,.8]) grid pause(3); end 26

27 Aşağıdaki iki elipsi çizelim, % Script file % x(t) = 3 + 6cos(t), y(t) = sin(t) % x(t) = 7 + 2cos(t), y(t) = 8 + 6sin(t). t = 0:pi/100:2*pi; x1 = 3 + 6*cos(t); y1 = *sin(t); x2 = 7 + 2*cos(t); y2 = 8 + 6*sin(t); h1 = plot(x1,y1,'r',x2,y2,'b'); set(h1,'linewidth',1.25) axis('square') xlabel('x') h = get(gca,'xlabel'); set(h,'fontsize',12) set(gca,'xtick',-4:10) ylabel('y') h = get(gca,'ylabel'); set(h,'fontsize',12) set(gca,'ytick',-12:2:14) title(' (x-3)^2/36+(y+2)^2/81 = 1 ve (x-7)^2/4+(y-8)^2/36 =1.') 27

28 h = get(gca,'title'); set(h,'fontsize',12) grid Grafik çiziminde kullanılacak renk kodları aşağıdadır, y yellow m magenta c cyan r red g green b blue w white k black Çizilen grafiklerin içleri doldurulabilir Bir örnekle görelim, n = -6:6; x = sin(n*pi/6); y = cos(n*pi/6); fill(x, y, 'r') axis('square') title(' x = sin(n*pi/6), y = cos(n*pi/6) ') text(-0.45,0,' MATLAB') 28

29 Polar koordinatlarda çizim için bir örnek verelim, theta=0:pi/60:2*pi;r=2*(1-cos(theta));polar(theta,r);axis square 29

30 Contour ların çizimi Contour ların çizimi sık karşılaşılan bir problemdir. Örnek olarak, f(x,y) = 2 - [(x-1) 2 + 4(y-1) 2 + 2xy] fonksiyonunu alalım, function m=pr(x,y) m=zeros(0,length(x)) for k=length(y):-1:1 m=[m;2-((x-1).^2+4*(y(k)-1)^2+2*x*y(k))] end x=-2:.1:2; y=x; m=pr(x,y); cs=contour(x,y,flipud(m),[ ]); clabel(cs) xlabel('x') ylabel('y') title('contour Plot ') 30

31 3 Boyutlu grafikler plot3 fonksiyonu kullanarak % Script file % Curve r(t) = < t*cos(t), t*sin(t), t >. t = -10*pi:pi/100:10*pi; x = t.*cos(t); y = t.*sin(t); h = plot3(x,y,t); set(h,'linewidth',1.25) title(' u(t) = < t*cos(t), t*sin(t), t >') h = get(gca,'title'); set(h,'fontsize',12) xlabel('x') h = get(gca,'xlabel'); set(h,'fontsize',12) ylabel('y') h = get(gca,'ylabel'); set(h,'fontsize',12) zlabel('z') h = get(gca,'zlabel'); set(h,'fontsize',12) grid 31

32 mesgrid fonksiyonu kullanılarak 3 boyutlu koordinatlar yaratılabilir. x = [0 1 2]; y = [ ]; [xi, yi] = meshgrid(x,y) xi = yi = örnek: x = -1:0.05:1; y = x; [xi, yi] = meshgrid(x,y); zi = yi.^2 - xi.^2; mesh(xi, yi, zi) axis off örnek: % Script file % = y^2 - x^2 x = -1:.05:1; y = x; 32

33 [xi,yi] = meshgrid(x,y); zi = yi.^2 - xi.^2; surfc(xi,yi,zi) colormap copper shading interp view([25,15,20]) grid off title('hyperbolic paraboloid z = y^2 x^2') h = get(gca,'title'); set(h,'fontsize',12) xlabel('x') h = get(gca,'xlabel'); set(h,'fontsize',12) ylabel('y') h = get(gca,'ylabel'); set(h,'fontsize',12) zlabel('z') h = get(gca,'zlabel'); set(h,'fontsize',12) pause(5) figure contourf(zi), hold on, shading flat [c,h] = contour(zi,'k-'); clabel(c,h) title('the level curves of z = y^2 - x^2.') h = get(gca,'title'); set(h,'fontsize',12) xlabel('x') h = get(gca,'xlabel'); set(h,'fontsize',12) ylabel('y') h = get(gca,'ylabel'); set(h,'fontsize',12) 33

34 Bazı özel şekiller için hazır fonksiyonlar vardır, Küre: 34

35 [x,y,z]=sphere(100) % 100 noktayla çiz surf(x,y,z) silindir: [x,y,z] =cylinder(2) % r=2 surf(x,y,z) 35

36 koni: [x,y,z] = cylinder([0 1]) surf(x,y,z) 36

37 Elipsoid: [x,y,z]=ellipsoid(xc,yc,zc,xr,yr,zr) ( x xc) 2 xr 2 ( y yc) + 2 yr 2 + ( z zc) 2 zr 2 = 1 [x,y,z]=ellipsoid(2,3,4,5,6,8) surf(x,y,z) lorenz: sistemde tanımlıdır ve Lorenz chaotic attractor ünü verir. 37

38 spharm2 Sistemde tanımlı 3-boyutlu demo çizimdir. Matlab da kullanılan renk özellikleri aşağıda listelenmiştir, hsv - hue-saturation-value color map hot - black-red-yellow-white color map gray - linear gray-scale color map bone - gray-scale with tinge of blue color map copper - linear copper-tone color map pink - pastel shades of pink color map white - all white color map flag - alternating red, white, blue, and black color map lines - color map with the line colors colorcube - enhanced color-cube color map vga - windows colormap for 16 colors jet - variant of HSV prism - prism color map cool - shades of cyan and magenta color map autumn - shades of red and yellow color map spring - shades of magenta and yellow color map winter - shades of blue and green color map summer - shades of green and yellow color map örnek: 38

39 colormap(spring) Lineer Denklem Sistemlerinin Çözümleri Ax = b şeklindeki lineer denklem sistemlerinde,a mxn boyutunda bir matrix olmak üzere 1. m = n A = [1 2 3;4 5 6;7 8 10] A = b = ones(3,1); x = A\b x = bu çözümde sayısal yuvarlatma hatalar bulunabilirı, r = b - A*x r = 1.0e-015 * m > n A = [2 1; 1 10; 1 2]; x = A\b x = r = b - A*x r = m < n A = [1 2 3; 4 5 6]; b = ones(2,1); x = A\b x =

40 Bir matrixin inversi inv fonksiyonu kullanılarak bulunabilir Örnek: A = [1 2 3;4 5 6;7 8 10] A = Then B = inv(a) B = A = pascal(3) A = Cholesky üçgenleştirmesi, S = chol(a) S = A = S'*S. det(a) ans = norm (Euclidean norm) norm. a = -2:2 a = twon = norm(a) 17 twon = birim vektör unitv = a /twon unitv = a ve b vektörleri arasındaki açı hesaplanabilir, c = arccos(a.b/ a b ), 40

41 Polinomlar 3 üncü derece polinomun kökleri, p(x) = 3x 3 + 2x 2-1 p = [ ]; format long r = roots(p) r = i i bulunan köklerin değerlerini bulmak için, err = polyval(p, r) err = 1.0e-014 * i i Bir fonksiyonu 0 yapan degğeri bulmak, f(x) = cos(x) x. fonksiyonunu alalım, function y = f1(x) % A univariate function with a simple zero. y = cos(x) - x; r = fzero('f1', 0.5) r = fzero fonksiyonunda ikinci argüman başlangıç değeri. Feval fonksiyonu kullanarak fonksiyon değerini bulabiliriz. err = feval('f1', r) err = 0 istenilen bir aralıkta kök bulmak için, r = fzero('f1', [0 1]) r = fzero('f1', [1 2])??? Error using ==> fzero The function values at the interval endpoints must differ in sign. 41

42 Kök bulmada yaklaşım hassaslığı verilebilir rt = fzero('f1',.5, 1e-3) rt = = istenirse 4 üncü arguman 1 yazılarak iterasyon adımları görülebilir. format short rt = fzero('f1',.5, eps, 1) Func evals x f(x) Procedure initial search search search search search search search search search search search search search search search search search search search search Looking for a zero in the interval [0.18, 0.82] interpolation interpolation e-008 interpolation e-012 interpolation interpolation rt = Interpolasyon Intepolasyon için genel form yi = interp1(x, y, x i, method) şeklindedir x ve y verilen değerler,y i ise interpolasyon fonksiyonundan hesaplanan değerler (y i = f(x i )). Metotlar ise, 'nearest' : Local parçasal 'linear' : Linear. 'spline' : spline interpolasyon 42

43 örnek : (xk, yk) = (k_/5, sin(2xk)), k = 0, 1,, 5, değerlerini üretelim, x = 0:pi/5:pi; y = sin(2.*x); bulunan değerleri kullanarak interpolasyon yaparsak, xi = 0:pi/100:pi; yi = interp1(x, y, xi, 'nearest'); plot(x, y, 'o', xi, yi), title('piecewise interpolasyon y =sin(2x)') yi = interp1(x, y, xi, 'cubic'); plot(x, y, 'o', xi, yi), title('cubic interpolant of y = sin(2x)') 43

44 spline fonksiyonu kullanılarakta interpolasyon yapılabilir, x = -3:3; y = [ ]; t = -3:.01:3; p = pchip(x,y,t); s = spline(x,y,t); plot(x,y,'o',t,p,'-',t,s,'-.') legend('data','pchip','spline',4) 44

45 İki boyutlu interpolasyon {x k, y l } noktaları için, 1 k m, 1 l n aralığında z kl, verildiğinde z = f(x, y) interpolasyon denklemi zi = interp2(x, y, z, xi, yi, 'method') MATLAB fonksiyonu ile bulunabilir metotlar : 'nearest' - nearest neighbor interpolation 'linear' - bilinear interpolation 'cubic' - bicubic interpolation 'spline' - spline interpolation Örnek: z = sin(x 2 + y 2 ) fonksiyonundan 1 x 1, -1 y 1 aralığında data üreterek metotlaral interpolasyon yapalım, 'linear' ve the 'cubic' [x, y] = meshgrid(-1:.25:1); z = sin(x.^2 + y.^2); [xi, yi] = meshgrid(-1:.05:1); zi = interp2(x, y, z, xi, yi, 'linear'); surf(xi, yi, zi), title('bilinear interpolasyon sin(x^2 + y^2)') 45

46 cubic interpolasyon için, zi = interp2(x, y, z, xi, yi, 'cubic'); İstatistik uygulamalar İstatistikte kullanılan dağılım fonksiyonları ve özellikleri üzerinde duralım, Binomial dağılım: Binom dağılımının olasılık fonksiyonu, q=1-p µ= np σ 2 = npq örnek: n=25,p=0.2, 46

47 p(x<=3) =? p1=binocdf(3,25,0.2) baska bir biçimde ayni sonuç bulunabilir, p2=sum(binopdf(0:3,25,0.2)) Örnek: N=6,p=0.3 ve p=0.7 için olasılık yoğunluk fonksiyonunu çizelim, x=0:6 pdf1=binopdf(x,6,0.3) pdf2=binopdf(x,6,0.7) subplot(1,2,1) bar(x,pdf1,1, w ) title( n=6, p=0.3 ) xlabel( x ) ylabel( f(x) ) axis square subplot(1,2,2) bar(x,pdf2,1, w ) title( n=6, p=0.7 ) xlabel( x ) ylabel( f(x) ) axis square Poisson dağılımı 47

48 µ= λ σ 2 = λ Dağılımın grafiğini λ=5 için çizelim, x = 0:50; y = poisspdf(x,5); plot(x,y,'+') Örnek: λ=0.25 için P(x>=2) olasılığını hesaplayalım, P(x>=2)=1-{p(x=0)+p(x=1)} P=1-poisscdf(1,0.25) P =

49 Geometrik dağılım y = f ) = q=1-x x ( x; p pq x=0,1,... µ = 1 p σ = 2 1 p 2 p Örnek: x=0:25 y=geopdf(x,0.04) c=geocdf(x,0.04) plot(x,y) hold stairs(x,c) Hipergeometric dağılım 49

50 µ = nm N 2 σ = nm ( N M )( N 2 N ( N 1) n) Örnek: x=0:10 y=hygepdf(x,1000,50,20) c=hygecdf(x,1000,50,20) plot(x,y) hold stairs(x,c) 50

51 Uniform dağılım Bu dağılımın olasılık yoğunluk fonksiyonu, σ µ = = a + b 2 b 12 ( ) 2 a Örnek: x=-1:0.1:11 pdf=unifpdf(x,0,10) cdf=unifcdf(x,0,10) subplot(1,2,1), plot(x,pdf) title( PDF ) xlabel( x ), ylabel( f(x) ) axis([ ]) 2 subplot(1,2,2), plot(x,cdf) title( CDF ) xlabel( x ), ylabel( f(x) ) axis([ ]) 51

52 Normal Dağılım Normal dağılım olasılık yoğunluk fonksiyonu, µ =ortalama σ = standart sapma. Örnek: µ =5 σ = 2 s=[8 12] mu=10 sigma=2 p=normspec(s,mu,sigma) 52

53 Student s dağılımı Normal dağılıma benzer, küçük boyuttaki öreneklemlerde kullanılan bir dağılımdır, Dağılım fonksiyonu, f ν ν + 1 Γ 2 ( x; ) = ν + 1 ν νπ 2 2 Γ x ν MATLAP pdf fonksiyonu tpdf(x,serbestlik derecesi) Örnek: Normal dağılım ve t dağılımını ayni grafikte görelim, x=-5:0.1:5 y=tpdf(x,5) z=normpdf(x,0,1) plot(x,y,x,z) 53

54 Üstel dağılım Üstel dağılım olasılık yoğunluk fonksiyonu, λ > 0, parameter olmak üzere üstel dağılım olasılık yoğunluk fonksiyonu, f(x) = λe -λx λ>0, x 0 1 µ = λ σ 2 = 1 λ pdf fonksiyonunu çizelim, y1=exppdf(x,1/1) y2=exppdf(x,1/2) plot(x,y1,x,y2) title('ustel dagilim') 54

55 xlabel('x') ylabel('f(x)') Ornek: λ=1/12 p(x<=10)=? P=expcdf(x,1/λ) P = expcdf(10,12) P = p değeri veridiğinde x değerini bulmak için, x=expinv( ,12) x = Gamma dağılımı 55

56 λx λe ( λx) f ( x; λ, t) = Γ( t) t 1 ; x 0 Γ ( t) = 0 e y y t 1 dy t µ = λ σ = λ Gamma dağılımı MATLAB fonksiyonu gampdf(x,t,1/λ) Örnek: λ=t=1, λ=t=2, λ=t=3 için fonksiyonu çizelim, x=0:0.1:3 %farklı λ değerleri için gama fonksiyonu y1=gampdf(x,1,1/1) y2=gampdf(x,2,1/2) y3=gampdf(x,3,1/3) plot(x,y1,x,y2,x,y3) title('gamma dagilimi') xlabel('x') ylabel('f(x)') 56

57 Chi-Kare dağılımı ν / x ν / f ( x; ) = x e ν ; x 2 Γ( ν / 2) 2 Γ( a) = t µ = ν 0 σ 2 = 2ν e a 1 t dt örnek: x= 0:0.2:15 57

58 y1=chi2pdf(x,4) y2=chi2pdf(x,6) plot(x,y1,x,y2) F dağılımı F ( ν, ν ) = 1 2 χ / ν 1 1 χ / ν 2 2 χ 1, χ 2 : Chi-Kare dağılımı ν1, ν1 : serbestlik derecesi ν 2 µ = ν ( 2) 2 σ = 2( ν 1 + ν 2 2) ν ( ν 4)

59 Örnek: x= 0:0.01:10 y1=fpdf(x,5,3) y2=fcdf(x,5,3) plot(x,y1,x,y2) Weibull dağılımı Mühendislik uygulamalarında çok kullanılan bir dağılımdır.α>0, β>0, λ=1/α olmak üzere, olasılık yoğunluk fonksiyonu, f β 1 x ν β α β x ν ( x; ν, α, β ) = e ; x>ν α α µ=ν+αγ(1/β+1) σ 2 { Γ( 2 / β + 1) [ Γ(1/ + 1) ] } 2 = α β 59

60 Weibull dağılımı MATLAB fonksiyonu weibpdf(x.α,β), kümülatif dağılım fonksiyonu weibcdf(x.α,β) Örnek: x=0:0.1:3 %farklı α,β değerleri için Weibull fonksiyonu y1=weibpdf(x,1,2) y2=weibpdf(x,2,3) y3=weibpdf(x,3,4) plot(x,y1,x,y2,x,y3) title('weibull dagilimi') xlabel('x') ylabel('f(x)') Beta dağılımı Çok esnek bir dağılımdır farklı parametrelerde çok farklı davranışlar gösterir. ( ; α, β ) = 1 B( α, β ) (1 α 1 β 1 f x x x ; 0<x<1, ) 60

61 B ( α, β ) = 1 x 0 α 1 (1 x) β 1 dx = Γ( α) Γ( β ) Γ( α + β ) α µ = α + β σ = αβ 2 ( α + β ) ( α + β + 1) Beta dağılımı MATLAB fonksiyonu betapdf(x.α,β), Kümülatif dağılım fonksiyonu betacdf(x.α,β) Örnek: (0,1) aralğında α=β=0.5 ve α=β=3 için pdf fonksiyonunu çizelim. x=0.01:0.01:0.99 %farklı değerler için beta fonksiyonu y1=betapdf(x,0.5,0.5) y2=betapdf(x,3,3) plot(x,y1,x,y2) title('beta dagilimi') xlabel('x') ylabel('f(x)') 61

62 Multivariate Normal dağılım Çok değişkenli normal dağılım fonksiyonu, 1 1 T 1 f ( x; µ, Σ) = exp ( x µ ) ( x µ ) 1/ 2 d / 2 (2π ) 2 d = boyut Σ = dxd covariance matrisi µ = dx1 sütün matris Örnek: Dağılım fonksiyonunu çizelim, mu=zeros(1,2) cov = [1 0.7; 0.7 1] [x,y]=meshgrid(-4:0.2:4,-4:0.2:4) X=[x(:),y(:)] [n,d]=size(x) % datalar merkizi yapiliyor X=X-ones(n,1)*mu a=(2*pi)^(d/2)*sqrt(det(cov)) arg=diag(x*inv(cov)*x') p=exp((-0.5)*arg) 62

63 Z=p/a z=reshape(z,size(x)) subplot(1,2,1) surf(x,y,z) subplot(1,2,2) pcolor(x,y,z) Descriptive İstatistik Descriptive istatistik, verilerin ortalama,standart sapma gibi özelliklerini ve dağılım biçimini değişik grafiklerle özetleyen bir istatistiktir.bu istatistikte kullanılan MATLAB fonksiyonları örneklerle inceleyelim. 63

64 N x i i= µ = 1 Aritmetik ortalama N µ = N x 1x2... x Geometrik ortalama N = 1 n 1 µ Harmonic ortalama i 1 x i median = Bir dağılımı %50 lik olasılıkla iki parçaya bölen nokta locate = [geomean(a) harmmean(a) mean(a) median(a) ] locate = stats = [ mad(a) range(a) std(a)] stats = Standard sapma : a=[ ] a = std(a) ans = Variance : var(a) ans = Covariance matris X = [ ; ; ; ; ; ] X = 64

65 cov(x) ans = Skewness Verilen dataların simetrikliğini ölçer. Skewness fonksiyonunun değeri 0 ise datalar simetriktir. x=normrnd(4,3,1000,1) skewness(x) ans = Normal dağılımdan üretilen dataların simetrik olduğu söylenebilir. Kurtosis Dağılımın basıklığının bir ölçüsüdür. Normal dağılımda kurtosis değeri 3 dür. x=normrnd(4,3,1000,1) kurtosis(x) ans = x=weibrnd(3,0.6,1000,1) kurtosis(x) ans = quartiles,deciles, percentile Bir dağılımı eşit aralıklara bölen noktalardır. Örnek: 100 tane rassal sayı üreterek quartilleri bulunuz,(quartil : Dağılımı %25,%50,%75 bölen noktalardır) x=sort(rand(1,100)) q1=median(x(1:50)) q2=median(x) q3=median(x(51:100)) q1 = 65

66 q2 = q3 = quartiles,deciles ve percentiller prctile fonksiyonu ile bulunabilir, p = 100*(0:0.25:1); y = prctile(a,p); z = [p;y] z = prctile(a,50) ans = prctile(a,25) ans = 5 prctile(a,75) ans = 9 prctile(a,1) ans = 3 prctile(a,100) ans = 11 Range : range(a) ans = 8 Histogram a=[ ] 66

67 subplot(1,2,1) [n,x] = hist(a,10) bar(x,n,1) axis square title( frekans histogramı ) subplot(1,2,2) bar(x,n/140,1) axis square title( relative frekans histogramı ) Örnek: a =[ 1 2 3; 4 5 6; 7 4 2] a=a' subplot(2,1,1) plot(a,'b*') axis([0.5,3.5,-1,9]) title('sütün data') subplot(2,1,2) bar(mean(a),'r') hold on errorbar(mean(a),std(a),'k') title('mean data') 67

68 örnek: plot(a,'bo') axis([0.5,3.5,-1,9]) hold on plot(mean(a),'r-^') errorbar(mean(a),std(a),'g-') 68

69 yukarıdaki dataları kullanarak normal dağılım parametrelerini tahmin edelim mu=mean(a) v = std(a) xp=linspace(min(a),max(a)) yp=normpdf(xp,mu,v) [nu,x]=hist(a) h=x(2)-x(1) bar(x,nu/(80*h),1) hold on plot(xp,yp) title( yoğunluk histogramı ) hold off dağılımın simetrikliği box plot yardımıyle görülebilir. boxplot(a) 69

70 gruplanmış dataların istatistigi grpstats fonksiyonu ile bulunur. x=[ ] ' y=['a' 'a' 'b' 'a' 'a' 'b' 'b' 'b' 'b' 'a' 'a' 'a' ]' grpstats(x,y,0.05) son arguman güven aralığı için alfa anlam seviyesi 70

71 Pie Grafik Bir örnekle açıklayalım, x=[ ]; pie(x) e = zeros(size(x)); h = pie(x, e); textobjs = findobj(h, 'Type', 'text'); oldstr = get(textobjs, {'String'}); val = get(textobjs, {'Extent'}); oldext = cat(1, val{:}); Names = {'P1: '; 'P2: '; 'P3: '; 'P4: '}; newstr = strcat(names, oldstr); set (textobjs, {'String'}, newstr) farklı biçimlerde pie grafik çizilebilir, % alanlar X/sum(X) şeklinde hesaplanır.e vektöründe 1 e karşılık gelen değer pie grafikten dışarı çıkartılır. x = [ ]; e = [ ]; pie(x,e) 71

72 x = [ ] explode = [ ] pie3(x,explode) colormap hsv Rassal Sayı üretme Similasyon problemlerinde istenilen bir dağılıma göre data elde etmek önemlidir.matlab fonksiyonlar yardımıyla bu işlemler yapılabilir, Örnek: [0,1] aralığında Uniform dağılımdan sayı üretelim, 72

73 x=rand(1,1000) %ilk arguman satır, diğeri sütün sayısı [n,x]=hist(x,15) bar(x,n,1,'w') title('uniform dagilim histogram') xlabel('x') ylabel('frekans') Binom dağılımından n=100,p=0.5, 1500 data üretelim, r=binornd(100,0.5,1500,1) [n,x]=hist(r,50) bar(x,n,1,'w') 73

74 µ=0, σ=1 parametreli normal dağılımdan 1500 data üretelim, y=normrnd(0,1,1500,1) [n,x]=hist(y,50); bar(x,n,1,'w') 74

75 Testler İstatistik hipotez testleri matlab fonksiyonlar kullanılarak yapılabilir. Örnek olarak t(student) testini verelim, Eğer T > t( α / 2, n 1) ise H 0 hipotezi red. Kullanılacak matlab fonksiyon, [h,sig,ci] = ttest(x,m,alpha,tail) x = veriler m = ortalama alpha = anlam seviyesi eğer tail=0 ise µ m, çift taraflı test eğer tail=1 ise µ>m, tek taraflı test eğer tail=-1 ise µ<m, tek taraflı test h=0 ise,h 0 hipotezi Kabul h=1 ise,h 0 hipotezi Red sig = güven aralığı ci = t değerini ve serbestlik derecesini verir. Sayısal örnek olarak, sistemde bulunan gas dataları içinde price1 için t testi uygulayalım, H 0 : µ = 107 H 1 : µ 107 α=0.05 load gas price1 75

76 price1 = [a,b,c,d]=ttest(price1,107,0.05,0) a = 1 b = e-008 c = d = tstat: df: 19 Ayni veriler için Z test uygulanırsa, H 0 : µ = m H1: µ m µ=115 σ=0.04 [h,p,ci,z]=ztest(price1/100,1.15,0.04) h = 0 76

77 p = ci = z = İki örnek t test serbestlik derecesi [h,sig,ci] = ttest2(x,m,alpha,tail) price1 ve price2 ye fark testti uygulayalım, [h,sig,ci,stat]=ttest2(price1,price2) h = 1 sig = ci = stat = tstat: df: 38 77

78 Normallik testi Verilerin normal dağılımlı olup olmadıkları test edilebilir, bu test için aşağıdaki matlab fonksiyonu kullanılır, [H,P,LSTAT,CV]=lillietest(x,alpha) H 0 : Veriler normal dağılımlı H1 : Veriler normal dağılımlı değil Eğer H=0 ise H 0 kabul Eğer H=1 ise H 0 red örnek: MATLAB da buluna gas verilerini kullanalım, load gas prices = [price1 price2] plot(prices) boxplot(prices,1) set(gca,'xticklabel',str2mat('ocak','subat')) 78

79 Normallik testti uygulayalım, lillietest(price1) lillietest(price2) ans = 0 ans = 0 H 0 hipotezi Kabul edilir.veriler normal dağılımlıdır. Quantile-Quantile plot İki datanın kümülatif dağılım fonksiyonlarının karşılaştırılması ile dataların ayni dağılıma sahip olup olmadıkları karşılaştırılır. x=normrnd(1,2,1000,1) y=weibrnd(2,0.7,1000,1) qqplot(x,y) 79

80 görüldüğü gibi iki farklı dağılımdan geldikleri 45 derecelik doğru üzerinde olmamalarından anlaşılmaktadır.parametreleri farklı ayni dağılımdan iki data serisi üretelim, x=normrnd(1,2,1000,1) y=normrnd(3,5,1000,1) qqplot(x,y) Parametreleri farklı iki serinin ayni dağılımdan geldiği görüldü. 80

81 Lineer Regresyon modelleri x bağımsız değişken, y bağımlı değişken olmak üzere y=a+bx lineer modelini bulabiliriz, x=[ ; ]' Birden fazla x değişken sayısı olması durumunda sütün olarak eklenir. y=[ ]' [B,BINT,R,RINT,STATS] = REGRESS(y,x,0.05) a,b değerleri, B = a,b değerlerinin güven aralığı BINT = R=y-y(tahmin) R = R nin güven aralığı, RINT = STATS = Sırasıyla R 2 belirlilik katsayısı,f değeri,anlam seviyesi. 81

82 İki değişken arasındaki korelasyon katsayısı corrcoef fonksiyonu ile bulunur, a = b= [ ] b = corrcoef(a,b) ans = Kaynaklar 1. Computational Statistics Handbook with MATLAB, Wendy L.Martinez, Angel R.Martinez, CHAPMAN & HALL/CRC, Statistics,Murray R.Spiegel,McGraww-Hill Book Company, Regression Analysis,Frank A.Graybill,Hariharan K.Iyer,Duxbury Prss,

MATLAB Semineri. EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü. 30 Nisan / 1 Mayıs 2007

MATLAB Semineri. EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü. 30 Nisan / 1 Mayıs 2007 MATLAB Semineri EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü 30 Nisan / 1 Mayıs 2007 İçerik MATLAB Ekranı Değişkenler Operatörler Akış Kontrolü.m Dosyaları Çizim Komutları Yardım Kontrol

Detaylı

DENEY 1: Matlab de Temel Uygulamalar

DENEY 1: Matlab de Temel Uygulamalar DENEY 1: Matlab de Temel Uygulamalar I. AMAÇ Bu deneyde MATLAB (MATrix LABoratory) programının temel özellikleri anlatılmakta, öğrencinin sinyal işleme ve haberleşme uygulamalarında kullanabilmesi için

Detaylı

MATLAB Temelleri. EEM104 - Bilgisayar Programlama. Matlab ın Açılış Ekranı. Dr. Mehmet Siraç Özerdem EEM Dicle Üniversitesi. Launch Pad.

MATLAB Temelleri. EEM104 - Bilgisayar Programlama. Matlab ın Açılış Ekranı. Dr. Mehmet Siraç Özerdem EEM Dicle Üniversitesi. Launch Pad. MATLAB Temelleri EEM104 - Bilgisayar Programlama EEM Dicle Üniversitesi Matlab ın Açılış Ekranı Launch Pad Komut geçmişi penceresi Komut penceresi 1 Matlab ın Açılış Ekranı Çalışma alan penceresi Geçerli

Detaylı

MAK1010 MAKİNE MÜHENDİSLİĞİ BİLGİSAYAR UYGULAMALARI

MAK1010 MAKİNE MÜHENDİSLİĞİ BİLGİSAYAR UYGULAMALARI .. MAK MAKİNE MÜHENDİSLİĞİ BİLGİSAYAR UYGULAMALARI Polinom MATLAB p=[8 ] d=[ - ] h=[ -] c=[ - ] POLİNOMUN DEĞERİ >> polyval(p, >> fx=[ -..9 -. -.9.88]; >> polyval(fx,9) ans =. >> x=-.:.:.; >> y=polyval(fx,;

Detaylı

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü MATLAB a GİRİŞ Doç. Dr. Mehmet İTİK Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü İçerik: MATLAB nedir? MATLAB arayüzü ve Bileşenleri (Toolbox) Değişkenler, Matris ve Vektörler Aritmetik işlemler

Detaylı

NĐĞDE ÜNĐVERSĐTESĐ Elektrik Elektronik Mühendisliği Bölümü. Devre Tasarımı Ders Notları MATLAB. Arş. Gör. Salim ÇINAR. salim çınar

NĐĞDE ÜNĐVERSĐTESĐ Elektrik Elektronik Mühendisliği Bölümü. Devre Tasarımı Ders Notları MATLAB. Arş. Gör. Salim ÇINAR. salim çınar NĐĞDE ÜNĐVERSĐTESĐ Elektrik Elektronik Mühendisliği Bölümü Devre Tasarımı Ders Notları MATLAB Arş. Gör. Salim ÇINAR Atamalar: a=5 MATLAB ÖRNEKLERĐ a = 5 Çıkan sonucun görünmesi istenmiyorsa atamadan sonra

Detaylı

Ders 5 : MATLAB ile Grafik Uygulamaları

Ders 5 : MATLAB ile Grafik Uygulamaları Ders 5 : MATLAB ile Grafik Uygulamaları Kapsam Polinomlar Enterpolasyon Grafikler 5.1. Polinomlar 5.1.1. Polinom Girişi Matlab de polinomlar katsayılarının vektörü ile tanımlanır. Örnek: P(x) = -6x 5 +4x

Detaylı

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir. MATRİS TRANSPOZU: Bir matrisin satırlarını sütun, sütunlarınıda satır yaparak elde edilen matrise transpoz matris denilir. Diğer bir değişle, eğer A matrisi aşağıdaki gibi tanımlandıysa bu matrisin transpoz

Detaylı

Grafik Komutları. Grafik Türleri plot: çizgisel grafikler bar: sütun bar şeklindeki grafikler stem: sütun çizgisel grafikler pie: pasta grafikleri

Grafik Komutları. Grafik Türleri plot: çizgisel grafikler bar: sütun bar şeklindeki grafikler stem: sütun çizgisel grafikler pie: pasta grafikleri Matlab Grafikler Grafik Türleri Grafik Komutları Grafik Türleri plot: çizgisel grafikler bar: sütun bar şeklindeki grafikler stem: sütun çizgisel grafikler pie: pasta grafikleri Yardımcı Komutlar hold

Detaylı

Bilgisayar Programlama MATLAB

Bilgisayar Programlama MATLAB Bilgisayar Programlama MATLAB Grafik İşlemleri Doç. Dr. İrfan KAYMAZ MATLAB Ders Notları MATLAB de GRAFİK İŞLEMLERİ MATLAB diğer programlama dillerine nazaran oldukça güçlü bir grafik araçkutusuna (toolbox)

Detaylı

Bilgisayar Programlama MATLAB

Bilgisayar Programlama MATLAB What is a computer??? Bilgisayar Programlama MATLAB ler Prof. Dr. İrfan KAYMAZ What is a computer??? MATLAB de GRAFİK İŞLEMLERİ MATLAB diğer programlama dillerine nazaran oldukça güçlü bir grafik araçkutusuna

Detaylı

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar MatLab Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Sunum Planı fprintf komutu Clc, clear ve help komutları Koşullu ve Döngü ifadeleri Matlab da Fonksiyonlar Sorular Ekran

Detaylı

MATLAB de GRAFİK İŞLEMLERİ

MATLAB de GRAFİK İŞLEMLERİ MATLAB de GRAFİK İŞLEMLERİ MATLAB güçlü bir grafik araç kutusuna (toolbox) a sahip bir programlama dilidir. Matlab da 2 boyutlu grafik çizdirmek için plot komutu kullanılır. Örnek: aşağıdaki gibi yazılır.

Detaylı

İM 205-İnşaat Mühendisleri için MATLAB. Irfan Turk Fatih Üniversitesi,

İM 205-İnşaat Mühendisleri için MATLAB. Irfan Turk Fatih Üniversitesi, İM 205-İnşaat Mühendisleri için MATLAB Irfan Turk Fatih Üniversitesi, 2013-14 MATLAB Nedir? MATLAB ın açılımı MATrix LABoratory dir. MATLAB yüksek performanslı tekniksel bir programlama dilidir. Matematik,

Detaylı

BM202 SAYISAL ÇÖZÜMLEME

BM202 SAYISAL ÇÖZÜMLEME BM202 SAYISAL ÇÖZÜMLEME DOÇ.DR. CİHAN KARAKUZU DERS-2 1 Ders2-Sayısal Hesaplamalarda Gerek Duyulabilecek Matlab İşlemleri MATLAB, çok paradigmalı (bir şeyin nasıl üretileceği konusunda örnek, model) sayısal

Detaylı

Nearest Metodu : Bu metod istenilen noktaya en yakın olan veri noktasını verir

Nearest Metodu : Bu metod istenilen noktaya en yakın olan veri noktasını verir 7. İNTERPOLASYON (ARA DEĞERLEME) 5 Belirli bir aralıkta değişim gösteren bir fonksiyonun bazı değerleri biliniyorken, bilinmeyen diğer değerleri bulmak için İnterpolasyon Yöntemi kullanılır. MATLAB da

Detaylı

BİLGİSAYAR PROGRAMLAMA MATLAB

BİLGİSAYAR PROGRAMLAMA MATLAB BİLGİSAYAR PROGRAMLAMA MATLAB Arş. Gör. Ahmet ARDAHANLI Kafkas Üniversitesi Mühendislik Fakültesi Bu hafta? 1. Matlab ve Programlama Ortamı 2. Matlab Komut Penceresi 3. Matlab de değişken tanımlama 4.

Detaylı

MATLAB. Temel işlemler, Vektörler, Matrisler DOÇ. DR. ERSAN KABALCI

MATLAB. Temel işlemler, Vektörler, Matrisler DOÇ. DR. ERSAN KABALCI MATLAB Temel işlemler, Vektörler, Matrisler DOÇ. DR. ERSAN KABALCI İçerik Matlab Nedir? Matlab ın Kullanım Alanları Matlab Açılış Ekranı Matlab Programı İle Temel İşlemlerin Gerçekleştirilmesi Vektör İşlemleri

Detaylı

MATLAB Temelleri. EE-346 Hafta 2 Dr. Ayşe DEMİRHAN

MATLAB Temelleri. EE-346 Hafta 2 Dr. Ayşe DEMİRHAN MATLAB Temelleri EE-346 Hafta 2 Dr. Ayşe DEMİRHAN Komut Penceresi Çalışma Alanı Komut Satırı Geçerli Klasör Komut Geçmişi Preferences (Tercihler) Command Window bölümünden satır arası boşlukları ve sayı

Detaylı

Yrd. Doç. Dr. A. Burak İNNER

Yrd. Doç. Dr. A. Burak İNNER Yrd. Doç. Dr. A. Burak İNNER Kocaeli Üniversitesi Bilgisayar Mühendisliği Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab. http://yapbenzet.kocaeli.edu.tr Ders Adı : Bilgisayar Mühendisliğinde Matematik Uygulamaları

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ 3. DERS NOTU Konu: MATLAB de Temel İşlemler Hazırlayan: Yrd. Doç. Dr. Ahmet DUMLU 1 MATLAB (Matrix Laboratory) sayısal hesaplama dilidir. MathWorks firması tarafından geliştirilmiş

Detaylı

MATLAB MATLAB MAT LAB MAT LAB MATLAB

MATLAB MATLAB MAT LAB MAT LAB MATLAB MATLAB 1.DERS MATLAB MATLAB, bilim adamları ve mühendislere, Fortran ve C gibi gelenekselleşmiş dillerde program yazmaksızın, matrislere dayalı problemleri çözmede kullanılmak üzere bir sayısal hesaplama

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ 4. DERS NOTU Konu: M-dosya yapısı ve Kontrol Yapıları Hazırlayan: Yrd. Doç. Dr. Ahmet DUMLU 1 M-Dosya Yapısı Bir senaryo dosyası (script file) özel bir görevi yerine getirmek

Detaylı

Bilgisayar Programlama MATLAB

Bilgisayar Programlama MATLAB What is a computer??? Bilgisayar Programlama MATLAB Prof. Dr. İrfan KAYMAZ What Konular is a computer??? MATLAB ortamının tanıtımı Matlab sistemi (ara yüzey tanıtımı) a) Geliştirme ortamı b) Komut penceresi

Detaylı

>> 5*3-4+6/2^0 ans = 17 ( Matlab da sayılar arası işlemler [ +, -, /, *, ^ ] bu şekilde ifade edilmektedir.)

>> 5*3-4+6/2^0 ans = 17 ( Matlab da sayılar arası işlemler [ +, -, /, *, ^ ] bu şekilde ifade edilmektedir.) 7. Diferensiyel Denklemlerin Çözümünde Matlab Uygulamaları MATLAB, Matrislere dayanan ve problemlerin çözümlerinde kullanılan Matematik metotların bilgisayar ortamında kullanılmasını sağlayan yazılım paketidir.

Detaylı

MATLAB DA SAYISAL ANALİZ DOÇ. DR. ERSAN KABALCI

MATLAB DA SAYISAL ANALİZ DOÇ. DR. ERSAN KABALCI MATLAB DA SAYISAL ANALİZ DOÇ. DR. ERSAN KABALCI Konu Başlıkları Lineer Denklem Sistemlerinin Çözümü İntegral ve Türev İntegral (Alan) Türev (Sayısal Fark ) Diferansiyel Denklem çözümleri Denetim Sistemlerinin

Detaylı

MATLAB'A GİRİŞ. Contents

MATLAB'A GİRİŞ. Contents MATLAB'A GİRİŞ Contents Genel bakış Basit hesaplamalar Değişken atama ve bunlarla işlemler Yardım komutları Değişkenleri görme ve silme Ekranı temizleme Matris işlemleri Matrisler için dört işlem, üst

Detaylı

1. GİRİŞ 1.1. GENEL BAKIŞ 1.2. KULLANICI ARAYÜZÜ

1. GİRİŞ 1.1. GENEL BAKIŞ 1.2. KULLANICI ARAYÜZÜ 1. GİRİŞ 1.1. GENEL BAKIŞ MATLAB (MATrix LABoratory) sayısal hesaplama ve dördüncü nesil programlama dilidir. MathWorks firması tarafından geliştiriliyor. MATLAB; - matris işlenmesine, - fonksiyonlar ve

Detaylı

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ BİLGİSAYAR PROGRAMLAMA DERSİ Yrd. Doç. Dr. Fatih TOSUNOĞLU Erzurum Teknik Üniversitesi Mühendislik Fakültesi İnşaat Mühendisliği Bölümü DERS NOTU 3 KONU: M-dosya yapısı ve Kontrol Yapıları M-Dosya Yapısı

Detaylı

MATLAB PROGRAMLAMAYA GİRİŞ

MATLAB PROGRAMLAMAYA GİRİŞ MATLAB PROGRAMLAMAYA GİRİŞ MATLAB, MATrix LABoratory sözcüklerinden gelir ve temelde sayısal ve analitik olarak matematiksel fonksiyonların ifadelerinin kullanıldığı başta mühendislik alanında olmak üzere

Detaylı

CONTROL LAB1 MATLAB GİRİŞ

CONTROL LAB1 MATLAB GİRİŞ MATLAB GİRİŞ CONTROL LAB1 MATLAB ORTAMI Komut Penceresi Yardım Alma: e.g help sin, lookfor cos Değişkenler Vektörler, Matrisler ve Lineer Cebir (det, inv ) Grafik çizme, plot(x,y, r ), hist (colormap([0

Detaylı

Bilgisayar Programlama

Bilgisayar Programlama Bilgisayar Programlama M Dosya Yapısı Kontrol Yapıları Doç. Dr. İrfan KAYMAZ Matlab Ders Notları M-dosyası Genel tanıtımı : Bir senaryo dosyası (script file) özel bir görevi yerine getirmek için gerekli

Detaylı

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

MatLab. Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar MatLab Mustafa Coşar mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Sunum Planı MatLab Hakkında Ekran Yapısı Programlama Yapısı Matlab da Programlamaya Giriş Sorular MatLab Hakkında MatLab;

Detaylı

Yukarıdaki program çalıştırıldığında aşağıdaki sonucu elde ederiz.

Yukarıdaki program çalıştırıldığında aşağıdaki sonucu elde ederiz. HIZLI ÇALIŞAN ve AZ HAFIZA KULLANAN MATLAB PROGRAMI YAZMA: Matlab programlarında eğer döngüler kullanılıyor bunların içlerindeki komutların yapılması belirli bir süre alır. Matlab programlarının hızını

Detaylı

Matlab da 2-boyutlu Grafik Çizimi. Arş. Gör. Mehmet Ali ÜSTÜNER

Matlab da 2-boyutlu Grafik Çizimi. Arş. Gör. Mehmet Ali ÜSTÜNER Matlab da 2-boyutlu Grafik Çizimi Arş Gör Mehmet Ali ÜSTÜNER Manisa, 03122017 Arş Gör Mehmet Ali ÜSTÜNER 2 Dikdörtgen (x-y) Ve Kutupsal Eksenlerde Çizgi Grafikleri: En basit çizim, iki değişkeni olan çizimlerdir

Detaylı

Matlab da Dizi ve Matrisler. Mustafa Coşar

Matlab da Dizi ve Matrisler. Mustafa Coşar Matlab da Dizi ve Matrisler Mustafa Coşar MATLAB Değişkenleri Matlab da değişkenler; skaler, dizi(vektör), matris veya metin (string) türünde olabilirler. Örnek olarak: a=1; b=-3.2e3; c=22/5; metin= mustafa

Detaylı

Yrd. Doç. Dr. A. Burak İNNER

Yrd. Doç. Dr. A. Burak İNNER Yrd. Doç. Dr. A. Burak İNNER Kocaeli Üniversitesi Bilgisayar Mühendisliği Yapay Zeka ve Benzetim Sistemleri Ar-Ge Lab. http://yapbenzet.kocaeli.edu.tr DOĞRUSAL OLMAYAN (NONLINEAR) DENKLEM SİSTEMLERİ Mühendisliğin

Detaylı

MATLAB DE 2 BOYUTLU GRAFİK TÜRLERİ

MATLAB DE 2 BOYUTLU GRAFİK TÜRLERİ MATLAB 8.DERS MATLAB DE 2 BOYUTLU GRAFİK TÜRLERİ 1. Bir grafik penceresinde tek bir grafik (plot komutuyla) 2. Bir grafik penceresinde birden fazla grafik (Grafik elemanlarını plot komutu içinde virgülle

Detaylı

Nargin - Nargout. Bir fonksiyonda giriş parametrelerinin kontrolü Nargin = number of argument input

Nargin - Nargout. Bir fonksiyonda giriş parametrelerinin kontrolü Nargin = number of argument input Nargin - Nargout Bir fonksiyonda giriş parametrelerinin kontrolü Nargin = number of argument input function q = targ( a,b,c ) %UNTÝTLED Summary of this function goes here % Detailed explanation goes here

Detaylı

Uzaktan Algılama Teknolojileri

Uzaktan Algılama Teknolojileri Uzaktan Algılama Teknolojileri Ders 2 MATLAB ve Görüntü İşleme Alp Ertürk alp.erturk@kocaeli.edu.tr MATLAB Matrix Laboratory nin kısaltmasıdır Bir çok uygulamada kolaylık sağlayacak özelleşmiş parçaları

Detaylı

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü MATLAB İLE PROGRAMLAMAYA GİRİŞ Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü nedimtutkun@gmail.com 1 3. Hafta Ders İçeriği M Dosyası Oluşturma Fonksiyon Yazma Fonksiyonlar ve Alt Programlar MATLAB

Detaylı

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ ( BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi 2018-19 Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (e-mail: edemir@sirnak.edu.tr ) 04.10.2018 1 MATLAB da Workspace ve Workspace

Detaylı

MATLABA GİRİŞ 1. MATLAB. Komut penceresi. MATLAB adı, MATrix LABoratory (Matrix Laboratuarı) kelimelerinden gelir.

MATLABA GİRİŞ 1. MATLAB. Komut penceresi. MATLAB adı, MATrix LABoratory (Matrix Laboratuarı) kelimelerinden gelir. 1. MATLAB MATLAB adı, MATrix LABoratory (Matrix Laboratuarı) kelimelerinden gelir. Matlab, komut temelli bir programdır. Command Window penceresinde» işareti Matlab'ın komut prompt'unu gösterir ve bu işaret

Detaylı

MATLAB ve Simulink Kullanımına Giriş

MATLAB ve Simulink Kullanımına Giriş MATLAB ve Simulink Kullanımına Giriş Marmara Üniversitesi Teknoloji Fakültesi Mekatronik Mühendisliği Bölümü Hazırlayan: Arş.Gör. Barış DOĞAN baris@marmara.edu.tr MATLAB Nedir? MATLAB, bilim ve mühendislik

Detaylı

MATLAB de. Programlama. Kontrol Yapıları. Döngü Yapıları. Doç. Dr. İrfan KAYMAZ Matlab Ders Notları

MATLAB de. Programlama. Kontrol Yapıları. Döngü Yapıları. Doç. Dr. İrfan KAYMAZ Matlab Ders Notları MATLAB de Programlama Kontrol Yapıları Döngü Yapıları Doç. Dr. İrfan KAYMAZ if Şartlı deyimi: Bir mantıksal ifadeyi kontrol ederek bunun sonucuna göre mümkün seçeneklerden birini icra edebilen bir komuttur.

Detaylı

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK MATLAB de Bilgisayar Programlama Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK M-dosyası Genel tanıtımı : Bir senaryo dosyası (script file) özel bir görevi yerine

Detaylı

2.3. MATRİSLER Matris Tanımlama

2.3. MATRİSLER Matris Tanımlama 2.3. MATRİSLER 2.3.1. Matris Tanımlama Matrisler girilirken köşeli parantez kullanılarak ( [ ] ) ve aşağıdaki yollardan biri kullanılarak girilir: 1. Elemanları bir tam liste olarak girmek Buna göre matris

Detaylı

GÖRÜNTÜ İŞLEME DERS-3

GÖRÜNTÜ İŞLEME DERS-3 GÖRÜNTÜ İŞLEME DERS-3 Görüntü İşleme (Temel Matlab) AFYON KOCATEPE ÜNİVERSİTESİ İLİŞKİSEL OPERATÖRLER 8. KONTROL AKIŞ YAPILARI MATLAB bir programlama dilidir. Bu nedenle diğer programla dillerindeki temel

Detaylı

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü MATLAB İLE PROGRAMLAMAYA GİRİŞ Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü nedimtutkun@gmail.com 1 2 1. Hafta nın Ders İçeriği Tanıtım MATLAB ile İlgili Temel Bilgiler Tanıtım MATLAB sayısal hesaplama,

Detaylı

1- Temel MATLAB Fonksiyonları ve Programlama

1- Temel MATLAB Fonksiyonları ve Programlama 1- Temel MATLAB Fonksiyonları ve Programlama >> help elfun ile kategorilere ayrılmış biçimde temel MATLAB fonksiyonlarını görebilirsiniz. Bazı temel MATLAB fonksiyonları aşağıda verilmiştir. Trigonometrik

Detaylı

FONKSİYONLAR. Giriş argümanlarına karşılık gelen çözümü çıkış argümanları olarak sonuçlandırır. Fonksiyondosyalarıkendiçalışmaalanındaki

FONKSİYONLAR. Giriş argümanlarına karşılık gelen çözümü çıkış argümanları olarak sonuçlandırır. Fonksiyondosyalarıkendiçalışmaalanındaki FONKSİYONLAR Giriş argümanlarına karşılık gelen çözümü çıkış argümanları olarak sonuçlandırır. Fonksiyondosyalarıkendiçalışmaalanındaki yereldeğişkenleriişletir. Fonksiyon Dosyaları function [çıktı değişkeni]

Detaylı

LYS MATEMATİK DENEME - 1

LYS MATEMATİK DENEME - 1 LYS MATEMATİK DENEME - BU SORULAR FİNAL EĞİTİM KURUMLARI TARAFINDAN SAĞLANMIŞTIR. İZİNSİZ KOPYALANMASI VE ÇOĞALTILMASI YASAKTIR, YAPILDIĞI TAKDİRDE CEZAİ İŞLEM UYGULANACAKTIR. LYS MATEMATİK TESTİ. Bu testte

Detaylı

MATLAB. Grafikler DOÇ. DR. ERSAN KABALCI

MATLAB. Grafikler DOÇ. DR. ERSAN KABALCI MATLAB Grafikler DOÇ. DR. ERSAN KABALCI Matlab yüksek seviyede grafik oluşturulabilir. Matlab ile çizilebilecek grafikler; Dikdörtgen (x-y) ve 3 boyutlu çizgi grafikleri Ağ (mesh) ve yüzey grafikleri Çubuk

Detaylı

GÖRÜNTÜ İŞLEME MATLAB DERS-4

GÖRÜNTÜ İŞLEME MATLAB DERS-4 GÖRÜNTÜ İŞLEME MATLAB DERS-4 For ve İf örnekleri tic for x=-5:0.0001:5 t=x.^3-4.2*x.^2+3.3.*x -4; % if(t==0) if (t>=-0.001 && t

Detaylı

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA MATLAB 3.DERS disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA Daha önceki derslerimizde input komutu ile klavye üzerinden MATLAB programlama ortamına veri girmeyi öğrenmiştik. Bu dersimizde ise disp

Detaylı

6. ÇİZİM İŞLEMLERİ 3 6.1. 2 Boyutlu Eğri Çizimi x ve y vektörleri ayni boyutta ise bu vektörleri ekrana çizdirmek için plot(x,y) komutu kullanılır.

6. ÇİZİM İŞLEMLERİ 3 6.1. 2 Boyutlu Eğri Çizimi x ve y vektörleri ayni boyutta ise bu vektörleri ekrana çizdirmek için plot(x,y) komutu kullanılır. 6. ÇİZİM İŞLEMLERİ 3 6.1. 2 Boyutlu Eğri Çizimi x ve y vektörleri ayni boyutta ise bu vektörleri ekrana çizdirmek için plot(x,y) komutu kullanılır. A =[ 7 2 5 ]; B =[ 5 4 8 ]; plot(a,b); İstenildigi takdirde

Detaylı

BİLGİSAYAR PROGRAMLAMA VE FİZİKTE PROGRAMLAMA DERSLERİ İÇİN MATLAB ÇALIŞMA NOTLARI. Mehmet ÖZKAN

BİLGİSAYAR PROGRAMLAMA VE FİZİKTE PROGRAMLAMA DERSLERİ İÇİN MATLAB ÇALIŞMA NOTLARI. Mehmet ÖZKAN BİLGİSAYAR PROGRAMLAMA VE FİZİKTE PROGRAMLAMA DERSLERİ İÇİN MATLAB ÇALIŞMA NOTLARI Mehmet ÖZKAN input:bu komut kullanıcıdan veri girişi istiğinde kullanılır. Etkin ve etkileşimli bir program yazımında

Detaylı

GÖRÜNTÜ İŞLEME MATLAB DERS-3

GÖRÜNTÜ İŞLEME MATLAB DERS-3 GÖRÜNTÜ İŞLEME MATLAB DERS-3 Matris İşlemleri: Verilen bir X matrisi için:» X=[ 2-1; 5 8] X = 2-1 5 8 Determinant:» DETERMINANT=det(X) DETERMINANT= 21 MATRİSLER 27.2.2017 2 MATRİSLER B = 2 3 4-2 2 5 Matrisinin

Detaylı

MATLAB ile ANALİZ (MIA)

MATLAB ile ANALİZ (MIA) MATLAB ile ANALİZ (MIA) DERS-7 FONKSİYONLAR (nargin - nargout) Nargin - Nargout Bir fonksiyonda giriş parametrelerinin kontrolü Nargin = number of argument input function q = targ( a,b,c ) %UNTÝTLED Summary

Detaylı

MAK 210 SAYISAL ANALİZ

MAK 210 SAYISAL ANALİZ MAK 210 SAYISAL ANALİZ BÖLÜM 6- İSTATİSTİK VE REGRESYON ANALİZİ Doç. Dr. Ali Rıza YILDIZ 1 İSTATİSTİK VE REGRESYON ANALİZİ Bütün noktalardan geçen bir denklem bulmak yerine noktaları temsil eden, yani

Detaylı

Algoritmalar ve Programlama. DERS - 4 Yrd. Doç. Dr. Ahmet SERBES

Algoritmalar ve Programlama. DERS - 4 Yrd. Doç. Dr. Ahmet SERBES Algoritmalar ve Programlama DERS - 4 Yrd. Doç. Dr. Ahmet SERBES Geçen Derste Değişken oluşturma Skaler Diziler, vektörler Matrisler Aritmetik işlemler Bazı fonksiyonların kullanımı Operatörler İlk değer

Detaylı

Ankara Üniversitesi Fen Fakültesi. Astronomi ve Uzay Bilimleri. AST206 İstatistik Astronomi Dersi OCTAVE GİRİŞ. Öğr. Gör.

Ankara Üniversitesi Fen Fakültesi. Astronomi ve Uzay Bilimleri. AST206 İstatistik Astronomi Dersi OCTAVE GİRİŞ. Öğr. Gör. Ankara Üniversitesi Fen Fakültesi Astronomi ve Uzay Bilimleri AST206 İstatistik Astronomi Dersi OCTAVE GİRİŞ Öğr. Gör. Yahya DEMİRCAN 2012 İçindekiler Octave:... 3 Dosya indirme ve kurulum:... 3 Linux...

Detaylı

MATLAB Ek Ders 1: Temel işlemler, vektörler, matrisler, basit grafikler ve dosyalar

MATLAB Ek Ders 1: Temel işlemler, vektörler, matrisler, basit grafikler ve dosyalar MATLAB Ek Ders 1: Temel işlemler, vektörler, matrisler, basit grafikler ve dosyalar Kitabımız: MATLAB ile Uygulamaları (Ahmet Altıntaş) Yrd. Doç. Dr. Sevgi Zübeyde GÜRBÜZ Yrd. Doç. Dr. İsrafil BAHÇECİ

Detaylı

MATLAB GRAFİK. Matlab, 2D ve 3D başta olmak üzere çok gelişmiş grafik araçları sunar:

MATLAB GRAFİK. Matlab, 2D ve 3D başta olmak üzere çok gelişmiş grafik araçları sunar: Matlab Grafikler-2 MATLAB GRAFİK Matlab, 2D ve 3D başta olmak üzere çok gelişmiş grafik araçları sunar: Çizgi (line) grafikler (plot, plot3, polar) Çubuk (bar), pasta (pie) vb özel grafikler (bar, bar3,

Detaylı

Fen ve Mühendislik Uygulamaları ile MATLAB

Fen ve Mühendislik Uygulamaları ile MATLAB Fen ve Mühendislik Uygulamaları ile MATLAB Doç. Dr. M. Akif CEVİZ Atatürk Üniversitesi Mühendislik Fakültesi Makine Mühendisliği Bölümü Bu hafta Ders giriş bilgileri Algoritma geliştirme MATLAB a giriş

Detaylı

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular Önsöz Giriş İçindekiler V VII IX 1.1. Algoritma 1.1.1. Algoritma Nasıl Hazırlanır? 1.1.2. Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular 2.1. Programın Akış Yönü 19 2.2. Başlama

Detaylı

M-Dosyaları. Editor: Kodların yazıldığı kısımdır. Uzantısı.m olan dosyalarla çalışır.

M-Dosyaları. Editor: Kodların yazıldığı kısımdır. Uzantısı.m olan dosyalarla çalışır. M-Dosyaları Editor: Kodların yazıldığı kısımdır. Uzantısı.m olan dosyalarla çalışır. 1 M-Dosyasının Kullanımı İki çeşit M-dosyası vardır Scripts, Düz metin dosyalarıdır. Giriş ve çıkış argümanları içermeyen

Detaylı

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK MATLAB de Bilgisayar Programlama Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK disp komutu: Ekrana mesaj veya bir değişken değeri yazdırmak için kullanılan komuttur.

Detaylı

MAK 210 SAYISAL ANALİZ

MAK 210 SAYISAL ANALİZ MAK 210 SAYISAL ANALİZ BÖLÜM 5- SONLU FARKLAR VE İNTERPOLASYON TEKNİKLERİ Doç. Dr. Ali Rıza YILDIZ MAK 210 - Sayısal Analiz 1 İNTERPOLASYON Tablo halinde verilen hassas sayısal değerler veya ayrık noktalardan

Detaylı

MATLAB/Değişkene Değer Atamak

MATLAB/Değişkene Değer Atamak MATLAB/Değişkene Değer Atamak input fonksiyonu klavyeden giriş yapmayı sağlayan bir fonksiyondur. degisken=input( bir deger giriniz: ) şeklinde kullanılır. =input('bir değer giriniz: ') bir değer giriniz:

Detaylı

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar

mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar Algoritma ve Programlamaya Giriş mustafacosar@hitit.edu.tr http://web.hitit.edu.tr/mustafacosar İçerik Algoritma Akış Diyagramları Programlamada İşlemler o o o Matematiksel Karşılaştırma Mantıksal Programlama

Detaylı

8.Konu Vektör uzayları, Alt Uzaylar

8.Konu Vektör uzayları, Alt Uzaylar 8.Konu Vektör uzayları, Alt Uzaylar 8.1. Düzlemde vektörler Düzlemdeki her noktası ile reel sayılardan oluşan ikilisini eşleştirebiliriz. Buna P noktanın koordinatları denir. y-ekseni P x y O dan P ye

Detaylı

Matlab - Giriş (İleri Yapı Statiği II. Kısım)

Matlab - Giriş (İleri Yapı Statiği II. Kısım) - Giriş (İleri Yapı Statiği II. Kısım) Doç. Dr. Özgür Özçelik Dokuz Eylül Üniversitesi, Müh. Fak., İnşaat Müh. Böl. Matrisler Hakkında Alman amatör matematikçi Albrecht Dürer in (1471-1528) Rönesans Gravürü

Detaylı

Fen ve Mühendislik Uygulamalarında MATLAB

Fen ve Mühendislik Uygulamalarında MATLAB Fen ve Mühendislik Uygulamalarında MATLAB Dosya Yönetimi Fonksiyon Yapısı Doç. Dr. İrfan KAYMAZ MATLAB Ders Notları DOSYA YÖNETİMİ Şu ana kadar bir programda hesaplanan veya elde edilen veriler RAM de

Detaylı

AST415 Astronomide Sayısal Çözümleme - I. 7. Grafik Çizimi

AST415 Astronomide Sayısal Çözümleme - I. 7. Grafik Çizimi AST415 Astronomide Sayısal Çözümleme - I 7. Grafik Çizimi Bu derste neler öğreneceksiniz? Python'la şekildekine benzer grafikler çizmeyi öğreneceksiniz! MATPLOTLIB.PYPLOT Modülü Python da grafik çizmek

Detaylı

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while Değişkenler Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program çalıştırıldığında değişken ve bu değişkenin türüne

Detaylı

14 Şubat 2011 Pazartesi günü uygulamada çözdüğümüz 2. Soruyu, aynı sıra ile bu defa MATLAB kullanarak çözelim.

14 Şubat 2011 Pazartesi günü uygulamada çözdüğümüz 2. Soruyu, aynı sıra ile bu defa MATLAB kullanarak çözelim. 4 Şubat 2 Pazartesi günü uygulamada çözdüğümüz 2. Soruyu, aynı sıra ile bu defa MATLAB kullanarak çözelim. MATLAB programı sembolik çözümler yapabilmekle birlikte, problemleri numerik olarak çözmeye yarar.

Detaylı

18.034 İleri Diferansiyel Denklemler

18.034 İleri Diferansiyel Denklemler MIT AçıkDersSistemi http://ocw.mit.edu 18.034 İleri Diferansiyel Denklemler 2009 Bahar Bu bilgilere atıfta bulunmak veya kullanım koşulları hakkında bilgi için http://ocw.mit.edu/terms web sitesini ziyaret

Detaylı

PASCAL PROGRAMLAMA DİLİ YAPISI

PASCAL PROGRAMLAMA DİLİ YAPISI BÖLÜM 3 PASCAL PROGRAMLAMA DİLİ YAPISI 3.1. Giriş Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir. Program Başlığı; Tanımlama

Detaylı

Matlab. Vektör ve Matris İşlemleri

Matlab. Vektör ve Matris İşlemleri Matlab Vektör ve Matris İşlemleri Konu Özeti Bir Matrisin Elemanlarının Bir Vektörün Elemanlarına Atanması Matrislerin Boyutunun Değiştirilmesi Matrislerin Genişletilmesi Matrislere Satır veya Sütun Eklenmesi

Detaylı

MATLAB/Diziler (Karakter Dizileri)

MATLAB/Diziler (Karakter Dizileri) 24.03.205 MATLAB/Diziler (Karakter Dizileri) isletter fonksiyonu karakter dizilerini oluşturan elemanların bir harf mi yoksa bir rakam mı veya bir boşluk mu olduğunu sorgular. isspace fonksiyonu karakter

Detaylı

GÖRÜNTÜ İŞLEME DERS-2

GÖRÜNTÜ İŞLEME DERS-2 GÖRÜNTÜ İŞLEME DERS-2 Görüntü İşleme (Temel Matlab) AFYON KOCATEPE ÜNİVERSİTESİ Görüntü İşleme (Temel Matlab) Transpoze veya devrik kavramı: Satırlar ve sütunlar yer değiştir. >> B=[1 2;3 4;5 6] B = 1

Detaylı

İçindekiler. Kaynakça

İçindekiler. Kaynakça İçindekiler Giriş Matris işlemleri Sayı Formatları Temel Lineer Cebir İşlemleri Diziler (Arrays) Programı Dallandıran İfadeler (if-end, switch-case yapıları) Döngüler (for-end ve while-end döngüleri) Grafik

Detaylı

Ders 1 : MATLAB Programlama Ortamı

Ders 1 : MATLAB Programlama Ortamı Ders 1 : MATLAB Programlama Ortamı Kapsam MATLAB Kullanıcı Arayüzü : Menüler ve Pencereler Gelişmiş Bir Hesap Makinesi Olarak MATLAB Temel Matematiksel Fonksiyonlar M-Dosyaları : Scriptler ve Fonksiyonlar

Detaylı

Koşul deyimleri: Koşul deyimleri döngülerle birlikte programcılıkta en çok kullanılan deyimlerdir. Matlab de kullanılan koşul deyimleri;

Koşul deyimleri: Koşul deyimleri döngülerle birlikte programcılıkta en çok kullanılan deyimlerdir. Matlab de kullanılan koşul deyimleri; MATLAB de Akış Kontrol Koşul deyimleri: Koşul deyimleri döngülerle birlikte programcılıkta en çok kullanılan deyimlerdir. Matlab de kullanılan koşul deyimleri; if, else ve elseif, switch - case, try -

Detaylı

TANIMLAYICI İSTATİSTİKLER

TANIMLAYICI İSTATİSTİKLER TANIMLAYICI İSTATİSTİKLER Tanımlayıcı İstatistikler ve Grafikle Gösterim Grafik ve bir ölçüde tablolar değişkenlerin görsel bir özetini verirler. İdeal olarak burada değişkenlerin merkezi (ortalama) değerlerinin

Detaylı

MATLAB/Programı Dallandıran İfadeler

MATLAB/Programı Dallandıran İfadeler MATLAB/Programı Dallandıran İfadeler Dal yapıları, program kodlarından istenilenleri seçen ve onları işleten, istenilen kodları ise değerlirme dışı bırakabilen MATLAB ifadeleridir. if Switch, case try/catch

Detaylı

Matris Cebiriyle Çoklu Regresyon Modeli

Matris Cebiriyle Çoklu Regresyon Modeli Matris Cebiriyle Çoklu Regresyon Modeli Hüseyin Taştan Mart 00 Klasik Regresyon Modeli k açıklayıcı değişkenden oluşan regresyon modelini her gözlem i için aşağıdaki gibi yazabiliriz: y i β + β x i + β

Detaylı

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21 İÇİNDEKİLER VII İÇİNDEKİLER 1 PYTHON 1 Neden Python? 2 Python Sürümleri 2 Python Kurulumu 3 Windows Üzerinde Python 3 Ubuntu Üzerinde Python 6 Komut Satırında Python Çalıştırma 6 Windows komut istemi üzerinde

Detaylı

GÖRÜNTÜ İŞLEME MATLAB DERS-2

GÖRÜNTÜ İŞLEME MATLAB DERS-2 GÖRÜNTÜ İŞLEME MATLAB DERS-2 MATLAB DA SKALER, VEKTÖR VE MATRİS İŞLEMLERİNE GİRİŞ Genel komutlar -Saklama ve geri çağırma komutları(save-load): Workspace saklama komutu >>save Bu komut kullanımda olan

Detaylı

KAMU PERSONEL SEÇME SINAVI ÖĞRETMENLİK ALAN BİLGİSİ TESTİ ORTAÖĞRETİM MATEMATİK ÖĞRETMENLİĞİ TG 15 ÖABT ORTAÖĞRETİM MATEMATİK Bu testlerin her hakkı saklıdır. Hangi amaçla olursa olsun, testlerin tamamının

Detaylı

biçimindeki ifadelere iki değişkenli polinomlar denir. Bu polinomda aynı terimdeki değişkenlerin üsleri toplamından en büyük olanına polinomun dereces

biçimindeki ifadelere iki değişkenli polinomlar denir. Bu polinomda aynı terimdeki değişkenlerin üsleri toplamından en büyük olanına polinomun dereces TANIM n bir doğal sayı ve a 0, a 1, a 2,..., a n 1, a n birer gerçel sayı olmak üzere, P(x) = a 0 + a 1 x + a 2 x 2 +... + a n 1 x n 1 +a n x n biçimindeki ifadelere x değişkenine bağlı, gerçel (reel)

Detaylı

YILLARI ARASINDA GÜNEY CAROLINA DA OKUL İÇİ ŞİDDET İSTATİSKLERİ ANALİZİ (Bir Önceki Projeden Devam Edilecektir)

YILLARI ARASINDA GÜNEY CAROLINA DA OKUL İÇİ ŞİDDET İSTATİSKLERİ ANALİZİ (Bir Önceki Projeden Devam Edilecektir) 1996-1998 YILLARI ARASINDA GÜNEY CAROLINA DA OKUL İÇİ ŞİDDET İSTATİSKLERİ ANALİZİ (Bir Önceki Projeden Devam Edilecektir) Hazırlayan : Süleyman Öğrekçi 1996 ve 1998 yılları arasında Güney Carolina da resmi

Detaylı

Bölüm 6. Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler

Bölüm 6. Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler Bölüm 6 Diziler (arrays) Temel kavramlar Tek boyutlu diziler Çok boyutlu diziler Chapter 6 Java: an Introduction to Computer Science & Programming - Walter Savitch 1 Genel Bakış Dizi: Hepsi aynı türde

Detaylı

ELN3052 OTOMATİK KONTROL MATLAB ÖRNEKLERİ - 2 TRANSFER FONKSİYONU, BLOK ŞEMA VE SİSTEM BENZETİMİ UYGULAMALARI:

ELN3052 OTOMATİK KONTROL MATLAB ÖRNEKLERİ - 2 TRANSFER FONKSİYONU, BLOK ŞEMA VE SİSTEM BENZETİMİ UYGULAMALARI: ELN35 OTOMATİK KONTROL MATLAB ÖRNEKLERİ - TRANSFER FONKSİYONU, BLOK ŞEMA VE SİSTEM BENZETİMİ UYGULAMALARI: Control System Toolbox içinde dinamik sistemlerin transfer fonksiyonlarını tanımlamak için tf,

Detaylı

Soru 1: 3x5 boyutunda s adlı sıfır matrisi oluşturunuz.

Soru 1: 3x5 boyutunda s adlı sıfır matrisi oluşturunuz. Soru 1: 3x5 boyutunda s adlı sıfır matrisi oluşturunuz. s=zeros(3,5); Soru 2: 2x3 boyutunda b adlı tüm elemanları 1 olan matrisi oluşturunuz. b=ones(2,3); Soru 3: a) 3x3 lük birim matris; i=eye(3,3); b)

Detaylı

ÖRNEK: Ax+B=0 şeklinde 1. derece denklemin çözümünü veren programa ait akış diyagramını çiziniz.

ÖRNEK: Ax+B=0 şeklinde 1. derece denklemin çözümünü veren programa ait akış diyagramını çiziniz. ÖRNEK: Ax+B=0 şeklinde 1. derece denklemin çözümünü veren programa ait akış diyagramını çiziniz. BAŞLA ALGORĐTMA OKU A, B X=-B/A Adım1: Gir A, B Adım 2: X (-B)/A Adım 3: Yazdır X YAZ X DUR ÖRNEK: Ax2+Bx+C=0

Detaylı

ALGORİTMALAR VE PROGRAMLAMA

ALGORİTMALAR VE PROGRAMLAMA ALGORİTMALAR VE PROGRAMLAMA DENEY-1: MATLAB da KULLANILAN SAYI GÖSTERİMLERİ, VERİ TİPLERİ, TEMEL FONKSİYONLAR VE DİZİ İŞLEMLERİ SAYI GÖSTERİMLERİ: MATLAB da sayılar sabit noktalı (fixed point) ve kayan

Detaylı

GÖRÜNTÜ İŞLEME DERS-3

GÖRÜNTÜ İŞLEME DERS-3 GÖRÜNTÜ İŞLEME DERS-3 Görüntü İşleme (Temel Matlab) EKRANA YAZDIRMA fprintf ('çıkışta gösterilmesi istenen ifade', 'ifadenin gösterilme biçimi', değişken listesi) Çıkışta gösterilmesi istenen ifade : Tırnak

Detaylı