TUGAS 3 Praktikum Metode Numerik: Sistem Persamaan Linear

Assignment

Online dan Offline di Departemen Matematika
Authors

Laboratorium Komputasi Matematika

Departemen Matematika FMIPA UI

Published

May 17, 2025

Petunjuk Umum:

  1. Kerjakan secara Individu

  2. Kerjakan tugas ini menggunakan bahasa pemrograman Python dengan file format berupa interactive Python notebook (yaitu file berbentuk .ipynb BUKAN .py), yang bisa dibuat misalnya menggunakan Jupyter Notebook atau Google Colaboratory.

  3. Harap sertakan penjelasan untuk setiap variabel yang digunakan dan setiap proses secara singkat di samping potongan kode (dengan comment, โ€˜#โ€™). Selain itu, sertakan juga penjelasan program (yang bisa mencakupi idenya apa, bagaimana cara eksekusi program, atau tentang algoritma program yang digunakan) pada cell di sebelah (atas/bawah) program.

  4. Format nama file untuk Tugas 2 ini adalah:

    Nama Lengkap_NPM_Kelas SIAK_Tugas2PrakMetnum.ipynb

    Contoh penamaan yang benar:

    Luthfi Athallah Herdita Wiryaman_2206826980_Kelas G_Tugas1PrakMetnum_OnSite.ipynb

    Luthfi Athallah Herdita Wiryaman_2206826980_Kelas G_Tugas1PrakMetnum_OnSite_revisi1.ipynb

  5. Pengumpulan tugas dilakukan ke Google Forms berikut ini, sesuai dengan kelas Anda di SIAK NG (link akan selalu sama untuk semua tugas praktikum metode numerik):

  1. Tenggat waktu pengerjaan Tugas 3 ini adalah Sabtu, 7 Juni 2025 pukul 23.59 WIB. Mohon manfaatkan waktu Anda dengan baik (seperti mencicil pengerjaan, bahkan sudah selesai dari jauh-jauh hari) agar mengumpulkan tugas sebelum deadline. Keterlambatan pengumpulan bisa dikenakan pengurangan nilai atau bahkan dianggap tidak mengumpulkan, tergantung kesepakatan dari dosen. Meskipun demikian, lebih baik terlambat mengumpulkan daripada tidak mengumpulkan sama sekali.

  2. Sesuai standar Universitas Indonesia, plagiarisme dilarang keras dan bisa menyebabkan nilai tugas praktikum menjadi nol untuk semua pihak yang terlibat, tanpa peringatan apapun.

  3. Module atau package Python yang boleh digunakan (di-import) untuk Tugas 2 ini hanyalah numpy, tabulate, matplotlib, dan sympy. Apabila Anda berniat ingin menggunakan module lain, harap konfirmasikan ke narahubung terlebih dahulu (bisa saja diperbolehkan). Narahubung untuk Tugas 3 Praktikum Metode Numerik adalah:

    • ๐Ÿ“ž Fasya (LINE: ifasyai)

Sistem Persamaan Linier

Bentuk umum dari suatu sistem persamaan linier (SPL) diberikan oleh : \[\boldsymbol{Ax} = \boldsymbol{b}\]

Misalkan \(a_{i,j}\) menyatakan nilai dari baris ke \(i\) dan kolom ke \(j\) pada \(\boldsymbol{A}\), dan \(b_i\) menyatakan nilai dari baris ke \(i\) pada \(\boldsymbol{b}\). Jika didefinisikan \(a_{i,j}\) dan \(b_i\) sebagai berikut: \[a_{i,j} = \frac{(k+1)^{n(i + j - 1)}}{i + j - 1}, \quad i,j = 1,2,...,n \]

\[ b_i = \frac{1}{(i+1)^2} (k+1)^{n(i + 1)}(\ln((k+1)^{n(i +1)}) - 1), \quad i = 1,2,...,n \]

dengan \(k = \text{NPM} \mod 4\) dan \(n\) adalah banyak persamaan pada sistem

Soal

Buatlah suatu program untuk menyelesaikan SPL tersebut secara iteratif menggunakan Gauss-Seidel dengan vektor tebakan awal adalah vektor 0. Input yang diterima program berupa : 1. NPM (integer) 2. Ukuran matriks (integer) 3. Toleransi error (float) 4. Batas iterasi (integer)

Output program berupa matriks diperbesar yang diperoleh, serta tabel yang menampilkan hasil yang didapat setiap iterasi serta nilai error untuk setiap iterasi

Bonus

Ketentuan berikut tidak harus dikerjakan, tetapi dapat menjadi nilai tambah

Program Anda bisa berjalan berulang kali (dengan beberapa kali input dan output) sesuai permintaan user, tanpa harus berhenti dan di-run ulang secara manual terlebih dahulu.

Contoh Output

import numpy as np
from numpy import sin, log, sqrt, pi, exp, cos
from tabulate import tabulate
program()
Masukkan banyak variabel yang ingin diselesaikan dengan SPL: 3
Masukkan NPM Anda:2206026867
maka, nilai k yang digunakan = 3 


Matriks diperbesar yang didapat adalah:
[[6.40000000e+01 2.04800000e+03 8.73813333e+04 7.49339255e+03]
 [2.04800000e+03 8.73813333e+04 4.19430400e+06 3.34281638e+05]
 [8.73813333e+04 4.19430400e+06 2.14748365e+08 1.63950440e+07]]

Akan digunakan metode Gauss-Seidel untuk menyelesaikan SPL
Masukkan besar toleransi error untuk metode Gauss-Seidel: 10**-7
Masukkan banyaknya iterasi maksimal untuk metode Gauss-Seidel: 100

Tabel hasil iterasi Gauss Seidel dari matriks diperbesar tersebut adalah 
โ•’โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•คโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•คโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•คโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•คโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ••
โ”‚  iterasi  โ”‚    x1    โ”‚   x2    โ”‚     x3     โ”‚   error    โ”‚
โ•žโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ชโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ชโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ชโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ชโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•ก
โ”‚     0     โ”‚    0     โ”‚    0    โ”‚     0      โ”‚    nan     โ”‚
โ”‚     1     โ”‚ 117.084  โ”‚ 1.08139 โ”‚ 0.00758282 โ”‚  117.084   โ”‚
โ”‚     2     โ”‚ 72.1268  โ”‚ 1.7711  โ”‚ 0.0124051  โ”‚  44.9575   โ”‚
โ”‚     3     โ”‚ 43.4719  โ”‚ 2.21123 โ”‚ 0.0154684  โ”‚  28.6549   โ”‚
โ”‚     4     โ”‚ 25.2052  โ”‚ 2.49232 โ”‚ 0.0174113  โ”‚  18.2667   โ”‚
โ”‚     5     โ”‚ 13.5579  โ”‚ 2.67205 โ”‚ 0.0186403  โ”‚  11.6473   โ”‚
โ”‚     6     โ”‚ 6.12864  โ”‚ 2.78718 โ”‚ 0.0194146  โ”‚  7.42927   โ”‚
โ”‚     7     โ”‚ 1.38723  โ”‚ 2.86114 โ”‚ 0.0198993  โ”‚  4.74141   โ”‚
โ”‚     8     โ”‚ -1.64134 โ”‚ 2.90885 โ”‚ 0.0201997  โ”‚  3.02857   โ”‚
โ”‚     9     โ”‚ -3.57835 โ”‚ 2.93983 โ”‚ 0.0203828  โ”‚  1.93701   โ”‚
โ”‚    10     โ”‚ -4.81969 โ”‚ 2.96013 โ”‚ 0.0204914  โ”‚  1.24134   โ”‚
โ”‚    11     โ”‚ -5.61762 โ”‚ 2.97363 โ”‚ 0.0205525  โ”‚  0.797922  โ”‚
โ”‚    12     โ”‚ -6.13286 โ”‚ 2.98277 โ”‚ 0.0205837  โ”‚  0.515246  โ”‚
โ”‚    13     โ”‚ -6.46786 โ”‚ 2.98912 โ”‚ 0.0205958  โ”‚  0.334995  โ”‚
โ”‚    14     โ”‚ -6.68787 โ”‚ 2.9937  โ”‚  0.020596  โ”‚  0.220012  โ”‚
โ”‚    15     โ”‚ -6.83449 โ”‚ 2.99712 โ”‚ 0.0205888  โ”‚  0.146619  โ”‚
โ”‚    16     โ”‚ -6.93422 โ”‚ 2.99981 โ”‚ 0.0205769  โ”‚ 0.0997309  โ”‚
โ”‚    17     โ”‚ -7.00395 โ”‚ 3.00201 โ”‚ 0.0205622  โ”‚ 0.0697331  โ”‚
โ”‚    18     โ”‚ -7.05445 โ”‚ 3.0039  โ”‚ 0.0205459  โ”‚ 0.0505002  โ”‚
โ”‚    19     โ”‚ -7.09258 โ”‚ 3.00558 โ”‚ 0.0205286  โ”‚ 0.0381289  โ”‚
โ”‚    20     โ”‚ -7.12271 โ”‚ 3.00712 โ”‚ 0.0205109  โ”‚ 0.0301321  โ”‚
โ”‚    21     โ”‚ -7.14764 โ”‚ 3.00855 โ”‚  0.020493  โ”‚ 0.0249248  โ”‚
โ”‚    22     โ”‚ -7.16913 โ”‚ 3.00991 โ”‚ 0.0204752  โ”‚ 0.0214972  โ”‚
โ”‚    23     โ”‚ -7.18834 โ”‚ 3.01122 โ”‚ 0.0204574  โ”‚ 0.0192057  โ”‚
โ”‚    24     โ”‚ -7.20598 โ”‚ 3.01248 โ”‚ 0.0204399  โ”‚ 0.0176401  โ”‚
โ”‚    25     โ”‚ -7.22252 โ”‚ 3.01371 โ”‚ 0.0204227  โ”‚ 0.0165391  โ”‚
โ”‚    26     โ”‚ -7.23826 โ”‚ 3.01491 โ”‚ 0.0204057  โ”‚ 0.0157361  โ”‚
โ”‚    27     โ”‚ -7.25338 โ”‚ 3.01608 โ”‚  0.020389  โ”‚  0.015125  โ”‚
โ”‚    28     โ”‚ -7.26802 โ”‚ 3.01722 โ”‚ 0.0203727  โ”‚  0.014638  โ”‚
โ”‚    29     โ”‚ -7.28225 โ”‚ 3.01834 โ”‚ 0.0203566  โ”‚ 0.0142319  โ”‚
โ”‚    30     โ”‚ -7.29613 โ”‚ 3.01944 โ”‚ 0.0203408  โ”‚ 0.0138793  โ”‚
โ”‚    31     โ”‚ -7.30969 โ”‚ 3.02051 โ”‚ 0.0203253  โ”‚ 0.0135626  โ”‚
โ”‚    32     โ”‚ -7.32296 โ”‚ 3.02157 โ”‚ 0.0203101  โ”‚ 0.0132704  โ”‚
โ”‚    33     โ”‚ -7.33596 โ”‚ 3.0226  โ”‚ 0.0202952  โ”‚ 0.0129957  โ”‚
โ”‚    34     โ”‚ -7.34869 โ”‚ 3.02361 โ”‚ 0.0202806  โ”‚ 0.0127337  โ”‚
โ”‚    35     โ”‚ -7.36117 โ”‚ 3.02461 โ”‚ 0.0202663  โ”‚ 0.0124815  โ”‚
โ”‚    36     โ”‚ -7.37341 โ”‚ 3.02558 โ”‚ 0.0202522  โ”‚ 0.0122373  โ”‚
โ”‚    37     โ”‚ -7.38541 โ”‚ 3.02654 โ”‚ 0.0202384  โ”‚ 0.0119996  โ”‚
โ”‚    38     โ”‚ -7.39718 โ”‚ 3.02748 โ”‚ 0.0202249  โ”‚ 0.0117677  โ”‚
โ”‚    39     โ”‚ -7.40872 โ”‚ 3.0284  โ”‚ 0.0202116  โ”‚ 0.0115411  โ”‚
โ”‚    40     โ”‚ -7.42004 โ”‚ 3.0293  โ”‚ 0.0201986  โ”‚ 0.0113193  โ”‚
โ”‚    41     โ”‚ -7.43114 โ”‚ 3.03019 โ”‚ 0.0201858  โ”‚ 0.0111021  โ”‚
โ”‚    42     โ”‚ -7.44203 โ”‚ 3.03105 โ”‚ 0.0201733  โ”‚ 0.0108892  โ”‚
โ”‚    43     โ”‚ -7.45271 โ”‚ 3.03191 โ”‚  0.020161  โ”‚ 0.0106806  โ”‚
โ”‚    44     โ”‚ -7.46319 โ”‚ 3.03274 โ”‚ 0.0201489  โ”‚  0.010476  โ”‚
โ”‚    45     โ”‚ -7.47346 โ”‚ 3.03356 โ”‚ 0.0201371  โ”‚ 0.0102754  โ”‚
โ”‚    46     โ”‚ -7.48354 โ”‚ 3.03436 โ”‚ 0.0201255  โ”‚ 0.0100786  โ”‚
โ”‚    47     โ”‚ -7.49343 โ”‚ 3.03515 โ”‚ 0.0201141  โ”‚ 0.00988566 โ”‚
โ”‚    48     โ”‚ -7.50312 โ”‚ 3.03593 โ”‚  0.020103  โ”‚ 0.00969642 โ”‚
โ”‚    49     โ”‚ -7.51263 โ”‚ 3.03668 โ”‚  0.020092  โ”‚ 0.0095108  โ”‚
โ”‚    50     โ”‚ -7.52196 โ”‚ 3.03743 โ”‚ 0.0200813  โ”‚ 0.00932875 โ”‚
โ”‚    51     โ”‚ -7.53111 โ”‚ 3.03816 โ”‚ 0.0200708  โ”‚ 0.00915018 โ”‚
โ”‚    52     โ”‚ -7.54009 โ”‚ 3.03887 โ”‚ 0.0200604  โ”‚ 0.00897503 โ”‚
โ”‚    53     โ”‚ -7.54889 โ”‚ 3.03958 โ”‚ 0.0200503  โ”‚ 0.00880323 โ”‚
โ”‚    54     โ”‚ -7.55752 โ”‚ 3.04026 โ”‚ 0.0200404  โ”‚ 0.00863473 โ”‚
โ”‚    55     โ”‚ -7.56599 โ”‚ 3.04094 โ”‚ 0.0200306  โ”‚ 0.00846945 โ”‚
โ”‚    56     โ”‚ -7.5743  โ”‚ 3.0416  โ”‚ 0.0200211  โ”‚ 0.00830734 โ”‚
โ”‚    57     โ”‚ -7.58245 โ”‚ 3.04225 โ”‚ 0.0200117  โ”‚ 0.00814832 โ”‚
โ”‚    58     โ”‚ -7.59044 โ”‚ 3.04289 โ”‚ 0.0200025  โ”‚ 0.00799236 โ”‚
โ”‚    59     โ”‚ -7.59828 โ”‚ 3.04351 โ”‚ 0.0199935  โ”‚ 0.00783937 โ”‚
โ”‚    60     โ”‚ -7.60597 โ”‚ 3.04413 โ”‚ 0.0199846  โ”‚ 0.00768932 โ”‚
โ”‚    61     โ”‚ -7.61351 โ”‚ 3.04473 โ”‚ 0.0199759  โ”‚ 0.00754214 โ”‚
โ”‚    62     โ”‚ -7.62091 โ”‚ 3.04532 โ”‚ 0.0199674  โ”‚ 0.00739777 โ”‚
โ”‚    63     โ”‚ -7.62817 โ”‚ 3.0459  โ”‚ 0.0199591  โ”‚ 0.00725617 โ”‚
โ”‚    64     โ”‚ -7.63528 โ”‚ 3.04647 โ”‚ 0.0199509  โ”‚ 0.00711728 โ”‚
โ”‚    65     โ”‚ -7.64227 โ”‚ 3.04702 โ”‚ 0.0199429  โ”‚ 0.00698105 โ”‚
โ”‚    66     โ”‚ -7.64911 โ”‚ 3.04757 โ”‚  0.019935  โ”‚ 0.00684742 โ”‚
โ”‚    67     โ”‚ -7.65583 โ”‚ 3.0481  โ”‚ 0.0199273  โ”‚ 0.00671636 โ”‚
โ”‚    68     โ”‚ -7.66242 โ”‚ 3.04863 โ”‚ 0.0199197  โ”‚ 0.0065878  โ”‚
โ”‚    69     โ”‚ -7.66888 โ”‚ 3.04914 โ”‚ 0.0199122  โ”‚ 0.0064617  โ”‚
โ”‚    70     โ”‚ -7.67522 โ”‚ 3.04965 โ”‚ 0.0199049  โ”‚ 0.00633802 โ”‚
โ”‚    71     โ”‚ -7.68143 โ”‚ 3.05015 โ”‚ 0.0198978  โ”‚ 0.0062167  โ”‚
โ”‚    72     โ”‚ -7.68753 โ”‚ 3.05063 โ”‚ 0.0198908  โ”‚ 0.00609771 โ”‚
โ”‚    73     โ”‚ -7.69351 โ”‚ 3.05111 โ”‚ 0.0198839  โ”‚ 0.00598099 โ”‚
โ”‚    74     โ”‚ -7.69938 โ”‚ 3.05158 โ”‚ 0.0198771  โ”‚ 0.00586651 โ”‚
โ”‚    75     โ”‚ -7.70513 โ”‚ 3.05204 โ”‚ 0.0198705  โ”‚ 0.00575422 โ”‚
โ”‚    76     โ”‚ -7.71078 โ”‚ 3.05249 โ”‚  0.019864  โ”‚ 0.00564407 โ”‚
โ”‚    77     โ”‚ -7.71631 โ”‚ 3.05293 โ”‚ 0.0198577  โ”‚ 0.00553604 โ”‚
โ”‚    78     โ”‚ -7.72174 โ”‚ 3.05336 โ”‚ 0.0198514  โ”‚ 0.00543007 โ”‚
โ”‚    79     โ”‚ -7.72707 โ”‚ 3.05379 โ”‚ 0.0198453  โ”‚ 0.00532614 โ”‚
โ”‚    80     โ”‚ -7.73229 โ”‚ 3.0542  โ”‚ 0.0198393  โ”‚ 0.00522419 โ”‚
โ”‚    81     โ”‚ -7.73742 โ”‚ 3.05461 โ”‚ 0.0198334  โ”‚ 0.00512419 โ”‚
โ”‚    82     โ”‚ -7.74244 โ”‚ 3.05501 โ”‚ 0.0198276  โ”‚ 0.00502611 โ”‚
โ”‚    83     โ”‚ -7.74737 โ”‚ 3.0554  โ”‚ 0.0198219  โ”‚ 0.00492991 โ”‚
โ”‚    84     โ”‚ -7.75221 โ”‚ 3.05579 โ”‚ 0.0198164  โ”‚ 0.00483554 โ”‚
โ”‚    85     โ”‚ -7.75695 โ”‚ 3.05617 โ”‚ 0.0198109  โ”‚ 0.00474298 โ”‚
โ”‚    86     โ”‚ -7.7616  โ”‚ 3.05654 โ”‚ 0.0198055  โ”‚ 0.0046522  โ”‚
โ”‚    87     โ”‚ -7.76617 โ”‚ 3.0569  โ”‚ 0.0198003  โ”‚ 0.00456315 โ”‚
โ”‚    88     โ”‚ -7.77064 โ”‚ 3.05726 โ”‚ 0.0197951  โ”‚ 0.00447581 โ”‚
โ”‚    89     โ”‚ -7.77503 โ”‚ 3.05761 โ”‚ 0.0197901  โ”‚ 0.00439013 โ”‚
โ”‚    90     โ”‚ -7.77934 โ”‚ 3.05795 โ”‚ 0.0197851  โ”‚ 0.0043061  โ”‚
โ”‚    91     โ”‚ -7.78356 โ”‚ 3.05829 โ”‚ 0.0197803  โ”‚ 0.00422368 โ”‚
โ”‚    92     โ”‚ -7.78771 โ”‚ 3.05862 โ”‚ 0.0197755  โ”‚ 0.00414283 โ”‚
โ”‚    93     โ”‚ -7.79177 โ”‚ 3.05894 โ”‚ 0.0197708  โ”‚ 0.00406354 โ”‚
โ”‚    94     โ”‚ -7.79576 โ”‚ 3.05926 โ”‚ 0.0197663  โ”‚ 0.00398576 โ”‚
โ”‚    95     โ”‚ -7.79966 โ”‚ 3.05957 โ”‚ 0.0197618  โ”‚ 0.00390946 โ”‚
โ”‚    96     โ”‚ -7.8035  โ”‚ 3.05988 โ”‚ 0.0197573  โ”‚ 0.00383463 โ”‚
โ”‚    97     โ”‚ -7.80726 โ”‚ 3.06018 โ”‚  0.019753  โ”‚ 0.00376123 โ”‚
โ”‚    98     โ”‚ -7.81095 โ”‚ 3.06047 โ”‚ 0.0197488  โ”‚ 0.00368924 โ”‚
โ”‚    99     โ”‚ -7.81457 โ”‚ 3.06076 โ”‚ 0.0197446  โ”‚ 0.00361862 โ”‚
โ”‚    100    โ”‚ -7.81812 โ”‚ 3.06105 โ”‚ 0.0197405  โ”‚ 0.00354936 โ”‚
โ•˜โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•งโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•งโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•งโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•งโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•›
Didapatkan nilai x1, x2, ...., xn =  [np.float64(-7.8181177629432455), np.float64(3.0610456632726963), np.float64(0.019740524872688004)] 

Apakah Anda ingin menggunakan program ini lagi? (y/n):n
Terima kasih telah menggunakan program ini. (ร—-ร—)