本文整理汇总了C#中Encog.MathUtil.Matrices.Matrix.GetMatrix方法的典型用法代码示例。如果您正苦于以下问题:C# Matrix.GetMatrix方法的具体用法?C# Matrix.GetMatrix怎么用?C# Matrix.GetMatrix使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Encog.MathUtil.Matrices.Matrix
的用法示例。
在下文中一共展示了Matrix.GetMatrix方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Solve
public Matrix Solve(Matrix B)
{
int cols;
Matrix matrix;
double[][] data;
int num2;
int num3;
int num4;
int num5;
int num6;
int num7;
int num8;
if (B.Rows == this.x6088325dec1baa2a)
{
while (!this.IsNonsingular)
{
throw new MatrixError("Matrix is singular.");
}
cols = B.Cols;
matrix = B.GetMatrix(this.xf4c1900fcf4a6b03, 0, cols - 1);
data = matrix.Data;
goto Label_0237;
}
goto Label_0251;
Label_0016:
if (num7 < num5)
{
num8 = 0;
goto Label_0050;
}
num5--;
if ((((uint) num6) - ((uint) num6)) > uint.MaxValue)
{
goto Label_013D;
}
Label_003D:
if (num5 >= 0)
{
goto Label_00CB;
}
return matrix;
Label_004A:
num8++;
Label_0050:
if (num8 < cols)
{
data[num7][num8] -= data[num5][num8] * this.x6f7a05b81c35b16c[num7][num5];
if (0 != 0)
{
goto Label_00CB;
}
goto Label_004A;
}
num7++;
goto Label_0016;
Label_00CB:
num6 = 0;
Label_0097:
if (num6 < cols)
{
data[num5][num6] /= this.x6f7a05b81c35b16c[num5][num5];
if ((((uint) num6) + ((uint) num2)) <= uint.MaxValue)
{
if (0 == 0)
{
num6++;
if ((((uint) num6) + ((uint) num8)) > uint.MaxValue)
{
goto Label_0237;
}
goto Label_0097;
}
goto Label_004A;
}
goto Label_01A1;
}
num7 = 0;
goto Label_0016;
Label_013D:
if (num2 < this.x57e9faf3ffdc07cc)
{
num3 = num2 + 1;
goto Label_0187;
}
if (((uint) num4) >= 0)
{
goto Label_01D4;
}
Label_015B:
num4++;
Label_0161:
if (num4 < cols)
{
data[num3][num4] -= data[num2][num4] * this.x6f7a05b81c35b16c[num3][num2];
goto Label_015B;
}
if ((((uint) num5) | 1) != 0)
{
num3++;
}
//.........这里部分代码省略.........