矩阵运算与Matlab命令

matlab实验

10人已加入

描述

矩阵运算与Matlab命令
1.1 知识要点与背景:日常矩阵及其运算
【      A=[4 2 3;1 3 2;1 3 3;3 2 2],         % 表1-1、表1-2的数据分别写成矩阵形式
  B=[35 20 60 45;10 15 50 40;20 12 45 20]         】
【       C=A*B          %矩阵乘法,求各订单所对应的原材料和劳动力 。     】  
【   whos           % 查看Matlab工作空间中变量及其规模  】    
1.2实验与观察:矩阵和Matlab语言
1.2.1 向量的生成和运算
  【      x=linspace(0,4*pi,100);   %将[0,4π]区间100等分,产生了一个100维向量
   y=sin(x);               %计算函数值,产生了一个与x同维的100维函数向量y
   y1=sin(x).^2;         %计算函数向量,注意元素群运算
    y2=exp(-x).*sin(x);               
   %以x为横坐标,y为纵坐标画函数的图用不同的线型将函数曲线绘制在一个图上
    plot(x,y,'-',x,y1,'-',x,y2,'.-')            】
1. 向量的创建
             ◆直接输入向量。
【x1=[1 2 4],x2=[1,2,1],x3=x1' 】
      ◆冒号创建向量 。
【     x1=3.4:6.7
 x2=3.4:2:6.7
 x3=2.6:-0.8:0   】
       ◆生成线性等分向量。
【     x=linspace(0,1,5)   】
2. 向量的运算
 【   y=sin(x)    】
         【  y1=sin(x).^2;   y2=exp(-x).*sin(x);   】    
1.2.2.矩阵创建和运算
1.创建矩阵
(1)数值矩阵的创建
        ◆直接输入法创建简单矩阵。
【   A=[1 2 3 4; 5 6 7 8; 9 10 11 12] 】
【   B=[-1.3,sqrt(3);(1+2)*4/5,sin(5);exp(2),6] 】
(2)符号矩阵的创建
       ◆
【   syms a11 a12 a13 a14 a21 a22 a23 a24 a31 a32 a33 a34 …
        b11 b12 b13 b14 b21 b22 b23 b24 b31 b32 b33 b34
A1=[a11 a12 a13 a14 ;a21 a22 a23 a24; a31 a32 a33 a34],
B1=[b11 b12 b13 b14 ;b21 b22 b23 b24; b31 b32 b33 b34]          】 
2.矩阵的运算
        
【   C=A1+B1,D=A1-B1  】
       
【     syms c
  cA=c*A1  】
       
【   C=A1*B1   】
{    ??? Error using ==> sym/mtimes,  Inner matrix dimensions must agree.    }
       
【     A2=A1(:,1:3), B1  】
【  G=A2*B1        】
【   g11=A2(1,:)*B1(:,1)  】
        【    A,   A_trans=A'   】
       
【   H=[1 2 3 ; 2 1 0 ; 1 2 3 ], K=[1 2 3 ; 2 1 0 ; 2 3 1]
h_det=det(H), k_det=det(K),H_inv=inv(H),K_inv=K^-1               】
    
【      A=[3 0 1; 1 1 0;0 1 4];
   B=inv(A-2*eye(3))*A, B=(A-2*eye(3))\A    】
3.分块矩阵:矩阵的裁剪、分割、修改与抽取
(1)
【    A=[1 0 1 1 2;0 1 -1 2 3;3 0 5 1 0;2 3 1 2 1], vr=[1,3];vc=[1,3];
A1=A(vr,vc)       %取出A的1、3行和1、3列的交叉处元素构成新矩阵A1 】
     ◆将上面的矩阵A分为四块,并把它们赋值到矩阵B中,观察运行后的结果。
【   A11=A(1:2,1:2),A12=A(1:2,3:5),A21=A(3:4,1:2),A22=A(3:4,3:5)
B=[A11 A12;A21 A22]           】
(2)矩阵的修改和提取
        ◆  【   A=[1 0 1 1 2;0 1 -1 2 3;3 0 5 1 0;2 3 1 2 1]
  A(1,:)=[0 0 0 0 0];       A                  】
       ◆ 观察:
【    B(:,[2,4])=[ ]     %删除矩阵B的第2、4列   】
(3)矩阵元素的抽取
4.生成特殊矩阵
       。
        ◆
【   y1=rand(1,5), y2=rand(1,5),
rand('seed',3), x1=rand(1,5),  rand('seed',3), x2=rand(1,5)  】
5. 常用矩阵函数
6. 数据的简单分析
        ◆
【      rand('seed',1);A=rand(3,6),
 Asort=sort(A), Amax=max(A), Asum=sum(A)  】
1.2.3  Matlab工作环境和编程
2.Matlab的基本设计
1.3应用、思考与练习
1.3.1  关系矩阵
1.3.2 投入产出
1.3.3 循环比赛的名次
  【    A=[0 1 1 0; 0 0 1 1; 0 0 0 1; 1 0 0 0],
     e=ones(4,1); c=A*e;  
      s=c'                              】

★ 画矩阵结构图的gplot指令。
       ◆(3)        
【      clf, A=[0 1 1 0;0 0 1 1;0 0 0 1;1 0 0 0];  xy=[0 1;0 0;-1 –0.5;1 –0.5];
   graphy_plot(A,xy,1,0.5),  % gplot(A,xy)   】
1.3.4  参考程序
graphy_plot.m
 【  function y=graphy_plot(A,xy,l,p)
       %画矩阵的有向结构图。 A为邻接矩阵,xy为顶点坐标,l控制参数,l=0,画无向图;    
       %l~=0,画有向图。p为控制箭头大小的参数。
a=-max(abs(xy(:,1)))*1.1;b=max(abs(xy(:,1)))*1.1;
c=-max(abs(xy(:,2)))*1.1;d=max(abs(xy(:,2)))*1.1;
if l=0
   gplot(A,xy),axis([a b c d]),hold on,
elseif l~=0
   U=[];V=[];X=[];Y=[];
   n=length(A(:,1)) ;
   for i=1:n
      k=find(A(i,:)~=0);
      m=length(k);
      if(m~=0)
         for j=1:m
            u(1)=(xy(k(j),1)-xy(i,1)); v(1)=(xy(k(j),2)-xy(i,2));
            u(2)=eps;     v(2)=eps;     U=[u;U];V=[v;V];
            X=[[xy(i,1) xy(k(j),1)];X]; Y=[[xy(i,2) xy(k(j),2)];Y];
          end
      text(xy(i,1),xy(i,2),['\bullet\leftarrow\fontsize{16}\it{V}',…
      um2str(i)]);    hold on,
       end
          end
   gplot(A,xy),axis([a b c d]),hold on,
   h=quiver(X,Y,U,V,p);set(h,'color','red');hold on,
   plot(xy(:,1),xy(:,2),'k.','markersize',12),hold on,
end  , hold off               】

200多个MATLAB经典教程和MATLAB论文请查看matlab教程

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐
  • 热点推荐
  • matlab

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分