1. 程式人生 > >Java呼叫jama實現矩陣運算

Java呼叫jama實現矩陣運算

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

 

參考文獻: