Beberapa Perintah Matriks Pada Scilab Syarif Abdullah (G551150381)∗†
Matematika Terapan Departemen Matematika FMIPA IPB email:
[email protected] 10 Desember 2015 Dalam sesi ini Kita akan belajar sebagai berikut: 1. Ranges (Rank) dan menggunakan mereka untuk menentukan urutan 2. Mengekstrak submatrix dari matriks yang ada 3. Mengganti submatrix dalam waktu matriks yang ada dengan nilai yang berbeda
Bagian 1 Ranges Range adalah urutan angka yang dapat dihasilkan dengan menggunakan kisaran operator, yaitu, titik dua (:). Anda dapat menentukan berbagai rentang: 1. Barisan naik dengan Format start:end misalkan 1:5, artinya barisan mulai dari suatu bilangan 1 (start) dan berakhir pada suatu bilangan 5 (end). –>1:5//barisan mulai dari 1 sampai dengan 5 ans = 1. 2. 3. 4. 5. 2. Barisan naik dengan Format start:increment:end misalkan 1:2:10 artinya barisan mulai dari suatu bilangan 1 (start) dan berakhir pada suatu bilangan 10 (end) dengan naik 2 tingkat. –>1:2:10//barisan 1 sampai 10 naik 2 tingkat ans = 1. 3. 5. 7. 9. –>1:0.5:4//barisan antara 1 dan 10 naik 0.5 tingkat ans = 1. 1.5 ∗ http † File
2. 2.5
3. 3.5
4.
://syarif abdullah.student.ipb.ac.id/ dibuat dengan LYX Program
1
3. Barisan turun dengan Format start:decrement:end misalkan 4:-1:1 artinya barisan mulai dari suatu bilangan 4 (start) dan berakhir pada suatu bilangan 1 (end) dengan turun -1 tingkat. –>4:-1:1//barisan antara 4 sampai 1 (decrement) ans = 4. 3. 2. 1. –>4:-0.5:2//barisan antara 4 samapi 1 berhenti pada 2 dengan decrement -0.5 ans = 4. 3.5
3. 2.5
2.
4. Membuat vector dengan perintah ranges incremant atau decremanet –>b=1:5//vektor baris sama seperti b=[1 2 3 4 5] b= 1. 2. 3. 4. 5. –>b=5:-1:2//vektor baris sama decreament dari 5 sampai 2 b= 5. 4. 3. 2.
Bagian 2 Matriks Jika matriks adalah vektor (baik baris atau vektor kolom), Kita dapat merujuk ke salah satu elemen dalam salah satu cara berikut: 1. Sebagai salah satu dimensioned array yangmana : a (2) mengacu pada elemen di kedua elemen vector 2. Sebagai dua matriks dimensioned yang mana: a (1, 2) mengacu pada elemen kedua dari baris vector.a (2,1) mengacu pada elemen kedua dari vektor kolom. Sebuah kesalahan bila menggunakan (2, 1) untuk elemen kedua dari vektor baris dan (1,2) untuk elemen kedua dari vektor kolom. –>a=[1 2 3;4 5 6]//matriks 2x3 a dari vektor-vektor a= 1. 2. 3. 4. 5. 6. –>a(1),a(2),a(3)//memanggil elemen a11, a21, a12 pada matriks a ans = 1. ans = 2
4. ans = 2. –>a(4),a(5),a(6)//memanggil elemen a22, a13, a24 pada matriks a ans = 5. ans = 3. ans = 6. –>b=[a(1) a(2) a(3)]//membuat vektor baru dari elemen a11, a21 dan a12 dari matriks a b = 1. 4. 2.
Bagian 3 Sub-matrix Extraction (Ekstraksi sub-matriks) Hal ini penting untuk dicatat bahwa Scilab dapat mengekstrak setiap baris dan kolom yang ditentukan oleh range. Pengekstrakan sub-matriks tidak perlu terdiri dari baris berdekatan dan kolom. Mari kita mencoba beberapa contoh untuk memahami konsep ini: –>a=int(rand(5,8)*100)//membuat matriks 5x8 dg bilangan bulat random/acak a = 28. 68. 40. 58. 38. 73. 53. 4. 12. 15. 87. 68. 92. 26. 11. 67. 77. 69. 11. 89. 94. 49. 22. 20. 21. 84. 19. 50. 34. 26. 62. 39. 11. 40. 56. 34. 37. 52. 76. 83. –>b=a(2,3)//extrak elemen pada baris ke-2 kolom ke-3 dari matriks a b= 87. –>b=a(2:4,3:5)//ekstrak submatriks ukuran 3x3 dari matriks a b = 87. 68. 92. 11. 89. 94. 19. 50. 34. –>c=a(1:2:5,2:2:8)//extrak baris ganjil dan kolom genap matriks a (baris 1,3,5 dan kolom 2,4,6,8) c=
3
68. 58. 73. 4. 69. 89. 49. 20. 40. 34. 52. 83. –>d=a(5:-2:1,8:-2:2)//baris-baris 5,3,1 dan koloom 8,6,4,2 d= 83. 52. 34. 40. 20. 49. 89. 69. 4. 73. 58. 68. –>x=a([1,4,5],[2,7])//baris-baris 1,4,5 dan kolom 2,7 dari matriks a x= 68. 53. 84. 62. 40. 76. –>y=a([5,1,2],[7,6])//barisan 5,1,2 dan kolom 7,6 dari matriks a y = 76. 52. 53. 73. 11. 26. –>a(2:$,3:$)//sub-matriks yg diambil dari kolom ketiga hingga terakhir matriks a ans = 87. 68. 92. 26. 11. 67. 11. 89. 94. 49. 22. 20. 19. 50. 34. 26. 62. 39. 56. 34. 37. 52. 76. 83. –>a(:,2:$)//berarti semua baris dan kolom dimulai dari kedua sampai terakhir ans = 68. 40. 58. 38. 73. 53. 4. 15. 87. 68. 92. 26. 11. 67. 69. 11. 89. 94. 49. 22. 20. 84. 19. 50. 34. 26. 62. 39. 40. 56. 34. 37. 52. 76. 83.
Bagian 4 Penggantian Sub-matrix (Sub-matrix Replacement) Ketika spesifikasi sub-matriks diterapkan untuk matriks di sisi kanan dari pernyataan penugasan, itu adalah operasi ekstraksi. Dengan cara yang sama, memungkin untuk mengganti sub-matriks matriks yang ada dengan nilai-nilai baru. Untuk mencapai hal ini, spesifikasi sub-matriks harus diterapkan untuk matriks di sebelah kiri sisi dari pernyataan penugasan. Untuk mengatur elemen pada baris 2, kolom 3 dari nol, perintahnya adalah: –>a(2,3)=0//mengganti elemen matriks a yg ke-2,3 dengan 0
4
a=
–>a(2:4,3:5)=zeros(3,3)//mengganti elemen matriks a dengan 0 dg ukuran 3x3 a=
Matriks nol di sisi kanan adalah ukuran 3x3. Sub-matriks yang dipilih pada sisi kiri juga ukuran 3x3. Oleh karena itu ini adalah tugas operasi yang valid dan menggantikan 3x3 sub-matriks, pada baris 2, 3, 4 dan kolom 3, 4, 5 dengan nol. –>a(2:4,3:5)=ones()//membuat matriks 1 a=
–>a(2:4,3:5)=zeros()//membuat matriks 0 sama dengan () a=
5
–>a(2:4,3:5)=eye()//membuat matriks identitas//error –>a(2:4,3:5)=eye(1,1)//membuat matriks identitas a=
Bagian 5 Concatenating Matrices Kita dapat menggabungkan sejumlah matriks yang kompatibel ke dalam matriks tunggal. Semua matriks yang bersambung harus memiliki jumlah baris yang sama. Dengan asumsi, b dan c memiliki jumlah yang sama dari baris, perintah berikut merangkai mereka ke dalam matriks tunggal d. –>a=int(rand(4,2)*10) a= 5. 1. 4. 2. 2. 8. 8. 8. –>b=int(rand(4,1)*50) b = 26. 49. 32. 49. –>c=int(rand(4,1)*100) c=
6
5. 74. 41. 60. –>d=[a b c]//membuat matriks dari 3 matriks/vektor d= 5. 1. 26. 5. 4. 2. 49. 74. 2. 8. 32. 41. 8. 8. 49. 60. Alhamdulillah. Semoga Bermanfaat.
7