【发布时间】:2021-06-15 08:17:14
【问题描述】:
我有一个名为 implementationMat 的矩阵,它包含一个随机过程的 90 个实现的 101 个测量值。我将发布一个删节的 11*5 更小的示例
meshgrid[x_List, y_List] := {ConstantArray[x, Length[x]],
Transpose@ConstantArray[y, Length[y]]}
{xx, yy} = meshgrid[Range[0, 1, .1], Range[0, 1, .1]];
kernel = Exp[(-1)*Abs[xx - yy]];
{eval, evec} = Eigensystem[kernel];
realizationNumber = 5;
longitudeOfEigA = Length[evec];
realizationNumber = 5;
evecRand = 0*ConstantArray[1, {longitudeOfEigA}];
realizationMat = 0*ConstantArray[1, {realizationNumber}];
For[i = 0, i < realizationNumber + 1, i++,
For[j = 0, j < longitudeOfEigA, j++;
evecRand[[j]] =
eval[[j]]^0.5*RandomVariate[NormalDistribution[]]*
evec[[j]]; (*Print[i];*)realization = Total[evecRand, {1}];
realizationMat[[i]] = realization]];
VA1 = realizationMat[[1]];
VA2 = realizationMat[[2]];
VA3 = realizationMat[[3]];
VA4 = realizationMat[[4]];
VA5 = realizationMat[[5]];
KLVariablesB = KarhunenLoeveDecomposition[{VA1, VA2, VA3, VA4, VA5}];
在文档中写道:变换矩阵 m 的行是由数组 ai 形成的协方差矩阵的特征向量。 此外,变换后的数组 bi 是不相关的,在方差递减顺序,总方差与 ai 相同。
但是,如果我写ListPlot[{KLVariablesB[[2, 1]]}, Joined -> True],它看起来根本不像特征向量,见图1
。另外,如果我改为绘制ListPlot[{KLVariablesB[[1, 1]]}, Joined -> True],它看起来更像是一个特征向量,见图2,但这些不是原始协方差矩阵的特征向量。
谁能告诉我我的代码有什么问题?
最好的问候。
我还附上了内核原始特征向量的图像
【问题讨论】:
标签: statistics wolfram-mathematica eigenvalue coordinate-transformation eigenvector