java - Java 中的矩阵运算

标签 java matrix multidimensional-array matrix-inverse jama

我到处找这个,但我在某个地方错了。在我的 Java 程序中,我创建了一些二维数组。现在,我需要用以前的数组形成新的二维数组,例如逆数组、转置数组、乘法数组、左除法等等。其中一些(简单)是我自己创建的,但左除法、右除法、逆运算不是我创建的。

通过使用像 Jama 这样的库,会出现一些问题。

java.lang.RuntimeException: Matrix is rank deficient.

我的代码是这样的:

Matrix Am=new Matrix(A);
Am=Am.inverse();

A 是 2D 数组 (m x n),Am 是从 2DArray A 创建的新矩阵。

我尝试这样做来进行左除,但我无法首先求解矩阵逆。

我的错误在哪里?有人知道另一个库可以从 2DArray 转换为 Matrix,然后用它进行更困难的矩阵运算(左 div、inv...)吗?

编辑

我在这个矩阵上使用逆来获得 A\P (可以计算为逆(A)*P,正如我在某处看到的那样)。你知道如何通过 Jama 获得 A\P 吗?这是我的首要问题,左除法。

最佳答案

对于矩阵库,你可以检查这个question :

但是对于你写的代码,没有人能说什么,你必须包含代码本身才能看到问题出在哪里。

关于java - Java 中的矩阵运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22028756/

相关文章:

java - 使用 JodaTime/scala 的时区转换时间

python - 如何使用 numpy 将矩阵分成 4 个 block ?

c++ - 使用指针引用传递特定的数组元素

java - 如何在 Java 中拥有每个平台的类?

java - 根据用户输入创建多个元组

java - 如何在intelliJ或eclipse中创建包含所有类和字节代码的JAR文件?

r - 创建指标变量矩阵

swift - Swift 中的 Accelerate 框架出现问题

arrays - 如何过滤数组的数组?

php - 如何在 PHP 中将 "flatten"多维数组转换为简单数组?