标签:
Jama是一个基本的线性代数java包。包括一个基本的Matrix类和5个矩阵分解类。
Matrix类提供了基本的线性代数数值运算的功能,不同的构造函数可以构造双精度和浮点精度的二维数组,而不同的gets和sets方法可以返回子矩阵和矩阵元素。
基本的算术运算包括矩阵相加,矩阵相乘,矩阵范式以及基于矩阵元素的算术运算。打印矩阵的函数也包括在内。矩阵的五大分解,涉及一对或三元组,排列向量矩阵等,对应于jama的5个矩阵分解类。这些分解类可由Matrix类访问,可以求解线性方程组,求解方阵行列式,求逆和其他矩阵运算。这些分解类如下:
1、对称正定矩阵的Cholesky分解
2、矩阵的LU分解(高斯消元)
3、矩阵的QR分解
4、对称和非对称方阵的特征向量值分解
5、矩阵的奇异值分解
jama功能汇总如下图
使用举例(首先要引入Jama.1.0.3.jar):
import Jama.Matrix; public class Matrix_Test { public static void main(String[] args) { double[][] a = { {1,1,0}, {0,1,0}, {0,0,1} }; //利用二维数组创建矩阵 Matrix matrix = new Matrix(a); //打印矩阵,第一个参数是每一列的宽度,第二个参数是保留的小数点位数 matrix.print(3, 2); //求矩阵的逆 matrix.inverse().print(3,2); //求矩阵的转置 matrix.transpose().print(3,2); //矩阵乘法 matrix.transpose().times(matrix).print(3,2); } }
参考文献:
jama jar包下载地址:http://math.nist.gov/javanumerics/jama/
官方文档地址:http://math.nist.gov/javanumerics/jama/doc/
JAMA:java矩阵包:http://article.yeeyan.org/view/49656/40905
标签:
原文地址:http://blog.csdn.net/x_i_y_u_e/article/details/45457343