Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

OTO1004 Bilgisayar Destekli Mühendislik Dersi Sunu No:01 Öğr. Gör. Dr. Barış ERKUŞ.

Benzer bir sunumlar


... konulu sunumlar: "OTO1004 Bilgisayar Destekli Mühendislik Dersi Sunu No:01 Öğr. Gör. Dr. Barış ERKUŞ."— Sunum transkripti:

1 OTO1004 Bilgisayar Destekli Mühendislik Dersi Sunu No:01 Öğr. Gör. Dr. Barış ERKUŞ

2

3

4

5

6 Değişkenler (özellikler) Bütün değişkenler 32bit floating point’tir. Real & integer arasında bir fark yok >>a = 3; >>a = 3.0; “a” için aynı tanımlama Matlab büyük harf/küçük harf yazımlarına duyarlıdır >>A=3; >>a=2; AaAa

7 Değişkenler (kurallar) Rakam ve alt çizgi karakterleri kullanılabilir >>case34=6.45; Değişken isimleri harf ile başlamalıdır >>case_34=6.45; OK >>34case=23.45; yazım hatası Metin değişkenleri tek tırnaklar arasında tanımlanır >>baslik=‘Bu başlıktır’;

8 Değişkenler (echo on/off) Daha önce tanımlanmış değişkenin ismi yazıldığında değeri görüntülenir. >>a=45.57; a = 45.57 >>a Değişken isminden sonra “ ; ” işareti konulursa değişken değeri görüntülenmez (echo off) echo

9

10 Değişkenler (vektörler) Sütun vektör Satır vektör >>a=[1;2;3]; >>a a = 1 2 3 >>a=[1,2,3];b=[1 2 3] >>a a = 1 2 3 b= 1 2 3 Satırları ayırmak için ; kullan Sütunları ayırmak için, veya boşluk kullan

11 Değişkenler (matris) 2-boyutlu matris >>a=[1,2,3;4,5,6]; >>a a = 1 2 3 4 5 6 Aynı şekilde; sütunlar için virgül veya boşluk, satırlar için noktalı virgül

12

13

14 Değişkenler (matris indeksleme) >>a=[1,2,3;4,5,6]; >>b=a(2,3) b= 6 >>c=a(2,3)+a(1,2) c= 8 >>d=b+a(1,2) d= 8 b a(1,2)

15 Değişkenler (değer atama) >>a=[1,2,3;4,5,6]; >>a(2,3) ans= 6 >>a(2,3)=0 a= 1 2 3 4 5 0 >>a=[1,2,3;4,5,6]; >>a(2,:)=0 a= 1 2 3 0 0 0 >>a(:,1)=10 a= 10 2 3 10 0 0 tek değer atam çok değer atam

16 Değişkenler (karmaşık) Karmaşık değişkenleri tanımlamak için “i” veya “j” kullanılabilir. Karmaşık sayılı değişken tanımlama z = a + ib Re(z) = a Im(z) = b “i” ve “j” harflerini değişken adı olarak vermemeye çalışın! >>z=5*j+2 ans= 2.0000+5.0000i

17 Operatörler (temel) toplama + çıkarma - çarpma * üs ^ bölme sağa bölme / sola bölme \ >>a=3;b=4; >>c1=a/b; >>c2=a\b; ? c1=0.75 c2=1.3333…. dikkat!

18 Operatörler (diğer [skaler]) Matematik GösterimMatlab yorumu >>z=y^x; >>y=exp(x); >>y=log(x); >>y=log10(x) >>y=sin(x); >>y=cos(x); >>y=tan(x); >>y=asin(x); >>y=acos(x); >>y=atan(x);

19 Farklı Tabanlarda Logaritmik İşlemler: Matlab; 2, 10 ve e tabanlarında işlem yapmaya muktedir komut takımlarına sahiptir. Ancak LOGa(n) = LOGb(n) / LOGb(a) Use b=10 or b=2 for convenience. işlemi ile istenilen tabanda işlemler yapılabilir. Örn. log5(25)= log10(25)/log10(5) veya log5(25)=log(25)/log(5) veya log5(25)=log2(25)/log2(5) gibi.

20 Operatörler (matris-dizey) Sadece aynı boyutlu matrislerde toplama-çıkarma yapılabilir Çarpma işlemi için iç boyutlar aynı olmak zorunda Doğru Hatalı >>D=A+B; >>D=A-B; >>D=A*C; >>D=C*A; >>D=A+C; >>D=A*B; >>D=B*A; Aynı değil!

21

22

23

24

25

26

27 Operatörler (bölme) Sol(\) and Sağ(/) Matris “bölümü” Matematik gösterim Matlab yorumu >>C=A\B; >>C=B/A; A full rank’ı olan kare matris olmak zorunda (linearly bağımsız satırlar/sütunlar)

28

29 Operatörler (matris transpoze) Matematik gösterim Matlab yorumu >>C=A’; karmaşık sayılı matrisler için kompleks-konjuge transpoze >>B=A’; >>b=a’;

30

31 Operatörler (kolon operatörü) >>a=[1,2,3;4,5,6]; >>a(2,:)=0 a= 1 2 3 0 0 0 >>a(:,1)=10 a= 10 2 3 10 0 0 çok değer atam >>a=1:10; a= 1 2 3 4 5 6 7 8 9 10 >>b=[1:2:6;2:3:10;3:5:13] b= 1 3 5 2 5 8 3 8 13 >>c=a(3:end-4) c= 3 4 5 6 matris oluşturma

32

33

34

35

36

37

38

39

40

41 1: dikey eksende (sütun elemanlarına göre) küçükten büyüğe sıralama. NOT: Tek bir satır olduğu için a matrisinin aynısı oluştu. 2:yatay eksende (satır elemanlarına göre) küçükten büyüğe sıralama yatay eksende (satır elemanlarına göre) küçükten büyüğe sıralama

42 1: dikey eksende (sütun elemanlarına göre) küçükten büyüğe sıralama 2:yatay eksende (satır elemanlarına göre) küçükten büyüğe sıralama Default olarak sütun elemanlarına göre küçükten büyüğe sıralama yapar

43 ‘ascend’ ifadesi fonksiyonun default durumudur. Yazılmadığı takdirde default olarak ascend (artan) bir şekilde sıralama yapılır. ‘descend’ ifadesi ile azalan bir şekilde (büyükten küçüğe) sıralama yapılır.

44

45 Ek Bilgi: Köşegen Matris: Köşegen elemanları hariç diğer elamanları sıfır olan bir kare matristir. Örnek: Devrik: Transpoze

46

47 Köşegen elemanlarından bir sütun matris oluşturdu. Önce köşegen elemanlarından bir sütun matris oluşturdu. Sonra bu sütun vektörün elemanlarını köşegene yerleştirerek bir köşegen matris oluşturdu (köşegen elemanları dışındakiler sıfırdır).

48

49 >>a=[1,2,3;4,5,6]; >>a(2,:)=0 a= 1 2 3 0 0 0 >>a(:,1)=10 a= 10 2 3 10 0 0

50

51 Arada boşluk virgül yada noktalı virgül olabilir.

52

53

54

55

56

57

58 ASCII KODLARI:

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77 M-Files Program codlarını içeren file m-file adı verilir. Pull-down menu ile File-new seçenegi ile oluşturulur. Script files veya function files olmak üzere 2 biçimde yazılabilir.Script file input arguman ve output arguman içermez. Ö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 örnek programda % ile başlayan satır açıklama satırı. İkinci satırda x değişkeni [pi/100,10*pi] kapalı aralığında pi/100 artımla oluşturuluyor. Üçüncü satırda x değerleri için hesaplanan sin(x)/x degerleri y değişkeninde saklanıyor. Plot(x,y) ile grafik çiziliyor. Grid grafik ekranın grid oluşturulması için kullanılmıştır. Command Window da ornek1 yazılarak enter yapılırsa script file run edilmis olur.

78 M-Files Function file için bir vectoru büyükten küçüge sıralayan programı yazalım yazalım. function [b, j] = sirala(a) % Function a vectorunu büyükten küçüge sıralar % b argumanı sıralanmıs vector % j sıralama sonrası elemanların index degerlerini verir. [b,j] = sort(-a); b = -b; end Command window da, a = [pi -10 35 0.15]; [b, j] =sirala(a) b = 35.0000 3.1416 0.1500 -10.0000 j = 3 1 4 2

79 M-Files Bazı zamanlarda çalısma anında kullanılmak üzere function tanımlamak gerekebilir.Bu durumda inline function kullanılır. f = inline('sqrt(x.^2+y.^2)','x','y') f = Inline function: f(x,y) = sqrt(x.^2+y.^2) herhangi bir degeri hesaplamak için f(3,4) ans = 5

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101


"OTO1004 Bilgisayar Destekli Mühendislik Dersi Sunu No:01 Öğr. Gör. Dr. Barış ERKUŞ." indir ppt

Benzer bir sunumlar


Google Reklamları