matlab上机练习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一次上机:基础准备及入门
2.1 指令窗运行入门
2.1.1 最简单的计算器使用法
【例2.5.1-1】求23)]47(212[÷-⨯+的算术运算结果。 (1)用键盘在MATLAB 指令窗中输入以下内容 >> (12+2*(7-4))/3^2
(2)在上述表达式输入完成后,按【Enter 】键,该就指令被执行。 (3)在指令执行后,MATLAB 指令窗中将显示以下结果。 ans = 2
【例2.5.1-2】简单矩阵⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡=987654321A 的输入步骤。
(1)在键盘上输入下列内容
A = [1,2,3; 4,5,6; 7,8,9]
(2)按【Enter 】键,指令被执行。
(3)在指令执行后,MATLAB 指令窗中将显示以下结果: A =
1 2 3 4 5 6 7 8 9
【例2.5.1-3】矩阵的分行输入 A=[1,2,3 4,5,6 7,8,9]
(以下是显示结果) A =
1 2 3 4 5 6 7 8 9
【例2.5.1-4】指令的续行输入(以下格式在除Notebook 外的MATLAB 环境中可运行)
S = 1 – 1/2 + 1/3 –1/4 + 1/5 – 1/6 ... + 1/7 – 1/8 S =
2.1.2 数值、变量和表达式 2.1.2.1 复数和复数矩阵
【例2.5.2.5-1】复数i
e z i z i z 6
3212,21,43π
=+=+=表达,及计算3
2
1z z z z =。 (1)经典教科书的直角坐标表示法 z1= 3 + 4i z1 =
+
(2)采用运算符构成的直角坐标表示法和极坐标表示法
z2 = 1 + 2 * i %运算符构成的直角坐标表示法 z3=2*exp(i*pi/6) %运算符构成的极坐标表示法 z=z1*z2/z3 z2 = + z3 = + z =
+
【例2.5.2.5-2】复数矩阵的生成及运算 A=[1,3;2,4]-[5,8;6,9]*i
B=[1+5i,2+6i;3+8*i,4+9*i] C=A*B A =
- - - - B =
+ +
+ + C =
+002 *
- +
【例2.5.2.5-3】求上例复数矩阵C 的实部、虚部、模和相角。 C_real=real(C) C_imag=imag(C)
C_magnitude=abs(C)
C_phase=angle(C)*180/pi %以度为单位计算相角 C_real =
99 116 116 137 C_imag =
0 -9 9 0 C_magnitude =
C_phase =
0 0
2.1.3 计算结果的图形表示
【例2.5.3-1】画出衰减振荡曲线t e y t 3sin 3
-=及其它的包络线3
0t e y -
=。
t 的取值范围是]4,0[π。
t=0:pi/50:4*pi; %定义自变量取值数组
y0=exp(-t/3); %计算与自变量相应的y0数组
y=exp(-t/3).*sin(3*t); %计算与自变量相应的y 数组 plot(t,y,'-r',t,y0,':b',t,-y0,':b') %用不同颜色、线型绘制曲线 grid %在“坐标纸”画小方格
【例2.5.3-2】画出2
2
22)
sin(y
x y x z ++=
所表示的三维曲面。y x ,的取值范围是
]8,8[-。
clear;x=-8::8; %定义自变量x 的一维刻度向量 y=x'; %定义自变量y 的一维刻度向量
X=ones(size(y))*x; %计算自变量平面上取值点x 坐标的二维数组 Y=y*ones(size(x)); %计算自变量平面上取值点y 坐标的二维数组
R=sqrt(X.^2+Y.^2)+eps; %计算中间变量2
2y x R +=
<5>
Z=sin(R)./R;
%计算与自变量二维数组相应的函数值R
R z sin =
<6>
mesh(Z); %绘制三维网格图
colormap(hot)
%指定网格图用hot 色图绘制
图 2.5.3-2 三维网线图
2.2 控制指令窗的指令、操作和标点
2.2.1 指令行的编辑
【例2.6.3-1】指令行操作过程示例。
(1)若用户想计算5
1)
3.0sin(21+=πy 的值,那末用户应依次键入以下字符
y1=2*sin*pi)/(1+sqrt(5))
(2)按【Enter 】键,该指令便被执行,并给出以下结果 y1 =
在以上操作和计算结束后,操作指令和计算结果都记录在MATLAB 工作内存中。因此,假如用户希望调回前面输入的指令重新运行,或希望对前面输入的指令加以修改后再运行,那末只要反复按动键盘上的箭头键,就可从内存中把以前输入的那指令调回到当前行,以供重新运行或修改后运行。新的计算结果,只可能被此后运行的指令所使用,而绝不会影响以前生成的(非同名)变量的“内容”。 (3)利用指令回调,进行新的计算。
若又想计算5
1)
3.0cos(22+=πy ,用户当然可以象前一个算例那样,通过键
盘把相应字符一个一个“敲入”。但也可以较方便地用操作键获得该指令,具体办法是:先用?键调回已输入过的指令 y1=2*sin*pi)/(1+sqrt(5)) ;然后移动光标,把y1改成y2;把 sin 改成 cos 便可。即得 y2=2*cos*pi)/(1+sqrt(5)) y2 =