如何用matlab生成一个单位正交矩阵?

使用MATLAB内置函数`orth(A)`可以快速生成一个矩阵A对应的单位正交矩阵B。例如,先创建一个3x3的随机矩阵A,然后调用`orth(A)`,得到的B矩阵即为正交矩阵,且B的转置乘以B等于单位矩阵,证明其正交性质。
假设要生成n阶的单位矩阵,先用A=rand(n,n)生成n*n的随机矩阵(一般情况下都是满秩的),然后用B=orth(A)即可得到n*n的单位矩阵。命令就三行

n=5 %假定生成5阶单位矩阵
A=rand(n,n)

B=orth(A)

例如:

A=rand(3,3) B=orth(A) A =     0.9649    0.9572    0.1419     0.1576    0.4854    0.4218     0.9706    0.8003    0.9157 B =    -0.6208    0.7763   -0.1091    -0.2820   -0.3509   -0.8929    -0.7315   -0.5236    0.4368 >> B*B' ans =     1.0000   -0.0000   -0.0000    -0.0000    1.0000    0.0000    -0.0000    0.0000    1.0000

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值