实验一 MATLAB操作基础
一、 实验目的
1、熟悉MATLAB的操作环境及基本操作方法。
2、掌握MATLAB的搜索路径及其设置方法。
3、熟悉MATLAB帮助信息的查阅方法。
二、实验内容
1、先建立自己的工作目录,再将自己的工作目录设置到MATLAB搜索路径下,再试验用help命令能否查询到自己的工作目录。
2、在MATLAB环境下验证例1-1至1-4,并完成以下题目:
(1)绘制右图所示图形
(2)求
3、利用MATLAB的帮助功能分别查询inv,plot、max、round等函数的功能及用法。
4、在工作空间建立一个变量a ,同时在当前目录下建立一个M文件:a.m,试在命令窗口输入a,观察结果,并解释原因。
三、思考练习
1、help命令和lookfor命令有什么区别?
2、什么是工作空间?假定有变量A与B存在于工作空间中,如何用命令保存这两个变量?下次重新进入MATLAB后,又如何装载这两个变量?
实验二 MATLAB数值计算
一、 实验目的
1、掌握MATLAB变量和数据操作
2、掌握MATLAB矩阵及其操作
3、掌握MATLAB矩阵运算
二、实验内容
1、求下列表达示的值
(1)
(2),其中a=3.5 ,b=5 ,c=-9.8
(3),其中
2、已知,
求下列表达式的值:
(1)A+6B和(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、当时,求函数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稀疏矩阵及其操作
二、实验内容
1、已知,完成下列操作:
(1)输出A在[10,25]范围内的全部元素
(2)取出A前3行构成矩阵B,前两列构成矩阵C,右下角3*2子矩阵构成矩阵D,B与C的乘积构成矩阵E
(3)分别求表达式E8 | A(i,j)<2)
A(i,j)=0;
end
end
end
实验五 函数文件的编写
一、 实验目的
1、掌握函数文件的定义方法,函数头的写法;
2、掌握调用函数文件的方法,了解函数文件的嵌套调用;
3、熟悉MATLAB函数文件的特点。
二、 实验内容
1、 定义一个函数文件lifang.m,用于计算一个立方体的表面积和体积。在命令窗口中调用它。
2、 当n分别取100、1000、10000时,求下列各式的值:
(1)
(2)
要求用函数文件的定义和调用来实现。
3、 利用函数文件,实现极坐标与直角坐标之间的转换,并通过函数调用加以验证。
4、 利用预定义变量nargin和nargout,实现以下功能的函数:若输入只有一个参数,输出以该参数为半径的球的体积;若输入有两个参数,输出分别以该参数为底面半径和高的圆柱体积;若输入有三个参数,输出分别以该参数为三 条边的长方体的体积;若输入参数多于三个,则报错。
5、 先用函数的递归调用定义一个函数文件求,然后调用该函数文件求。
三、 思考练习
1、 总结函数文件和命令文件的区别。
2、 当n分别取100、1000、10000时,求下式的值:
3、编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在命令文件中调用该函数。
实验六 二维曲线的绘制
一、 实验目的
1、掌握绘制单根和多根二维曲线的方法;
2、掌握对函数自适应采样的绘图函数和隐函数绘图;
3、了解设置曲线样式和进行图形标注。
二、 实验内容
1、在区间内,绘制曲线,并给曲线添加标题,设置曲线颜色为红色。
2、区间内,绘制曲线
3、分析下列程序绘制的曲线:
t=0:0.01:pi;
x=exp(i*t);
y=[x;2*x;3*x]’;
plot(y)
4、利用隐函数绘制曲线:
(1) (2)
5、绘制下列极坐标图:
(1) (2)
三、 思考练习
1、总结在同一坐标轴绘制多条二维曲线有哪些方法?
2、在同一坐标轴中绘制下列两条曲线并标注两曲线交叉点。
(1)
(2)
3、分别用plot和fplot函数绘制的曲线,并分析两曲线的区别。
实验七 三维曲线的绘制
一、 实验目的
1、掌握绘制三维曲线的方法;
2、掌握绘制三维网格图和三维曲面图的方法;
3、比较绘制三维图形和二维图形的方法,了解其中的相似点。
二、 实验内容
1、绘制三维曲线
并显示网格。
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平面内选择区域,用mesh,meshc,meshz和surf绘制函数
的四种曲面图。
5、绘制下列三维图形
z=5,。要求应用插值着色处理。
四、 思考练习
1、绘制下列三维图形:
2、绘制三维图形:
(1)已知x=[1000,1500,1300,200],绘制饼图;
(2)用随机的顶点坐标值画出四个蓝色三角形。
3、waterfall函数和contour函数的功能分别是什么?
实验八 数据分析与多项式计算
一、 实验目的
1、掌握数据统计和分析的方法;
2、掌握数据插值和曲线拟合的方法及其应用;
3、掌握多项式的常用运算。
二、 实验内容
1、产生一个的随机矩阵,进行以下数据处理:
(1)分别计算每行的最大值,每列的最大值和矩阵的最大元素;
(2)分别计算每行元素的乘积,每列元素的乘积和全部元素的乘积;
(3)计算每行的平均值和每列的中间值。
2、产生一个的随机矩阵,从不同维方向求出其标准方差。
3、按下表所示用3次多项式方法插值计算1~100之间整数的平方根。
表8-1 1~100之间特殊值的平方根表
N
1
4
9
16
25
36
49
64
81
100
1
2
3
4
5
6
7
8
9
10
4、在上题中,对表格内数据做5次多项式拟合,然后计算1~100之间整数的平方根值,与上题结果做比较。
5、有三个多项式,,,试进行以下操作:
(1)求
(2)求的根
三、 思考练习
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.0414
1.3222
1.4914
1.6128
1.7076
1.7853
1.8513
1.9085
1.9590
2.0043
试求lg(x)的5次拟合多项式p(x),并绘制出lg(x)和p(x)在[1,101]区间的函数曲线。