Berikut ini adalah sedikit catatan tentang manipulasi matriks pada matlab 7.1 yang saya peroleh saat mengikuti kuliah pemrograman komputer di jurusan FISIKA F MIPA UNS pada tanggal 1 Mei 2013 yang diampu oleh Mohtar Yunianto,S.Si, M.Si,
MANIPULASI MATRIKS
1.ROTASI>> J=[1 2 3;4 5 6;7 8 9]
J =
1 2 3
4 5 6
7 8 9
%dirotasikan 90 derajat berlawanan arah jarum jam
>> rot90(J)
ans =
3 6 9
2 5 8
1 4 7
%diputar 180 derajat
>> rot90(J,2)
ans =
9 8 7
6 5 4
3 2 1
>> rot90(J,-2) %tanda minus searah jarum jam
ans =
9 8 7
6 5 4
3 2 1
>> rot90(J,-4)
ans =
1 2 3
4 5 6
7 8 9
2.PENCERMINAN >> fliplr(J) untuk pencerminan vertikal
ans =
3 2 1
6 5 4
9 8 7
>> flipud(J) secara horizontal
ans =
7 8 9
4 5 6
1 2 3
3.MERUBAH DIMENSI MATRIKS >> R=[3 4 5 2;3 8 6 5;3 5 2 4]
R =
3 4 5 2
3 8 6 5
3 5 2 4
>> %reshape(nama matriks,baris,kolom) >> mengubah dimensi matriks(jumlah hrs sama)
>> reshape(R,2,6)
ans =
3 3 8 5 2 5
3 4 5 6 2 4
4.DUPLIKASI >> T=[1 2; 3 4]
T =
1 2
3 4
>> repmat(T,2,2)
ans =
1 2 1 2
3 4 3 4
1 2 1 2
3 4 3 4
>> repmat(T,2,6)
ans =
1 2 1 2 1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4 3 4 3 4
________________________________________________________________________
invers matriks
>> A=[2 3 4;4 -3 4;5 3 4]
A =
2 3 4
4 -3 4
5 3 4
>> B=inv(A)
B =
-0.3333 0.0000 0.3333
0.0556 -0.1667 0.1111
0.3750 0.1250 -0.2500
>> B*A
ans =
1.0000 -0.0000 -0.0000
0.0000 1.0000 0
-0.0000 0.0000 1.0000
________________________________________________________________________
>> magic(3)
ans =
8 1 6
3 5 7
4 9 2
>> %magic = memunculkan matriks yang baris dan kolom sama dan tidak ada angka yang sama secara acak
>> magic(10)
ans =
92 99 1 8 15 67 74 51 58 40
98 80 7 14 16 73 55 57 64 41
4 81 88 20 22 54 56 63 70 47
85 87 19 21 3 60 62 69 71 28
86 93 25 2 9 61 68 75 52 34
17 24 76 83 90 42 49 26 33 65
23 5 82 89 91 48 30 32 39 66
79 6 13 95 97 29 31 38 45 72
10 12 94 96 78 35 37 44 46 53
11 18 100 77 84 36 43 50 27 59
________________________________________________________________________
membuat diagonal matriks
>> K=[5 7 12 -6];
>> diag(K)
ans =
5 0 0 0
0 7 0 0
0 0 12 0
0 0 0 -6
>> %menggeser diagonal
>> diag(K,1)
ans =
0 5 0 0 0
0 0 7 0 0
0 0 0 12 0
0 0 0 0 -6
0 0 0 0 0
>> diag(K,-3)
ans =
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
5 0 0 0 0 0 0
0 7 0 0 0 0 0
0 0 12 0 0 0 0
0 0 0 -6 0 0 0
selamat mencoba semoga bermanfaat
MANIPULASI MATRIKS
1.ROTASI>> J=[1 2 3;4 5 6;7 8 9]
J =
1 2 3
4 5 6
7 8 9
%dirotasikan 90 derajat berlawanan arah jarum jam
>> rot90(J)
ans =
3 6 9
2 5 8
1 4 7
%diputar 180 derajat
>> rot90(J,2)
ans =
9 8 7
6 5 4
3 2 1
>> rot90(J,-2) %tanda minus searah jarum jam
ans =
9 8 7
6 5 4
3 2 1
>> rot90(J,-4)
ans =
1 2 3
4 5 6
7 8 9
2.PENCERMINAN >> fliplr(J) untuk pencerminan vertikal
ans =
3 2 1
6 5 4
9 8 7
>> flipud(J) secara horizontal
ans =
7 8 9
4 5 6
1 2 3
3.MERUBAH DIMENSI MATRIKS >> R=[3 4 5 2;3 8 6 5;3 5 2 4]
R =
3 4 5 2
3 8 6 5
3 5 2 4
>> %reshape(nama matriks,baris,kolom) >> mengubah dimensi matriks(jumlah hrs sama)
>> reshape(R,2,6)
ans =
3 3 8 5 2 5
3 4 5 6 2 4
4.DUPLIKASI >> T=[1 2; 3 4]
T =
1 2
3 4
>> repmat(T,2,2)
ans =
1 2 1 2
3 4 3 4
1 2 1 2
3 4 3 4
>> repmat(T,2,6)
ans =
1 2 1 2 1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4 3 4 3 4
1 2 1 2 1 2 1 2 1 2 1 2
3 4 3 4 3 4 3 4 3 4 3 4
________________________________________________________________________
invers matriks
>> A=[2 3 4;4 -3 4;5 3 4]
A =
2 3 4
4 -3 4
5 3 4
>> B=inv(A)
B =
-0.3333 0.0000 0.3333
0.0556 -0.1667 0.1111
0.3750 0.1250 -0.2500
>> B*A
ans =
1.0000 -0.0000 -0.0000
0.0000 1.0000 0
-0.0000 0.0000 1.0000
________________________________________________________________________
>> magic(3)
ans =
8 1 6
3 5 7
4 9 2
>> %magic = memunculkan matriks yang baris dan kolom sama dan tidak ada angka yang sama secara acak
>> magic(10)
ans =
92 99 1 8 15 67 74 51 58 40
98 80 7 14 16 73 55 57 64 41
4 81 88 20 22 54 56 63 70 47
85 87 19 21 3 60 62 69 71 28
86 93 25 2 9 61 68 75 52 34
17 24 76 83 90 42 49 26 33 65
23 5 82 89 91 48 30 32 39 66
79 6 13 95 97 29 31 38 45 72
10 12 94 96 78 35 37 44 46 53
11 18 100 77 84 36 43 50 27 59
________________________________________________________________________
membuat diagonal matriks
>> K=[5 7 12 -6];
>> diag(K)
ans =
5 0 0 0
0 7 0 0
0 0 12 0
0 0 0 -6
>> %menggeser diagonal
>> diag(K,1)
ans =
0 5 0 0 0
0 0 7 0 0
0 0 0 12 0
0 0 0 0 -6
0 0 0 0 0
>> diag(K,-3)
ans =
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
5 0 0 0 0 0 0
0 7 0 0 0 0 0
0 0 12 0 0 0 0
0 0 0 -6 0 0 0
selamat mencoba semoga bermanfaat
Tidak ada komentar:
Posting Komentar