Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用公式为矩阵元素赋值时出错_Java_Ejml - Fatal编程技术网

Java 使用公式为矩阵元素赋值时出错

Java 使用公式为矩阵元素赋值时出错,java,ejml,Java,Ejml,我在Java中使用ejml公式编写了几行简单的代码,如下所示: eq.process("T = zeros(2,3)"); eq.process("T(1,1)=10"); eq.process("T(1,0)=1"); eq.process("T(1,2)=8"); DenseMatrix64F m=eq.lookupMatrix("T"); m.set(1, 2, 7); 最后一行不起作用,抛出错误“子矩阵超出边界。范围较低”。 显然,矩阵T的大小为2x3,索引从0开始,因此T(1,2)

我在Java中使用ejml公式编写了几行简单的代码,如下所示:

eq.process("T = zeros(2,3)");
eq.process("T(1,1)=10");
eq.process("T(1,0)=1");
eq.process("T(1,2)=8");
DenseMatrix64F m=eq.lookupMatrix("T");
m.set(1, 2, 7);
最后一行不起作用,抛出错误“子矩阵超出边界。范围较低”。 显然,矩阵T的大小为2x3,索引从0开始,因此T(1,2)是有效的。 我还尝试转换为原始矩阵,如下所示:

eq.process("T = zeros(2,3)");
eq.process("T(1,1)=10");
eq.process("T(1,0)=1");
eq.process("T(1,2)=8");
DenseMatrix64F m=eq.lookupMatrix("T");
m.set(1, 2, 7);
它是有效的。
这是这个库中的一个bug吗?

这是一个bug。在内部,边界检查是在col,row而不是row,col中进行的

最新的github代码已经修复了这个问题。您还可以签出以下SHA

ec2dffbabc38c1e86f1ef58da2553cec9287b0f3


在Stackoverflow上提问是可以的,因为更多的人看到了它。但是,请使用github和留言板报告错误和功能请求。他们会马上给我发信息,但谁知道我什么时候能在这里看到它。

谢谢,好的,我会的