《数学实验与Matlab》程序

上传人:ldj****22 文档编号:26275247 上传时间:2017-12-24 格式:PDF 页数:74 大小:581.76KB
返回 下载 相关 举报
《数学实验与Matlab》程序_第1页
第1页 / 共74页
《数学实验与Matlab》程序_第2页
第2页 / 共74页
《数学实验与Matlab》程序_第3页
第3页 / 共74页
《数学实验与Matlab》程序_第4页
第4页 / 共74页
《数学实验与Matlab》程序_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《《数学实验与Matlab》程序》由会员分享,可在线阅读,更多相关《《数学实验与Matlab》程序(74页珍藏版)》请在金锄头文库上搜索。

1、数学实验与 Matlab 11数学实验与 Matlab程序 周晓阳 华中科技大学数学系 我将程序按书中的顺序排列,这样便于读者利用。 本书程序均通过了调式。可直接拷贝到命令窗口运行或编制M 文件运行。 如出现问题,可能是中英文标点的缘故(排版有可能使用了中文标点) ,请将中文标点换为英文标点试试。 数学实验与 Matlab 22实验矩阵运算与 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 】 【

2、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,-

3、,x,y2,.-) 】 1. 向量的创建 直接输入向量。 【 x1=1 2 4,x2=1,2,1,x3=x1 】 冒号创建向量 。 【 x1=3.4:6.7 x2=3.4:2:6.7 数学实验与 Matlab 33x3=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=-

4、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

5、 cA=c*A1 】【 C=A1*B1 】 数学实验与 Matlab 44 ? 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

6、 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)矩

7、阵的修改和提取 【 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列 】 数学实验与 Matlab 55( 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), Am

8、ax=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 】 数学实验与 Matlab 66 画矩阵结构图的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,

9、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=;

10、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),bulletleftarrowfontsize16itV, um2str(i); hold on, end e

11、nd gplot(A,xy),axis(a b c d),hold on, h=quiver(X,Y,U,V,p);set(h,color,red);hold on, 数学实验与 Matlab 77plot(xy(:,1),xy(:,2),k.,markersize,12),hold on, end , hold off 】 实验函数的可视化与 Matlab 作 2.1 实验与观察:函数的可视化 2.1.1 Matlab 二维绘图命令 1.周期函数与线性 p周期函数 观察 : 【 clf, x=linspace(0,8*pi,100); F=inline(sin(x+cos(x+sin(x);

12、 y1=sin(x+cos(x+sin(x); y2=0.2*x+sin(x+cos(x+sin(x); plot(x,y1,k:,x,y2,k-) legend(sin(x+cos(x+sin(x),0.2x+sin(x+cos(x+sin(x),2) 】 2. plot 指令:绘制直角坐标的二维曲线 3. 图形的属性设置和屏幕控制 【 h=plot(0:0.1:2*pi,sin(0:0.1:2*pi); grid on set(h,LineWidth,5,color,red); set(gca,GridLineStyle,-,fontsize,16) 】 设置y 坐标的刻度并加以说明,并改

13、变字体的大小。 【 h=plot(0:0.1:2*pi,sin(0:0.1:2*pi);grid on, set(gca,ytick,-1 -0.5 0 0.5 1), set(gca,yticklabel,a|b|c|d|e), set(gca,fontsize,20) 】 4. 文字标注指令 【 plot(x,y1,b,x,y2,k-) , 数学实验与 Matlab 88set(gca,fontsize,15,fontname,times New Roman), %设置轴对象的字体为 times % New Roman,字体的大小为 15 title( itPeroid and linear peroid function); %加标题,注意文字用单引号 加上 %斜杠 后可输入不同的设置,例如 it表示花括号里的文字为斜体;如果有多项设置, %则可用 连续输入。 xlabel(x from 0 to 8*pi itt); ylabel(ity); %说明坐标轴 text(x(49),y1(50)-0.4,fontsize15bulletleftarrowThe period function itf(x);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号