admin 管理员组文章数量: 1184232
2024年2月23日发(作者:英格兰联赛威尔士球队)
实验二、矩阵的基本运算
一、 问题
已知矩阵A、B、b如下:
411365074711A456236784918178B101222983663851165946121310168
810131257063275
9235b1357811
应用Matlab软件进行矩阵输入及各种基本运算。
二、 实验目的:
熟悉Matlab软件中的关于矩阵运算的各种命令
三、 预备知识
1、线性代数中的矩阵运算。
2、本实验所用的Matlab命令提示:
(1)、矩阵输入格式:A=[a11, a12; a21, a22];b=初始值:步长:终值;
(2)、求A的转置:A';
(3)、求A加B:A+B;
(4)、求A减B:A-B;
(5)、求数k乘以A:k*A;
(6)、求A乘以B:A*B;
(7)、求A的行列式:det(A);
(8)、求A的秩:rank(A);
(9)、求A的逆:inv(A)或(A)-1;
(10)、B右乘A的逆:B/A;
(11)、B左乘A的逆:AB;
(12)、求A的特征值:eig(A);
(13)、求A的特征向量矩阵X及对角阵D:[X,D]=eig(A);
(14)、求方阵A的n次幂:A^n;
(15)、A与B的对应元素相乘:A.*B;
(16)、存储工作空间变量:save '文件名' '变量名';
(17)、列出工作空间的所有变量:whos;
四、 实验内容与要求
1、 输入矩阵A,B,b;
2、 作X21=A'、X22=A+B、X23=A-B、X24=AB;
3、 作X31=|A|、X32=|B|;
4、 作X41=R(A)、X42=R(B);
5、 作X5=A-1;
6、 求满足矩阵方程XA=C的解矩阵X6,其中C为A的第i列乘以列标i所得矩阵;
7、 求满足方程AX=b的解向量X7;
8、 作X6的特性向量X8、X6的特征向量组X及对角阵D;
9、 作X9=B2
(A-1)2;
10、 创建从2开始公差为4的等差数列前15项构成的行向量X10。
11、 将本实验中的矩阵A与B的对应元素相乘X11、对应元素相除X12并观察分母为零时的结果;
12、 求b每个元素自身次幂所得的行向量X13。
13、 产生一长度为20的正态分布的随机向量X14
1. 求X14的最大值及其在X14中的位置。
2. 将X14排序并给出排序后各元素在X14中的位置
3. 将X14变形为5行4列的矩阵X15,再将X15实行左右翻转并逆时针旋转90o。
14、列出本实验中的所有变量。
一、
>> A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0]
A =
3 4 -1 1 -9 10
6 5 0 7 4 -16
1 -4 7 -1 6 -8
2 -4 5 -6 12 -8
-3 6 -7 8 -1 1
8 -4 9 1 3 0
>> B=[1 2 4 6 -3 2;7 9 16 -5 8 -7;8 11 20 1 5 5;10 15 28 13 -1 9;12 19 36 25 -7 23;2 4 6 -3 0 5]
B =
1 2 4 6 -3 2
7 9 16 -5 8 -7
8 11 20 1 5 5
10 15 28 13 -1 9
12 19 36 25 -7 23
2 4 6 -3 0 5
>> b=[1 3 5 7 8 11]
b =
1 3 5
二、
三、
四、
1、>>i
ans =
0 + 1.0000i
>>j
ans =
0 + 1.0000i
>>eps
ans =
2.2204e-016
>>inf
ans =
Inf
7 8 11
>>inf
ans =
Inf
>>nan
ans =
NaN
>>pi
ans =
3.1416
>>realmax
ans =
1.7977e+308
>>realmin
ans =
2.2251e-308
2、>>sqrt(1-i)
ans =
1.0987 - 0.4551i
>>sqrt(2*i)
ans =
1.0000 + 1.0000i
>>sqrt(-5+12*i)
ans =
2.0000 + 3.0000i
3、
数学实验 三
1、 设函数f(t)21i12teln(t1t2),A
211求f(A)数组运算和矩阵运算的结果
23103/204145655 2、已知A32503254691)取出其前3行构成矩阵B,前两列构成矩阵C,其右下角32子矩阵构成矩阵D,B与C的乘积构成矩阵E;
2)取出E中比D中对应元素小的元素;
3)分别求E&D、E|D、~E|~D;
4)取出A中大与10且小于50的元素及其一维索引和二维索引值,并将小于10的元素改为10;大与50的数改为50。
3求一个矩阵的主(第k条)对角元素用diag(A)(diag(A,k)),上(下)三角阵用triu(A)(tril(A))(同理使用triu(A,k),tril(A,k))试对上题的矩阵A求
主对角元素、上三角阵、下三角阵、逆矩阵、行列式的值、秩、范数、迹、特征值与特征向量。
4、当A=[34, NaN,Inf,-inf, -pi,eps,0]时,求下列函数值:
All(A)、any(A)、isnan(A)、isinf(A)、isfinite(A)。
数学实验四
目的:了解多项式的各种运算
理解多维数组的生成与操作
理解字符与字符串的存储与操作
31、 求多项式x2x40的根(使用roots命令)
1.2351.72、 设矩阵A392150.956
0134a) 求A的特征多项式P(x)
b) 求P(x)的导数
c) 求P(20)的值
d) 求P(A)的矩阵运算的结果和数组运算的结果
3、 设a(s)=s2+2s+3和b(s)=s5+5s4+3s2+1
a) 求a(s)和b(s)的乘积
b) 求b(s)/a(s)的商与余项
4、 设有五个数据点:(1,5.5),(2,43.1),(3,128),(4,290.7),(5,498.4)。
a) 作出这五个数据点的三次拟合多项式;
b) 试打印出该拟合多项式的图形,并将数据点在图形上用“o”标注出来。
c) 使用帮助查寻插值命令interp1的用法,打印出上5个点的插值函数图像并与拟合函数比较。
5、 生成一334的3三维数组D,要求:
a) 第一页的元素为A=[5 7 8 ;0 1 9 ;4 3 6],第二页为A的转置阵,第三页为A旋转90o的矩阵,第四页为A上下元素颠倒的矩阵;
b) 使用cat命令生成上述矩阵;
c) 取出第一行所有列与所有页的元素;
d) 使用reshape将上面的高位数组重排为343的矩阵h,并取出其第二页h2。作一新的4维数组,h为第一箱,h2为第二箱的第三页元素;
e) 查寻repmat命令的用法;
6、 对下列短文做一下操作:
a) 统计下列短文中的空格数、小写字母数、非英文字符数。
>> s='Born in London in 1959, he was educated at Eton, Oxford and Caltech. He published his
first scientific paper at the age of fifteen, and had received his PhD in theoretical physics from
Caltech by the age of twenty. Wolfram''s early scientific work was mainly in high energy physics,
quantum field theory and cosmology, and included several now classic results. Having started to
use computers in 1973, Wolfram rapidly became a leader in the emerging field of scientific
computing, and in 1979 he began the construction of SMP-the first modern computer algebra
system-which he released commercially in 1981. Through the mid 1980s, Wolfram continued his
work on complexity, discovering a number of fundamental connections between computation and
nature, and inventing such concepts as computational irreducibility. Wolfram''s work led to a wide
range of applications-and provided the main scientific foundations for the popular movements
known as complexty theory and artificial life. Wolfram himself used his ideas to develop a new
randomness generation system and a new approach to computational fluid dynamics-both of
which are now in widespread use.'
实验五、选择与循环结构
一、实验目的:
1、 掌握建立和执行M文件的方法。
2、 掌握利用if语句实现选择结构的方法。
3、 掌握利用switch语句实现多分支选择结构的方法。
4、 掌握try语句的使用。
5、 掌握利用for语句实现循环结构的方法。
6、 掌握利用while语句实现循环结构的方法。
7、 熟悉利用向量运算来代替循环的操作方法。
二、实验内容:
1、 列分段函数的值。
x2x6,x0且x3yx25x6,0x10,x2且x3
x2x6,其他要求:
(1)用if语句实现,分别输出x=-0.5,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。
提示:x的值从键盘输入,可以是向量。
(2) 用逻辑表达式实现上述函数。
2、 输入一个百分制成绩,要求输出成绩的等级为A,B,C,D,E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
要求:
(1)分别用if语句和switch语句实现。
(2)输入百分制成绩后要判定该成绩的合理性,对不合理的成绩要输出出错信息。
3、 建立 5×6矩阵,要求输出矩阵的第n行元素,当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素、并给出出错信息。
4、 根据261111求的近似值。当n分别取100、1000、1n结果是多少?
要求:分别用循环结构和向量运算(使用sum函数)来实现。
5、 根据y1111,求:
352n1(1)y3的最大n值。
(2)与(1)的n对应的y。
6、 一个三位整数各位数字的立方和等于该数的本身则称该数为水仙花数。试输出全部水仙花数。
要求:
(1)用循环结构实现。
(2)用向量运算来实现。
提示:全部三位整数组成向量M;分别求M各个元素的个位、十位、百位数字,组成向量M1、M2、M3;向量N=M1.*M1.*M1+M2.*M2.*M2+M3.*M3.*M3;向量K=M-N;显然K中的零元素的序号即M中的水仙花的序号。
f11f027、 已知
f13fnfn12fn2fn3,n3求f1f100中:
(1)最大值、最小值、各数之和。
(2)正数、零、负数的个数。
提示:可以考虑使用Matlab的有关函数实现。
8、 从数组{1,2,。。。n}随机选出m(m<=n))个不重复的元素.
9、 假定某地区的电话收费标准为:通话时间在3分钟以下,收费为0.5元,3分钟以上,则每超过1分钟加收0.15元;在7:00~22:00之间通话者,按上述收费标准全价收费,在其它时间通话者,按上述收费标准半价收费。计算某人在t1时刻通话到t2时刻,应交多少电话费。(选做,有挑战性)
数学实验练习六:函数
一、1)写一个 MATLAB 函数 piFun01.m 来计算下列级数:
f(n) = 4*(1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + ...)
其中 n 为函数的输入,代表上述级数的项数,级数和 f(n) 则是函数的输出。
2)使用 tic 和 toc 指令来测量 piFun01(100000) 的计算时间。如果你不知道如何使用这两个指令,请使用 help tic 及 help toc 来查出它们的用法。我的旧计算机是 Pentium 450MHz,所得的计算时间约为 2 秒。请说明你的计算机规格以及其计算时间。
二、写一个 MATLAB 的递归函数fibo.m来计算 Fibonacci 数列,其定义如下:
fibo(n+2) = fibo(n+1)+fibo(n)
此数列的启始条件如下:
fibo(1) = 0, fibo(2) = 1.
a) fibo(25) 的返回的值是多少?
b) 使用 tic 和toc指令来测量fibo(25) 的计算时间。我的计算机是 Pentium
2GHz,所得的计算时间约为 3.35 秒。请说明你的计算机规格以及其计算时间。
c) 你们已学过离散数学,知道 Fibonacci 数列的第 n 项可以直接表示成fibo(n)={[(1+a)/2]^(n-1)-[(1-a)/2]^(n-1)}/a
其中 a 是 5 的平方根。写利用上式一个 MATLAB 的非递归函数
fibo2.m 来计算 Fibonacci 数列。
d) fibo2(25) 的值为何?是否和 fibo(25) 相同?
e) 请计算 fibo2(25) 的计算时间,并和 fibo(25) 比较。
f) 请比较并说明使用 fibo.m 和 fibo2.m 来计算 Fibonacci 数列的优缺点。
三、假设在期中考后,我们用一个向量 x 来储存每个人的考试成绩。请写一个函数 ranking01.m,输入为成绩向量 x,输出则是此成绩的排名。例如,当 x
= [92, 95, 58, 75, 69, 82] 时,ranking(x) 回传的排名向量则是 [2, 1, 6, 4, 5, 3],代表 92 分是排名第 2,95 分是排名第 1,58 分是排名第 6,等等。
提示
你可以使用循环(如 for-loop 和 while-loop 等)完成此作业,但是程序代码会比较凌乱,执行效率也会变差。所以请尽量利用 sort 指令,而不要用到循环。
实验7:图形绘制
一、实验目的
1、 掌握绘制二维图形的常用函数。
2、 掌握绘制三维图形的常用函数。
3、 掌握绘制图形的辅助操作。
二、实验内容
1、 已知y1x2,y2cos(2x),y3y1*y2,完成下列操作:
(1)在同一坐标系下用不同的颜色和线型绘制三条曲线。
(2)以子图形式绘制三条曲线。
(3)分别用条形图、阶梯图、杆图和填充图绘制三条曲线。
2、 绘制极坐标曲线asin(bn),并分析参数a,b,n对曲线形状的影响。
3、 分别用plot和fplot函数绘制函数ysin
4、 绘制函数曲面图和等高线图:
(1)z(x22x)ex(2)f(x,y)21的曲线,分析两曲线的差别。
xy2xy
11(x1)y2211(x1)y22
提示:绘制三维曲面图,首先要选定一个平面区域并在该区域产生网格坐标矩阵。在做本题之前,先分析并上机验证下列的命令执行结果。从中体会产生网格坐标矩阵的方法。
5、 绘制由下列参数方程表示的曲面图形(未绘制图形之前,你能看出其是什么图形吗?)
x(1cosu)cosvy(1cosu)sinv,其中u(0,2),v(0,2)。
zsinv
6、 在一幅图上打印出函数sin(x)和cos(x)在[0,2]区间上的图形,要求如下
1)sin(x)和cos(x)图形分别用红色的点划线和绿色星号打印;
2)坐标轴的窗口大小范围设为[-1,7][-1.5.1.5];
3)分别给x轴和y轴加上标注说明,图形加上名称;
4)给出图例说明标注;
5)在(3.3,1.1)处标上文字„sin(x)‟,用鼠标在cos(x)曲线的某点处标上文字„cos(x)‟;
6)给图形加上网格线。
7)回车后图形的坐标轴和网格线消失。y=sin(x);
7、 使用正态分布的随机函数产生10000个随机数;统计-3到3之间每隔0.2间隔内落入的随机数个数,并打印出其频数图。
8、 试打印出下列函数所表示的图像
1)exy2x2xyy20; 2)tcos(2t)1
1t2x1(3cos(u))sin(v)3)zRe(sin(xiy)); 4)y1(3cos(u))cos(v)
zsin(u)
9、 设函数zxex2y2试打印出下列图形:
1)打印函数的网格图和曲面图
2)打印出函数的高度为v=[-0.4,-0.2,-.10,0.3,0.35]二维等值线图,并在图形上标出其高度。(提示:使用clable命令标高度)
3)打印出函数有20条等值线的三维等值线图,
4)打印函数的伪彩色图。(提示使用Contourf(z))
10、 Chebyshev 多项式的定义如下:
y = cos(m*cos-1x)
其中 x 的值介于 [-1, 1]。当 m 的值由 1 变化到 5,我们可得到五条曲线。请将这五条曲线画在同一张图上面,记得要使用 legend 指令来标明每一条曲线。
11、 试写一函数 regStar(n),其功能为画出一个圆心在 (0, 0)、半径为 1 的圆,并在圆内画出一个内接正 n 星形,其中一顶点位于 (0, 1)。例如regStar(7) 可以画出如下之正 7 星型:
0.80.60.40.20-0.2-0.4-0.6-0.8-0.8-0.6-0.4-0.200.20.40.60.81
数学实验八
问题一:
1、 当一个小圆轮在平面上滚动时,轮缘的一点在滚动时所形成的轨迹称为「摆线」。请用 MATLAB 画出一个典型的摆线,其中小圆轮的半径为 1,而且至少要滚三圈。
此题和上题类似。当一个小圆轮沿着一条曲线行进时,轮缘任一点的轨迹就会产生变化丰富的摆线。假设小圆轮的半径 r=2。
当小圆轮绕着一个大圆(半径 R=5)的外部滚动时,请画出其摆线。
重复上小题,但改成在大圆的内部滚动。
2、
3、
4、
问题二
1. 假设某校信息系在2001、2002及2003年的人员组成如下表所示:
类别
大一 大二 大三 大四 硕一 硕二 博士班 教职员
年份 2001 10 21 23 14 35 26 47 48
2002 21 32 33 24 35 26 12003 15 23 23 44 25 34 27 47 38
8
a. 请用 bar3 指令来画出上述数据的立体长条图。
b. 请用各种你可以想到的方法,在上述图形中加入各种解释和说明的文字。
2. 请使用上题的数据来进行下列两小题:
a. 画出依每年份总人数来切分的立体扇形图,并加上各种可能的说明文字。
b. 重复上小题,但改成依每种类别的总人数来切分。
问题三
x2y2z2一个空间中的椭球可以表示成下列方程式:2221请使用任何你可以abc想到的方法(比如说:加密网格线,加上光照,插值,明暗处理等等),画出三维空间中的一个光滑的椭球,其中a = 3,b = 4,c = 8。
问题四
1、 请用 surf 指令来画出下列函数的曲面图:zxex2y2,其中 x 在 [-2, 2] 间共等切分为 21 点,y 在 [-1, 1] 间共等切分为 21 点,所以此曲面共有
21*21=441 个点。
c. 请用预设的颜色对应表(Colormap)来画出此曲面。
d. 请以曲面的斜率来设定曲面的颜色。
e. 请以曲面的曲率来设定曲面的颜色。
f. 请将曲面的网格线除去,并设置为透明的。
g. 任意读入一幅图像,然后将其贴到该曲面上去。
问题五:
1. 以电影方式产生包含 21 个画面的动画,代表 peaks 曲面乘上 a,其中 a 的值由 -1 至 1 等分切成 21 点。
2. 以对象方式产生动画,呈现一个小圆(半径为 1)在一个大圆(半径为 3)的圆周外部滚动的动画。(注:若以极坐标(复数)来进行数据处理,程序代码会比较简单一些)
3. 以对象方式产生动画,呈现一个小圆(半径为 1)在一个大圆(半径为 3)的圆周内部滚动的动画。
4. 以对象方式产生动画,呈现一个小圆(半径为 1)在一个中圆(半径为 3)的圆周内部滚动,且此中圆又在一个大圆(半径为 5)的圆周内部滚动的动画。
5. 以对象方式产生动画,呈现一个圆圈(半径为 1)由画面左边滚到右边,圆周上的任一点所拉出的一条摆线。
6. 以对象的方式产生动画,呈现下列方程式:
y = cos2(x+k)*exp(-x/5)
让 k 随时间而变大,来显示此方程式的动画。
版权声明:本文标题:matlab习题详解 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1708689396a529380.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论