MATLAB实验报告.docx
- 文档编号:10135124
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:42
- 大小:587.97KB
MATLAB实验报告.docx
《MATLAB实验报告.docx》由会员分享,可在线阅读,更多相关《MATLAB实验报告.docx(42页珍藏版)》请在冰豆网上搜索。
MATLAB实验报告
学校代码:
学号:
2
《Matlab》实验报告
(
学生姓名:
学院:
理学院
系别:
专业:
班级:
信计
任课教师:
二〇一二年五月
实验报告一:
MATLAB的基本运算以及常用数据类型
实验内容一基本运算
例1算术运算
>>30+2*60/3-20
ans=
50
>>
例2关系运算
>>x=5;
>>y=4;
>>x>y
ans=
1
>>x~=y
ans=
1
>>x ans= 0 例3逻辑运算符 >>a=2; >>b=4; >>c=(a<1)&(b>2) c= 0 >>d=(a<1)|(b>2) d= 1 实验内容二常用数据类型 例1数值类型 >>z=4+7i z= 4.0000+7.0000i >>z0=5+7j z0= 5.0000+7.0000i 例2字符串类型 >>a='Whatisyourname? ' a= Whatisyourname? >>length(a) ans= 18 >>size(a) ans= 118 >> 例3变量 >>clearall >>whos >>a='Oh',b='mygod' a= Oh b= mygod >>who Yourvariablesare: ab >>whos NameSizeBytesClass a1x24chararray b1x612chararray Grandtotalis8elementsusing16bytes 例4MATLAB中常用数学函数 >>a=1+5i; >>b=10; >>c=5; >>imag(a) ans= 5 >>real(a) ans= 1 >>sqrt(b) ans= 3.1623 >>min(b,c) ans= 5 实验报告二矩阵 实验内容一矩阵的构造 一般矩阵的构造 例1构造矩阵 代码如下 >>A=[1,2,3;4,5,6] A= 123 456 例2构造矩阵 代码如下 >>B=[2,pi/2;sqrt(3),3+5i] B= 2.00001.5708 1.73213.0000+5.0000i 例3利用构造好的矩阵构造更大矩阵 代码如下: >>C=[A,B] C= 1.00002.00003.00002.00001.5708 4.00005.00006.00001.73213.0000+5.0000i 例4利用构造好的A矩阵构造更大矩阵 >>[AA;AA] ans= 123123 234234 123123 234234 特殊矩阵的生成 例5构造三行三列的零矩阵 代码如下 >>b=zeros(3,3) b= 000 000 000 例6构造三行三列的元素都为1的矩阵 代码如下 >>c=ones(3,3) c= 111 111 111 例7构造三行三列的单位矩阵 代码如下 >>d=eye(3,3) d= 100 010 001 例8产生一个0与1之间服从均匀分布的3行3列矩阵 代码如下 >>e=rand(3,3) e= 0.95010.48600.4565 0.23110.89130.0185 0.60680.76210.8214 实验内容二矩阵元素的访问与子矩阵提取 例1把A矩阵元素排成1排. 代码如下: >>A=[1,2,3;2,3,4];B=A(: ) B= 1 2 2 3 3 4 例2提取A矩阵的第二行第三列元素 代码如下: >>A=[1,2,3;2,3,4]; >>A(2,3) ans= 4 例3提取A矩阵的第二三列元素 代码如下: A=[1,2,3;2,3,4]; A(: 3) ans= 3 4 例4将矩阵 中末尾元素改为0 代码如下: >>a=[120;305;789],a(3,3)=0 a= 120 305 789 a= 120 305 780 实验内容三矩阵的运算 已知 , . 例1计算a*b 代码如下 >>a=[123;456;780];b=[1;2;3]; >>c=a*b c= 14 32 23 例2计算 代码如下 f=pi*a f=pi*a f= 3.14166.28329.4248 12.566415.708018.8496 21.991125.13270 例3计算a的转置 代码如下 c=a' c= 147 258 360 例4计算a的平方 代码如下 a^2 ans= 303615 668142 395469 例5矩阵的关系运算 代码如下 >>A=1: 9,B=10-A,r0=(A<4),r1=(A==B) A= 123456789 B= 987654321 r0= 111000000 r1= 000010000 实验报告三向量和数组 实验内容一向量的输入 例1输入向量 ; 代码如下 >>a=[1,4,7],b=[1;4;7] a= 147 b= 1 4 7 例2输入向量a的初值为1,步长为3,最大值不超过16;向量b初值为80,步长为-20,最小值不小于0. 代码如下 >>a=1: 3: 16,b=80: -20: 0 a= 147101316 b= 806040200 例3在2与50之间产生3个元素的线性等分向量。 代码如下 >>a=linspace(2,50,3) a= 22650 实验内容二向量的运算 例4这里的a为上例线性等分函数所产生的a;计算a-4,a*4 代码如下 >>a-4 ans= -22246 >>a*4 ans= 8104200 例5计算a向量和b向量的点积和叉积;其中 , 代码如下 >>a=[1,2,3];b=[4,5,6]; >>c=dot(a,b) c= 32 >>d=cross(a,b) d= -36-3 实验内容三数组 数组的运算 数组 , . 分别计算 代码如下 >>x+y ans= 101112 888 121110 >>x-y ans= -8-5-2 -404 258 >>x.*y ans= 92435 121612 35249 >>x*y ans= 523518 725028 15611574 >>x./y ans= 0.11110.37500.7143 0.33331.00003.0000 1.40002.66679.0000 >>x.^3 ans= 127125 864216 343512729 一些常用的多维数组维间处理的函数: >>X=[1,2,3;4,5,6]; >>reshape(X,3,2) ans= 15 43 26 >>size(X) ans= 23 >>ndims(X) ans= 2 实验报告四MATLAB中的多项式及其运算 实验内容一多项式的生成 例1: 输入多项式 代码如下 >>h=[12104]; >>poly2str(h,'x') ans= x^4+2x^3+x^2+4 例2输入多项式 >>a=[123;456;789]; >>A=poly(a) A= 1.0000-15.0000-18.0000-0.0000 >>AX=poly2str(A,'x') AX= x^3-15x^2-18x-1.8553e-014 例3输入多项式 >>b=[1111] b= 1111 >>PB=poly(b) PB= 1-46-41 >>P=poly2str(PB,'x') P= x^4-4x^3+6x^2-4x+1 实验内容二多项式的运算 例1: 求多项式 与 的和、差、积、商。 >>a=[130-5]; >>b=[0201]; >>A=a+b A= 150-4 >>poly2str(A,'x') ans= x^3+5x^2-4 >>B=a-b B= 110-6 >>poly2str(B,'x') ans= x^3+x^2-6 >>C=conv(a,b) C= 0261-70-5 >>poly2str(C,'x') ans= 2x^5+6x^4+x^3-7x^2-5 >>D=deconv([130-5],[201]) D= 0.50001.5000 >>poly2str(D,'x') ans= 0.5x+1.5 例2求多项式 的根 >>a=[130-5]; >>roots(a) ans= -2.0519+0.5652i -2.0519-0.5652i 1.1038 例3对同一个多项式及变量分别计算矩阵计算和数组计算值。 >>A=[1234]; >>B=[43;21]; >>polyval(A,B) ans= 11258 2610 >>polyvalm(A,B) ans= 178120 8058 例4求 的导数 >>a=[1-12-34]; >>A=polyder(a) A= 4-34-3 >>poly2str(A,'x') ans= 4x^3-3x^2+4x-3 实验报告五用MATLAB做二维图形 例1描点作图 y= ; 代码如下: x=-3: 1: 3; y=x+x.^2-x.^5; plot(x,y,'+',x,y) 例2显函数作图(fplot) ; 代码如下: 先建立M文件myfun.m functiony=myfun(x) y=x+sin(x)+exp(x); 再输入命令: fplot('myfun',[-5,5]) 例3隐函数作图(ezplot) 代码如下: 先建立M文件myfun1.m functiony=myfun(x,y) y=x+(1/2)*sin(y); 再输入命令: ezplot('myfun1',[-5,5,-6,6]) 例4参数方程作图 代码如下: ezplot('sin(t).^2','cos(t).^2',[-pi,pi]) 例5参数方程作图 代码如下: ezplot('3*(2*cos(t)-cos(2*t))','3*(2*sin(t)-sin(2*t))',[-pi,pi]) gridon gtext('心形线'); 5极坐标作图 +20; 代码: theta=linspace(0,2*pi,36); rho=3*cos(theta)+20; polar(theta,rho,'b'); 实验报告六用MATLAB做三维图形 例1空间曲面作图 代码: ezsurf('7./2-x+3*y') 例2做图形 代码如下 x=-2: 0.01: 2; y=-2: 0.01: 2; [X,Y]=meshgrid(x,y); Z=meshgrid(1373./((x.^2+y.^2+6.25)).^(3/2)); mesh(X,Y,Z); 例3做图形 x=-5: 0.01: 5; y=--5: 0.01: 5; [X,Y]=meshgrid(x,y); Z=meshgrid(15*x./((x.^2+y.^2).^(3/2)+1)); mesh(X,Y,Z); 例4用mash函数绘制的Hilbert矩阵图形 实验代码 z=hilb(10) >>mesh(z) 实验报告七MATLAB程序设计 实验内容一选择结构 if语句 f表达式1 程序模块1 elseif表达式2 程序模块2 。 。 。 elseif表达式n 程序模块n else 程序模块n+1 end 例1M脚本文件A.m functiony=fun1(x) if(x>=-1)&(x<0) y=x+1; elseifx<1 y=sin(x)+1; elseifx<=2 y=x.*x; end 在命令窗口输入example4,运行结果: >>fun1(-0.5) ans= 0.5000 >>fun1(0) ans= 1 >>fun1 (1) ans= 1 switch语句 switch表达式 case数值1 程序模块1 case数值2 程序模块2 。 。 。 otherwise 程序模块n 。 。 。 end 例2学生的成绩管理 M脚本文件example4.m mark=86; n=fix(mark/10); switchn case10 Rank='满分' case9 Rank='优秀' case8 Rank='良好' case{6,7} Rank='及格' otherwise Rank='不及格' end 在命令窗口输入example4,运行结果: Rank= 良好 实验内容二循环结构 for语句循环结构 其格式为: for循环变量=起始值: 步长: 终止值 循环体 End 例3: 计算1到10的和 M脚本文件A.m s=0; fori=1: 10; s=s+i; end; s 在命令窗口输入A,运行结果: S=55 while语句循环结构 其格式为: while表达式 循环体 end 当表达式的结果为真时,反复执行其循环体内的语句,直到表达式的值为假时,推出循环。 例4Fibonacci数组的元素满足Fibonacci规则: , ;且 。 求出该数组中第一个大于10000的元素。 脚本文件B.m a (1)=1;a (2)=1;i=2; whilea(i)<=10000 a(i+1)=a(i-1)+a(i); i=i+1; end; i,a(i), 在命令窗口输入B,运行结果: i= 21 ans= 10946 实验报告八MATLAB符号运算 实验内容一符号生成、符号变量、符号表达式 例1输入 代码如下 >>f='x^2+1' f= x^2+1 >>a=sym('x^2+1') a= x^2+1 例2求 的导数,原函数和微分。 代码如下 >f=sym('x^4-x^3+2*x^2-3*x+4') f= x^4-x^3+2*x^2-3*x+4 >>df=diff(f) df= 4*x^3-3*x^2+4*x-3 >>f=sym('x^4-x^3+2*x^2-3*x+4') f= x^4-x^3+2*x^2-3*x+4 >>nf=int(f) nf= 1/5*x^5-1/4*x^4+2/3*x^3-3/2*x^2+4*x >>solve(f) ans= 实验内容二符号表达式的运算 例1求多项式 与 的和、差、积、商。 代码如下 >>A=sym('x^3+3*x^2-5'); >>B=sym('2*x^3+1'); >>A+B ans= 3*x^3+3*x^2-4 >>A-B ans= -x^3+3*x^2-6 >>A*B ans= (x^3+3*x^2-5)*(2*x^3+1) >>A/B ans= (x^3+3*x^2-5)/(2*x^3+1) 例2合并函数 代码如下 >>f=sym('4*x^3+x^3+2*x^2+1'); >>collect(f) ans= 5*x^3+2*x^2+1 例3展开函数 代码如下 >>A=sym('(x+1)^3'); >>expand(A) ans= x^3+3*x^2+3*x+1 例4求 的反函数? >>C=sym('2*x^3+1'); >>finverse(C) Warning: finverse(2*x^3+1)isnotunique. >Insym.finverseat43 ans= 1/2*(-4+4*x)^(1/3) 例5复合函数 >>symsxyzt; >>f=x^2; >>g=sin(y); >>h=x^t; >>compose(f,g) ans= sin(y)^2 >>compose(f,g,t) ans= sin(t)^2 >>compose(h,g,x,z) ans= sin(z)^t 例6表达式替换函数 >>f=sin(x); >>subs(f,y) ans= sin(y) >>subs(f,x,t) ans= sin(t) 实验报告九MATLAB在概率统计中的应用 1、统计量的数字特征 1)简单数学期望和平均值 例1: 求样本55.5,55.7,56.1,57.1,53.4,54.5,58.1,52.9,57.3,59.0的均值。 >>j=[55.555.756.157.153.454.558.152.957.359.0]; >>mean(j) ans= 55.9600 例: 求下列数据表E(X) x -2 0 2 y 0.4 0.3 0.3 解: >>x=[-202]; >>y=[0.40.30.3]; >>sum(x.*y) ans= -0.2000 2)数据的比较 求例1中的样本的最大值和最小值以及从大到小排序和最大值和最小值之差 >>max(j) ans= 59 >>min(j) ans= 52.9000 >>range(j) ans= 6.1000 3)方差和标准差 求例1中的样本方差和标准差 >>var(j) ans= 3.9182 >>std(j) ans= 1.9794 4)偏斜度和峰度 求例1中的样本的偏斜度和峰度 >>var(j) ans= 3.9182 >>std(j) ans= 1.9794 >>skewness(j) ans= -0.1038 >>kurtosis(j) ans= 1.9823 5)协方差和相关系数 求例1中的样本的协方差和相关系数 >>cov(j) ans= 3.9182 >>corrcoef(j) ans= 1 2、常用的统计分布量 1)期望和方差 例求参数为0.45和0.12的β分布的期望和方差。 >>[m,n]=betastat(0.45,.012) m= 0.9740 n= 0.0173 例: 求参数为7的泊松分布的期望和方差。 >>[m,n]=poisstat(7) m= 7 n= 7 2)概率密度函数 例计算正态分布N(0,1)下的在点0.4321的值。 >>pdf('norm',0.4321,0,1) ans= 0.3634 >>normpdf(0.4321,0,1) ans= 0.3634 3)概率值函数 例求设 求 。 >>p=normcdf(10,3,2)-normcdf(-4,3,2) p= 0.9995 >> 3、参数估计与参数估计 例假设例1中样本服从正态分布 ,求μ和σ的置信度为0.95的置信区间(σ未知)。 >>j=[55.555.756.157.153.454.558.152.957.359.0]; >>[agjz,bgjz,azxqj,bzxqj]=normfit(j,0.05) agjz= 55.9600 bgjz= 1.9794 azxqj= 54.5440 57.3760 bzxqj= 1.3615 3.6137 因此,μ的估计值为55.9600,估计区间为[54.5440,57.3760];σ的估计值为1.9794,估计区间为[1.3615,3.6137] 4、假设检验 例: 某电子元件的寿命的寿命X服从正态分布, 均未知。 现测得16只元件的寿命如下所示。 159 280 101 212 224 379 179 264 222 362 168 250 149 260 485 170 问是否有理由认为元件的平均寿命大于225(小时)? 按题意假设 >>X=[159280101212224379179264222362168250149260485170]; >>[H,sig]=ttest(X,225,0.05,1) H= 0 sig= 0.2570 结果表明,H=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 实验 报告