问题标签 [row-major-order]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sparse-matrix - SparseMatrix<..,RowMajor> 的逆矩阵
我正在寻找一种方法来使用带有 EIGEN 3.3.4 的 RowMajor 存储来检索 SparseMatrix 的逆。我在那里找到了这个问题的答案,但我在适应我的情况时遇到了问题。
给定的方法是使用求解器和解析Ax=I
(I 是身份)来检索 A 的逆。
我不明白的是:
看起来,在作者的情况下,结果solver.solve()
是一个SparseMatrix
对象。在我看来,它是一个Solve
对象,这就是我现在遇到麻烦的原因。
我使用SimplicialLDLT
如下:
哪个不起作用,因为result
是Solve
(我想没有<<
过载)。我正在寻找的是一种方法:
目前,此转换的结果是一个错误 : THIS_METHOD_IS_ONLY_FOR_COLUMN_MAJOR_MATRICES
。
问题是:如何设置 RowMajor 求解器,以及如何在可用的 RowMajor 矩阵中检索结果?
提前致谢。
与 ColMajor
对求解器和 rhs 使用 ColMajor(lhs 仍然是 rowmajor,我无法更改),结果是错误的。矩阵 A 是:
代码是:
显示以下错误:
预期结果是:
我可能在那里做错了什么,但我无法弄清楚。
解决方案:将求解器更改为 SparseLU,SimplicialLDLT 仅适用于对称矩阵。
matlab - 置换矩阵在Matlab中将表示从列专业更改为行专业
我在 Matlab 中有一个二维数组需要转换为一维,而 Matlab 使用列主要表示进行转换。但是,我想使用双重随机矩阵将表示形式转换为行专业。
例如,我有以下二维数组:
如果我使用 reshape 在一维中表示它
我得到一个专栏主要代表:
但是,我想使用这样的置换矩阵:
这样我得到以下行主要表示:
通过做
我知道我可以通过这样做来获得 v2
但我特别关注生成置换矩阵以转换为行主要表示。
如果有人可以帮助我生成这个排列矩阵,那真的很有帮助。提前致谢!
c - 列主要顺序与行主要顺序的表示
考虑一个包含值的二维数组“数组”:{1,2,3,4,5,6,7,8,9}。我对这两个订单的理解的主要问题是,如果将 Row Major Order 表示为 Array[i,j] (而 i 是行,j 是列),
因此,如果您被问到诸如“在 Array[2][2] 中查找元素 Array[1,2] 的地址”之类的问题,您就会知道行数在列数之前,并且很容易将它们放入公式中:
这是否意味着列顺序可以表示为 Array[j,i] 这意味着列号出现在行号之前。因此无法知道 Array[j][i](例如 Array[3][4])的 i,j,Row_lowerbound 和 Col_lowerbound 值应放在公式中的什么位置。
例如,如果问题显示为:“在数组 Array[3][4] 中查找 Array[1][2] 的地址”您如何知道 3 是列数还是 4?你怎么知道'i'是3还是4?
haskell - 递归行主矩阵乘法
我正在编写自己的矩阵模块以供娱乐和练习(时间和空间复杂度无关紧要)。现在我想实现矩阵乘法,我正在努力解决它。这可能是我使用 Haskell 的原因,但我没有太多经验。这是我的数据类型:
它将这样的 3x2 矩阵存储在数组中:
我有一个有点工作的转置功能
要索引数组中的元素,我正在使用这个函数
据我了解,我必须为 m1: 2x3 和 m2: 3x2 获取这样的元素
现在我需要一个函数,它需要两个矩阵,rows m1 == cols m2
然后以某种方式递归计算正确的矩阵。
c - 当存在连续数组时,使用 MPI 用户定义的数据类型是否无用?
在我的程序中,我向其他处理器发送矩阵的一些行,我正在用 C 编码,我知道 C 是行优先的。矩阵被分配为一维数组。
我以这种方式发送它们
我怀疑是否必须使用一些临时数据类型来确保行的连续性,例如:
javafx - (JavaFX) - 蛇和梯子游戏中的蛇迭代 2D 矩阵
我正在创建游戏“蛇和梯子”。我正在使用 GridPane 来表示游戏板,显然我想以“蛇”的方式在游戏板中移动。就像那样: http: //prntscr.com/k5lcaq。
当掷骰子时,我想将'dice_num'向前移动 + 您当前的位置,因此我正在使用一维数组计算新索引,并将该索引转换为二维坐标(反向行主要顺序)。
其中gameGrid是我的网格窗格的ID,newIndex % ROWS 代表列坐标,newIndex / ROWS 代表行坐标。
问题 1:网格窗格以自己的方式迭代。就像这样: https ://prnt.sc/k5lhjx 。显然,当二维数组遇到坐标 [0,9] 时,下一个位置是 [1,0] 但我真正想要的下一个位置是 [1,9] (从 91 到 90)。
问题 2:我想从网格窗格的底部开始计数(从 1 号开始,请参见屏幕截图)并一直到 100。但是我应该如何反向迭代二维数组?
python - 什么导致numpy中C与F有序数组沿轴的数组总和不同
我很好奇是否有人能解释究竟是什么导致了numpy
. 请看下面的代码:
印刷:
python - numpy 中的行专业和列专业是什么?
我是 numpy 的新手,我正在阅读 numpy,但我无法理解 numpy 中的行专业和列专业,谁能用最简单的方法举例解释?任何答案将不胜感激谢谢
opengl - pyrr.Matrix44 布局实际上是列主要的吗?
在 pyrr.Matrix 文档中它指出:
创建一个转换矩阵给了我:
如果布局主要是行,我希望输出是转置:
我很可能很困惑(我来自 C/OpenGL 背景),但有人可以启发我吗?
乔纳森
opengl - 为什么 pyrr.Matrix44 转换似乎是列优先,而旋转行优先?
考虑以下:
平移矩阵显示矩阵的布局是列优先的,但旋转矩阵令人困惑地表明它是行优先的,如果您考虑以行优先表示法读取的围绕 X 的标准右手 3x3 旋转矩阵读取:
似乎是返回的结果from_x_rotation
。有谁知道这是一个错误,还是我误解了什么?