东北大学满分Matlab实验报告
- 格式:doc
- 大小:571.50 KB
- 文档页数:21
matlab⼤作业实验报告,《Matlab程序设计》期末实验报告-⼤作业2015.doc《MATLAB程序设计》实验报告学院: 学号: 姓名:⼀、题⽬:1、(10分)已知矩阵,⽤Matlab代码实现以下要求:(1)将矩阵赋给变量A,并在屏幕上显⽰A;(2)将A按列进列逆序重排,重排后的矩阵赋给变量B,并在屏幕上显⽰B;(3)⽤reshape命令将A重排为⼀个2⾏6列矩阵并赋给变量C;(4)将A重排为⼀个列向量,将其赋给变量D,求D的平均值,在屏幕上显⽰D和它的平均值;(5)⽤命令查看变量A的维数,并显⽰运⾏结果。
2、(10分)写代码实现以下要求:构造菜单项‘Plot’,菜单项Plot有两个⼦菜单项Plot sin(选择此项后执⾏画出曲线,线型为虚线,线条颜⾊为红⾊)和Plot cos(选择此项后执⾏画出曲线 ,线型为实线,线条宽度为2)。
3、(20分)已知,实现下列操作:(1)在同⼀个图形窗⼝,同⼀坐标系下⽤不同的颜⾊和线型绘制三条曲线,并添加图例来区分三条曲线(5分)。
(2)⽤subplot命令,以⼦图的⽅式绘制三条曲线,图形排列⽅式为三⾏⼀列(5分)。
(3) 分别⽤直⽅图(bar)、棒状图(stem)和填充图(fill)绘制三条曲线,以⼦图⽅式绘制,排列⽅式为3⾏3列,共9幅⼦图(10分)。
4、(10分)⽤surf命令绘制曲⾯图形,⽤shading interp命令进⾏插值着⾊处理并添加垂直颜⾊棒。
5、(15分)⾃2011年9⽉1⽇起,我国实⾏新的个⼈所得税征收办法,起征点为3500元,请⽤If-else if-else-end结构实现⼈⼯输⼊⽉收⼊后能计算出个⼈所得税的缴纳额并显⽰⽉收⼊10000元时应缴纳的税款。
级数应纳税所得额x(元)税率备注1x<=15003%x指⽉收⼊扣除起征点3500元之后的余额;215008000045%同上6. (10分)⽤while-end循环结构计算级数和的值,输⼊n值,能计算出f的值,并显⽰结果。
目录一、基础题 (2)二、绘图题 (3)三、句柄图形和图形用户界面制作 (9)四、Simulink仿真题 (13)五、专题实验总结 (17)六、参考文献 (17)一.基础题实验目的:1、掌握数组的创建和寻访;2、掌握MA TLAB 数组的运算;3、熟悉MA TLAB 关系操作和逻辑操作;4、掌握函数的调用。
实验要求:1、熟练掌握数组运算;2、熟悉MA TLAB 的各种数据类型及函数调用;3、初步了解M 文件及其编写、调试与运行。
实验内容:某公司投资2000万元建成一条生产线。
投产后,在时刻t 的追加成本和追加收益分别为G(t)= (百万元/年), H(t)= (百万元/年)。
试确定该生产线在合适何时停产可获最大利润?最大利润是多少?解:构造函数f(t)=H(t)-G(t)=13-t-3t 2/3=0 ;令t 1/3=x,则f(t)=-t 3-3t 2+13 可得矩阵P=[-1,-3,0,13]求最佳生产时间的源程序如下:p=[-1,-3,0,13]; x=roots(p); t=x.^3运行结果如下: t =3.6768 +21.4316i 3.6768 -21.4316i4.6465考虑到实际情况,显然两个虚数根应该舍掉。
所以将t=4.6425带入,求积分。
代码:t=4.6465; x=0:0.01:t;y=13-x-3*x.^(2/3); trapz(x,y)运行结果: ans =26.32083/225tt ++3/218t-结论:比较以上三组数据,可知最佳生产时间t=4.6465年,可获得的最大收益为 26.3208(百万元/年)。
减去20(百万元)投资,可得最终利润为6.3208(百万元)。
二.作图题实验目的:1、进一步熟悉M 文件调试过程;2、熟练掌握MA TLAB 二维、三维图形的绘制;3、掌握图形的修饰; 实验要求:1、进一步熟悉和掌握MA TLAB 的编程及调试;2、掌握二维、三维图形的绘制;3、掌握图形交互指令的使用;实验内容:1、二维绘图: (1)函数)sin(2x ey x-=,求:a. 绘制[0 ,8]区间内的图形,加注x,y 轴及图形名称;b. 最大值和最小值;c. 零值;求解:a、命令:ezplot('2*exp(-x)*sin(x)',[0,8]) %绘图title(f) , xlabel('x') ,ylabel('y') %加轴名及图名图像:b、先求最小值:从图像上可以看出,在[3,4]之间有最小值,所以命令:[xmin,fmin]=fminbnd(f,3,4)Hold onPlot(xmin,fmin)运行结果:xmin =3.9270 fmin =-0.0279增加一句标注: text(xmin,fmin,'(3.9270,-0.0279)')求最小值求最大值分析:要求最大值,即为求y=-f(x)的最小值,从图像上可以看出,在[0,2]之间有最大值命令:f=inline('-2*exp(-x)*sin(x)') ezplot(f,[0,8][xmin,fmin]=fminbnd(f,0,2) hold onplot(xmin,fmin,'*') Hold onPlot(xmin,fmin)运行结果: xmin = 0.7854 fmin = -0.6448增加标注:text(xmin,fmin,'(0.7854,-0.6448)')(如上图)综上可知:fmax= 0.6448 fmin= -0.0279c 、为了便于观察,首先增加一条直线y=0 命令:hold onezplot('0',[0,8])图像:0123456780.10.20.30.40.50.60.7x2 exp(-x) sin(x)由图像可以看出,在x=0,x=3,x=6附近有零点,所以命令及运行结果如下:fzero(f,0) %求在x=0附近的零点 ans = 0fzero(f,3) %求在x=3附近的零点 ans =3.1416fzero(f,6) %求在x=6附近的零点 ans =6.2832所以零点有三个分别为:x 1=0 x 2=3.1416 x 3=6.2832(2)在同一个画面上建立几个坐标系, 用subplot(m,n,p)命令;把一个画面分成m×n 个图形区域, p 代表当前的区域号,在每个区域中分别画一个图(函数为:;cos sin 2;cos ;sin x x u x z x y ===xxv cos sin =); 命令:>> subplot(2,2,1)>> ezplot('sin(x)',[-2*pi,2*pi]) >> subplot(2,2,2)>> ezplot('cos(x)',[-2*pi,2*pi]) >> subplot(2,2,3)>> ezplot('2*sin(x)*cos(x)',[-2*pi,2*pi]) >> subplot(2,2,4)>> ezplot('sin(x)/cos(x)',[-2*pi,2*pi])图像:2、三维绘图:(1)绘制[-8 8]区间内函数2222)sin(),(yx y x y x f ++=的三维网格曲面图,给该图加上标题;(2)绘制[-8 8]区间内单叶双曲面 125169222=-+z y x 的三维网格曲面图,给该图加上标题;(3) 求函数 f(x,y) = 3x 2+10y 2+3xy-3x +2y 在原点附近的一个极小值点和极小值;作函数 f(x,y)在|x|<2, |y|<1内的图;解:(1)命令:ezsurf('sin(sqrt(x^2+y^2))/sqrt(x^2+y^2)',[-8,8])title('f=sin(sqrt(x^2+y^2))/sqrt(x^2+y^2)')图像:(2)命令:xa=-8:0.2:8; ya=xa;[x,y]=meshgrid(xa,ya); a=3;b=4;c=5;z1=sqrt(c.^2*(x.^2/(a.^2)+y.^2/(b.^2)-1)); z2=-sqrt(c.^2*(x.^2/(a.^2)+y.^2/(b.^2)-1)); surf(x,y,real(z1)) hold on ;surf(x,y,real(z2)) shading interp图像:(3)求极值点命令:>> f=inline('3*x(1)^2+10*x(2)^2+3*x(1)*x(2)-3*x(1)+2*x(2)')f =Inline function:f(x) = 3*x(1)^2+10*x(2)^2+3*x(1)*x(2)-3*x(1)+2*x(2)>> [x,fval]=fminsearch(f,[0,0])运行结果:x = 0.5946 -0.1892fval = -1.0811所以原点附近的极小值点为(0.5946,-0.1892),极小值为:-1.0811 绘图命令:>> x=-2:0.1:2;>> y=-1:0.1:1;>> [xx,yy]=meshgrid(x,y);>> zz=3.*xx.^2+10.*yy.^2+3.*xx.*yy-3.*xx+2.*yy>> surf(xx,yy,zz)图像:三、句柄图形和图形用户界面制作实验目的:1、熟悉句柄图形体系的对象树结构;2、熟练掌握句柄图形体系的对象属性的创建、设置、查询;3、熟练掌握句柄的获取;4、熟练掌握图形用户界面(GUI)的制作;实验要求:1、会获取和显示图形对象的句柄;2、会设置菜单和子菜单;3、会设置用户控件;实验内容:利用底层绘图指令绘制一条余弦曲线。
MA TLAB作业数学建模与数学实验MATLAB 实验报告指导老师:实验时间:学院:专业班级:姓名:学号:实验一、数组与矩阵输入- 3 -MA TLAB 作业实验二、函数M 文件的建立四、实验结果:学号班级数教一班姓名谢如琴指导教师 叶老师 实验题目函数M 文件的建立评 分一、设计(实习)目的:1结合实际问题展现MATLAB 在生活和学习方面的广泛应用 2学会利用MATLAB 建立函数的方法并求解实际问题 3学会并熟练掌握建立函数M 文件的格式 function 因变量名=函数名(自变量名)因变量名=关于自变量名的表达式(解析式); 二、实验内容:1 定义logistic 模型,并预测1800,1820年美国人口。
2 定义函数()22212211,)00(1)1(f x x x x x =-+-,并求()1,2f 。
3 定义logistic 模型,并预测1800—1920年美国人口。
要求一次输出。
4 定义logistic 模型,并预测1800—1920年美国人口。
要求一次输出预测值及其误差。
0三、详细设计 function y=y1(t)y=464./(1+(464/3.9-1)*exp(-0.2072*t)); function f=fun(x1,x2)f=100*(x2-x1^2)^2+(1-x1)^2; 3、function y=y1(t)y=464./(1+(464/3.9-1)*exp(-0.2072*t));实验三、Matlab程序设计- 5 -MA TLAB 作业因变量名=关于自变量名的表达式(解析式); 二、实验内容:1 定义分段函数21,10,()1,01,,12,x x f x x x x ⎧+-≤<⎪=≤<⎨⎪≤<⎩并计算(),(0.5),(11.5)f f f -。
2 用for-end 循环语句编程求201100!,!n n =∑。
3 用while-end 循环语句求不超过1000的偶数之和与奇数之和4 定义离散的logistic 模型,并预测1800—1920年美国人口。
程序设计实验报告(matlab)实验一: 程序设计基础实验目的:初步掌握机器人编程语言Matlab。
实验内容:运用Matlab进行简单的程序设计。
实验方法:基于Matlab环境下的简单程序设计。
实验结果:成功掌握简单的程序设计和Matlab基本编程语法。
实验二:多项式拟合与插值实验目的:学习多项式拟合和插值的方法,并能进行相关计算。
实验内容:在Matlab环境下进行多项式拟合和插值的计算。
实验方法:结合Matlab的插值工具箱,进行相关的计算。
实验结果:深入理解多项式拟合和插值的实现原理,成功掌握Matlab的插值工具箱。
实验三:最小二乘法实验目的:了解最小二乘法的基本原理和算法,并能够通过Matlab进行计算。
实验内容:利用Matlab进行最小二乘法计算。
实验方法:基于Matlab的线性代数计算库,进行最小二乘法的计算。
实验结果:成功掌握最小二乘法的计算方法,并了解其在实际应用中的作用。
实验六:常微分方程实验目的:了解ODE的基本概念和解法,并通过Matlab进行计算。
实验内容:利用Matlab求解ODE的一阶微分方程组、变系数ODE、高阶ODE等问题。
实验方法:基于Matlab的ODE工具箱,进行ODE求解。
实验结果:深入理解ODE的基本概念和解法,掌握多种ODE求解方法,熟练掌握Matlab的ODE求解工具箱的使用方法。
总结在Matlab环境下进行程序设计实验,使我对Matlab有了更深刻的认识和了解,也使我对计算机科学在实践中的应用有了更加深入的了解。
通过这些实验的学习,我能够灵活应用Matlab进行各种计算和数值分析,同时也能够深入理解相关的数学原理和算法。
这些知识和技能对我未来的学习和工作都将有着重要的帮助。
matlab实验报告总结1.求一份matlab的试验报告计算方法试验报告3【实验目的】检查各种数值计算方法的长期行为【内容】给定方程组x'(t)=ay(t),y'(t)=bx(t), x(0)=0, y(0)=b的解是x-y 平面上的一个椭圆,利用你已经知道的算法,取足够小的步长,计算上述方程的轨道,看看那种算法能够保持椭圆轨道不变。
(计算的时间步长要足够多)【实验设计】用一下四种方法来计算:1. Euler法2. 梯形法3. 4阶RK法4. 多步法Adams公式【实验过程】1. Euler法具体的代码如下:clear;a=2;b=1;A=[0 a; -b0];U=[];u(:,1)=[0;b];n=1000000;h=6*pi/n;fori=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5; u(:,i+1)=u(:,i)+h*A*u(:,i);endt=1:n+1;subplot(1, 2,1);plot(1:n,delta);gridon;subplot(1,2,2);plot(u(1,:),u(2,:));gridon;max(abs(delta-ones(1,length(delta))));结果如下:2. 梯形法具体的代码如下:clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=300;h=6*pi/n;for i=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;v1=u(:,i)+h*A*u(:,i);v2=u(:,i)+h*A*(u(:,i)+v1)/2;1u(:,i+1)=u(:,i)+h*A*(u(:,i)+v2)/2;endt=1:n+1;sub plot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下 3. 4阶RK法clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=70;h=6*pi/n;for i=1:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;k1=A*u(:,i); k2=A*(u(:,i)+h/2*k2); k3=A*(u(:,i)+h*k3); k4=A*(u(:,i)+h*k3); u(:,i+1)=u(:,i)+h/6*(k1+2*k2+2*k3+k4);endt=1:n+1 ;subplot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下:4. 多步法Adams公式clear;a=2;b=1;A=[0 a; -b 0];U=[];u(:,1)=[0;b];n=200;h=6*pi/n;u(:;2)=u(u,1)+h*A*u(:,1);u(:;3)=u(u,2)+h/2*A*(3*u(:,2)-u(:,1));u(:;4)=u(u,3)+h/12*A*(23*u(:,3)-16*u(:,2)+5*u(:, 1)); delta(1)=((u(1,1)/a)^2+(u(2,1)/b^2)^0.5 delta(2)=((u(1,2)/a)^2+(u(2,2)/b^2)^0.5delta(3)=((u(1,3)/a)^2+(u(2,3)/b^2)^0.5for i=4:n delta(i)=((u(1,i)/a)^2+(u(2,i)/b)^2)^0.5;u(:,i+1)=u(:,i)+h/24*A*(55*u(:,i)-59*u(:,i-1)+37 *u(:,i-1)+37*u(:,i-2)-9*u(:,i-3));endt=1:n+1;sub plot(1,2,1);plot(1:n,delta);gridon;subplot(1,2,2);结果如下:【实验分析】通过这几种方法对比,发现最为稳定的是多步法Adams公式和4阶RK法,其次是梯形法,而欧拉法最为不稳定。
Matlab 数学实验报告一、实验目的通过以下四组实验,熟悉MATLAB的编程技巧,学会运用MATLAB的一些主要功能、命令,通过建立数学模型解决理论或实际问题。
了解诸如分岔、混沌等概念、学会建立Malthu模型和Logistic 模型、懂得最小二乘法、线性规划等基本思想。
二、实验内容2.1实验题目一2.1.1实验问题Feigenbaum曾对超越函数y=λsin(πx)(λ为非负实数)进行了分岔与混沌的研究,试进行迭代格式x k+1=λsin(πx k),做出相应的Feigenbaum图2.1.2程序设计clear;clf;axis([0,4,0,4]);hold onfor r=0:0.3:3.9x=[0.1];for i=2:150x(i)=r*sin(3.14*x(i-1));endpause(0.5)for i=101:150plot(r,x(i),'k.');endtext(r-0.1,max(x(101:150))+0.05,['\it{r}=',num2str(r)]) end加密迭代后clear;clf;axis([0,4,0,4]);hold onfor r=0:0.005:3.9x=[0.1];for i=2:150x(i)=r*sin(3.14*x(i-1));endpause(0.1)for i=101:150plot(r,x(i),'k.');endend运行后得到Feigenbaum图2.2实验题目二2.2.1实验问题某农夫有一个半径10米的圆形牛栏,长满了草。
他要将一头牛拴在牛栏边界的桩栏上,但只让牛吃到一半草,问拴牛鼻子的绳子应为多长?2.2.2问题分析如图所示,E为圆ABD的圆心,AB为拴牛的绳子,圆ABD为草场,区域ABCD为牛能到达的区域。
问题要求区域ABCD等于圆ABC的一半,可以设BC等于x,只要求出∠a和∠b就能求出所求面积。
一、实训目的1. 熟悉MATLAB语言的使用2. 了解MATLAB在电子信息课程中的应用3. 掌握MATLAB矩阵输入、运算以及MATLAB数值的运算功能4.掌握各种数据的创建、访问、扩建及缩减5.了解利用MATLAB计算系统响应的方法;验证信号与系统的基本概念、基本理论,掌握信号与系统的分析方法。
二、实训任务和要求1、熟练利用MATLAB语言编程对系统S平面分析2、掌握利用MATLAB分析系统时域的方法,熟悉系统的零输入响应,零状态响应及冲击响应的步骤。
3、MATLAB是目前国际上最流行,应用最广泛的科学与工程计算软件,它由MATLAB语言,MATLAB工作环境,MATLAB图像处理系统,MATLAB数据函数库,MATLAB应用程序接口五大部分组成的集数值计算,图形处理,程序开发为一体的功能强大的系统.它应用于自动控制,数学计算,信号分析,计算机技术,图像信号处理,财务分析,航天工业,汽车工业,生物医学工程,语音处理和雷达工程等各行业,也是国高校和研究部门进行许多科学研究的重要工具。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多。
MATLAB是“矩阵实验室”(MATrix LABoratoy)的缩写,它是以矩阵运算为基础的交互式程序语言,能够满足科学、工程计算和绘图的需求。
与其它计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。
它用解释方式工作,键入持续后立即得出结果,人机交互性能好,易于调试并被科技人员所乐于接受。
特别是它可适应多种平台,并且随着计算机硬软件的更新及时升级,因此MATLAB语言在国外的大学工学院中,特别是频繁进行数值计算的电子信息类学科中,已经成为每个学生都掌握的工具了。
它大大提高了课程教学、解题作业、分析研究的效率。
《Matlab语言与应用》课程实验报告*名:**班级:电信114学号:************指导老师:***二〇一三年十一月二十一日Matlab实验报告实验一一、实验问题求[12 + sin(2)×( 22 −4)]÷3^2的算术运算结果。
二、问题的分析该题主要熟悉Matlab环境下的对数学运算的熟悉,如何输入数据、建立函数输出结果。
三、上机实验结果如图四、实验的总结与体会通过本次实验,我学会了用Matlab来计算数学运算中的复杂技术。
我们也可以自己编写一个可以调用的函数,首先我们要了解Matlab语言函数的基本结构,结构如下:Function [返回变量列表]=函数名(输入变量列表)注释说明语句段,由%引导输入、返回变量格式的检测函数体语句例如:输入变量为k,返回的变量为m和s,其中s为前m项的和Function [m,s]=findsum(k)s=0;m=0;while(s<=k),m=m+1;s=s+m;end编写了函数,就可以将其存为findsum.m文件,这样就可以在Matlab环境中对不同的k值调用该函数了。
这样就可以灵活的实现我们想要的数据。
实验二一、实验问题二、问题分析输入矩阵时,空格或逗号表示间隔,分号表示换行,比如上面的矩阵A应写为A=[1,2,3;4,5,6;7,8,9]三、上机实验结果如图四、实验的总结与体会通过对本次上机实验了解到在Matlab中对矩阵的代数运算矩阵转置、矩阵的加减法运算、矩阵乘法、矩阵的左、右除、矩阵翻转、矩阵乘方运算、点运算等。
实验三一、实验要求画图,理解plot函数用法二、代码如下clear; clf;t=0:pi/20:2*pi;R=5;x=R*sin(t); y=R*cos(t);plot(x,y,'b:'), gridhold onrrr=[x;y;x+y];plot(rrr(1,:),'.','MarkerSize',10,'Color','r')plot(rrr(2,:),rrr(3,:),'o','MarkerSize',15,'Color','b'); axis([-8,20,-8,8]), % axis squarehold off三、Matlab运行结果如图实验四一、实验要求二、代码如下t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r',t,y0,':b',t,-y0,':b') Grid三、Matlab运行结果如图实验五一、实验要求傅里叶频谱分析二、代码及分析(1)首先生成数据,包含50Hz和120Hz频率的正弦波x >>t = 0:.001:.25;>>x = sin(2*pi*50*t) + sin(2*pi*120*t);(2)再生成噪音信号yy = x + 2*randn(size(t));plot(y(1:50))title('Noisy time domain signal')(3)对y进行快速傅里叶变换Y = fft(y,256);(4)计算功率谱Pyy = Y.*conj(Y)/256;f = 1000/256*(0:127);plot(f,Pyy(1:128))title('Power spectral density')xlabel('Frequency (Hz)')(5)只查看200Hz以下频率段plot(f(1:50),Pyy(1:50))title('Power spectral density')xlabel('Frequency (Hz)')三、上机结果如下图实验六一、实验要求FIR数字滤波器设计代码如下clear;close allf=[0,0.6,0.6,1]; m=[0,0,1,1]; % 设定预期幅频响应b=fir2(30,f,m); n=0:30; % 设计FIR 数字滤波器系数subplot(3,2,1),stem(n,b,'.')xlabel('n'); ylabel('h(n)');axis([0,30,-0.4,0.5]),line([0,30],[0,0])[h,w]=freqz(b,1,256);subplot(3,2,2),plot(w/pi,20*log10(abs(h)));gridaxis([0,1,-80,0]),xlabel('w/pi'); ylabel('幅度(dB)');二、上级结果如图实验七二、实验要求用guide实验一个简单的加减乘除计算器二、实验步骤在命令行输入guide命令,进入guide界面新建一个空白guide文件在空白文件中设置好功能模块如图模块建立好后,就要把编写好的加减乘除代码加入到各自的回调函数中,见下图两个被加数代码如下图加模块代码如下图减模块代码如下图乘模块代码如下图除模块代码如下图各模块的回调函数加完后就可以运行了,运行结果如下图总结:Matlab一个高级的距阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。
matlab实验报告Matlab实验报告实验题目:利用Matlab进行数据处理与分析实验目的:通过使用Matlab进行数据处理与分析的实践,掌握Matlab的基本操作和数据处理的方法。
实验内容:1. 数据读取:从文件中读取原始数据,并进行初步的观察和分析。
2. 数据清洗:对原始数据进行清洗,包括去除空值、异常值等。
3. 数据可视化:利用Matlab的绘图函数,将数据可视化呈现,以方便对数据进行进一步的分析和理解。
4. 数据分析:对清洗后的数据进行统计分析,包括求平均值、方差、相关系数等。
5. 模型建立:根据数据分析的结果,建立合适的数学模型,并使用Matlab进行参数估计和模型验证。
6. 结果验证:利用实验数据和模型进行实验结果的对比,验证模型的准确性和可靠性。
实验步骤:1. 准备实验数据:从实验样本中获得原始数据,并将其存储为文本文件。
2. 使用Matlab导入数据:使用Matlab的数据导入函数,将文本文件中的数据导入到Matlab的工作空间中。
3. 数据分析与处理:使用Matlab的数据处理函数,对导入的数据进行清洗和处理,去除异常值和空值,并进行初步的数据观察和分析。
4. 数据可视化:利用Matlab的绘图函数,绘制数据的直方图、散点图、折线图等,以展示数据的分布和趋势。
5. 数据统计分析:使用Matlab的统计分析函数,对处理后的数据进行统计分析,包括计算平均值、方差、相关系数等。
6. 模型建立与验证:根据数据分析的结果,建立合适的数学模型,并使用Matlab进行参数估计和模型验证。
7. 结果对比和讨论:将实验结果与模型预测结果进行对比,并进行结果的讨论和分析。
8. 实验结论:总结实验结果并给出结论。
实验结果:根据实验数据的分析和处理,得出如下结论:1. 数据呈现正态分布,符合正态性假设。
2. 数据之间存在显著的正相关关系,相关系数为0.8,结果具有统计学意义。
3. 建立的数学模型与实验数据拟合良好,模型预测结果与实验结果吻合度高。
第一部分MATLAB语言编程、科学绘图与基本数学问题求解 2.用MATLAB语句输入矩阵A和B
1423143212344321A ,
4j11j43j22j34j11j42j33j24j13j22j31j41j42j33j24j1
B
前面给出的是44矩阵,如果给出5)6,5(A命令将得出什么结果? 解: A=[1 2 3 4;4 3 2 1;2 3 4 1;3 2 4 1] B=[1+4j 2+3j 3+2j 4+1j;4+j 3+2j 2+3j 1+4j;2+3j 3+2j 4+1j 1+4j;3+2j 2+3j 4+j 1+4j] A(5,6)=5 第五行第六列为5,其余空位补0;
3.假设已知矩阵A,试给出相应的MATLAB命令,将其全部偶数行提取出来,赋给B矩阵,用magic(8)A命令生成A矩阵,用上述命令检验一下结果是不是正确。 解: A=[1 2 3 4;4 3 2 1;2 3 4 1;3 2 4 1] B=A(2:2:end,:) A=magic(8)
4.用数值方法可以求出63063622284212iiS,试不采用循环的形
式求出和式的数值解。由于数值方法是采用double形式进行计算的,难以保证有效位数字,所以结果不一定精确。试采用运算的方法求该和式的精确值。 解: a=0:63; s=sum(2.^a) s =1.8447e+019
syms k; s=symsum(2^k,0,63) s = 18446744073709551615
5选择合适的步距绘制出下面的图形。 (1))/1sin(t,其中)1,1(t; (2))tan(sin)sin(tantt,其中),(t。 解:(1)t=[-1:0.014:1];
y=sin(1./t); plot(t,y) -1-0.8-0.6-0.4-0.200.20.40.60.81-1-0.8-0.6-0.4-0.200.20.40.60.81
(2)t=[-pi:0.05:pi];
y=sin(tan(t))-tan(sin(t)); plot(t,y) -4-3-2-101234-3-2-10123 6 试绘制出二元函数2222)1(1)1(1),(yxyxyxfz的三维图和三视图。 解:[x,y]=meshgrid(-2:.1:2);
z=1./(sqrt((1-x).^2+y.^2))+1./(sqrt((1+x).^2+y.^2)); subplot(224),surf(x,y,z) subplot(221),surf(x,y,z),view(0,90);%俯视图 subplot(222),surf(x,y,z),view(90,0);% 侧视图 subplot(223),surf(x,y,z),view(0.0);% 正视图 -202-20201020-2-1012-2-1012-2-1012051015-202-20
2
0
1020
7 试求出如下极限。 (1)xxxx1)93(lim; (2)11lim00xyxyyx; (3)22)()cos(1lim222200yxyxeyxyx。 解:(1)syms x;
f=(3^x+9^x)^(1/x); L=limit(f,x,inf) L = 9
(2)syms x y;
f=x*y/(sqrt(x*y+1)-1); L=limit(limit(f,x,0),y,0) L = 2 (3)syms x y; f=(1-cos(x^2+y^2))/((x^2+y^2)*exp(x^2+y^2)); L=limit(limit(f,x,0),y,0) L = 0
8 已知参数方程tttytxsincoscosln,试求出xydd和3/22ddtxy。 解:syms t;
x=log(cos(t)); y=cos(t)-t*sin(t); f=diff(y,t)/diff(x,t) f1=diff(y,t,2)/diff(x,t,2) L=subs(f1,t,pi/3) f = (cos(t)*(2*sin(t) + t*cos(t)))/sin(t) f1 = (3*cos(t) - t*sin(t))/(sin(t)^2/cos(t)^2 + 1) L = 3/8 - (pi*3^(1/2))/24
9 假设xytteyxf0d),(2,试求222222yfyxfxfyx。 解:syms x y t;
f=int(exp(-t^2),t,0,x*y) f1=x/y*diff(f,x,2)-2*diff(diff(f,x),y)+diff(f,y,2) f1 = 2*x^2*y^2*exp(-x^2*y^2) - 2*x^3*y*exp(-x^2*y^2) -2*exp(-x^2*y^2)
10 试求出下面的极限。 (1)
1)2(1161141121lim2222nn
;
(2))131211(lim2222nnnnnnn
。
解: (1)syms m n;
s=limit(symsum(1/((2*m)^2-1),m,1,n),n,inf) s = 1/2 (2)syms n m;
f=limit(symsum(1/(n^2+m*pi),m,1,n),n,inf) f = 0
11试求出以下的曲线积分。 (1)lsyxd)(22,l为曲线)sin(costttax,)cos(sintttay,
)20(t。 (2)lyyyxexeyx)dy2(xyd)(33,其中l为22222cybxa正向上半椭圆。 解: (1) syms t a;
x=a*(cos(t)+t*sin(t)); y=a*(sin(t)-t*cos(t)); I=int((x^2+y^2)*sqrt(diff(x,t)^2+diff(y,t)^2),t,0,2*pi) I = 2*pi^2*(2*pi^2 + 1)*(a^2)^(3/2) (2) syms t a b;
syms c positive; x=(c/a)^2*cos(t); y=(c/b)^2*sin(t); F=[y*x^3+exp(y),x*y^3+x*exp(y)-2*y]; ds=[diff(x,t);diff(y,t)]; I=int(F*ds,t,0,2*pi) I= 0
12试求出Vandermonde矩阵1eeee1dddd1cccc1bbbb1aaaa234234234234234A的行列式,并以最简的形式显示结果。 解:syms a b c d e;
C=[a,b,c,d,e]; V=vander(C) simplify(det(V)) V =
[ a^4, a^3, a^2, a, 1] [ b^4, b^3, b^2, b, 1] [ c^4, c^3, c^2, c, 1] [ d^4, d^3, d^2, d, 1] [ e^4, e^3, e^2, e, 1]
ans = (a - b)*(a - c)*(a - d)*(b - c)*(a - e)*(b - d)*(b - e)*(c - d)*(c - e)*(d - e)
13试对矩阵22120.54.50.520.50.51.500.50.50.52A进行Jordan变换,并得出变换矩阵。 解:A=[-2,0.5,-0.5,0.5;0,-1.5,0.5,-0.5;2,0.5,-4.5,0.5;2 1 -2 -2];
J=jordan(A) [V,J]=jordan(A) V =
0 0.5000 0.5000 -0.2500 0 0 0.5000 1.0000 0.2500 0.5000 0.5000 -0.2500 0.2500 0.5000 1.0000 -0.2500
J = -4 0 0 0 0 -2 1 0 0 0 -2 1 0 0 0 -2
14 试用数值方法和解析方法求取下面的Sylvester方程,并验证得出的结果。
3664461652141129122921234304001101013376364224150463
XX
解:A=[3,-6,-4,0,5;1 4 2 -2 4;-6 3 -6 7 3;-13 10 0 -11 0;0 4 0 3 4];
B=[3 -2 1;-2 -9 2;-2 -1 9]; C=[-2 1 -1;4 1 2;5 -6 1;6 -4 -4;-6 6 -3]; X = lyap(A,B,C) X =
-4.0569 -14.5128 1.5653 0.0356 25.0743 -2.7408 9.4886 25.9323 -4.4177 2.6969 21.6450 -2.8851 7.7229 31.9100 -3.7634
>> norm(A*X+X*B+C) ans = 3.4356e-13
15 假设已知矩阵A如下,试求出Ate,Atsin,)sin(2teAeAtAt。
31101.52.511.50.50.540.51.50.504.5
A