library(mosaicCalc)
## Loading required package: mosaic
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## The 'mosaic' package masks several functions from core packages in order to add
## additional features. The original behavior of these functions should not be affected by this.
##
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
##
## count, do, tally
## The following object is masked from 'package:Matrix':
##
## mean
## The following object is masked from 'package:ggplot2':
##
## stat
## The following objects are masked from 'package:stats':
##
## binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
## quantile, sd, t.test, var
## The following objects are masked from 'package:base':
##
## max, mean, min, prod, range, sample, sum
## Loading required package: mosaicCore
##
## Attaching package: 'mosaicCore'
## The following objects are masked from 'package:dplyr':
##
## count, tally
## The legacy packages maptools, rgdal, and rgeos, underpinning the sp package,
## which was just loaded, will retire in October 2023.
## Please refer to R-spatial evolution reports for details, especially
## https://r-spatial.org/r/2023/05/15/evolution4.html.
## It may be desirable to make the sf package available;
## package maintainers should consider adding sf to Suggests:.
## The sp package is now running under evolution status 2
## (status 2 uses the sf package in place of rgdal)
##
## Attaching package: 'mosaicCalc'
## The following object is masked from 'package:stats':
##
## D
Untuk mempermudah proses iterasi, kita akan menggunakan bantuan R untuk melakukan komputasi. Langkah pertama yang perlu dilakukan adalah menyiapkan matriks AA, vektor bb, dan vektor xx (nilai taksiran awal).
(A <- matrix(c(3,2,1,2,9,3,3,5,6), 3))
## [,1] [,2] [,3]
## [1,] 3 2 3
## [2,] 2 9 5
## [3,] 1 3 6
Algoritma Iterasi Jacobi:
Masukkan matriks
A dan vektor B beserta ukurannya n.
Hitung invers matriks D, dimana nilai invernya merupakan matriks diagonal dari satu per diagonal utama matriks A.
Hitung matriks R, dimana R merupakan selisih matriks A dikurangi dengan matriks diagonal dengan entri dari diagonal utama matriks A.
Tetapkan vektor x estimasi. Tetapkan nilai toleransi maksimum yang dapat diterima.
Lakukan iterasi Hitung akar jumlah kuadrat dari vektor
xn+1 dan vektor xn. Jadikan nilai xn+1
sebagai nilai taksiran x untuk iterasi berikutnya. Hentikan proses iterasi jika telah memenuhi syarat.