本文转自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

java矩阵包jama的简单操作的更多相关文章

  1. JAMA:Java矩阵包

    原文链接:JAMA:Java矩阵包 API文档链接:线性代数Java包 JAMA jama是一个非常好用的java的线性代数软件包.适用于日常编程可能碰到的各种矩阵运算问题,提供了一个优雅的简便的解决 ...

  2. matlab中矩阵的表示与简单操作

    原文地址为:matlab矩阵的表示和简单操作 一.矩阵的表示在MATLAB中创建矩阵有以下规则: a.矩阵元素必须在”[ ]”内: b.矩阵的同行元素之间用空格(或”,”)隔开: c.矩阵的行与行之间 ...

  3. matlab矩阵的表示和简单操作

    原地址:http://www.cnblogs.com/Ran_Ran/archive/2010/12/11/1903070.html 一.矩阵的表示在MATLAB中创建矩阵有以下规则: a.矩阵元素必 ...

  4. Java使用poi对Execl简单操作_总结

    poi是Apache组织给开发者提供一套操作office(Execl,Word,PowerPoint)等Java API,开发者通过Poi API可以快速的操作office办公软件,以上3篇博文只是一 ...

  5. Java中对session的简单操作

    1.jsp中操作session <% String name=(String)request.getSession().getAttribute("username"); / ...

  6. Java连接MySQL数据库及简单操作代码

    1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...

  7. java对mongodb数据库的简单操作

    准备工作: 下载好mongodriver.jar包(https://oss.sonatype.org/content/repositories/releases/org/mongodb/mongodb ...

  8. java对文件拷贝的简单操作

    package fileInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNot ...

  9. 使用Java Api 对HBase进行简单操作

    /** * 功能:测试Hbase基本的增删改查操作 * Created by liuhuichao on 2016/12/5. */ public class HbaseCRUDTest { publ ...

随机推荐

  1. js对数组进行浅复制,深复制的方法

    js 数组常用方法,数组的拷贝(不影响原数组),数组相等 置顶2017年07月17日 17:39:26 阅读数:4640 改变原数组的方法: pop();删除尾部的第一个元素并且返回这个元素: var ...

  2. windows多线程(五) 互斥量 Mutex

    一.互斥量 互斥量是windows的一个内核对象,互斥量与关键段的作用相似,可以用来确保全局资源的互斥访问.并且互斥量可以用在不同的进程中的线程互斥访问全局资源. 二.相关函数说明 使用互斥量Mute ...

  3. SQLSERVER 使用XP开头的系统默认存储过程

    1. 根据官网上面的内容进行执行命令 EXEC xp_cmdshell 'dir *.exe'; 但是会报错 消息 ,级别 ,状态 ,过程 xp_cmdshell,行 [批起始行 ] SQL Serv ...

  4. startActivityForResult()的用法(超好用啊)

    最近做的一个小东西遇到这样的情况,我从一个页面MainActivity修改一些内容,需要跳转到一个新的EditActivity去做修改操作,修改完成后就回到之前的MainActivity,因为信息被修 ...

  5. google 浏览器插件安装

    谷歌访问助手

  6. RF相关知识

    前言:下文中的总结都是来自于网络,有的来自与博客,有的来自于维基百科/百度百科,仅仅是为了方便查看.   ASK: ASK:幅移键控调制的简写,例如二进制的,把二进制符号0和1分别用不同的幅度来表示, ...

  7. 数据结构开发(10):Linux内核链表

    0.目录 1.老生常谈的两个宏(Linux) 1.1 offsetof 1.2 container_of 2.Linux内核链表剖析 3.小结 1.老生常谈的两个宏(Linux) Linux 内核中常 ...

  8. c++11 标准库函数 std::move 和 完美转发 std::forward

    c++11 标准库函数 std::move 和 完美转发 std::forward #define _CRT_SECURE_NO_WARNINGS #include <iostream> ...

  9. Google题解

    Kickstart2017 RoundB B.题意: 二维平面上有n个点, 每个点坐标(xi, yi), 权值wi, 问: 在平面上找一点p, 使得 Σwi*max(|X-xi|, |Y-yi|)最小 ...

  10. [洛谷P3829][SHOI2012]信用卡凸包

    题目大意:有$n$张一模一样的信用卡,每个角进行了圆滑处理,问这些卡组成的“凸包”的周长 题解:发现是圆滑处理的圆心围成的凸包加上一个圆周即可 卡点:输入长宽弄反,然后以为是卡精 C++ Code: ...