clgt.net
当前位置:首页>>关于MATLAB怎么写入对称矩阵????的资料>>

MATLAB怎么写入对称矩阵????

B=zeros(10,10) B(3,3)=L^2 …… %(只需定义非0的几个元素) B(5,5)=L^2 for i=1:6 for j=i:7-i B(i,j)=B(j,i); end end %输出 A=B %望采纳

对称矩阵种类很多,如: >> format rat >> a=hilb(5) a = 1 1/2 1/3 1/4 1/5 1/2 1/3 1/4 1/5 1/6 1/3 1/4 1/5 1/6 1/7 1/4 1/5 1/6 1/7 1/8 1/5 1/6 1/7 1/8 1/9

输入大型的对称大矩阵,可以用diag()对角阵函数命令来生成。 实现方法: m = 150; A=4*diag(ones(2*m,1),0) + diag(ones(2*m-1,1),1) + diag(ones(2*m-1,1),-1) [m,n]=size(A)

是根据对角线对称吗? a = rand(5,5); b = tril(a,-1)+triu(a',0);

a = zeros(4) for i = 1:length(a) for j = 1:length(a) if i == j || i == 1 || j == 1 a(i,j) = 1; end end end a

A = 2*a*eye(n)-a*ones(n)

不对, 实对称矩阵一定可对角化,但可对角化的矩阵不一定是实对称矩阵。 例如:3阶矩阵 A= 1 2 3 0 2 3 0 0 3 有3个不同的特征值1,2,3,故一定可对角化,但A不是对称矩阵。

先从理解可相似对角化的充分必要条件着手: A有n个线性无关的特征向量(注:即要求k重特征值有k个线性无关解) 之所以说实对称矩阵一定可以相似对角化恰恰就是因为它满足可相似对角化的充分必要条件 (不同特征值必线性无关,k重特征值有k个线性...

n=10; a=rand(n,n); a=(a+a')/2; for i=1:n a(i,i)=0; end a

这是一种办法 A = randn(n); A = exp(A-A') 当然,这样产生的A所有元素都是正的 如果想要有正有负,可以这样 B = randn(n); B = B+B'; A = randn(n); A = sign(B).*exp(A-A')

网站首页 | 网站地图
All rights reserved Powered by www.clgt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com