私は行列 [3,15000] を持っています。元の行列の共分散行列を数え、その固有値を見つける必要があります。
これは私のコードの一部です:
double[,] covarianceMatrix = new double[numberOfObjects,numberOfObjects];
for (int n=0; n<numberOfObjects;n++)
{
for (int m=0;m<numberOfObjects;m++)
{
double sum = 0;
for (int k=0; k<TimeAndRepeats[i,1]; k++)
{
sum += originalMatrix[k,n]*originalMatrix[k,m];
}
covarianceMatrix[n,m] = sum/TimeAndRepeats[i,1];
}
}
alglib.smatrixevd(covarianceMatrix,numberOfObjects,1,true,out eigenValues, out eigenVectors);
ここの NumberOfObjects は約 15000 です。少数のオブジェクトに対して計算を行うと、すべて問題ありませんが、すべてのデータに対して例外が発生します。この問題を解決することは可能ですか?
私はmacOS、x64を使用しています
私の環境はMonoDevelopです