现在,我想我明白了这个概念。但是当我把它们都放入代码中时,它就不起作用了……
首先,我试图将矩阵转换为上三角矩阵,但由于某种原因,在第2列之后,它停止工作。。
我输入的数组是:
[1.00][5.00][4.00][4.00][1.00]
[5.00] [7.00] [7.00] [4.00] [8.00]
[7.00] [4.00] [8.00] [4.00] [7.00]
[10.00][12.00][8.00][4.00][3.00]
[10.00] [12.00] [13.00] [4.00] [3.00]
输出,输出
double** inverseMatrix(double **matA, int dimension)
{
double** matInverse=malloc(dimension*sizeof(double*));
double **holder = matA;
for(int i = 0; i < dimension; i++){
matInverse[i] = malloc(dimension*sizeof(matInverse[0]));
}
for(int i = 0; i < dimension; i++){
for(int j = 0; j < dimension; j++){
matInverse[i][j] = 0.0;
}
matInverse[i][i] = 1.0;
}
for(int i = 0; i < dimension; i++){
double pivot = holder[i][i];
for(int j = 0; j < dimension; j++){
holder[i][j] = (holder[i][j]/pivot);
matInverse[i][j] = (matInverse[i][j]/pivot);
}
for(int row = i+1; row < dimension; row++){
int number = holder[row][i];
for(int col = 0; col < dimension; col++){
holder[row][col] = holder[row][col] - (holder[i][col] * number);
matInverse[row][col] = matInverse[row][col] - (matInverse[i][col] * number);
}
}
}
虽然该函数不完整,并且我们无法判断调用者站点是否存在其他问题,但可以在发布的片段中检测到错误:
int number = holder[row][i];
这里的< code>number应该是< code>double。
所以我试图通过高斯-乔丹消除找到矩阵的逆矩阵(使用 Python 列表)。但我正面临这个特殊的问题。在下面的代码中,我将我的代码应用于给定的矩阵,并按预期简化为单位矩阵。 输出为 但是当我应用相同的代码时,在为我的单位矩阵(它是给定矩阵的增广矩阵的一部分)添加代码行后,它没有在应该给我的时候给我正确的逆(因为我对它应用了与对给定矩阵应用相同的操作)。 输出不是逆矩阵,而是其他东西(尽管最后一列有正
我知道我听起来很蠢,但我真的需要理解高斯-乔丹消去c程序。我已经试图理解编码,但逐行阅读代码仍然令人困惑。尤其是for(j = 1;英语字母表中第十个字母
我正在编写代码以在python中消除高斯 - 乔丹。我的指示如下: 到目前为止,我已经: 这是正确的开始吗?我对下一步该去哪里感到很迷茫。输入将是一个 Numpy 数组。任何想法都非常感谢!
我现在正在研究一个 c 代码库,它使用矩阵库来计算各种东西。其中一件事是计算矩阵的逆。它使用高斯消除来实现这一点。但结果非常不准确。如此之多,以至于将逆矩阵与原始矩阵相乘甚至不会接近单位矩阵。 下面是用于计算逆矩阵的代码,矩阵以数字类型以及行和列为模板: 现在我已经做了一个单元测试,使用预先计算的值来测试逆是否正确。我尝试了两个矩阵,一个3x3,一个4x4。我用这个网站来计算逆:https://m
本文向大家介绍java实现的n*n矩阵求值及求逆矩阵算法示例,包括了java实现的n*n矩阵求值及求逆矩阵算法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java实现的n*n矩阵求值及求逆矩阵算法。分享给大家供大家参考,具体如下: 先来看看运行结果: java版的写出来了,用的跟c语言相同的算法,然后看看能不能以后加个框做成程序: 更多关于java算法相关内容感兴趣的读者可查看本站
我目前正在做一个音频信号处理项目,需要在Java中的一个复杂矩阵上使用SVD。我当前的线性代数库是Apache Commons。但它只提供实矩阵的SVD,JAMA、JBLAS、EJML、ojAlgo都不支持复杂的SVD。 我一直在用一些技巧从一个等效的实矩阵中找到SVD。然而,当我重建矩阵时,这种技术对于虚部有很大的不准确性。