本文整理汇总了C#中Encog.MathUtil.Matrices.Matrix.GetArrayCopy方法的典型用法代码示例。如果您正苦于以下问题:C# Matrix.GetArrayCopy方法的具体用法?C# Matrix.GetArrayCopy怎么用?C# Matrix.GetArrayCopy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Encog.MathUtil.Matrices.Matrix
的用法示例。
在下文中一共展示了Matrix.GetArrayCopy方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Solve
//.........这里部分代码省略.........
Label_002E:
if (num9 < num7)
{
num10 = 0;
if ((((uint) index) - ((uint) num7)) <= uint.MaxValue)
{
while (num10 < num)
{
numArray[num9][num10] -= numArray[num7][num10] * this.x1e2b930239385f93[num9][num7];
if (((uint) num3) < 0)
{
goto Label_00E2;
}
num10++;
}
num9++;
goto Label_002E;
}
goto Label_0016;
}
num7--;
}
else
{
return new Matrix(numArray).GetMatrix(0, this.x57e9faf3ffdc07cc - 1, 0, num - 1);
}
if (((uint) num2) <= uint.MaxValue)
{
goto Label_0016;
}
goto Label_0139;
Label_0108:
if (num3 < num)
{
num4 = 0.0;
if ((((uint) num9) - ((uint) num10)) > uint.MaxValue)
{
goto Label_0127;
}
num5 = num2;
while (true)
{
if (num5 >= this.x6088325dec1baa2a)
{
num4 = -num4 / this.x1e2b930239385f93[num2][num2];
num6 = num2;
goto Label_013F;
}
num4 += this.x1e2b930239385f93[num5][num2] * numArray[num5][num3];
num5++;
if ((((uint) num10) | 0xff) == 0)
{
goto Label_0275;
}
}
}
if ((((uint) num3) - ((uint) num9)) <= uint.MaxValue)
{
}
Label_0127:
num2++;
Label_012B:
if (num2 < this.x57e9faf3ffdc07cc)
{
num3 = 0;
goto Label_0108;
}
goto Label_00E2;
Label_0139:
num6++;
Label_013F:
if (num6 < this.x6088325dec1baa2a)
{
numArray[num6][num3] += num4 * this.x1e2b930239385f93[num6][num2];
if ((((uint) num2) + ((uint) num6)) <= uint.MaxValue)
{
goto Label_0139;
}
}
else
{
num3++;
if (((uint) num2) >= 0)
{
if ((((uint) num5) & 0) != 0)
{
goto Label_012B;
}
goto Label_0108;
}
goto Label_00E2;
}
Label_0260:
numArray = B.GetArrayCopy();
num2 = 0;
goto Label_012B;
Label_0275:
num = B.Cols;
goto Label_0260;
}
示例2: Solve
public Matrix Solve(Matrix b)
{
double[][] numArray;
int cols;
int num2;
int num3;
int num4;
int num5;
int num6;
int num7;
if (b.Rows == this.x57e9faf3ffdc07cc)
{
goto Label_027B;
}
throw new MatrixError("Matrix row dimensions must agree.");
Label_0049:
if (num6 < cols)
{
goto Label_006D;
}
num5--;
Label_0054:
if (num5 < 0)
{
return new Matrix(numArray);
}
Label_0068:
num6 = 0;
goto Label_0049;
Label_006D:
num7 = num5 + 1;
while (num7 < this.x57e9faf3ffdc07cc)
{
numArray[num5][num6] -= numArray[num7][num6] * this.x9fc3ee03a439f6f0[num7][num5];
num7++;
}
numArray[num5][num6] /= this.x9fc3ee03a439f6f0[num5][num5];
num6++;
goto Label_0049;
Label_00A4:
num2++;
Label_00A8:
if (num2 < this.x57e9faf3ffdc07cc)
{
goto Label_01AC;
}
num5 = this.x57e9faf3ffdc07cc - 1;
goto Label_0054;
Label_00CB:
if (num4 < num2)
{
goto Label_012F;
}
if ((((uint) cols) - ((uint) num6)) < 0)
{
goto Label_01AC;
}
numArray[num2][num3] /= this.x9fc3ee03a439f6f0[num2][num2];
num3++;
Label_010E:
if (num3 < cols)
{
num4 = 0;
if ((((uint) num7) + ((uint) cols)) <= uint.MaxValue)
{
goto Label_016A;
}
goto Label_020C;
}
if ((((uint) num5) + ((uint) num3)) <= uint.MaxValue)
{
goto Label_00A4;
}
goto Label_00CB;
Label_012F:
numArray[num2][num3] -= numArray[num4][num3] * this.x9fc3ee03a439f6f0[num2][num4];
if (8 != 0)
{
num4++;
goto Label_00CB;
}
goto Label_00A4;
Label_016A:
if ((((uint) num6) - ((uint) num6)) < 0)
{
goto Label_006D;
}
goto Label_00CB;
Label_01AC:
num3 = 0;
goto Label_010E;
Label_020C:
numArray = b.GetArrayCopy();
cols = b.Cols;
if ((((uint) cols) & 0) == 0)
{
if ((((uint) num4) | 15) == 0)
{
goto Label_012F;
}
//.........这里部分代码省略.........
示例3: QRDecomposition
//.........这里部分代码省略.........
{
goto Label_015B;
}
Label_0069:
this.x5f131619608f051b[num] = -num2;
Label_0073:
num++;
if ((((uint) num7) + ((uint) num)) >= 0)
{
goto Label_000B;
}
Label_0092:
if ((((uint) num2) - ((uint) num4)) >= 0)
{
if ((((uint) num6) & 0) == 0)
{
return;
}
if (((uint) num) >= 0)
{
goto Label_02FC;
}
goto Label_019F;
}
Label_00AA:
while (num8 < this.x6088325dec1baa2a)
{
this.x1e2b930239385f93[num8][num5] += num6 * this.x1e2b930239385f93[num8][num];
if ((((uint) num4) - ((uint) num3)) >= 0)
{
goto Label_00FD;
}
}
num5++;
Label_00BA:
if (num5 < this.x57e9faf3ffdc07cc)
{
num6 = 0.0;
if ((((uint) num3) + ((uint) num5)) > uint.MaxValue)
{
goto Label_01C2;
}
num7 = num;
if ((((uint) num8) - ((uint) num6)) < 0)
{
goto Label_0069;
}
goto Label_015B;
}
goto Label_002B;
Label_00FD:
num8++;
goto Label_00AA;
Label_015B:
while (num7 < this.x6088325dec1baa2a)
{
num6 += this.x1e2b930239385f93[num7][num] * this.x1e2b930239385f93[num7][num5];
num7++;
}
num6 = -num6 / this.x1e2b930239385f93[num][num];
num8 = num;
goto Label_00AA;
Label_019F:
this.x1e2b930239385f93[num][num]++;
Label_01C2:
num5 = num + 1;
goto Label_00BA;
Label_0250:
while (num4 < this.x6088325dec1baa2a)
{
this.x1e2b930239385f93[num4][num] /= num2;
num4++;
if ((((uint) num2) + ((uint) num5)) < 0)
{
goto Label_029E;
}
}
goto Label_019F;
Label_025B:
num4 = num;
if ((((uint) num7) & 0) != 0)
{
goto Label_00FD;
}
goto Label_0250;
Label_029E:
num2 = -num2;
if ((((uint) num5) - ((uint) num5)) < 0)
{
goto Label_0250;
}
goto Label_025B;
Label_02FC:
this.x1e2b930239385f93 = A.GetArrayCopy();
this.x6088325dec1baa2a = A.Rows;
this.x57e9faf3ffdc07cc = A.Cols;
this.x5f131619608f051b = new double[this.x57e9faf3ffdc07cc];
num = 0;
goto Label_000B;
}
示例4: LUDecomposition
//.........这里部分代码省略.........
num9 = num2 + 1;
goto Label_016D;
Label_0207:
if (num4 < this.x6088325dec1baa2a)
{
numArray = this.x6f7a05b81c35b16c[num4];
num5 = Math.Min(num4, num2);
goto Label_0291;
}
if ((((uint) num7) & 0) == 0)
{
goto Label_01CD;
}
if ((((uint) num7) - ((uint) num7)) >= 0)
{
goto Label_01C7;
}
Label_0260:
if ((((uint) num8) - ((uint) num10)) >= 0)
{
if ((((uint) num8) - ((uint) num11)) >= 0)
{
if ((((uint) num11) & 0) == 0)
{
goto Label_0167;
}
goto Label_0070;
}
if ((((uint) num14) + ((uint) num9)) < 0)
{
goto Label_004E;
}
if (0 != 0)
{
goto Label_0291;
}
goto Label_02F4;
}
goto Label_0207;
Label_0291:
num6 = 0.0;
num7 = 0;
Label_01DA:
if (num7 < num5)
{
num6 += numArray[num7] * numArray2[num7];
num7++;
if (-2147483648 != 0)
{
goto Label_01DA;
}
goto Label_0260;
}
numArray[num2] = numArray2[num4] -= num6;
if (0 != 0)
{
goto Label_01CD;
}
num4++;
goto Label_0207;
Label_02C7:
if (num3 >= this.x6088325dec1baa2a)
{
num4 = 0;
goto Label_0207;
}
Label_02F4:
numArray2[num3] = this.x6f7a05b81c35b16c[num3][num2];
if ((((uint) num12) - ((uint) num5)) > uint.MaxValue)
{
goto Label_0120;
}
if ((((uint) num11) - ((uint) num9)) <= uint.MaxValue)
{
num3++;
goto Label_02C7;
}
goto Label_0207;
Label_0372:
while (num < this.x6088325dec1baa2a)
{
this.xf4c1900fcf4a6b03[num] = num;
num++;
}
if (((uint) num8) > uint.MaxValue)
{
goto Label_0120;
}
this.xa0cac978920221b7 = 1;
numArray2 = new double[this.x6088325dec1baa2a];
num2 = 0;
goto Label_004E;
Label_03A9:
this.x6f7a05b81c35b16c = A.GetArrayCopy();
this.x6088325dec1baa2a = A.Rows;
this.x57e9faf3ffdc07cc = A.Cols;
this.xf4c1900fcf4a6b03 = new int[this.x6088325dec1baa2a];
num = 0;
goto Label_0372;
}