Java呼叫jama實現矩陣運算
阿新 • • 發佈:2019-02-10
轉自:http://www.cnblogs.com/zangbo/p/5622351.html
一、jama簡介
Jama是一個基本的線性代數java包。包括一個基本的Matrix類和5個矩陣分解類。
Matrix類提供了基本的線性代數數值運算的功能,不同的建構函式可以構造雙精度和浮點精度的二維陣列,而不同的gets和sets方法可以返回子矩陣和矩陣元素。
二.矩陣操作
2.1 物件操作
(1)建構函式
利用二維陣列a[][]建立矩陣並列印矩陣。
(2)set方法
Set方法中,set(0,0,2)中的三個引數分別表示行序、列序和數值。
(3)get方法
在get方法中,函式getMatrix(0,2,0,0)表示取矩陣第一列元素,第1、2個引數表示行的起始和結束(即從第一行到第三行),第3、4個引數表示列的起始和結束(即從第0列到第0列)。
(4)拷貝方法
在拷貝方法中,矩陣copy後還是Matrix型別。
(5)克隆方法
矩陣克隆後變為object物件,需要將其轉化成Matrix型別。
2.2 矩陣元素級別的操作
(1)矩陣加法
矩陣A與矩陣B相加:Matrix D = A.plus(B)
(2)矩陣相減
矩陣A與矩陣B相減:Matrix C = A.minus(B)
(3)矩陣乘法
矩陣A與矩陣B相乘:Matrix E = A.times(B)
(4)放大縮小
將矩陣元素放大兩倍:Matrix Q = A.times(2)
(5)元素除法
矩陣左除:Matrix F = A.arrayLeftDivide(B)
(6)矩陣求逆
矩陣求逆:matrix.inverse()
(7)求矩陣的轉置
(8)矩陣的正規化
2.3 矩陣分解
(1)LU分解
(2)QR分解
(3)SVD分解
2.4矩陣相關的數學量
(1)條件數
(2)行列式
(3矩陣秩
(4)求逆
參考文獻: