当前位置:文档之家› matlab实验报告

matlab实验报告

2015秋2013级《MATLAB程序设计》实验报告实验一班级:软件131姓名:陈万全学号:132852一、实验目的1、了解MATLAB程序设计的开发环境,熟悉命令窗口、工作区窗口、历史命令等窗口的使用。

2、掌握MATLAB常用命令的使用。

3、掌握MATLAB帮助系统的使用。

4、熟悉利用MATLAB进行简单数学计算以及绘图的操作方法。

二、实验内容1、启动MATLAB软件,熟悉MATLAB的基本工作桌面,了解各个窗口的功能与使用。

图1 MATLAB工作桌面2、MATLAB的常用命令与系统帮助:(1)系统帮助help:用来查询已知命令的用法。

例如已知inv是用来计算逆矩阵,键入help inv即可得知有关inv命令的用法。

lookfor:用来寻找未知的命令。

例如要寻找计算反矩阵的命令,可键入lookfor inverse,MATLAB即会列出所有和关键字inverse相关的指令。

找到所需的命令後,即可用help进一步找出其用法。

(2)数据显示格式:常用命令:说明format short 显示小数点后4位(缺省值)format long 显示15位format bank 显示小数点后2位format + 显示+,-,0format short e 5位科学记数法format long e 15位科学记数法format rat 最接近的有理数显示(3)命令行编辑:键盘上的各种箭头和控制键提供了命令的重调、编辑功能。

具体用法如下:↑----重调前一行(可重复使用调用更早的)↓----重调后一行→----前移一字符←----后移一字符home----前移到行首end----移动到行末esc----清除一行del----清除当前字符backspace----清除前一字符(4)MATLAB工作区常用命令:who--------显示当前工作区中所有用户变量名whos--------显示当前工作区中所有用户变量名及大小、字节数和类型disp(x) -----显示变量X的内容clear -----清除工作区中用户定义的所有变量save文件名-----保存工作区中用户定义的所有变量到指定文件中load文件名-----载入指定文件中的数据三、源程序和实验结果1、在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。

(1) 计算(365-52⨯2-70)÷3(2) >>area=pi*2.5^2(3) 已知x =3,y =4,()23x y z x y =-在MATLAB 中求z :(4) 利用who,whos 命令查看工作空间内的所有变量,并比较两种命令区别。

who--------显示当前工作区中所有用户变量名whos--------显示当前工作区中所有用户变量名及大小、字节数和类型(5)使用clear命令删除工作空间内的所有变量。

提示:MATLAB有一些永久常数(Permanent Constants)如表所示,虽然在工作空间中看不到,但使用者可直接取用。

表1.1 MATLAB中常用的变量,常量(6)将下面的矩阵赋值给变量m1,在workspace中察看m1在内存中占用的字节数。

m1=162313 511108 97612 414151⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦M1占4⨯4⨯8=128个字节执行以下命令,观察结果:>>m1(2,3)>>m1(11)>>m1(:,3)>>m1(2:3,1:3)>>m1(1,4) + m1(2,3) + m1(3,2) + m1(4,1)(7)执行命令>>help abs,查看函数abs的用法及用途,计算abs(3 +4i)。

(8)执行命令:>>x=0:0.1:6*pi;>>y=5*sin(x);>>plot(x,y)(9) 在matlab 的命令窗口里完成如下计算,其中t 的值分别取-1,0,1,表达式如下:4/3)2ty e π-=⨯⨯(10) 求方程组的根:1231231234322511612x x x x x x x x x +-=⎧⎪+-=⎨⎪++=⎩(11)一个多项式的系数向量是p=[1 -6 -72 -27],求这个多项式的根并写出多项式。

此多项式为:x^3-6x^2-72x-27=02、思考题(1)以下变量名是否合法?为什么?a)x2 合法b)3col 不合法,变量名不能数字开头。

c)_row 不合法,变量名不能以下划线开头。

d)For 合法,区分大小写,For不是关键字。

(2)求以下变量的值,并在MATLAB中验证。

a)a=1:2:5;a=1,3,5;b)b=[a' a' a'];b=[1,1,1;3,3,3;5,5,5]c)c=a+b(2,:)c=[4,6,8]实验二班级:软件131姓名:陈万全学号:132852一、实验目的1、掌握矩阵和数组的表示与赋值方法2、了解字符串、结构和单元等数据类型在MATLAB中的使用3、掌握MATLAB中基本的数值运算,了解基本统计函数的使用4、掌握多项式基本运算以及线性方程组的求解方法二、实验内容1、利用“:”操作符和linspace函数生成数组a=[0,6,12,18,24,30,36,42],并将数组a分别转化为4*2和2*4的矩阵。

源程序和实验结果:2、在MATLAB 中输入矩阵3681-5722176916-121513-210A ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦,并使用MATLAB 回答以下的问题:(1) 创建一个由A 中第2列到第4列所有元素组成的4Χ3数组B ;(2) 创建一个由A 中第3行到第4行所有元素组成的2Χ4数组C ;(3) 创建一个由A 中前两行和后三列所有元素组成的2Χ3数组D ;(4) 根据A 利用单下标方法和双下标方法分别创建向量a =[-5 6 15]和向量b =[6 8 1],并利用向量a 和b 生成矩阵5668151E -⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦;(5) 利用“[]”删除矩阵A 的第二行和第三列。

3、利用ones()函数和zero()函数生成如下矩阵:0000001110013100111000000A ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦4、生成矩阵412303214A--⎡⎤⎢⎥=-⎢⎥-⎢⎥⎣⎦:(1)取出所有大于0的元素构成一个向量a(可推广到从一个矩阵里筛选出符合条件的元素组成一个向量)。

(2)将原矩阵中大于0的元素正常显示,而小于等于0的元素全部用0来表示(可推广到将原矩阵中不符合条件的全用0来表示,符合条件的值不变)。

5、已知⎥⎦⎤⎢⎣⎡=654321a ,⎥⎦⎤⎢⎣⎡-=531142b ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=201c ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=063258741d 下列运算是否合法,为什么?如合法,写出计算结果? (1) result1=a ' 合法(2) result2=a *b不合法 a 的行数跟b 的列数不相等(3) result3=a +b 合法(3) result4=b *d合法(5) result5=[b;c']*d合法[b;c']为3*3矩阵d也是3*3矩阵(6)result6=a.*b 合法点乘对应元素进行乘法矩镇节数相等(7)result7=a./b 合法点除对应素进行除法(8) result8=a.*c 不合法矩阵节数不相等(9)result9=a.\b 合法左除跟右除一样(10)result10=a.^2 合法点幂a中每一个元素进行幂方(11)result11=a ^2 不合法 两个矩阵相乘 前行后列不相等 (12)result11=2.^a 合法 构成新的矩阵6、已知134********,122438,[1,0,8,3,6,2,4,23,46,6]78276853a b c -⎡⎤⎡⎤⎢⎥⎢⎥===-⎢⎥⎢⎥-⎢⎥⎢⎥⎣⎦⎣⎦(1) 求a +b ,a *b ,a .*b ,a /b ,a ./b ,a ^2,a .^2的结果,并观察运算结果。

源程序和实验结果: >> a+b ans =-6 11 8 17 36 82 75 3 30 >> a*b ans =301 60 130 3101 108 608 1883 113 413ans =-7 24 1660 288 1672476 -40 81>> a/bans =0.0966 0.0945 0.0080-3.6125 1.5838 -0.5778-1.9917 0.9414 -0.2682>> a./bans =-0.1429 0.3750 1.00000.4167 0.5000 1.15790.1029 -1.6000 9.0000>> a^2ans =44 71 244373 511 1736236 333 1109>> a.^2ans =1 9 1625 144 193649 64 729(2)求c中所有元素的平均值、最大值、中值,并将c中元素按从小到大顺序排列。

源程序和实验结果:ans =9.1000ans =46>> min(c)ans =-4>> median(c)ans =4.5000>> sort(c)ans =-4 0 1 2 3 6 6 8 23 46 (3)解释b(2:3,[1,3])的含义,并将生成的数组赋值给d。

>> d=b(2:3,[1,3])d =12 3868 37、已知a=20,b=-2,c=0,d=1,计算下列表达式:(1)r1=a>b(2)r2=a>b&c>d(3)r3=a==b*(-10)(4) r 4=~b |c8、已知⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡----=1323151122231592127A (1) 求矩阵A 的秩(rank);(2) 求矩阵A 的行列式(determinant);(3) 求矩阵A 的逆(inverse);(4)求矩阵A的特征值及特征向量(eigenvalue and eigenvector)。

9、已知多项式f1(x)=2x4-x2+3x+2,f2(x)=3x+2,利用MATLAB进行如下计算:(1)计算两多项式的乘法和除法;(2)求多项式f1(x)的根;(3) 分别计算多项式当x =3以及1324x ⎡⎤=⎢⎥⎣⎦时的值。

10、用两种方法求下列方程组的解,并比较两种方法执行的时间。

12345123451234512345123457 149251003 151******** 92573005 7141624002 512114500x x x x x x x x x xx x x x x x x x x xx x x x x +--+=⎧⎪----=⎪⎪---++=⎨⎪+++-=⎪-++--=⎪⎩ 方法一:恰定方程组方法二:超定方程组11、建立一个元胞数组,要求第一个元素为4Χ4的魔术矩阵,第二个元素为18.66,第三个元素为'matlab',第四个元素为等差数列7,9,11,13…99。

相关主题