MATLAB实验

更新时间:2024-05-02 14:33:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验一 MATLAB操作基础

一、 实验目的

1、熟悉MATLAB的操作环境及基本操作方法。 2、掌握MATLAB的搜索路径及其设置方法。 3、熟悉MATLAB帮助信息的查阅方法。

二、实验内容

1、先建立自己的工作目录,再将自己的工作目录设置到MATLAB搜索路径下,再试验用help命令能否查询到自己的工作目录。

2、在MATLAB环境下验证例1-1至1-4,并完成以下题目: (1)绘制右图所示图形

10.8(2)求38

3、利用MATLAB的帮助功能分别查询inv,plot、max、round等函数的功能及用法。

4、在工作空间建立一个变量a ,同时在当前目录下建立一个M文件:a.m,试在命令窗口输入a,观察结果,并解释原因。

0.60.40.20-0.2-0.4-0.6-0.8-100.10.20.30.40.50.60.70.80.91三、思考练习

1、help命令和lookfor命令有什么区别?

2、什么是工作空间?假定有变量A与B存在于工作空间中,如何用命令保存这两个变量?下次重新进入MATLAB后,又如何装载这两个变量?

实验二 MATLAB数值计算

一、 实验目的

1、掌握MATLAB变量和数据操作 2、掌握MATLAB矩阵及其操作 3、掌握MATLAB矩阵运算

二、实验内容

1、求下列表达示的值

(1)w?2?(1?0.34245?10?6)

2?a?b?c?e2??abc,其中a=3.5 ,b=5 ,c=-9.8 tan(b?c)?a(2)x?21?3i1(3)z?e2tln(t?1?t2),其中t?[]

25?0.65??15?4??83?1??,B??253? 0782、已知A?????????3617????320??求下列表达式的值:

(1)A+6B和A2?B?I(I为单位矩阵) (2)A*B、A.*B和B*A

(3)A/B及B\\A

(4)[A,B] 和[A([1,3],:) ; B^2]

3、建立一个均值为3,方差为1的10*10的正态分布随机矩阵,并将矩阵中大于0的元素置1,小于0的置0.

4、当A?[34,NaN,Inf,?Inf,?pi,eps,0]时,求函数all(A),any(A), isnan(A),isinf(A),isfinite(A)的值。

5、已知A=[1 2 3 4 5 ;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20],对其进行如下操作

(1)取出A的第2,4行和第1,3,5列

(2)对矩阵A变换成向量B,B=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20] (3)删除A的第2,3,4行元素

三、思考练习

1、在MATLAB命令中,6+7i和6+7*i有何区别?i和I有何区别?

2、设A和B是两个同样大小的矩阵,试分析A*B和A.*B、A./B和B.\\A,A/B和B\\A的区别?如果A和B是两个标量数据,结论又如何?

实验三 MATLAB矩阵分析

一、 实验目的

1、掌握MATLAB矩阵分析

2、掌握字符串、结构数据和单元数据 3、熟悉MATLAB稀疏矩阵及其操作

二、实验内容

?0.7780??2310?41?45?655?,完成下列操作: 1、已知A???325032???543.14??6?9.54(1)输出A在[10,25]范围内的全部元素

(2)取出A前3行构成矩阵B,前两列构成矩阵C,右下角3*2子矩阵构成矩阵D,B与C的乘积构成矩阵E

(3)分别求表达式E

2、产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好,为什么? 3、已知:

??29618?? A??20512?????885??求A的特征值及特征向量,并分析其数学意义。

4、求下列矩阵的主对角元素,上三角矩阵,下三角矩阵,逆矩阵,行列式的值,秩,范数,条件数,迹。

?1?12?51?4

(1)A??

?305?

?11150

3?

0.43432?2?? (2)B?? ??2???8.9421??9?

5、建立一个字符串向量ch=’ABc123d4e56Fg9’,然后对该向量做以下处理: (1)统计其中阿拉伯数字的个数

(2)删除字符串中数字,并将字符串中大写字母改为小写字母。

三、思考练习

1、矩阵中采用稀疏矩阵有何好处?在运算规则上,稀疏存储矩阵和普通矩阵有何不同?

2、在MATLAB中建立一结构矩阵,并进行增加,删除结构成员等操作。

3、单元矩阵与结构矩阵有何不同?在MATLAB中如何建立与引用单元矩阵?

实验四 MATLAB程序设计

一、 实验目的

1、掌握利用if语句,switch语句实现选择结构的方法 2、掌握利用for语句,while语句实现循环结构的方法

3、熟悉利用向量运算来代替循环操作的方法并理解MATLAB程序设计的特点

二、实验内容

1、从键盘输入一个3位整数,将它向输出。如输入639,输出936

2、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90-100为A,80-90为B,70-79为C,60-69为D,60分以下为E。 要求:

(1) 分别用if语句和switch语句来实现

(2) 输入的百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错

信息。

3、输入20个数,求其中最大数和最小数。要求分别用循环结构和调用MATLAB的max函数和min函数来实现。

4、编写程序,产生20个两位随机整数,输出其中小于平均值的偶数。

x??1?x??1?x?1, 5、计算分段函数的值。y??x3?e?x?11?x?三、思考练习

1、编写程序,计算1?2?3...?n?2000时n的最大值

2、写出下面程序运行结果,并修改程序,让他们没有for循环语句。

A=[1 2 3; 4 5 6; 7 8 9]; [r c]=size(A); for i=1:1:r for j=1:1:c

if (A(i,j)>8 | A(i,j)<2) A(i,j)=0; end end end

实验五 函数文件的编写

一、 实验目的

1、掌握函数文件的定义方法,函数头的写法;

2、掌握调用函数文件的方法,了解函数文件的嵌套调用; 3、熟悉MATLAB函数文件的特点。

二、 实验内容

1、定义一个函数文件lifang.m,用于计算一个立方体的表面积和体积。在命令窗口中调用它。

2、当n分别取100、1000、10000时,求下列各式的值:

??2?1111(1)2?2?3??2?????

123n?6??2?2??4?4??6?6???2n???2n????????? (2)???????????1?33?55?72n?12n?1?????2?????????要求用函数文件的定义和调用来实现。

3、利用函数文件,实现极坐标(?,?)与直角坐标(x,y)之间的转换,并通过函数调用加以验证。

4、利用预定义变量nargin和nargout,实现以下功能的函数:若输入只有一个参

数,输出以该参数为半径的球的体积;若输入有两个参数,输出分别以该参数为底面半径和高的圆柱体积;若输入有三个参数,输出分别以该参数为三 条边的长方体的体积;若输入参数多于三个,则报错。

5、先用函数的递归调用定义一个函数文件求?im,然后调用该函数文件求

i?1n1。 k?k????k?1k?1k?1k21005010三、 思考练习

1、总结函数文件和命令文件的区别。

2、当n分别取100、1000、10000时,求下式的值:

1111?1??????n????? 416644?3?3、编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在命令文件中调用

该函数。

实验六 二维曲线的绘制

一、 实验目的

1、掌握绘制单根和多根二维曲线的方法;

2、掌握对函数自适应采样的绘图函数和隐函数绘图; 3、了解设置曲线样式和进行图形标注。

二、 实验内容

1、在区间0?x?4?内,绘制曲线y?4e?xsin(2?x),并给曲线添加标题,设置曲线颜色为红色。

2、区间0?t?2?内,绘制曲线

?x?tsin(t) ?2?y?tcost3、分析下列程序绘制的曲线:

t=0:0.01:pi; x=exp(i*t); y=[x;2*x;3*x]’; plot(y)

4、利用隐函数绘制曲线:

x3(1)y?x? (2)x2?2y2?64

3!5、绘制下列极坐标图:

5sin2???(1)??5cos??4 (2)??,????

cos?33三、 思考练习

1、总结在同一坐标轴绘制多条二维曲线有哪些方法?

2、在同一坐标轴中绘制下列两条曲线并标注两曲线交叉点。 (1)y?2x?0.5

?x?sin(3t)cost(2)?,0?t??

?y?sin(3t)sint13、分别用plot和fplot函数绘制y?sin()的曲线,并分析两曲线的区别。

x

实验七 三维曲线的绘制

一、 实验目的

1、掌握绘制三维曲线的方法;

2、掌握绘制三维网格图和三维曲面图的方法;

3、比较绘制三维图形和二维图形的方法,了解其中的相似点。

二、 实验内容

1、绘制三维曲线

?x?sint??0?t?20?? ?y?cos3t?z?tsintcos3t?并显示网格。

2、比较以下两段程序的运行结果: (1)x=0:0.1:2*pi;

stem(x,sin(x)); (2)x=0:0.1:2*pi;

stem3(exp(x),x,exp(x));

说明函数stem和stem3的联系与区别。

3、将当前图形窗口分为左右两个子窗口,分别绘制标准三维球面和柱面。

4、在xy平面内选择区域[?8,8]?[?8,8],用mesh,meshc,meshz和surf绘制函数

z?cosx2?y2x?y22

的四种曲面图。

5、绘制下列三维图形

z=5,x?5,y?5。要求应用插值着色处理。

四、 思考练习

1、绘制下列三维图形:

?x?e?t/20cost??t/20sint,0?t?2? ?y?e?z?t?2、绘制三维图形:

(1)已知x=[1000,1500,1300,200],绘制饼图; (2)用随机的顶点坐标值画出四个蓝色三角形。 3、waterfall函数和contour函数的功能分别是什么?

实验八 数据分析与多项式计算

一、 实验目的

1、掌握数据统计和分析的方法;

2、掌握数据插值和曲线拟合的方法及其应用; 3、掌握多项式的常用运算。

二、 实验内容

1、产生一个5?5的随机矩阵,进行以下数据处理:

(1)分别计算每行的最大值,每列的最大值和矩阵的最大元素; (2)分别计算每行元素的乘积,每列元素的乘积和全部元素的乘积; (3)计算每行的平均值和每列的中间值。

2、产生一个3?4的随机矩阵,从不同维方向求出其标准方差。

3、按下表所示用3次多项式方法插值计算1~100之间整数的平方根。

表8-1 1~100之间特殊值的平方根表 N N 1 1 4 2 9 3 16 4 25 5 36 6 49 7 64 8 81 9 100 10 4、在上题中,对表格内数据做5次多项式拟合,然后计算1~100之间整数的平

方根值,与上题结果做比较。

43225、有三个多项式P2(x)?x?2,P1(x)?x?2x?4x?5,P3(x)?x?2x?3,试

进行以下操作:

(1)求P(x)?P1(x)?P2(x)P3(x) (2)求P(x)的根

三、 思考练习

1、什么是数据插值?什么是曲线拟合?说明它们的共同点和不同点。

2、利用MATLAB提供的rand函数生成30000个符合均匀分布的随机数,然后检验随机数的性质: (1)均值和标准方差; (2)最大元素和最小元素;

(3)大于0.5的随机数个数占总数的百分比。

3、已知lg(x)在[1,101]区间11个整数采样点的函数值如表8-2所示。

表8-2 lg(x)在11个采样点的函数值 x 1 11 21 31 41 51 61 71 81 91 101 lg(x) 0 1.0411.3221.4911.6121.7071.7851.8511.9081.9592.0044 2 4 8 6 3 3 5 0 3 试求lg(x)的5次拟合多项式p(x),并绘制出lg(x)和p(x)在[1,101]区间的函数曲线。

本文来源:https://www.bwwdw.com/article/d11g.html

Top