matlab怎样存放很大的矩阵
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/08 13:41:57
有矩阵a则你所要求的矩阵b=sum(a.*a,2)附:::.*这是点乘,就是矩阵每个对应位置的元素相乘sum(a,2)是按行相加,得出的为列向量若sum(a)是按列相加,得出的为行向量
[LU]=lu(A)%A为方阵再问:这个我知道,我是想问你这个LU分解的程序,可以帮帮我编写这程序吗?再答:建议参考该函数的m文件再问:找到里面的,可好像不是,你把m文件发给我下,帮帮忙,谢谢再答:下
例:a=[123456789]在命令窗口输入:[v,d]=eig(a),的以下结果:v=-0.2404-0.67470.5185-0.5469-0.2339-0.7890-0.80190.70010.
矩阵*作Diag建立和提取对角阵Fliplr矩阵作左右翻转Flipud矩阵作上下翻转Reshape改变矩阵大小Rot90矩阵旋转90度Tril提取矩阵的下三角部分Triu提取矩阵的上三角部分:矩阵的索
你的行没有输入,应该是P_test=P[,1:60].如果只写1:60,matlab会认为是按位置从第一个元素开始先按列提取,再按行提取.找本matlab的书看吧,一般前几章就会有这部分内容.
ef(a),a为原矩阵
以matlab7.1为例,在command中>>a=0;后用数据编辑器打开,把Excel中的数据copy过来,直接粘贴就行.再在command中>>[UVD]=svd(a)至于UVD:(假设a为m*n
如果想输出一个3*4阶矩阵在matlab命令窗口中输入A=[1234;1234;1234]然后按Enter键就OK了
用[d,v]=eig(A)就可以了如:>>A=[1,2;3,4]A=1234>>[d,v]=eig(A)d=-4216/5113-250/601671/1186-1736/1909v=-736/197
假设你上面的矩阵为a,用find函数就行了,如果你找的是不重复的某个数,例如6则在windows输入[row,col]=find(x==6)就会返回6行列数,如果是重复的数如0,则[row,col]=
建议利用元胞数组,如每循环一次产生一个data矩阵,那么我可以这样保存在data_save中n=100;fori=1:nforj=1:n%一些相关程序,产生矩阵datadata_save(i,j)={
同时删去?这好像是做不到的行和列必须分开删a(i,:)=[];a(:,j)=[];
symsx>>f(x)=[x,x^2,x^3]f(x)=[x,x^2,x^3]>>a=f(3)a=[3,9,27]再问:
A=[0,1,31,2,21,2,12,2,22,1,3]A=013122121222213>>A(find(A(:,3)>2),:)=[]A=122121222
用eig就可以了.特征多项式是poly.转为一般形式是poly2sym.a=magic(5),%产生一个魔方阵;[v,d]=eig(a),计算特征向量与特征值;ap=poly(a),计算特征多项式;a
先把矩阵中的那个元素找到,如I(i,j)=a,a就是你想赋的值如果你想给整个矩阵都随机赋值就是rand(I)
没有阶梯形的函数只有rref(A)
fori=1:m%%%%%%%%m行forj=1:n%%%%%%%%n列ifA(i,j)=0deleteA(i,;)endendend
size(A)可以得到矩阵A的大小length(size(A))可以得到矩阵A的维数
代码:-----------------------------------------a=1:10;b=1:20;num=[];num=[numlength(a)];num=[numlength(b