Lewati ke konten utama
Logo Memahami Aljabar Linear

Subbab 1.3 Komputasi dengan Sage

Kedudukan aljabar linear sebagai alat ilmiah yang ampuh ditopang oleh kemampuan komputer yang terus meningkat. Carl Cowen, mantan presiden Mathematical Association of America, pernah mengatakan, “Tidak ada penerapan aljabar linear yang sungguh-sungguh tanpa komputer.” Cowen mencatat bahwa pada tahun 1950-an, mengolah sistem yang terdiri atas 100 persamaan dalam 100 variabel merupakan hal yang sulit. Kini, ilmuwan dan matematikawan secara rutin menangani masalah yang jauh lebih besar. Hal ini hanya dimungkinkan oleh daya komputasi masa kini.
Oleh karena itu, setiap pelajar aljabar linear perlu terbiasa menyelesaikan masalah aljabar linear dengan komputer. Bagian ini akan memperkenalkan program bernama Sage yang dapat membantu. Meskipun banyak pekerjaan ini mungkin dapat dilakukan dengan kalkulator grafik, Anda dianjurkan untuk membiasakan diri dengan Sage karena kita akan menggunakan fitur-fitur yang semakin canggih ketika diperlukan.

Subbagian 1.3.1 Pengantar Sage

Terdapat beberapa cara untuk mengakses Sage.
  • Jika Anda membaca buku ini secara daring, terdapat “sel Sage” yang disematkan pada bagian-bagian teks yang sesuai. Anda dapat mengetik perintah Sage ke dalam sel-sel tersebut dan menjalankannya selama terhubung ke Internet. Perhatikan bahwa pekerjaan Anda akan hilang jika halaman dimuat ulang.
    Berikut adalah sel Sage berisi perintah yang meminta Sage mengalikan 5 dan 3. Anda dapat menjalankan perintah tersebut dengan menekan tombol Jalankan.
  • Anda juga dapat membuka cocalc.com, mendaftarkan akun, membuka proyek baru, dan membuat “lembar kerja Sage.” Setelah berada di dalam lembar kerja, Anda dapat memasukkan perintah seperti yang ditampilkan di sini dan menjalankannya dengan menekan Enter pada papan ketik sambil menahan tombol Shift.
  • Terdapat halaman yang berisi sel-sel Sage di gvsu.edu/s/0Ng. Setiap hasil yang diperoleh dengan menjalankan satu sel tersedia bagi sel-sel lainnya. Namun, pekerjaan Anda akan hilang ketika halaman dimuat ulang.
Di sepanjang buku ini, kita akan memperkenalkan perintah-perintah Sage baru yang memungkinkan kita menelusuri konsep-konsep aljabar linear. Perintah-perintah ini dikumpulkan dan diringkas dalam acuan pada Lampiran A.

Kegiatan 1.3.1. Perintah dasar Sage.

  1. Sage menggunakan operator standar +, -, *, /, dan ^ untuk operasi aritmetika biasa. Masukkan ekspresi berikut ke sel di bawah ini dan mintalah Sage menghitung nilainya
    \begin{equation*} 3 + 4(2^4 - 1)\text{.} \end{equation*}
  2. Perhatikan bahwa kita dapat membuat baris baru dengan menekan Enter dan memasukkan perintah tambahan pada baris tersebut. Apa yang terjadi ketika Anda menjalankan sel Sage ini?
    Perhatikan bahwa kita hanya melihat hasil dari perintah terakhir. Dengan perintah print, kita dapat melihat hasil-hasil sebelumnya jika dikehendaki.
  3. Kita dapat memberi nama pada hasil suatu perintah dan merujuknya dalam perintah berikutnya.
    Misalkan Anda mengikuti tiga ujian dalam mata kuliah aljabar linear dan memperoleh nilai 90, 100, dan 98. Dalam sel Sage di bawah ini, jumlahkan nilai-nilai tersebut dan beri nama hasilnya total. Pada baris berikutnya, hitung rata-rata nilai ujian Anda dan tampilkan hasilnya.
  4. Jika Anda bukan pemrogram, bagian ini dapat diabaikan. Namun, jika Anda pemrogram berpengalaman, perlu diketahui bahwa Sage ditulis dalam bahasa pemrograman Python dan Anda dapat memasukkan kode Python ke dalam sel Sage.

Subbagian 1.3.2 Sage dan matriks

Ketika menjumpai suatu matriks, Teorema 1.2.6 menyatakan bahwa terdapat tepat satu matriks eselon baris tereduksi yang ekuivalen baris dengannya.
Sebenarnya, ketunggalan matriks eselon baris tereduksi inilah yang memotivasi kita mendefinisikan bentuk khusus tersebut. Ketika menyelesaikan sistem persamaan linear dengan eliminasi Gauss, terdapat matriks-matriks ekuivalen baris lain yang memperlihatkan struktur ruang solusi. Matriks eselon baris tereduksi merupakan suatu kemudahan karena kita sepakat untuk mencari matriks yang sama.
Manfaat lainnya adalah kita dapat meminta program komputer seperti Sage untuk menemukan matriks eselon baris tereduksi. Setelah sedikit mengenal Sage, kini kita akan mempelajari cara melakukannya.
Pertama, perhatikan bahwa suatu matriks memiliki jumlah baris dan kolom tertentu. Sebagai contoh, matriks
\begin{equation*} \left[ \begin{array}{rrrrr} * \amp * \amp * \amp * \amp * \\ * \amp * \amp * \amp * \amp * \\ * \amp * \amp * \amp * \amp * \\ \end{array} \right] \end{equation*}
memiliki tiga baris dan lima kolom. Oleh karena itu, kita menyebutnya matriks \(3\times 5\text{.}\)
Kita dapat meminta Sage membuat matriks berukuran \(2\times4\) berikut
\begin{equation*} \left[ \begin{array}{rrrr} -1 \amp 0 \amp 2 \amp 7 \\ 2 \amp 1 \amp -3 \amp -1 \\ \end{array} \right] \end{equation*}
dengan memasukkan
Ketika dijalankan, Sage akan mengonfirmasi matriks tersebut dengan menuliskan baris-barisnya, masing-masing di dalam tanda kurung siku.
Perhatikan bahwa terdapat tiga unsur terpisah (yang kita sebut argumen) di dalam tanda kurung: jumlah baris, jumlah kolom, dan entri matriks yang didaftarkan menurut baris di dalam tanda kurung siku. Ketiga argumen ini dipisahkan oleh koma. Perhatikan bahwa tidak ada cara untuk menentukan apakah matriks ini merupakan matriks diperbesar atau matriks koefisien, sehingga kita sendiri harus menafsirkan hasilnya dengan tepat.

Sintaks Sage.

Beberapa kesalahan yang umum terjadi adalah
  • melupakan tanda kurung siku yang mengapit daftar entri,
  • menghilangkan suatu entri dari daftar atau menambahkan entri berlebih,
  • lupa memisahkan baris, kolom, dan entri dengan koma, serta
  • menghilangkan tanda kurung yang mengapit argumen setelah matrix.
Jika Anda melihat pesan galat, periksa kembali masukan Anda dengan cermat, lalu coba lagi.
Sebagai alternatif, Anda dapat membuat matriks hanya dengan mendaftarkan baris-barisnya, seperti berikut
matrix([ [-1, 0, 2, 7],	
	 [ 2, 1,-3,-1] ])
      

Kegiatan 1.3.2. Menggunakan Sage untuk menemukan matriks eselon baris tereduksi.

  1. Masukkan matriks berikut ke dalam Sage.
    \begin{equation*} \left[ \begin{array}{rrrr} -1 \amp -2 \amp 2 \amp -1 \\ 2 \amp 4 \amp -1 \amp 5 \\ 1 \amp 2 \amp 0 \amp 3 \end{array} \right] \end{equation*}
  2. Beri matriks tersebut nama \(A\) dengan memasukkan
    A = matrix( ..., ..., [ ... ])
    	      
    Selanjutnya, kita dapat menemukan bentuk eselon baris tereduksinya dengan memasukkan
    A = matrix( ..., ..., [ ... ])
    A.rref()
    	      
    Kesalahan yang umum terjadi adalah melupakan tanda kurung setelah rref.
    Gunakan Sage untuk menemukan bentuk eselon baris tereduksi matriks dari Butir a dalam kegiatan ini.
  3. Gunakan Sage untuk mendeskripsikan ruang solusi sistem persamaan linear
    \begin{equation*} \begin{alignedat}{5} -x_1 \amp \amp \amp \amp \amp {}+{} \amp 2x_4 \amp {}={} \amp 4 \\ \amp \amp 3x_2 \amp {}+{} \amp x_3 \amp {}+{} \amp 2x_4 \amp {}={} \amp 3 \\ 4x_1 \amp {}-{} \amp 3x_2 \amp \amp \amp {}+{} \amp x_4 \amp {}={} \amp 14 \\ \amp \amp 2x_2 \amp {}+{} \amp 2x_3 \amp {}+{} \amp x_4 \amp {}={} \amp 1 \\ \end{alignedat} \end{equation*}
  4. Perhatikan kedua matriks berikut:
    \begin{equation*} \begin{array}{rcl} A \amp = \amp \left[ \begin{array}{rrrr} 1 \amp -2 \amp 1 \amp -3 \\ -2 \amp 4 \amp 1 \amp 1 \\ -4 \amp 8 \amp -1 \amp 7 \\ \end{array}\right] \\ B \amp = \amp \left[ \begin{array}{rrrrrr} 1 \amp -2 \amp 1 \amp -3 \amp 0 \amp 3 \\ -2 \amp 4 \amp 1 \amp 1 \amp 1 \amp -1 \\ -4 \amp 8 \amp -1 \amp 7 \amp 3 \amp 2 \\ \end{array}\right] \\ \end{array} \end{equation*}
    Kita mengatakan bahwa \(B\) merupakan perluasan dari \(A\) karena diperoleh dari \(A\) dengan menambahkan beberapa kolom.
    Dengan Sage, definisikan kedua matriks dan bandingkan bentuk eselon baris tereduksinya. Apa yang Anda perhatikan mengenai hubungan antara kedua bentuk eselon baris tereduksi tersebut?
  5. Dengan menggunakan sistem persamaan pada Butir c, tuliskan matriks diperbesar yang bersesuaian dengan sistem persamaan tersebut. Bentuk eselon baris tereduksi apakah yang Anda peroleh untuk matriks diperbesar itu?
    Sekarang tuliskan matriks koefisien sistem persamaan ini. Apa yang dinyatakan Butir d dalam kegiatan ini mengenai bentuk eselon baris tereduksinya?

Praktik penggunaan Sage.

Berikut beberapa praktik yang mungkin berguna ketika bekerja dengan matriks dalam Sage.
  • Agar lebih mudah dibaca, pisahkan entri matriks ke beberapa baris, satu baris untuk setiap baris matriks, dengan menekan Enter di antara baris-baris tersebut.
    A = matrix(2, 4, [ 1, 2, -1, 0,
                      -3, 0,  4, 3 ])
    	
  • Tampilkan matriks semula untuk memeriksa apakah Anda telah memasukkannya dengan benar. Anda mungkin juga ingin menampilkan garis pemisah untuk memisahkan matriks-matriks.
    A = matrix(2, 2, [ 1, 2,
                       2, 2])
    print (A)
    print ("---------")
    A.rref()
    	
Bagian terakhir kegiatan sebelumnya, Butir d, memperlihatkan sesuatu yang akan berguna bagi kita kelak. Dalam kegiatan tersebut, kita memulai dengan matriks \(A\text{,}\) yang kita perluas dengan menambahkan beberapa kolom untuk memperoleh matriks \(B\text{.}\) Kemudian, kita memperhatikan bahwa bentuk eselon baris tereduksi \(B\) juga merupakan perluasan dari bentuk eselon baris tereduksi \(A\text{.}\)
Sebagai ilustrasi, kita dapat memperhatikan bentuk eselon baris tereduksi matriks diperbesar berikut:
\begin{equation*} \left[ \begin{array}{ccc|c} -2 \amp 3 \amp 0 \amp 2 \\ -1 \amp 4 \amp 1 \amp 3 \\ 3 \amp 0 \amp 2 \amp 2 \\ 1 \amp 5 \amp 3 \amp 7 \\ \end{array} \right] \sim \left[ \begin{array}{ccc|c} 1 \amp 0 \amp 0 \amp -4 \\ 0 \amp 1 \amp 0 \amp -2 \\ 0 \amp 0 \amp 1 \amp 7 \\ 0 \amp 0 \amp 0 \amp 0 \\ \end{array} \right] \end{equation*}
Selanjutnya, kita dapat menentukan bentuk eselon baris tereduksi matriks koefisien dengan melihat bagian dalam matriks diperbesar.
\begin{equation*} \left[ \begin{array}{ccc} -2 \amp 3 \amp 0 \\ -1 \amp 4 \amp 1 \\ 3 \amp 0 \amp 2 \\ 1 \amp 5 \amp 3 \\ \end{array} \right] \sim \left[ \begin{array}{ccc} 1 \amp 0 \amp 0 \\ 0 \amp 1 \amp 0 \\ 0 \amp 0 \amp 1 \\ 0 \amp 0 \amp 0 \\ \end{array} \right] \end{equation*}
Jika kita menelusuri langkah-langkah algoritma eliminasi Gauss dengan cermat, kita melihat bahwa hal ini merupakan prinsip umum, yang sekarang kita nyatakan.

Subbagian 1.3.3 Beban komputasi

Pada awal bagian ini, kita menyatakan bahwa aljabar linear menjadi semakin penting seiring meningkatnya kemampuan komputer. Namun, komputer tetap memiliki keterbatasan. Mari kita perhatikan seberapa besar beban yang diperlukan ketika kita meminta komputer menemukan bentuk eselon baris tereduksi suatu matriks. Secara sangat kasar, kita akan mengukur beban tersebut berdasarkan berapa kali algoritma mengharuskan kita mengalikan atau menjumlahkan dua bilangan.
Kita akan mengasumsikan bahwa matriks memiliki jumlah baris dan kolom yang sama, yang kita nyatakan dengan \(n\text{.}\) Kita terutama tertarik pada kasus ketika \(n\) sangat besar, yaitu saat kita perlu mempertimbangkan besarnya beban yang diperlukan.
Pertama, mari kita perhatikan beban yang diperlukan untuk setiap operasi baris.
  • Penskalaan suatu baris mengalikan masing-masing dari \(n\) entri pada baris tersebut dengan suatu bilangan, sehingga memerlukan \(n\) operasi.
  • Pertukaran dua baris tidak memerlukan perkalian atau penjumlahan, sehingga kita tidak akan memperhitungkan beban pertukaran.
  • Penggantian mengharuskan kita mengalikan setiap entri pada suatu baris dengan suatu bilangan, yang memerlukan \(n\) operasi, lalu menambahkan entri-entri hasilnya ke baris lain, yang memerlukan \(n\) operasi lagi. Jumlah keseluruhannya adalah \(2n\) operasi.
Tujuan kita adalah mengubah suatu matriks ke bentuk eselon baris tereduksinya, yang tampak kurang lebih seperti berikut:
\begin{equation*} \left[ \begin{array}{cccc} 1 \amp 0 \amp \ldots \amp 0 \\ 0 \amp 1 \amp \ldots \amp 0 \\ \vdots \amp \vdots \amp \ddots \amp 0 \\ 0 \amp 0 \amp \ldots \amp 1 \\ \end{array} \right]\text{.} \end{equation*}
Secara kasar, kita melakukan satu operasi penggantian untuk setiap entri 0 dalam matriks eselon baris tereduksi. Ketika \(n\) sangat besar, sebagian besar dari \(n^2\) entri dalam bentuk eselon baris tereduksi bernilai 0, sehingga kita memerlukan sekitar \(n^2\) operasi penggantian. Karena setiap operasi penggantian memerlukan \(2n\) operasi, jumlah operasi yang dihasilkan oleh penggantian yang diperlukan kira-kira \(n^2(2n) = 2n^3\text{.}\)
Setiap baris diskalakan kira-kira satu kali sehingga terdapat sekitar \(n\) operasi penskalaan, yang masing-masing memerlukan \(n\) operasi. Jumlah operasi akibat penskalaan kira-kira \(n^2\text{.}\)
Oleh karena itu, jumlah keseluruhan operasi kira-kira
\begin{equation*} 2n^3 + n^2\text{.} \end{equation*}
Ketika \(n\) sangat besar, suku \(n^2\) jauh lebih kecil daripada suku \(n^3\text{.}\) Karena itu, kita menyatakan bahwa

Pengamatan 1.3.2.

Jumlah operasi yang diperlukan untuk menemukan bentuk eselon baris tereduksi suatu matriks \(n\times n\) kira-kira sebanding dengan \(n^3\text{.}\)
Ini merupakan ukuran yang sangat kasar bagi beban yang diperlukan untuk menemukan bentuk eselon baris tereduksi. Perhitungan yang lebih teliti untuk eliminasi Gauss yang berhenti pada bentuk eselon baris menghasilkan kira-kira \(\frac23 n^3\) operasi aritmetika. Untuk memperoleh bentuk eselon baris tereduksi diperlukan pula eliminasi ke atas; jumlah operasinya tetap berorde \(n^3\text{,}\) dengan konstanta utama yang bergantung pada algoritma. Seperti yang telah kita lihat, beberapa matriks memerlukan beban lebih besar daripada yang lain. Kita dapat memahaminya sebagai berikut: jika ukuran matriks bertambah dengan faktor 10, beban yang diperlukan bertambah dengan faktor \(10^3 = 1000\text{.}\)
Meskipun komputer masa kini sangat kuat, komputer tidak dapat menangani setiap masalah yang kita berikan. Pada akhirnya, kita ingin dapat mempelajari matriks yang memiliki \(n=10^{12}\) (satu triliun) baris dan kolom. Secara garis besar, menemukan matriks eselon baris tereduksi tersebut akan memerlukan sekitar \((10^{12})^3 = 10^{36}\) operasi.
Sebagai perbandingan, bayangkan kita perlu menyelesaikan sistem linear dengan satu triliun persamaan dan satu triliun variabel, serta memiliki komputer yang mampu melakukan satu triliun, \(10^{12}\text{,}\) operasi setiap detik. Menemukan bentuk eselon baris tereduksi akan memerlukan sekitar \(10^{16}\) tahun. Saat ini, usia alam semesta diperkirakan sekitar \(10^{10}\) tahun. Jika perhitungan dimulai ketika alam semesta lahir, kita baru akan menyelesaikan sekitar sepersejuta bagian.
Situasi ini mungkin tampak tidak masuk akal, tetapi dalam Subbagian 4.5.4 kita akan melihat bagaimana kita menggunakan hasil komputasi semacam itu setiap hari. Jelas bahwa kita memerlukan alat yang lebih baik untuk menangani masalah yang sangat besar seperti ini.

Subbagian 1.3.4 Ringkasan

Kita telah mempelajari beberapa fitur dasar Sage dengan penekanan pada cara menemukan bentuk eselon baris tereduksi suatu matriks.
  • Sage dapat melakukan aritmetika dasar dengan operator standar. Sage juga dapat menyimpan hasil suatu perintah untuk digunakan kembali dalam perintah berikutnya.
  • Kita dapat mendefinisikan matriks dalam Sage dan menemukan bentuk eselon baris tereduksinya dengan perintah rref.
  • Kita telah melihat contoh Prinsip Perluasan, yang kemudian kita nyatakan sebagai prinsip umum.
  • Kita melihat bahwa beban komputasi yang diperlukan untuk menemukan bentuk eselon baris tereduksi matriks \(n\times n\) sebanding dengan \(n^3\text{.}\)
Lampiran A memuat acuan yang merangkum perintah-perintah Sage yang telah kita jumpai.

Latihan 1.3.5 Latihan

1.

Perhatikan sistem linear
\begin{equation*} \begin{alignedat}{4} x \amp {}+{} \amp 2y \amp {}-{} \amp z \amp {}={} \amp 1 \\ 3x \amp {}+{} \amp 2y \amp {}+{} \amp 2z \amp {}={} \amp 7 \\ -x \amp \amp \amp {}+{} \amp 4z \amp {}={} \amp -3 \\ \end{alignedat} \end{equation*}
Tuliskan sistem ini sebagai matriks diperbesar dan gunakan Sage untuk menemukan deskripsi ruang solusinya.

2.

Di bawah ini ditampilkan beberapa pola arus lalu lintas di kawasan pusat sebuah kota besar. Gambar-gambar tersebut menunjukkan jumlah mobil per jam yang melaju di setiap jalan. Setiap mobil yang memasuki suatu persimpangan juga harus meninggalkan persimpangan itu. Artinya, jumlah mobil yang memasuki suatu persimpangan dalam satu jam sama dengan jumlah mobil yang meninggalkan persimpangan tersebut.
  1. Mari kita mulai dengan pola arus lalu lintas berikut.
    1. Berapa banyak mobil per jam yang memasuki persimpangan kiri atas? Berapa banyak mobil per jam yang meninggalkan persimpangan ini? Gunakan informasi ini untuk membentuk persamaan linear dalam variabel \(x\text{,}\) \(y\text{,}\) \(z\text{,}\) dan \(w\text{.}\)
      Kontrol papan ketik untuk menjelajahi diagram
      Tombol Tindakan
      Enter, A Aktifkan penjelajahan dengan papan ketik
      B Aktifkan penjelajahan dengan menu
      Escape Keluar dari mode penjelajahan
      Panah bawah Jelajahi tingkat berikutnya di bawah
      Panah atas Jelajahi tingkat berikutnya di atas
      Panah kanan Jelajahi elemen berikutnya pada tingkat ini
      Panah kiri Jelajahi elemen sebelumnya pada tingkat ini
      X Aktifkan atau nonaktifkan mode ahli
      W Tampilkan rincian tambahan jika tersedia
      Spasi Ulangi keluaran suara
      M Aktifkan pembesaran bertahap
      Koma Aktifkan pembesaran langsung
      N Nonaktifkan pembesaran
      Z Tampilkan atau sembunyikan subtitel
      C Gilir pengaturan kontras
      T Gunakan warna monokrom
      L Ganti bahasa jika tersedia
      K Hentikan suara saat ini
      Y Hentikan keluaran suara
      O Mulai atau hentikan sonifikasi
      P Ulangi keluaran sonifikasi
      Representasi arus lalu lintas pada sejumlah jalan yang saling berpotongan.
      Terdapat dua jalan satu arah sejajar dengan lalu lintas bergerak dari kiri ke kanan. Kedua jalan ini dibagi menjadi tiga ruas. Pada jalan bagian atas, arus lalu lintas pada ruas-ruas tersebut, yang dinyatakan dalam mobil per jam, berturut-turut adalah \(x\text{,}\) \(100\text{,}\) dan \(260\) dari kiri ke kanan.
      Pada jalan bagian bawah, arus lalu lintas pada ketiga ruas tersebut berturut-turut adalah \(250\text{,}\) \(z\text{,}\) dan \(390\) mobil per jam.
      Terdapat pula dua jalan yang membentang secara vertikal. Jalan yang paling kiri menghubungkan lokasi di antara ruas pertama dan kedua dari jalan-jalan horizontal, dengan arus lalu lintas \(y\) yang bergerak ke bawah.
      Jalan vertikal yang paling kanan memiliki arus lalu lintas \(w\) yang bergerak ke atas dan menghubungkan lokasi di antara ruas kedua dan ketiga dari jalan-jalan horizontal.
      Gambar 1.3.3. Sekumpulan jalan yang saling berpotongan beserta ukuran laju arus lalu lintas di setiap jalan.
    2. Bentuklah tiga persamaan linear lagi dari ketiga persimpangan lainnya sehingga diperoleh sistem linear yang terdiri atas empat persamaan dalam empat variabel. Kemudian, gunakan Sage untuk menemukan ruang solusi sistem ini.
    3. Apakah terdapat tepat satu solusi atau tak hingga banyak solusi? Jelaskan mengapa Anda memperkirakan hal tersebut berdasarkan informasi yang diberikan.
  2. Pola arus lalu lintas lainnya ditampilkan di bawah ini.
    Kontrol papan ketik untuk menjelajahi diagram
    Tombol Tindakan
    Enter, A Aktifkan penjelajahan dengan papan ketik
    B Aktifkan penjelajahan dengan menu
    Escape Keluar dari mode penjelajahan
    Panah bawah Jelajahi tingkat berikutnya di bawah
    Panah atas Jelajahi tingkat berikutnya di atas
    Panah kanan Jelajahi elemen berikutnya pada tingkat ini
    Panah kiri Jelajahi elemen sebelumnya pada tingkat ini
    X Aktifkan atau nonaktifkan mode ahli
    W Tampilkan rincian tambahan jika tersedia
    Spasi Ulangi keluaran suara
    M Aktifkan pembesaran bertahap
    Koma Aktifkan pembesaran langsung
    N Nonaktifkan pembesaran
    Z Tampilkan atau sembunyikan subtitel
    C Gilir pengaturan kontras
    T Gunakan warna monokrom
    L Ganti bahasa jika tersedia
    K Hentikan suara saat ini
    Y Hentikan keluaran suara
    O Mulai atau hentikan sonifikasi
    P Ulangi keluaran sonifikasi
    Representasi arus lalu lintas pada sejumlah jalan yang saling berpotongan.
    Terdapat dua jalan satu arah sejajar dengan lalu lintas bergerak dari kiri ke kanan. Kedua jalan ini dibagi menjadi tiga ruas. Pada jalan bagian atas, arus lalu lintas pada ruas-ruas tersebut, yang dinyatakan dalam mobil per jam, berturut-turut adalah \(650\text{,}\) \(y\text{,}\) dan \(580\) dari kiri ke kanan.
    Pada jalan bagian bawah, arus lalu lintas pada ketiga ruas tersebut berturut-turut adalah \(150\text{,}\) \(z\text{,}\) dan \(220\) mobil per jam.
    Terdapat pula dua jalan yang membentang secara vertikal. Jalan yang paling kiri menghubungkan lokasi di antara ruas pertama dan kedua dari jalan-jalan horizontal, dengan arus lalu lintas \(x\) yang bergerak ke bawah.
    Jalan vertikal yang paling kanan memiliki arus lalu lintas \(w\) yang bergerak ke atas dan menghubungkan lokasi di antara ruas kedua dan ketiga dari jalan-jalan horizontal.
    Gambar 1.3.4. Sekumpulan jalan lain yang saling berpotongan beserta ukuran laju arus lalu lintas di setiap jalan.
    1. Sekali lagi, tuliskan sistem linear untuk besaran \(x\text{,}\) \(y\text{,}\) \(z\text{,}\) dan \(w\text{,}\) lalu selesaikan sistem tersebut menggunakan sel Sage di bawah ini.
    2. Apa yang dapat Anda katakan tentang solusi sistem linear ini? Apakah terdapat tepat satu solusi atau tak hingga banyak solusi? Jelaskan mengapa Anda memperkirakan hal tersebut berdasarkan informasi yang diberikan.
    3. Berapakah jumlah lalu lintas terkecil yang mungkin mengalir melalui \(x\text{?}\)

3.

Salah satu masalah umum dalam termodinamika adalah menemukan distribusi suhu keadaan tunak di dalam pelat tipis jika suhu di sepanjang batasnya diketahui. Misalkan \(T_1, T_2, \ldots, T_6\) adalah suhu pada keenam simpul di dalam pelat seperti yang ditampilkan di bawah ini.
Kontrol papan ketik untuk menjelajahi diagram
Tombol Tindakan
Enter, A Aktifkan penjelajahan dengan papan ketik
B Aktifkan penjelajahan dengan menu
Escape Keluar dari mode penjelajahan
Panah bawah Jelajahi tingkat berikutnya di bawah
Panah atas Jelajahi tingkat berikutnya di atas
Panah kanan Jelajahi elemen berikutnya pada tingkat ini
Panah kiri Jelajahi elemen sebelumnya pada tingkat ini
X Aktifkan atau nonaktifkan mode ahli
W Tampilkan rincian tambahan jika tersedia
Spasi Ulangi keluaran suara
M Aktifkan pembesaran bertahap
Koma Aktifkan pembesaran langsung
N Nonaktifkan pembesaran
Z Tampilkan atau sembunyikan subtitel
C Gilir pengaturan kontras
T Gunakan warna monokrom
L Ganti bahasa jika tersedia
K Hentikan suara saat ini
Y Hentikan keluaran suara
O Mulai atau hentikan sonifikasi
P Ulangi keluaran sonifikasi
Diagram ini menunjukkan sebuah persegi panjang yang mewakili pelat tipis dua dimensi. Terdapat tiga garis vertikal berjarak sama yang melintasi pelat dan dua garis horizontal berjarak sama. Suhu pada lokasi perpotongan garis horizontal dan vertikal dengan persegi panjang dideskripsikan sebagai berikut.
Di sepanjang sisi atas persegi panjang, ketiga suhunya berturut-turut adalah \(15\text{,}\) \(20\text{,}\) dan \(25\) dari kiri ke kanan. Di sepanjang sisi bawah, suhunya berturut-turut adalah \(10\text{,}\) \(20\text{,}\) dan \(30\text{.}\)
Kedua suhu di sisi kiri bernilai \(10\text{,}\) sedangkan suhu di sisi kanan berturut-turut bernilai \(30\) dan \(40\) dari atas ke bawah.
Terdapat enam titik di dalam persegi panjang tempat garis horizontal dan vertikal berpotongan. Dibaca dari kiri ke kanan, lalu dari atas ke bawah, suhu pada lokasi-lokasi ini dinotasikan dengan \(T_1\text{,}\) \(T_2\text{,}\) dan seterusnya hingga \(T_6\text{.}\)
Gambar 1.3.5. Distribusi suhu pada pelat tipis.
Suhu pada suatu simpul kira-kira sama dengan rata-rata suhu di empat simpul terdekat. Sebagai contoh,
\begin{equation*} T_1 = (10 + 15 + T_2 + T_4)/4\text{,} \end{equation*}
yang dapat kita tulis ulang sebagai
\begin{equation*} 4T_1 - T_2 - T_4 = 25\text{.} \end{equation*}
Susunlah sistem linear untuk menemukan suhu pada keenam titik di dalam pelat ini. Kemudian, gunakan Sage untuk menyelesaikan sistem linear tersebut. Jika semua entri matriks berupa bilangan bulat, Sage akan menghitung bentuk eselon baris tereduksi menggunakan bilangan rasional. Untuk melihat hampiran desimal dari hasilnya, Anda dapat menggunakan
A.rref().numerical_approx(digits=4)
      
Dalam penerapan nyata, hampiran menjadi semakin baik ketika kita menambahkan semakin banyak titik ke dalam kisi. Dalam situasi seperti ini, kita mungkin perlu menyelesaikan sistem linear yang memiliki jutaan persamaan dan jutaan variabel.

4.

Bahan bakar di dalam motor roket model berupa campuran mesiu hitam yang idealnya terdiri atas 60% arang, 30% kalium nitrat, dan 10% belerang berdasarkan berat.
Misalkan Anda bekerja di perusahaan yang membuat motor roket model. Ketika Anda masuk kerja pada suatu pagi, Anda mengetahui bahwa sif pertama kemarin membuat bahan bakar dengan komposisi yang tepat. Akan tetapi, sif kedua keliru membaca resep dan menggunakan 50% arang, 20% kalium nitrat, serta 30% belerang. Bahan bakar dari kedua sif itu kemudian dicampurkan. Analisis kimia menunjukkan bahwa campuran tersebut mengandung 100.3 pon arang dan 46.9 pon kalium nitrat.
  1. Dengan menganggap sif pertama menghasilkan \(x\) pon bahan bakar dan sif kedua menghasilkan \(y\) pon, susunlah sistem linear dalam \(x\) dan \(y\text{.}\) Berapa pon bahan bakar yang dihasilkan sif pertama dan berapa pon yang dihasilkan sif kedua?
  2. Berapa banyak belerang yang diperkirakan terdapat dalam campuran tersebut?

5.

Latihan ini membahas penyetaraan reaksi kimia.
  1. Kimiawan menotasikan molekul air sebagai \(\text{H}_2\text{O}\text{,}\) yang berarti bahwa molekul tersebut tersusun atas dua atom hidrogen (H) dan satu atom oksigen (O). Proses pembakaran hidrogen dideskripsikan oleh reaksi kimia
    \begin{equation*} x\thinspace \text{H}_2 + y\thinspace\text{O}_2 \to z\thinspace \text{H}_2\text{O} \end{equation*}
    Artinya, \(x\) molekul hidrogen \(\text{H}_2\) bergabung dengan \(y\) molekul oksigen \(\text{O}_2\) untuk menghasilkan \(z\) molekul air. Jumlah atom hidrogen sama sebelum dan sesudah reaksi; hal yang sama berlaku untuk atom oksigen.
    1. Dinyatakan dalam \(x\text{,}\) \(y\text{,}\) dan \(z\text{,}\) berapa banyak atom hidrogen yang ada sebelum reaksi? Berapa banyak atom hidrogen yang ada sesudah reaksi? Temukan persamaan linear dalam \(x\text{,}\) \(y\text{,}\) dan \(z\) dengan menyamakan kedua jumlah tersebut.
    2. Temukan persamaan linear kedua dalam \(x\text{,}\) \(y\text{,}\) dan \(z\) dengan menyamakan jumlah atom oksigen sebelum dan sesudah reaksi.
    3. Temukan solusi-solusi sistem linear ini. Mengapa terdapat tak hingga banyak solusi?
    4. Dalam konteks kimia ini, \(x\text{,}\) \(y\text{,}\) dan \(z\) harus berupa bilangan bulat positif. Temukan solusi dengan \(x\text{,}\) \(y\text{,}\) dan \(z\) berupa bilangan bulat positif sekecil mungkin.
  2. Sekarang, perhatikan reaksi ketika kalium permanganat dan mangan sulfat bergabung dengan air untuk menghasilkan mangan dioksida, kalium sulfat, dan asam sulfat:
    \begin{equation*} x_1\thinspace \text{K}\text{Mn}\text{O}_4 + x_2\thinspace \text{Mn}\text{S}\text{O}_4 + x_3\thinspace \text{H}_2\text{O} \to x_4\thinspace \text{Mn}\text{O}_2 + x_5\thinspace \text{K}_2\text{S}\text{O}_4 + x_6\thinspace \text{H}_2\text{S}\text{O}_4. \end{equation*}
    Seperti pada bagian sebelumnya, temukan nilai \(x_1, x_2, \ldots, x_6\) yang sesuai untuk menyetarakan reaksi kimia tersebut.

6.

Kita memulai bagian ini dengan menyatakan bahwa peningkatan daya komputasi telah membantu aljabar linear memperoleh peran penting sebagai alat ilmiah. Kemudian, kita meninjau salah satu keterbatasan komputasi: ketika sebuah matriks menjadi terlalu besar, penerapan eliminasi Gauss untuk menemukan bentuk eselon baris tereduksinya tidak lagi praktis.
Dalam latihan ini, kita akan melihat keterbatasan lain: aritmetika komputer dengan bilangan riil hanyalah suatu hampiran karena komputer merepresentasikan bilangan riil menggunakan bit yang jumlahnya terbatas. Sebagai contoh, bilangan pi
\begin{equation*} \pi = 3.141592653589793238462643383279502884197169399\ldots \end{equation*}
dapat dihampiri di dalam komputer, misalnya, dengan
\begin{equation*} \pi\approx 3.141592653589793 \end{equation*}
Dalam kebanyakan keadaan, hal ini tidak menjadi masalah. Namun, ketika kita melakukan jutaan atau bahkan miliaran operasi aritmetika, galat dalam hampiran-hampiran tersebut mulai terakumulasi dan dapat menghasilkan hasil yang sangat tidak akurat. Berikut dua contoh yang menunjukkan hal ini.
  1. Pertama-tama, mari kita lihat contoh yang menunjukkan bahwa aritmetika komputer memang merupakan suatu hampiran. Perhatikan terlebih dahulu sistem linear
    \begin{equation*} \begin{alignedat}{4} x \amp {}+{} \amp \frac12y \amp {}+{} \amp \frac13z \amp {}={} \amp 1 \\ \frac12x \amp {}+{} \amp \frac13y \amp {}+{} \amp \frac14z \amp {}={} \amp 0 \\ \frac13x \amp {}+{} \amp \frac14y \amp {}+{} \amp \frac15z \amp {}={} \amp 0 \\ \end{alignedat} \end{equation*}
    Jika koefisien dimasukkan ke Sage sebagai pecahan, Sage akan menemukan bentuk eselon baris tereduksi yang eksak. Temukan solusi eksak sistem linear ini.
    Sekarang, mari kita minta Sage melakukan perhitungan dengan bilangan riil. Kita dapat melakukannya dengan merepresentasikan salah satu koefisien sebagai bilangan desimal. Misalnya, sistem linear yang sama dapat direpresentasikan sebagai
    \begin{equation*} \begin{alignedat}{4} x \amp {}+{} \amp 0.5y \amp {}+{} \amp \frac13z \amp {}={} \amp 1 \\ \frac12x \amp {}+{} \amp \frac13y \amp {}+{} \amp \frac14z \amp {}={} \amp 0 \\ \frac13x \amp {}+{} \amp \frac14y \amp {}+{} \amp \frac15z \amp {}={} \amp 0 \\ \end{alignedat} \end{equation*}
    Sebagian besar komputer melakukan aritmetika menggunakan 32 atau 64 bit. Untuk memperbesar masalah ini agar lebih mudah terlihat, kita akan meminta Sage melakukan aritmetika hanya dengan 10 bit sebagai berikut.
    Solusi apa yang diberikan Sage sekarang? Bandingkan dengan solusi eksak yang Anda temukan sebelumnya.
  2. Beberapa jenis sistem linear sangat peka terhadap galat yang timbul dari aritmetika hampiran komputer. Sebagai contoh, misalkan kita tertarik pada sistem linear
    \begin{equation*} \begin{alignedat}{3} x \amp {}+{} \amp y \amp {}={} \amp 2 \\ x \amp {}+{} 1.001\amp y \amp {}={} \amp 2 \\ \end{alignedat} \end{equation*}
    Temukan solusi sistem linear ini.
    Sekarang, misalkan komputer telah mengakumulasi suatu galat pada salah satu entri sistem ini sehingga komputer keliru menyimpan sistem tersebut sebagai
    \begin{equation*} \begin{alignedat}{3} x \amp {}+{} \amp y \amp {}={} \amp 2 \\ x \amp {}+{} 1.001\amp y \amp {}={} \amp 2.001 \\ \end{alignedat} \end{equation*}
    Temukan solusi sistem linear ini.
    Perhatikan bahwa galat kecil pada salah satu entri sistem linear menghasilkan solusi dengan galat yang sangat besar. Untungnya, masalah ini telah dikaji secara mendalam, dan tersedia berbagai teknik untuk mengurangi perilaku semacam ini.