作者celestialgod (天)
看板MATLAB
标题Re: [问题] 如何产生非方阵的正交矩阵
时间Fri Jun 17 16:22:57 2016
※ 引述《cy10911 (Ann)》之铭言:
: 如题
: 请问要怎麽产生一个非方阵的正交矩阵
: 每个行向量跟别人内积为0
: 自己跟自己内积为1
http://elliottback.com/wp/modified-gram-schmidt-orthogonalization-in-matlab/
B = rand(50, 50);
A = QR(B);
all(all(abs(A * A' - eye(50)) < 1e-6)) % true
这样试试看,基本上不太会出现rank不足的问题 (就确定rank(B) == size(B, 1))
不过随机还是会发生rank(B) < size(B, 1),所以要小心这件事情
--
R资料整理套件系列文:
magrittr #1LhSWhpH (R_Language) http://tinyurl.com/j3ql84c
data.table #1LhW7Tvj (R_Language) http://tinyurl.com/hr77hrn
dplyr(上) #1LhpJCfB (R_Language) http://tinyurl.com/jtg4hau
dplyr(下) #1Lhw8b-s (R_Language)
tidyr #1Liqls1R (R_Language) http://tinyurl.com/jq3o2g3
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.109.74.87
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1466151781.A.319.html
※ 编辑: celestialgod (140.109.74.87), 06/17/2016 16:28:12