资源描述
乐以电力大律《Matlab》课内实验报告
姓名:
学号:
学院:
班级:
课程名机 Matlab语言程序设计实验题目:Matlab基础知识的综合运用
指导教师:
2013年03月22日
一、实验目的
1 .熟悉Matlab的工作环境;
2 .掌握Matlab中创立矩阵的方法和矩阵的运算;
3 .掌握Matlab中图形的绘制;
4 .掌握Matlab的多项式函数;
5 .掌握Matlab的数据分析函数。
二、实验内容和结果71
2sin(- + 2)-0.4.计算s = ——5+ 4;保存s;清除工作空间中的变量s;将保存的s读
cos⑹+ 4取到工作空间;清空命令窗口。
» s=((2*sin((pi/5)+2)-0.4)/(cos(6)+4))+4» save datal s
» clear»load datal
» clc.生成随机逻辑矩阵A和对矩阵4和8作与、或、非以及异或运算,并将结 果分别赋给四个变量名;选择其中两个测试逻辑函数any和all。
> > A=rand(4)>0. 6> B=rand(4) <0. 5
> > y=A&B» h=A|B
» f=~A»
> > yh=xor (A, B)> la=any(f)
» lal=all(f)3.用plot命令绘制函数y(%) =
3.用plot命令绘制函数y(%) =
x2 * sh(x)
ln(x2) + l
的图像(注意定义域)。加标题,x轴y
轴标注,在点(2, y(2))处用text命令加标注。
> fun=inline ('x・ 2. *sinh (x). / (log (x. 2)+1)')> x=linspace (-2, 3, 40);
> > y=fun (x);> plot (x, y,,~r )
> > plot (x, y, ')» title('x-2*sh(x)/(ln(x12)+1)的图像')
» xlabel('X')> ylabel (J Y')
» text (2, fun(2)/ (2, y (2))')sh(x)/(ln(x2)+i)的图像
sh(x)/(ln(x2)+i)的图像
30
25
20
15
(2, y ( 2)
5
0
-5
> 10
1.522.53
-2-1.5-1-0.500.5
X
-10
4,将绘图窗口分成两行两列四个子窗口,第一个窗口用mesh绘制z =
X = ZCOS”) 第二个窗口用surf绘制z = J,+y2 ,第三个窗口用plot3绘制< y = /sinQ),z = 2t
第四个窗口用ezplot绘制/ + y2 =]。
> > [x,y]=meshgrid(-1:0. 05:1, -1:0. 05:1);-2-
> > z=sqrt (x. 2+y. 2);> subplot (221)
> > mesh (x, y, z)> title ('用 mesh 绘制 z=sqrt (x 2+y 2)的图像')
» subplot (222)> surf (x, y, z)
> > title('用 surf 绘制 z二sqrt (x^2+/2)的图像')> t=linspace("pi/2, pi/2, 40);
> > x=t. Mos (t);> y=t. *sin(t);
> > z=2. *t;> subplot (223)
> > plot3 (x, y, z)> title('用plot3绘制的图像')
» subplot (224)> ezplot (J x―2+y.八2T')
> > title(,用ezplot绘制x八2+y八2=1的图像')用 mesh绘制 z=sqrt(x2+y2)0<]图像
用 mesh绘制 z=sqrt(x2+y2)0<]图像
用su他会制z=sqrt(x2+y2)0<J图像
用plot3绘制的图像
5.用plot在[-2乃,21]内绘制y = xsin(x)的图形;利用hold命令保持绘图窗口;
在相同的范围内绘制y = exp(x)的图形。
-3-
> > x=linspace(-2*pi, 2*pi, 40);> yl=x. *sin(x);
» y2=exp(x);> plot (x, yl, ')
> > hold on> plot (x, y2,' +-k')
> > legend (' y=x. *sin (x)' , ' y=exp (x)')» axis ([-8 8 -8 20])
6.用inline定义函数y = xe~x sin(x);并用plot绘制其在[-肛乃]上的图像。
> > x=linspace(-pi, pi, 20);> fun=inline(' x. *exp(-x)・ *sin(x)’)
> > y=fun (x);> plot (x, y,,*一r )
-4-
20
18
16
14
12
10
8
6
4
2
0
•
•
•
.
•
4-
ILLLL1
1 -
•
•
•
•
•
*
•
•
■
•
■
•
r
_—
二J L
0
1
234
-4-3-2-1
7.生成字符串'e=(e的数值)'。
> > fun二inline ('exp (x)')> x=l
> > e=fun(l)> strl=num2str (e)
> > str2='e='> str=strcat(str2, strl)
8 .比拟4个字符串比拟函数。
> > strl=,sdDhFGGhnjdfFFdsaFdJajds,» str2= SdDhFGGhNjdfFfdsaFdjajds,
» str3= jchfJDbjZBDZdHDFJdhsjdfvjdhZDHF,» str4=JJchfJDbjZBDFDhfchjHGFDfgfgCJhHZvh,
> > l=strcmp(strl,str2)> ll=strcmpi (strl,str2)
> > lll=strncmp(str3,str4,11)> lll=strncmpi (str3,str4,11)
9 .求多项式函数p(x) = 2/ +3/ +4的根,求以得到的根向量为根的多项式;求p(x)的导函数系数向量ql和以5为常数项的原函数系数向量q2 ;在同一绘图
-5-窗口中用plot绘制p(x), ql(x), q2(x)的图像,并加图例。
» p=[2 3 0 4];> r=roots(p)
> > pl=poly(r)> ql=polyder(p)
> > q2=polyint(p, 5)> x=linspace(-10, 20, 50);
> > y=2. *x.-3+3. *x.八2+4;> yl=6. *x.12+6. *x+0;
> > y2=0. 5000. *x.-4+1. 0000. *x.-3+4. 0000. *x+5・ 0000;> plot (x, y,,*-r' , x, yl,,o—b,, x, y2, ' h-. k,)
» legend (' y=p (x)' , ' yl=ql (x)' , ' y2=q2 (x)')
10.输入向量x,按从大到小的顺序排序。
» x=[5 689239159 7]>> y=sort(x)
>> yl=fliplr(y)-6-
11 .找出数组A =
—4 — 2 0
-3 —1 1
中所有绝对值大于3的元素。
» a=[-4 -2 0 2 4;-3-l 1 3 5];» b=A>3|A<(-3)
b 二10001
00001» d=A(l,l);
» c=A(:,5);» B=[d;c]
三、思考及总结
在上机运行时才发现原本拥有的理论信心一点一点的散去,好多 细节都要去查笔记,还有一些直接没有头绪。
通过这次试验,我觉得在学习MATLAB中,不能只注重理论,最 重要的就应该是上机演练,日后,我会多多上机做题,相信一定会学 好 MATLAB 的。
谢谢老师
-7-
展开阅读全文