我正在研究一个涉及获取特定矩阵的分数幂的问题。
sqrtm(A)对于主对角线为 2,子对角线和超对角线为 -1 的矩阵 A(一维 Dirichlet Laplacian 的有限差分矩阵),使用 MATLAB 的函数和对矩阵 ( [V,D]=eig(A), A = V\D*V) 进行对角化和计算基本没有区别V\D^(1/2)*V即使矩阵大到 1000x1000。这让我觉得我可以计算V\D^(1/n)*VMATLAB 没有内置函数的其他分数幂。
但是,当我考虑二维中狄利克雷拉普拉斯算子的矩阵 A 时,即使矩阵小至 100x100,MATLAB 的 sqrtm 函数与我上面使用的对角化过程之间也存在显着差异。特别是,MATLAB 的 sqrtm 函数更好,如果我以其他方式执行,我的结果没有任何意义。
我想知道是否有人可以解释为什么会发生这种情况,以及是否有办法解决它,以便我可以在 MATLAB 中计算大矩阵的分数幂。