当前位置:文档之家› MATLAB程序设计基础与应用

MATLAB程序设计基础与应用

matlab基础与指导应用部分习题问题详解

作业一 4、写出完成下列操作的命令。 (1)将矩阵A第2~5行中第1,3,5列元素赋给矩阵B。>> M=[0:1:48]; >> A=reshape(M,7,7) A = 0 7 14 21 28 35 42 1 8 15 2 2 29 36 43 2 9 16 2 3 30 37 44 3 10 17 2 4 31 38 45 4 11 18 2 5 32 39 46 5 12 19 2 6 33 40 47 6 13 20 2 7 34 41 48 >> B=A(2:5,1:2:5) B = 1 15 29 2 16 30 3 17 31 4 18 32 (2)删除矩阵A的第七行元素。 >> A(7,:)=[] A = 0 7 14 21 28 35 42 1 8 15 2 2 29 36 43 2 9 16 2 3 30 37 44 3 10 17 2 4 31 38 45 4 11 18 2 5 32 39 46 5 12 19 2 6 33 40 4 7 (3)将矩阵A的每个元素值加30。 >> A=A+30 A = 30 37 44 51 58 65 72 31 38 45 52 59 66 73 32 39 46 53 60 67 74

33 40 47 54 61 68 75 34 41 48 55 62 69 76 35 42 49 56 63 70 77 (4求矩阵A的大小和维素。 sizeA = size(A) dA = ndims(A) sizeA = 6 7 dA = 2 (5)将向量t的0元素用机器零来代替。 >> t=[1 2 3 4 0 5]; t = 1 2 3 4 0 5 >> find(t==0) ans = 5 >> t(5)=eps t = 1.0000 2.0000 3.0000 4.0000 0.0000 5.0000 (6)将含有12个元素的向量x转换成3*4矩阵。 >> x=[0:11] x = 0 1 2 3 4 5 6 7 8 9 10 11 >> y=reshape(x,3,4) y =

《MATLAB程序设计与应用(刘卫国)》(第二版) 答案

《MATLAB程序设计与应用(刘卫国)》(第二版)实验一MATLAB运算基础 1.(1) z1=2*sin(pi*85/180)/(1+exp(2)) (2)x=[2,1+2i;-0.45,5]; z2=log(x+sqrt(1+x.^2))/2 (3)a=-3.0:0.1:3.0; z3=0.5*(exp(0.3*a)-exp(-0.3*a)).*sin(a+0.3)+log((0.3+a)/2) (4)t=0:0.5:2.5; z4=(t>=0&t<1).*t.^2+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3).*(t.^2-2*t+1) 2. A=[12,34,-4;34,7,87;3,65,7]; B=[1,3,-1;2,0,3;3,-2,7]; (1)a=A+6*B b=A-B+eye(size(A)) %I=eye(size(A)) (2)c=A*B d=A.*B (3)e=A^3 f=A.^3 (4)g=A/B h=B\A (5)m=[A,B] n=[A([1,3],:);B^2] 3. A=[1,2,3,4,5;6,7,8,9,10;11,12,13,14,15;16,17,18,19,20;21,22,23,24,25]; B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11]; (1)C=A*B (2)D=C(3:end,2:end) 4.(1) a=100:999; b=rem(a,21)==0; c=find(b); d=length(c) (2)ch='Just as Bianhaiman said,Xiehong is ...'; e=find(ch>='A'&ch<='Z'); ch(e)=[] 实验二 MATLAB矩阵分析与处理 1.E=eye(3);

MATLAB基础及应用实验指导书

MATLAB基础及应用实验指导书

MATLAB基础及应用课程实验指导书 实验一软件环境和基本操作熟悉 一、实验目的 ①熟悉MATLAB 主界面,并学会简单的菜单操作。 ②学会简单的矩阵输入与信号输入。 ③掌握部分绘图函数。 二、实验内容 熟悉MATLAB操作环境,通过简单操作熟悉MATLAB的基本使用方法。 三、实验要求与步骤 1、用户第一次使用MATLAB 时,建议首先在屏幕上键入demo 命令,它将启动MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。也可以键入help 进行进一步了解。 MATLAB 启动界面如图所示: MATLAB 语言最基本的赋值语句结构为:变量名列表= 表达式。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“= ”省略,则ans 变量将自动建立,例如键入:1900/81 ,得到输出结果:ans =23.4568 。 MATLAB 中变量命名的原则要求必须以英文字母开头,文件夹名字中可以

还包括、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的。这种规则包括将来为自己编写的脚本文件、函数文件命名以及为使用的变量命名也应遵循这个规则。 2、用户工作目录和当前目录的建立和设置 1)为管理方便,每个用户在使用MATLAB 前,尽量为自己建立一个专门的工作目录,即“用户目录”,用来存放自己创建应用文件。例如首先打开资源管理器,在E 驱动器下可以根据自己喜好建立一个新文件夹,但应注意:该文件夹必须以英文开头,文件夹名字中可以包括字母、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的,这与MATLAB 中为变量和文件名命名原则是一致的。尽管MATLAB\work 允许用户存放用户文件,但最好把它仅作为临时工作目录来使用。 2)为了用户运行方便,在开始工作前可把用户定义的目录设置为当前目录,方法是可直接在MATLAB 命令窗口桌面上方通过目录设置栏来实现。 3)把自己的工作目录加到MATLAB 搜索路径上,这样可以在任何情况下方便地调用自己的编写文件。MATLAB 工作时,基本搜索过程为:首先在工作空间,即MATLAB 内存中进行检查,看输入的指令是不是变量;如不是,则检查输入指令是不是内建函数(比如sin 函数等);如不是,则在当前目录上,检查是否有与输入指令相同的M 文件存在;如还没有,则在MATLAB 定义的搜索路径其他目录中,检查是否有该M 文件存在。设置方法是通过File 菜单下设置路径对话框进行。 3、熟悉简单的矩阵输入 1)从屏幕上输入矩阵A=[1 2 3 ;4 5 6;7 8 9] 回车 A=[1,2,3;4,5,6;7,8,9] 回车 观察输出结果。 2)试用回车代替分号,观察输出结果。 3)输入size(A) ,观察结果。 4)输入矩阵B=[9,8,7;6,5,4;3,2,1];回车 输入矩阵C=[4,5,6;7,8,9;1,2,3];回车,然后分别键入 A B C 回车观察结果。 5)选择File | new 菜单中的M-file ,输入B=[9,8,7;6,5,4;3,2,1] ;保存为

Matlab编程与应用习题和一些参考答案

Matlab 上机实验一、二 3.求下列联立方程的解???????=+-+-=-+=++-=--+4 1025695842475412743w z y x w z x w z y x w z y x >> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10]; >> b=[4;4;9;4]; >> c=a\b 4.设???? ??????------=81272956313841A ,??????????-----=793183262345B ,求C1=A*B’;C2=A’*B;C3=A.*B,并求上述所有方阵的逆阵。 >> A=[1 4 8 13;-3 6 -5 -9;2 -7 -12 -8]; >> B=[5 4 3 -2;6 -2 3 -8;-1 3 -9 7]; >> C1=A*B' >> C2=A'*B >> C3=A.*B >> inv(C1) >> inv(C2) >> inv(C3) 5.设 ?? ????++=)1(sin 35.0cos 2x x x y ,把x=0~2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。 >> x=linspace(0,2*pi,101); >> y=cos(x)*(0.5+(1+x.^2)\3*sin(x)); >> plot(x,y,'r') 6.产生8×6阶的正态分布随机数矩阵R1, 求其各列的平均值和均方差。并求该矩阵全体数的平均值和均方差。 (mean var ) a=randn(8,6) mean(a) var(a) k=mean(a) k1=mean(k) i=ones(8,6) i1=i*k1 i2=a-i1 i3=i2.*i2 g=mean(i3) g2=mean(g)

刘卫国版MATLAB程序设计与应用课后实验六八九

实验六 高层绘图操作 %第一题: 程序代码如下: x=linspace(0,2*pi,101); y=(0.5+3*sin(x)./(1+x.^2)).*cos(x); plot(x,y) 01234567 -1 -0.5 0.5 1 1.5 %第二题: %(1) 程序代码如下: x=linspace(-2*pi,2*pi,100); y1=x.^2; y2=cos(2*x); y3=y1.*y2; plot(x,y1,'b-',x,y2,'r:',x,y3,'y--'); text(4,16,'\leftarrow y1=x^2'); text(6*pi/4,-1,'\downarrow y2=cos(2*x)'); text(-1.5*pi,-2.25*pi*pi,'\uparrow y3=y1*y2');

-8 -6 -4 -2 2 4 6 8 -30-20 -10 10 20 30 40 %(2) 程序代码如下: x=linspace(-2*pi,2*pi,100); y1=x.^2; y2=cos(2*x); y3=y1.*y2; subplot(1,3,1);%分区 plot(x,y1); title('y1=x^2');%设置标题 subplot(1,3,2); plot(x,y2); title('y2=cos(2*x)'); subplot(1,3,3); plot(x,y3); title('y3=x^2*cos(2*x)');

-10 10 0510 15202530 35 40y1=x 2 -10 10 -1-0.8 -0.6 -0.4-0.200.20.4 0.6 0.8 1y2=cos(2*x) -10 10 -30-20 -10 10 20 30 40 y3=x 2*cos(2*x) %(3) 程序代码如下: x=linspace(-2*pi,2*pi,20); y1=x.^2; subplot(2,2,1);%分区 bar(x,y1); title('y1=x^2的条形图');%设置标题 subplot(2,2,2); stairs(x,y1); title('y1=x^2的阶梯图'); subplot(2,2,3); stem(x,y1); title('y1=x^2的杆图'); subplot(2,2,4); fill(x,y1,'r');%如果少了'r'则会出错 title('y1=x^2的填充图'); %其他的函数照样做。

matlab程序设计与应用第二版习题答案

matlab程序设计与应用第二版习题答案【篇一:matlab程序设计与应用(第二版)实验答案】 %实验一 matlab运算基础 %第1题 %(1) z1=2*sin(85*pi/180)/(1+exp(2)) %(2) x=[2,1+2i;-0.45,5]; z2=0.5*log(x+sqrt(1+x.^2)) %(3) a=-3.0:0.1:3.0; z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log((0.3+a)/2) %(4) t=0:0.5:2.5; z4=t.^2.*(t=0t1)+(t.^2-1).*(t=1t2)+(t.^2-2*t+1).*(t=2t3) %第2题 a=[12 34 -4;34 7 87;3 65 7]; b=[1 3 -1;2 0 3;3 -2 7]; a+6*b a-b+eye(size(a)) a*b a.*b a^3 a.^3 a/b b\a [a,b] [a([1,3],:);b^2] %第3题 a=[1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25] b=[3 0 16;17 -6 9;0 23 -4;9 7 0;4 13 11] c=a*b f=size(c) d=c(f(1)-2:f(1),f(2)-1:f(2)) whos %第4题 %(1):

a=100:999; b=rem(a,21); c=length(find(b==0)) %(2): a=lsdhksdlkklsdkl; k=find(a=aa=z); a(k)=[] %实验二 matlab矩阵分析与处理 %第1题 e=eye(3); r=rand(3,2); o=zeros(2,3); s=diag([2,3]); a=[e,r;o,s]; a^2 b=[e,(r+r*s);o,s^2] %第2题 h=hilb(5) p=pascal(5) hh=det(h) hp=det(p) th=cond(h) tp=cond(p) %第3题 a=fix(10*rand(5)) h=det(a) trace=trace(a) rank=rank(a) norm=norm(a) %第4题 a=[-29,6,18;20,5,12;-8,8,5] [v,d]=eig(a) %数学意义略 %第5题方法一 %(1): a=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6]; b=[0.95,0.67,0.52]; x=inv(a)*b %(2):

MATLAB基础及应用论文

题目 : MATLAB 语言多项式计算的分析与概述 摘要 :数值计算在科学研究与工程应用中有着十分广泛的应用,MATLAB 向我们提供 了标准的多项式的常用函数,包括求根、相乘、相除等。这些功能在进行现代数字信号处理与分析时非常有用。本文主要通过示例的形式分析与概述MATLAB 多项式计算的基本内容。 关键词 : 多项式 ;运算 ; 函数 ; 拟合 ; MATLAB 。 一、 引言 : MATLAB 是由MATH WORKS 公司推出的一种面向科学与工程的计算软件。 如今MATLAB 语言发展速度非常快,涉及十分广阔,本文主要讨论MATLAB 多项式的计 算,可谓MATLAB 的冰山一角。读者若要了解MATLAB 语言的更多知识还应多读多看他人著作。 二、 多项式计算 : 1,多项式的创建方法 : 在MATLAB 里:多项式由一个行向量表示,它的系数是按降序排列。 例如: 由1×N 的向量 表示 多项式,如用poly2sym()可以查看这个多项式。 (1)直接输入法 在MATLAB 命令窗口中直接输入多项式的系数矢量,然后利用转换函数poly2sym 将多项式由系数矢量形式转换为符号新式。 (2)指令P=poly(AR)法 若AR 是方阵,多项式P 是该方阵的特征多项式 若AR=[a 1, a 2,…,a n-1,a n ],则AR 的元素认为是多项式P 的根 如果A 为二维矩阵, poly(A)给出A 的特征多项式。如果A 为一维矩阵, poly(A)表示由A 的元素为多项式的根所确定的多项式。 【例1】产生多项式的方法。 clear %方法一(由多项式的系数确定的多项式) p=[1 -2 3]%直接给出多项式p poly2sym(p)%给出p 多项式的表达式 %方法二(由矩阵所确定的多项式) a=[1 2;-2 4] ] ..[210n a a a a p =n n n n n a x a x a x a P ++++=-- (22110)

MATLAB基础及其应用教程周开利邓春晖课后答案

第三章习题及参考答案 解答: >> p=[1 -1 -1]; >> roots(p) ans = -0.6180 1.6180 解答: 取n=5,m=61 >> x=linspace(0,2*pi,5); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on

分段线性和三次样条插值方法与精确值之差取n=11,m=61 >> x=linspace(0,2*pi,11); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on 分段线性和三次样条插值方法与精确值之差

解答: >> x=[0,300,600,1000,1500,2000]; >> y=[0.9689,0.9322,0.8969,0.8519,0.7989,0.7491]; >> xi=0:100:2000; >> y0=1.0332*exp(-(xi+500)/7756); >> y1=interp1(x,y,xi,'spline'); >> p3=polyfit(x,y,3); >> y3=polyval(p3,xi); >> subplot(2,1,1);plot(xi,y0,'o',xi,y1,xi,y3,'-.'); >> subplot(2,1,2);plot(xi,y1-y0,xi,y3-y0);grid on 插值和拟合方法相比较,都合理,误差也相近。 解答: 梯形法积分 >> x=-3:0.01:3;

matlab基础与应用教程答案

8-1建立一个图形窗口,使之背景颜色为红色,并在窗口上保留原有的菜单项,而且在按下鼠标左键之后显示出Left Button Pressed 字样。 本体程序: clc; hf=figure('color','r','windowbuttondownfcn','axis off;text(0.1,0.5,''Left Button Pressed'',''fontsize'',30)') 运行结果: hf = 1 8-3利用图形对象绘制下列曲线,要求先利用默认属性绘制曲线,然后通过图形句柄操作来改变曲线的颜色、线型和线宽,并利用文字对象给曲线添加文字标注。 (1)2)cos(2.0+=-x e y x clc; x=0:5*pi; y=exp(-0.2*x).*cos(x)+2; h=plot(x,y); set(h,'Color',[1,0,0],'LineStyle',':','LineWidth',2);

(2)?????==325t y t x 程序: t=0:2:100; x=t.*t; y=5*t.^3; hf=plot(x,y); set(hf,'color','b','linestyle',':','marker','p','linewidth',0.3);

8-4利用图形对象绘制下列三维图形,要求与上题相同。 (1)?? ???===t z t y t x sin cos 程序: t=0:0.1:2*pi; x=cos(t); y=sin(t); z=t; hf=plot3(x,y,z); 运行结果:

8-5以任意位置子图形式绘制出正弦、余弦、正切和余切函数曲线。clc; x=-2*pi:0.01:2*pi; y1=sin(x); y2=cos(x); axes('Position',[0.1,0.6,0.2,0.2]) plot(x,y1); ht=get(gca,'Title');set(ht,'Color','r');title('y=sin(x)') hc=get(gca,'Children'),set(hc,'Color','b','LineWidth',1.5) axes('Position',[0.6,0.6,0.2,0.2]) plot(x,y2,'r'); ht=get(gca,'Title');set(ht,'Color','r');title('y=cos(x)') axes('Position',[0.1,0.1,0.2,0.2]) fplot('tan(x)',[-1.5,1.5]); ht=get(gca,'Title');set(ht,'Color','r');title('y=tan(x)') axes('Position',[0.6,0.1,0.2,0.2]) fplot('cot(x)',[0,1,3]); ht=get(gca,'Title');set(ht,'Color','r');title('y=cot(x)')

MATLAB程序设计与应用(第二版)

阅阅读读时时::请请选选择择““视视图图||文文档档结结构构图图””,,弹弹出出文文档档中中的的标标题题链链接接。。数学软件 MATLAB 程序设计与应用

第1章MATLAB系统环境 1.1 MATLAB概貌 1.2 MATLAB环境的准备 1.3 MATLAB操作界面 1.4 MATLAB帮助系统 自上世纪80年代以来,出现了科学计算语言,亦称数学软件。 MATLAB Mathematica Mathcad Maple LINDO LINGO 1.1 MATLAB概貌p3 MATLAB 是MATrix LABoratory(矩阵实验室)的缩写。 1984年由Math Works 公司推出,现已成为国际公认的优秀的工程应用开发环境,是影响最大,流行最广的科学计算语言。 1.1.1 MATLAB的发展

1. 从MATLAB 4.2c开始,每个版本增加了一个建造编号; 2. 例如MATLAB7.6的建造编号是R2008a。说明MATLAB7.6与MATLAB2008a是等同的; 3. 对于建造编号,正规化以后,每年出两个版本。一般来说。a是测试版,b是正式版。a是前半 年出,b是后半年出。 教材采用MATLAB7.0(R14,2004) 实验室采用MATLAB 7.8(R2009a,2009.3,汉化) 1.1.2 MATLAB的主要功能p4 ◆数值计算和符号计算功能 ◆绘图功能 ◆语言体系 ◆MATLAB工具箱 (1) 数值计算和符号计算功能 MATLAB以矩阵作为数据操作的基本单位,还提供了十分丰富的数值计算函数。 MATLAB先后和著名的符号计算语言Maple与MuPAD(从MATLAB 2008b开始使用MuPAD)相结合,使得MATLAB具有符号计算功能。 (2) 绘图功能 可以绘制二维和三维图形。 MATLAB提供了两个层次的绘图操作: ●对图形句柄进行的低层绘图操作; ●建立在低层绘图操作之上的高层绘图操作。 (3) 语言体系 MATLAB具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。 MATLAB是解释性语言,不能脱离MATLAB环境而独立运行。 (4) MATLAB工具箱 MATLAB包含两部分内容:基本部分和各种可选的工具箱。 MATLAB工具箱分为两大类:功能性工具箱和学科性工具箱。 基本部分 构成MATLAB的核心内容,也是使用和构造工具箱的基础。 功能性工具箱 主要用来扩充其符号计算功能、可视建模仿真功能及文字处理功能等。 学科性工具箱 Control System Toolbox 控制系统工具箱 Signal Processing Toolbox 信号处理工具箱 Neural Network Toolbox 神经网络工具箱 Optimization Toolbox 最优化工具箱 Financial Toolbox 金融工具箱 Statistics Toolbox 统计学工具箱 开始→工具箱 MATLAB具备很强的开放性 除内部函数外,所有MATLAB基本文件和各工具箱文件都是可读、可改的源文件,用户可通过对源文件的修改或加入自己编写的文件去构成新的专用工具箱。

MATLAB程序设计及应用(第二版)课后实验答案

。 Matlab课后实验题答案 《 实验一 MATLAB运算基础 1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。 (1) 0 12 2sin85 1 z e = + (2) 21 ln( 2 z x =,其中 212 0.455 i x + ??=?? -?? (3) 0.30.3 3 0.3 sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22 a a e e a z a a - -+ =++=--

(4) 22 42011 122123t t z t t t t t ?≤

) 3. 设有矩阵A 和B 1234 53 166789101769,11 121314150 23416171819209 7021222324254 1311A B ???? ????-??? ?????==-??? ? ???????????? (1) 求它们的乘积C 。 (2) 将矩阵C 的右下角3×2子矩阵赋给D 。 (3) 查看MATLAB 工作空间的使用情况。 4. 完成下列操作: (1) 求[100,999]之间能被21整除的数的个数。 (2) 建立一个字符串向量,删除其中的大写字母。 解:(1) 结果:

MATLAB程序设计与应用课后习题答案

西安科技大学MATLAB程序设计 专业:信息与计算科学 班级:1001班 学号:1008060129 姓名:刘仲能 2012年6月27日

实验一 2.已知: ??? ? ? ?????-= 765 3 8773443412A ,???? ? ?????--=72 3 302131 B 求下列表达式的值: (1)A+6*B 和A-B+I (其中I 为单位矩阵) (2)A*B 和A.*B (3)A^3和A.^3 (4)A/B 及B\A (5)[A,B]和 [A([1,3],:);B^2]

3.设有矩阵A 和B ????? ?? ? ????????= 2524 23 22 21 2019181716151413121110987654321A ,??????? ? ????????--=1113 4 079423096171603 B (1) 求它们的乘积 C 。 (2) 将矩阵C 的右下角3×2子矩阵赋给D 。 (3) 查看MATLAB 工作空间的使用情况 (1) (2) (3)

4.完成下列操作 (1)求[100,999]之间能被21整除的数的个数。(2)建立一个字符串向量,删除其中的大写字母。 (1)(2)

实验二 3.建立一个5×5矩阵,求它的行列式值、迹、秩和范数。 运行截图: A 矩阵的行列式值、迹、秩分别如下: 范数如下: 4.已知 ???? ? ?????--= 58 8 1252018629A 求A 的特征值及特征向量,并分析其数学意义。 运行截图:

5.下面是一个线性方程组:???? ??????= ???? ? ????????? ? ?????52.067.095.06/15 /14 /15 /14/13 /14/13/12 /1321x x x (1)求方程的解; (2)将方程右边向量元素改为0.53,在求解,并比较的变化和解的相对 变化; (3)计算系数矩阵A 的条件数并分析结论。 (2) 变大,其解中,相对未变化前的的解:x1变大,x2变小,x3变大。 (3) 由于A 矩阵的条件数很大,故当线性方程组中的b 变大时,x 也将发生很大的变

最新Matlab基础及应用的教学大纲资料

《Matlab基础及应用》教学大纲 执笔人:肖顺根课程编号: 总学时数:36学时(其中授课18学时,实验18学时) 学分:2 学分 一、本课程的地位、作用与任务: 本课程是电气工程及自动化专业基础的必修课程。是电气工程及自动化专业的重要实践性课程。通过本课程的学习,可以使得本专业学生掌握Matlab这一现代的科学计算和系统仿真语言的基本编程思想和方法,并利用Matlab对所学基础课程进行上机模拟实验和数值计算,从而通过Matlab编程实验来验证和巩固所学的数学和工程理论。 二、课程教学基本要求 MATLAB是MathWorks公司推出的一套高性能的数值计算和可视化软件,可以解决工程、科学计算和数字信号处理、通信、数学等学科中许多问题。本课程主要介绍MATLAB语言的应用环境、调试命令,各种基本命令和高级操作命令,绘图功能函数,循环和条件分支等控制流语句。课程最后简介MATLAB语言中的几个主要工具箱,为后续的专业课程提供有力的工具。本课程以讲课为主,结合上机实验,使学生通过编程实例掌握MATLAB语言的编程基础与技巧。三、先修课程的要求 《高等数学》、《线性代数》、《自动控制原理》等。 四、教学方法及建议 1、本课程是电气工程及其自动化专业的实践性基础课程,应采用多媒体教学方式,结合Matlab仿真软件进行课堂演示。力求生动有趣,并随时通过提问等方式调动学生的学习积极性。 2、MA TLAB软件在电气工程及自动化专业中的应用非常广泛和实用,应结合《自动控制原理》知识尽可能发挥MATLAB软件的功效。 五、教学要求的层次 了解Matlab 的特点; 理解Matlab 的数值计算、程序设计、绘图功能及在通信工程的科学计算和建模中的应用; 掌握Matlab语言的基本编程思想和方法。 六、教学内容、要求及学时安排 第一单元MATLAB 概述(2学时) 1. Matlab 的特点、绪论 2. Matlab 快速入门 要求:了解MATLAB的主要功能,熟悉MATLAB命令窗口及文件管理,MATLAB帮助系统。掌握命令行的输入及编辑,用户目录及搜索路径的设置。 重点和难点:命令行的输入,用户目录及搜索路径的设置 第二单元MATLAB数据和数值计算(4学时) 1.矩阵的生成 (1)标量的赋值和计算 (2)向量的赋值和计算 (3)矩阵的生成 2.数组运算 (1)数组的加法和减法运算

Matlab程序设计与应用第二版刘卫国

实验 T1: %%第一小题 z1=2*sin(85*pi/180)/(1+exp(2)) %%第二小题x=[2,1+2i;-0.45,5]; z2 %%第三小题 a=-3.0:0.1:3.0; 0.3)+log((0.3+a)/2) %%第四题 t=0:0.5:2.5 z4=(t>=0&t<1).*(t.A2)+(t>=1 &t<2).*(t 八2-1)+(t>=2&t<3).*(t.A2-2*t+1) T2: A=[12,34,-4;34,7,87;3,65,7] B=[1,3,-1;2,0,3;3,-2,7] disp ('A+6*B='); disp(A+6*B); disp('A-B+I=');disp(A-B+eye(3)); disp('A*B=');

disp(A*B); disp('A.*B='); disp(A.*B); disp('A A3='); disp(AT); disp('A.A3二'); disp(A.A3); disp('A/B='); disp(A/B); disp('B\A='); disp(B\A); disp('[A,B]='); disp([A,B]); disp('[A([1,3],:);BA2]='); disp([A([1,3],:);BA2]); T3: z=1:25; A=reshape(z,5,5)'; B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];C=A*BD=C(3:5,2:3) T4-1: a=100:999; b=find(rem(a,21)==0); c=length(b)

MATLAB程序设计与应用(第二版)实验参考答案

MATLAB程序设计与应用(第二版)实验参考答案 %实验一MATLAB运算基础 %第一题 %(1) z1=2*sin(85*pi/180)/(1+exp(2)) %(2) x=[2,1+2i;-0.45,5]; z2=0.5*log(x+sqrt(1+x.^2)) %(3) a=-3.0:0.1:3.0; z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log((0.3+a)/2) %(4) t=0:0.5:2.5; z4=t.^2.*(t>=0&t<1)+(t.^2-1).*(t>=1&t<2)+(t.^2-2*t+1).*(t>=2&t<3) %第二题 A=[12 34 -4;34 7 87;3 65 7]; B=[1 3 -1;2 0 3;3 -2 7]; A+6*B A-B+eye(size(A)) A*B A.*B A^3 A.^3 A/B B\A [A,B] [A([1,3],:);B^2] %第三题 A=[1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25] B=[3 0 16;17 -6 9;0 23 -4;9 7 0;4 13 11] C=A*B F=size(C) D=C(F(1)-2:F(1),F(2)-1:F(2)) whos %第四题 %(1): A=100:999; B=rem(A,21); C=length(find(B==0)) %(2): A='lsdhKSDLKklsdkl';

k=find(A>='A'&A<='Z'); A(k)=[] %实验二MATLAB矩阵分析与处理 %第一题 E=eye(3); R=rand(3,2); O=zeros(2,3); S=diag([2,3]); A=[E,R;O,S]; A^2 B=[E,(R+R*S);O,S^2] %第二题 H=hilb(5) P=pascal(5) Hh=det(H) Hp=det(P) Th=cond(H) Tp=cond(P) %第三题: A=fix(10*rand(5)) H=det(A) Trace=trace(A) Rank=rank(A) Norm=norm(A) %第四题: A=[-29,6,18;20,5,12;-8,8,5] [V,D]=eig(A) %数学意义略 %第五题方法一: %(1): A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6]; b=[0.95,0.67,0.52]'; x=inv(A)*b %(2): B=[0.95,0.67,0.53]'; x=inv(A)*B %(3): cond(A) %第五题方法二: A=hilb(4) A(:,1)=[] A(4,:)=[] B=[0.95,0.67,0.52]';

(完整word版)MATLAB程序设计及应用(第二版)课后实验答案

Matlab课后实验题答案 实验一 MATLAB运算基础 1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。 (1) 0 12 2sin85 1 z e = + (2) 21 ln( 2 z x =+,其中 212 0.455 i x + ??=?? -?? (3) 0.30.3 3 0.3 sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22 a a e e a z a a - -+ =++=--L (4) 2 2 4 2 01 112 2123 t t z t t t t t ?≤< ? =-≤< ? ?-+≤< ? ,其中t=0:0.5:2.5 2. 已知:

1234413134787,2033657327A B --???? ????==???? ????-???? 求下列表达式的值: (1) A+6*B 和A-B+I (其中I 为单位矩阵) (2) A*B 和A.*B (3) A^3和A.^3 (4) A/B 及B\A (5) [A,B]和[A([1,3],:);B^2] 解: 3. 设有矩阵A 和B 1234 53 166789101769,11 121314150 23416171819209 7021222324254 1311A B ???? ????-??? ?????==-??? ? ???????????? (1) 求它们的乘积C 。 (2) 将矩阵C 的右下角3×2子矩阵赋给D 。 (3) 查看MATLAB 工作空间的使用情况。

4. 完成下列操作: (1) 求[100,999]之间能被21整除的数的个数。 (2) 建立一个字符串向量,删除其中的大写字母。 解:(1) 结果: (2). 建立一个字符串向量 例如: ch='ABC123d4e56Fg9';则要求结果是: 实验二 MATLAB 矩阵分析与处理 1. 设有分块矩阵33 322322E R A O S ?????? =? ??? ,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩

MATLAB基础与应用教程 习题答案 作者 蔡旭晖 刘卫国 蔡立燕 第1-8章答案

第1章 一、思考题 4. (1) B=A(2:5,1:2:5) (2)A(7)=[] (3) A=A+30 (4)size(A) (5) t(find(t==0))=eps (6)t=reshape(x,3,4) (7)abs('matlab') (8)char(93) 5. A=[97,67,34,10;-78,75,65,5;32,5,-23,-59;0,-12,54,7] (1) B=A(1:3,:) C=A(:,1:2) D=A(2:4,3:4) E=B*C (2)A(find(A>=50 & A<=100)) 二、实验题 =-74/180*pi;y=-27/180*pi; sin(x*x+y*y)/sqrt(tan(abs(x+y)))+pi =::; exp*a).*sin(a+ =[2,4;,5]; log(x+sqrt(1+x.*x))/2 4. A=[3,54,2;34,-45,7;87,90,15];B=[1,-2,67;2,8,74;9,3,0];(1)A*B ans = 129 432 4197 7 -407 -1052

402 591 12489 A.*B ans = 3 -108 134 68 -360 518 783 270 0 (2) A^3 ans = -28917 240246 -4368 137883 -259101 27669 171333 252504 38673 A.^3 ans = 27 157464 8 39304 -91125 343 658503 729000 3375(3)A/B ans = B/A ans = (4)[A,B] ans = 3 5 4 2 1 -2 67

MATLAB基础及应用教程

第4章程序设计 在前面我们已经看到,MATLAB不但可以在命令窗直接输入命令并运行,而且还可以生成自己的程序文件,这就是我们通常说的一类以M为后缀的M文件,本章我们就来研究这类文件的形成方法。 M文件可分分为两大类,一是命令式M文件(也称为脚本文件,script),二是函数式M 文件(function)。两类文件的区别在于: (1)命令式文件可以直接运行,函数式文件不能直接运行,只能调用。 (2)命令式文件运行时没有输入输出参量,函数式文件在调用时需要进行输入输出参量设置。 (3)命令式文件运行中可以调用工作空间的数据,运行中产生的所有变量为全局变量。 (4)函数式文件不能调用工作空间的数据,运行中产生的所有变量为局部变量。命令式文件运行中产生的所有变量为全局变量,可以调用和存储到工作空间的数据。 4.1 MATLAB的程序文件-M文件 4.1.1 脚本文件(Scripts) 当我们需要在命令窗进行大量的命令集合运行时,直接从命令窗口输入比较麻烦,这时就可以将这些命令集合存放在一个脚本文件(Scripts)中,运行时只需要输入其文件名就可以自动执行这些命令集合。需要注意的是,脚本文件运行所产生的变量都驻留在MATLAB 的工作空间中,同时脚本文件也可以调用工作空间中的数据。因此,脚本文件所涉及的变量是全局变量。前几章所涉及到的M文件都是这类脚本文件。 编辑一个脚本文件可以直接在命令窗口的左上角打开编辑窗进行编辑。 4.1.2 函数文件(function) 函数式文件(function)的构成 (1)函数定义行: Function [输出参量]=gauss(输入参量) (2): 完成函数的功能。 (3)函数说明。 (4)函数行注。 从上面构成的情况看,函数式文件实际上是完成输入参量与输出参量的转换,这样的转换是由函数文件名为gauss的文件来完成的。函数体的功能必须说明清楚输入参量与输出参量的关系。函数说明是用来解释该函数的功能的,函数行注是对程序行进行说明的。上面(1)和(2)是必须的。 【例4-1】分析下面函数文件。 %一个数列,任意项等于前两项之和,输入项数可以给出这个数列

电子书_MATLAB程序设计与应用(第二版)

阅阅读读时时::请请选选择择““视视图图 || 文文档档结结构构图图””,,弹弹出出文文档档中中的的标标题题链链接接。。 数学软件 MATLAB 程序设计与应用

第1章MATLAB系统环境 1.1 MATLAB概貌 1.2 MATLAB环境的准备 1.3 MATLAB操作界面 1.4 MATLAB帮助系统 自上世纪80年代以来,出现了科学计算语言,亦称数学软件。 MATLAB Mathematica Mathcad Maple LINDO LINGO 1.1 MATLAB概貌p3 MATLAB 是MATrix LABoratory(矩阵实验室)的缩写。 1984年由Math Works 公司推出,现已成为国际公认的优秀的工程应用开发环境,是影响最大,流行最广的科学计算语言。 1.1.1 MATLAB的发展 2. 例如MATLAB7.6的建造编号是R2008a。说明MATLAB7.6与MATLAB2008a是等同的;

3. 对于建造编号,正规化以后,每年出两个版本。一般来说。a是测试版,b是正式版。a是前半 年出,b是后半年出。 教材采用MATLAB7.0(R14,2004) 实验室采用MATLAB 7.8(R2009a,2009.3,汉化) 1.1.2 MATLAB的主要功能p4 ◆数值计算和符号计算功能 ◆绘图功能 ◆语言体系 ◆MATLAB工具箱 (1) 数值计算和符号计算功能 MATLAB以矩阵作为数据操作的基本单位,还提供了十分丰富的数值计算函数。 MATLAB先后和著名的符号计算语言Maple与MuPAD(从MATLAB 2008b开始使用MuPAD)相结合,使得MATLAB具有符号计算功能。 (2) 绘图功能 可以绘制二维和三维图形。 MATLAB提供了两个层次的绘图操作: ●对图形句柄进行的低层绘图操作; ●建立在低层绘图操作之上的高层绘图操作。 (3) 语言体系 MATLAB具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。 MATLAB是解释性语言,不能脱离MATLAB环境而独立运行。 (4) MATLAB工具箱 MATLAB包含两部分内容:基本部分和各种可选的工具箱。 MATLAB工具箱分为两大类:功能性工具箱和学科性工具箱。 基本部分 构成MATLAB的核心内容,也是使用和构造工具箱的基础。 功能性工具箱 主要用来扩充其符号计算功能、可视建模仿真功能及文字处理功能等。 学科性工具箱 Control System Toolbox 控制系统工具箱 Signal Processing Toolbox 信号处理工具箱 Neural Network Toolbox 神经网络工具箱 Optimization Toolbox 最优化工具箱 Financial Toolbox 金融工具箱 Statistics Toolbox 统计学工具箱 开始→工具箱 MATLAB具备很强的开放性 除内部函数外,所有MATLAB基本文件和各工具箱文件都是可读、可改的源文件,用户可通过对源文件的修改或加入自己编写的文件去构成新的专用工具箱。

相关主题
文本预览
相关文档 最新文档