Java调用jama实现矩阵运算
Java调用jama实现矩阵运算
一、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
Java调用jama实现矩阵运算的更多相关文章
- JAVA调用 keytool 生成keystore 和 cer 证书
keytool是一个Java数据证书的管理工具, keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里, 包含两种数据: 密钥实体( ...
- java调用mysql服务做备份与恢复
首先添加mysql的bin到环境变量,这样可以简写部分命令,并且做到不依赖系统mysql的具体安装路径. 重启计算机可以让添加的环境变量在java代码中调用时生效.(cmd中生效但java中调用没有生 ...
- 存储过程详解与java调用(转)
存储过程的一些基本语法: --------------创建存储过程----------------- CREATE PROC [ EDURE ] procedure_name [ ; number ] ...
- c++ c# java 调用 c++ 写的dll
1. vs 中新建win32 dll 项目 testdll 添加实现文件 test.cpp #include "stdafx.h" #include <ios ...
- Java调用第三方dll文件的使用方法 System.load()或System.loadLibrary()
Java调用第三方dll文件的使用方法 public class OtherAdapter { static { //System.loadLibrary("Connector") ...
- 【转】java调用webservice
互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取天气预报数据和查询国内手机号码归属地为 ...
- 分享:写了一个 java 调用 C语言 开发的动态库的范例
分享:写了一个 java 调用 C语言 开发的动态库的范例 cfunction.h 代码#pragma once#ifdef __cplusplusextern "C" {#e ...
- 分享:根据webservice WSDL地址自动生成java调用代码及JAR包
分享:根据webservice WSDL地址自动生成java调用代码及JAR包使用步骤:一.安装java 并配置JAVA_HOME 及 path二.安装ANT 并配置ANT_HOME三.解压WsdlT ...
- java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊
java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...
随机推荐
- 在eclipse中公布maven的多模块web项目到tomcat上及单步debug模块jar
1.在eclipse中公布maven的多模块web项目到tomcat eclipse和maven及tomcat的部署略去,还有maven的基础知识和使用在此处略去. 依照例如以下的步骤操作: 将lib ...
- vue11 vue实例方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- RedHat Linux 多媒体学习指南 (共 36 部原创视频)
1.为sco unix 添加第二块网卡 [url]http://you.video.sina.com.cn/b/11695632-1443650204.html[/url] 2.为sco unix ...
- VMware下最小化安装centos 7 后上网设置
1.文件/etc/sysconfig/network-scripts/ifcfg-eno16777736 将ONBOOT=no 改为 ONBOOT=yes 保存 2.重启网卡:service netw ...
- 如何建立远程桌面连接(XP、Vista、Win7)
如何建立远程桌面连接(XP.Vista.Win7) 要求: 1:对方即你要连的机器必须要允许远程桌面连接,操作系统一般是winXP(单用户)和win2003server(多用户),具体设置:右击我的电 ...
- XML解析——DOM解析
XML:可扩展性标记语言,主要用来传输和存储数据,相对于HTML的各种标签规范,XML的标签可以让用户根据语义自己进行定义,适用于web传输. JSON和XML的区别: (1).XML定义 扩展标记语 ...
- 洛谷 P3887 [GDOI2014]世界杯
P3887 [GDOI2014]世界杯 题目描述 3014年世界杯足球赛就要开始了!作为卫冕冠军中国足球队的教练,手下每位球员都是猛将,如何摆出最强的11人阵容也是一件幸福的烦恼事啊. 众所周知,足球 ...
- cogs 1430. [UVa 11300]分金币
1430. [UVa 11300]分金币 ★☆ 输入文件:Wealth.in 输出文件:Wealth.out 简单对比时间限制:1 s 内存限制:256 MB [题目描述] 圆桌旁坐着 ...
- [Python] Python Libs
The Python Standard Library has a lot of modules! To help you get familiar with what's available, he ...
- vue1
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...