本文轉自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)求逆

參考文獻:
jama jar包下載地址:http://math.nist.gov/javanumerics/jama/
官方文檔地址:http://math.nist.gov/javanumerics/jama/doc/
JAMA:java矩陣包:http://article.yeeyan.org/view/49656/40905
