首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >具有给定特征值和特征向量的随机正半定矩阵

具有给定特征值和特征向量的随机正半定矩阵
EN

Stack Overflow用户
提问于 2018-03-30 12:12:18
回答 1查看 2K关注 0票数 2

中是否有一种方法可以生成具有给定特征值和特征向量的随机正半定矩阵?

我看过,但它们不允许为矩阵构造指定特征值。

上下文:,我想生成具有受控椭圆度的随机多元高斯,并且由于分布的长/短轴与特征值成正比,所以我希望协方差矩阵有它们。定义可在这里找到(第81页)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-30 12:42:43

当你没有特征向量,而只想要一些特征值时,你可以列出你想要的特征值,并使用一个正交矩阵来混淆它们。由于同余变换不会改变矩阵的惯性(很好地达到数值精度),所以可以使用随机矩阵的QR分解的Q矩阵(或生成正交矩阵的任何其他方法)。

代码语言:javascript
运行
复制
import numpy as np
import scipy.linalg as la
des = [1, 0, 3, 4, -2, 0, 0]
n = len(des)
s = np.diag(des)
q, _ = la.qr(np.random.rand(n, n))
semidef = q.T @ s @ q
np.linalg.eigvalsh(semidef)

给出

代码语言:javascript
运行
复制
array([-2.00000000e+00, -2.99629568e-16, -5.50063275e-18,  2.16993906e-16,
        1.00000000e+00,  3.00000000e+00,  4.00000000e+00])

当你有特征向量的时候,你可以简单地构造原始矩阵,也就是特征值分解的定义。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49574212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档