matlab实习报告
MATLAB实验报告

MATLAB实验报告一、实验目的本次 MATLAB 实验旨在深入了解和掌握 MATLAB 软件的基本操作和应用,通过实际编程和数据处理,提高解决问题的能力,培养编程思维和逻辑分析能力。
二、实验环境本次实验使用的是 MATLAB R2020a 版本,运行在 Windows 10 操作系统上。
计算机配置为英特尔酷睿 i5 处理器,8GB 内存。
三、实验内容(一)矩阵运算1、矩阵的创建使用直接输入、函数生成和从外部文件导入等方式创建矩阵。
例如,通过`1 2 3; 4 5 6; 7 8 9` 直接输入创建一个 3 行 3 列的矩阵;使用`ones(3,3)`函数创建一个 3 行 3 列元素全为 1 的矩阵。
2、矩阵的基本运算包括矩阵的加减乘除、求逆、转置等。
例如,对于两个相同维度的矩阵`A` 和`B` ,可以进行加法运算`C = A + B` 。
3、矩阵的特征值和特征向量计算通过`eig` 函数计算矩阵的特征值和特征向量,加深对线性代数知识的理解和应用。
(二)函数编写1、自定义函数使用`function` 关键字定义自己的函数,例如编写一个计算两个数之和的函数`function s = add(a,b) s = a + b; end` 。
2、函数的调用在主程序中调用自定义函数,并传递参数进行计算。
3、函数的参数传递了解值传递和引用传递的区别,以及如何根据实际需求选择合适的参数传递方式。
(三)绘图功能1、二维图形绘制使用`plot` 函数绘制简单的折线图、曲线等,如`x = 0:01:2pi; y = sin(x); plot(x,y)`绘制正弦曲线。
2、图形的修饰通过设置坐标轴范围、标题、标签、线条颜色和样式等属性,使图形更加清晰和美观。
3、三维图形绘制尝试使用`mesh` 、`surf` 等函数绘制三维图形,如绘制一个球面`x,y,z = sphere(50); surf(x,y,z)`。
(四)数据处理与分析1、数据的读取和写入使用`load` 和`save` 函数从外部文件读取数据和将数据保存到文件中。
matlab实训心得体会(通用23篇)

matlab实训心得体会(通用23篇)matlab实训篇1自己刚刚接触matlab有半个学期的时间,说实话我现在对MATLAB还是摸不着头脑,一方面是自己接触的时间太短,另一方面,就是自己在上机方面投入的时间有限,实践比较少。
现在,我对MATLAB的印象仅仅在解决习题和绘制图形上,但是我很喜欢MATLAB的简单的语法,易于绘制图形,编程也非常容易, 并且具有功能强大的开放式的toolbox。
因此,尽管我一直没有这方面的应用,但是我还是对它非常感兴趣,自己正打算暑假好好研究研究MATLAB。
下面是我学习MATLAB在理论和实践方面的一点心得与体会,可能有些地方自己理解的不是很正确,但是随着学习的深入,我想我可以发现自己的错误所在。
首先我想说的是,在理论方面,在学习MATLAB过程中,我感觉到它和c语言有许多相似之处,他有c语言的特征,但是比c语言编程计算更加简单,适合于复杂的数学运算。
但是MATLAB跟其他语言也有着很大的不同。
现在用的比较多的编程语言,除了MATLAB就应该是c、c++、VHDL,VB和Delphi也接触过,如果自己抱着“把其他语言的思想运用在MATLAB里面”的话,那么我想,即使程序运行不出错,也很难把握MATLAB的精髓,也就很难发挥MATLAB的作用了。
众所周知MATLAB是一个基于矩阵运算的软件,但是,真正在运用的时候,特别是在编程的时候,许多人往往没有注意到这个问题。
在使用MATLAB时,受到了其他编程习惯的影响,特别是经常使用的C语言。
因此,在MATLAB编程时,for循环(包括while循环)到处都是。
.这不仅是没有发挥MATLAB所长,还浪费了宝贵的时间。
我这里想说的一点是,往往在初始化矩阵的时候注意到这个问题,懂得了使用矩阵而不是循环来赋值,但是,在其他环节上,就很容易疏忽,或者说,仍然没有摆脱C++、C的思想。
MATLAB博大精深,涉及的内容很多,所以,我认为不要试图掌握MATLAB的每一个功能,熟悉和你专业最相关的部分就可以了,这也是老师在课堂上经常说的。
matlab_实习报告

matlab_实习报告在大学的学习生涯中,实习是一个非常重要的环节,它能够让我们将理论知识与实际应用相结合,提升自己的专业技能和综合素质。
本次实习,我选择了使用 MATLAB 这个强大的工具进行实践操作,通过一段时间的学习和实践,我收获颇丰。
一、实习目的本次实习的主要目的是深入了解和掌握MATLAB 软件的使用方法,能够运用其解决实际问题,并提高自己的编程能力和逻辑思维能力。
同时,通过实际项目的操作,培养自己的团队协作精神和解决问题的能力,为今后的学习和工作打下坚实的基础。
二、实习单位及岗位介绍我实习的单位是_____,在实习期间,我主要负责利用 MATLAB 进行数据分析和算法实现的相关工作。
三、实习内容及过程(一)基础学习在实习的初期,我首先对 MATLAB 的基本语法和操作进行了系统的学习。
了解了变量的定义、数据类型、矩阵运算、函数的编写等基础知识。
通过大量的练习和实例,我逐渐熟悉了 MATLAB 的编程环境,能够熟练地编写简单的程序。
例如,在学习矩阵运算时,我通过编写程序实现了矩阵的加法、乘法、求逆等操作,深刻理解了矩阵运算在数学和工程中的重要应用。
(二)项目实践在掌握了基础知识后,我开始参与实际的项目。
其中一个项目是对一组数据进行分析和处理,以提取有用的信息。
首先,我使用MATLAB 读取数据文件,并对数据进行预处理,包括去除噪声、缺失值处理等。
然后,运用统计学方法对数据进行分析,计算均值、方差、相关性等统计量。
最后,通过绘图函数将分析结果以直观的图表形式展示出来,以便更好地理解数据的特征和趋势。
在这个过程中,我遇到了很多问题。
例如,数据的格式不一致导致读取错误,算法的复杂度过高导致运行时间过长等。
通过查阅资料、请教同事和不断地调试,我最终解决了这些问题,顺利完成了项目任务。
(三)算法实现除了数据分析,我还参与了算法的实现工作。
在一个图像识别的项目中,需要使用机器学习算法对图像进行分类。
MATLAB实习报告

MATLAB实习报告实习报告一、实习单位概述我在公司完成了为期两个月的MATLAB实习。
该公司是一家致力于研发和生产先进电子产品的科技型企业。
公司专注于电脑硬件和软件产品的开发,拥有一支强大的研发团队,同时与多个国内外知名大学与研究机构合作。
二、实习内容在实习期间,我主要负责开发一个基于MATLAB的图像处理算法,用于自动识别和分类图像中的目标物体。
具体而言,我的任务包括以下几个方面:1.数据预处理:对输入图片进行预处理,包括灰度化、降噪、图像增强等操作,以提高后续算法的准确性和鲁棒性。
2.特征提取:使用MATLAB内置的图像处理工具箱,提取目标物体的特征信息,如颜色、纹理、形状等。
3.目标识别:通过编写MATLAB脚本,实现目标物体的自动识别,使用机器学习算法训练分类器,并应用于测试集中的图像。
4.结果评估:对算法的准确性和性能进行评估,包括计算分类准确率、召回率等指标,并分析算法的优缺点和改进空间。
三、实习收获通过这次实习,我收获了许多宝贵的经验和知识。
首先,我深入学习了MATLAB的图像处理工具箱,了解了常用的图像处理算法和技术。
在实践中,我熟悉了MATLAB的基本语法和函数,并学会了如何利用MATLAB进行图像的读取、处理和保存。
其次,我掌握了图像特征提取和目标识别的方法和技巧。
通过对图像进行灰度化、降噪和图像增强等预处理步骤,我能够有效提取目标物体的特征信息,并通过机器学习算法实现目标的自动识别和分类。
最后,我学会了如何评估和改进算法的准确性和性能。
通过对测试集中的图像进行分类,并计算分类准确率和召回率等指标,我能够客观地评估算法的优劣,并提出针对性的改进方法。
四、实习总结通过这次实习,我不仅得到了理论知识的巩固和实践技能的提升,还培养了团队合作和解决问题的能力。
在与团队成员的合作中,我学会了如何与他人相互协作,分享经验与知识,并且通过互相帮助和配合,达到更好的工作效果。
同时,面对实习过程中遇到的问题和困难,我学会了如何利用各种资源和工具,积极主动地解决问题。
matlab实习总结.(大全5篇)

matlab实习总结.(大全5篇)第一篇:matlab实习总结.MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 matlab开发工作界面接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用Matlab是一个强大的数学工具,它的应用广泛,涉及到各个领域.它使用起来十分方便,不用麻烦去定义变量.它的绘图能力很强,甚至可以模拟出三维视图.矩阵是它应用的核心,许多工程繁琐的运算都需要靠矩阵来化简,这正是它的生命力所在.但是,他的函数很多,开始学时记的比较痛苦,我已经深深感觉到了.不过看多了也就熟了,感觉和学五笔差不多.它的语法简单,像我学过C语言的学起来还是蛮容易的.它的数组定义十分符合自然,是从1开始的,数组元素的调用也很接近数学的表达.此外,函数的名字也很符合英文规则,反正我用得很开心就是了.通过学习matlab,我又一次锻炼了自己的思维.它学起来得心应手也让我明白了学习一门语言(c语言对学习其他语言的帮助指导作用.同时,它也加强了我理论联系实际的能力.这是一个专业课的基础工具,学好它是必要的.在第一章中,讲的是一些matlab的入门技术,除了一些基本操作与介绍之外,还初步认识了简单指令的编制,认识了一些matlab 的特殊符号,例如运算用到的加减乘除。
matlab实验报告

(2)将上述信号左平移或右平移 得到两个新信号y2和y3,利用hold命令在同一图中显示三条曲线并通过线型和颜色加以区分。
(3)利用subplot命令将y,y2和y3以子图的形式显示。
3.
实验结果及分析
1.(1)
t1 =
0.0780
实验结果及分析
(2)
t2 =
0.0780
实验结果及分析
(3)
t3 =
0
实验结果及分析
2.
实验
名称
实验四Matlab在通信系统中的应用
实验目的
1、练习通信原理中各种调制方法及简单通信系统的Matlab编程实现;
2、学习Matlab与Simulink的混合编程。
(2)y变成虚数后,重复上述运算。
(3)创建矩阵 ,并进行如下操作,取出矩阵A的前两行元素,生成一个新矩阵B。生成一个3*3的单位矩阵B,与矩阵A进行加、减、乘、除、相等、不相等运算。
(4)随机生成2个复数x1和x2,计算x3=x1÷x2,x3的实部real_x3、虚部image_x3、模abs_x3、幅角angle_x3,并把x1,x2,x3,real_x3,image_x3,abs_x3,angle_x3保存至文件complex_学号.mat。利用save命令保存数据为mat格式文件后,用clear命令清除工作空间中的变量,再利用load命令从文件读入数据。
2、流程控制语句相关操作。
(1)使用for语句及while语句求解1至100整数中奇数的和。
(2)求连续自然数的和,当和大于等于1000时,求最后一个自然数以及自然数的和。
MATLAB_实习报告范文大全

MATLAB_实习报告范文大全第一篇:MATLAB_实习报告实习报告实习题目:专业:学号:的设计与绘图MATLAB 一.概述MATLAB 作为一种高级科学计算软件,是进行算法开发、数据可视化、数据分析以及数值计算的交互式应用开发环境。
世界上许许多多的科研工作者都在使用 MATLAB 产品来加快他们的科研进程,缩短数据分析和算法开发的时间,研发出更加先进的产品和技术。
二.实验目的1.进一步熟悉MATLAB的软件环境和基本使用方法;2.巩固运用MATLAB、矩阵运算、多项式运算、字符串、单元数组、符号计算功能、绘图及句柄图形及它们的命令语句;3.学习和巩固数字图形图像处理在MATLAB中的知识和运用;4.培养我们独立自学、设计和撰写实验报告的能力;5.通过对MATLAB的进一步学习,是我们加深所学内容的认识,理解,掌握,能把所学知识运用到实际工作中;三.实习日记1.熟悉MATLAB的软件环境和基本使用方法(第一周)MATLAB的语言的基本功能和特点:它是一种高级科学计算语言,相对于传统的C、C++ 或者FORTRAN 语言,MATLAB 提供了高效快速解决各种科学计算问题的方法。
它具有数学计算、开发工具、数据的可视化、交互式编辑创建图形、集成的算法开发编程语言和环境、图形用户界面开发环境——GUIDE、开放性、可扩展性强、专业应用工具箱等强大的功能。
具有易于学习、使用方便、支持多种操作系统、丰富的内部函数、强大的图形和符号功能等优点。
路径设置:除 MATLAB 默认的搜索路径外,用户可以设置搜索路径。
设置方法为:选择 MATLAB 窗口中的 File | Set Path 命令,进入路径搜索对话框。
MATLAB 的搜索顺序:当在命令窗口中或者一个 M 文件中输入一个元素名时,MATLAB 按照下面的顺序搜索该元素的意义,以元素foo 为例:1)查找工作区中是否存在名为 foo 的变量; 2)在当前路径中查找是否存在名 foo.m 的文件;3)按照顺序查找搜索路径中是否存在该文件。
matlab实验心得总结(5篇范例)

matlab实验心得总结(5篇范例)第一篇:matlab实验心得总结通过《matlab仿真》实验使我学习掌握了许多知识。
首先是对matlab有了一个全新的认识,其次是对matlab的更多操作和命令的使用有了更高的掌握,最重要的事对matlab的处理能力有了一个更高的飞跃尤其是对相关函数的使用及相关问题的处理。
就对matlab相关的命令操作而言,通过这次实验的亲身操作和实践,学习掌握了许多原本不知道的或者不太熟悉的命令。
比如说相关m文件的建立,画图用到的标注,配色,坐标控制,同一张图里画几幅不同的图像,相关参数的设置以及相关函数的调用格式等等。
就拿建立一个数学方程而言,通过设置不同的参数达到所需要的要求和结果,而且还可以在不同的窗口建立不同的函数而达到相同的效果,比如说可以再命令窗口和m文件中通过不同的命令设置的到相同的所需的效果图。
而自己对于矩阵及闭环传递函数的建立原本所掌握的知识几乎为零,而通过这次实验使我彻底的掌握了相关的命令操作和处理的方法,在这里我们不仅可以通过建立函数和参数来达到目标效果,而且还可以通过可视化的编程达到更快更方便,更简洁的效果。
就拿可视化编程而言原本根本就只是听说而已罢了,从来就没有亲身去尝试过,然而现在自己却可以和容易的通过搭建不同功能木块来实现相关的函数及功能。
这些在原本根本就不敢相信,然而通过《matlab仿真》的学习和实验亲身操作这些原本看似不可能的操作在此就变的轻而易举的事了。
再此我不得不题到的事指导老师教我们怎么去搭建构造相关闭环传递函数的实验,这个实验几乎在我们的这次实验中占据了非常大的比重,在后面的几个大一点的实验中几乎都是涉及这个方面的内容,我现在想说的事怎么去搭建相关的函数和功能模块对我们来说几乎已经不是什么难事了,就拿怎么去对模块功能的实现以及分析确实是个重点和难点。
通过对同一个模块分析其对应的不同的参数分析图的建立去分析和解释其对应的相关功能和技术指标和性能分析是非常重要的,我们不可能只需要建立相关的模块和功能就说自己掌握了所有的相关知识和技术,真正的技术和知识是怎么去分析和解释相关的技术指标和功能参数才是重中之重。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Matlab实习报告1.分别使用poly 和polyfit 命令,将下列多项式表示为幂级数形式:)5)(3)(2)(1(4)3)(4)(3)(1(5++--=--++=x x x x x y x x x x y (1) 程序x=[-1,-3,4,3];p1=5*poly(x)poly2str(p1,'x')x=-3:0.5:4;y=polyval(p1,x);p2=polyfit(x,y,3)poly2str(p2,'x')运行结果(2)程序x=[0,1,2,-3,-5]; p1=4*poly(x)poly2str(p1,'x') x=-5:0.5:2;y=polyval(p1,x); p2=polyfit(x,y,4) poly2str(p2,'x') 运行结果2.分别求出经过下述数据点集多项式的幂级数形式:(1) (-1,1), (1,4)程序x=[-1,1];y=[1,4];p=polyfit(x,y,1)poly2str(p,'x')plot(p)运行结果(2) (-2,2), (0,-1), (2,1)程序x=[-2,0,2];y=[2,-1,1];p=polyfit(x,y,2)poly2str(p,'x')plot(p)运行结果(3) (-1,-1), (0,0), (1,2), (2,5)程序x=[-1,0,1,2];y=[-1,0,2,5];p=polyfit(x,y,3)poly2str(p,'x')plot(p)运行结果3.分别在指定定义域内绘制下列函数图形:100)exp(40)2(1140)cos(1)sin(22≤≤-=≤≤-+=≤≤+=x x x y x x y x x x y π 将三个函数曲线话在同一幅图中,图例指出每条曲线代表的函数.x1=0:0.01:4*pi;y1=sin(x1)./(1+cos(x1));x2=0:0.01:4;y2=1./(1+(x2-2).^2);x3=0:0.01:10;y3=exp(-x3).*x3.^2;plot(x1,y1,'r',x2,y2,'*',x3,y3,'-'),axis([0 4*pi 0 4]);grid on,gtext('y1=sin(x1)./(1+cos(x1))'),gtext('y2=1./(1+(x2-2).^2)'),gtext('y3=exp(-x3).*x3.^2')legend('y1=sin(x1)./(1+cos(x1))','y2=1./(1+(x2-2).^2)','y3=exp(-x3).*x3.^2')4.用LU 分解求解下列方程:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡----321210*********x x x 程序A=[2 -1 0;-1 2 -1;0 -1 2];[L,U]=lu(A);B=[1;2;3];x=U\(L\B)运行结果5.()2/f x x x =+(1) 用基于点0121,2 2.5x x x ===和的二次拉格朗日多项式,求(1.5)f 和(1.2)f 的近似值. 程序x=[1,2,2.5]; y=[3,3,3.3];xi=[1.5,1.2]; yi=Lagran_(x,y,xi) xx=0.5:0.1:2.5;yy=Lagran_(x,y,xx);plot(xx,yy,x,y,'o')运行结果(2)用基于点5.00=x ,11=x ,32=x 和53=x 的三次拉格朗日多项式,求(1.5)f 和(1.2)f 的近似值.程序x=[0.5,1,3,5]; y=[4.5,3,(3+2./3),5.4]; xi=[1.5,1.2]; yi=Lagran_(x,y,xi) xx=0.5:0.1:5;yy=Lagran_(x,y,xx);plot(xx,yy,x,y,'o')运行结果π6.用等距插值节点计算区间0/2x x的四次拉格朗日多项式。
每隔/16xπ≤≤上函数sin计一次插值误差,并画出图形。
程序x=0:pi/8:pi/2;y=x.*sin(x);xx=0:pi/16:pi/2;yy=Lagran_(x,y,xx);e=xx.*sin(xx)-yy;y1=eplot(x,y,'r',xx,yy,'o',xx,y1,'b')运行结果7.求压紧三次样条曲线,经过点(-3,2),(-2,0),(1,3),(4,1),而且一阶导数边界条件1)3(-=-'S 和1)4(='S .程序X=[-3,-2,1,4];Y=[2,0,3,1];dx0=-1;dxn=1; S=csfit(X,Y,dx0,dxn)x1=-3:0.01:-2;y1=polyval(S(1,:),x1-X(1)); x2=-2:0.01:1;y2=polyval(S(2,:),x2-X(2)); x3=1:0.01:4;y3=polyval(S(3,:),x3-X(3)); plot(x1,y1,x2,y2,x3,y3,X,Y,'.')运行结果8.用最小二乘法确定拟合曲线: x=[1.0 1.5 2.0 2.5 3.0]; y=[2.0 3.2 4.1 4.9 5.9]. 程序X=[1.0,1.5,2.0,2.5,3.0];Y=[2.0,3.2,4.1,4.9,5.9]; xmean=mean(X)ymean=mean(Y)sumx2=(X-xmean)*(X-xmean)'; sumxy=(Y-ymean)*(X-xmean)'; A=sumxy/sumx2B=ymean-A*xmeanx=1.0:0.1:3.0;y=A*x+B;f=poly2str(y,'x')plot(X,Y,'.',x,y,'r')grid on运行结果9.用三次多项式拟合下面数据,作出图形。
x=[0 0.2 0.4 0.6 0.8 1]; y=[0 7.78 10.68 8.37 3.97 0]. 程序x=[0 0.2 0.4 0.6 0.8 1];y=[0 7.78 10.68 8.37 3.97 0];p=polyfit(x,y,3);f=poly2str(p,'x')x1=0:0.005:1;y1=polyval(p,x1);plot(x1,y1,'*')运行结果10.将两个设计参数x 和y 定为50<<x 和50<<x .产品的成本为501.06822+--+-=xy y y x x f用mesh 命令绘图,近似的找出是成本最低最优参数,并写出最低成本值。
程序%函数f=x.^2-8.*x+y.^2-6.*y-0.1.*x.*y+50 t=0:0.1:5;[x,y]=meshgrid(t);f=x.^2-8.*x+y.^2-6.*y-0.1.*x.*y+50; mesh(x,y,f);title('f=x.^2-8.*x+y.^2-6.*y-0.1.*x.*y+50'); xlabel('x'); ylabel('y'); zlabel('z'); hold onminf=min(min(f)); xx=x(find(f==minf)) yy=y(find(f==minf))minf=xx.^2-8.*xx+yy.^2-6.*yy-0.1.*xx.*yy+50运行结果11.计算函数)(x f 在固定区间[a,b]=[0,1]内的积分。
应用复化梯形公式、复化辛普生公式使用五个等距节点上的函数值,步长为h=1/4。
函数)(x f 为: (1)).sin()(x x f π= (2))sin()(x x f = (1)复化梯形程序及其结果复化辛普森程序及结果(2)复化梯形程序及其结果复化辛普森程序及结果12.用复化梯形求积公式计算下面积分,取h=0.4,0.2,0.1:8.00)f(dxx被积函数以下面表格形式给出:x 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 f(x) 0 2.1220 3.0244 3.2568 3.1399 2.8579 2.5140 2.1639 1.8358 h=0.4时程序及结果h=0.2时程序及结果h=0.1时程序及结果13.流行病模型.流行病的数学模型描述如下:设有一含L 各成员的群体,其中有P 个感染个体,Q 个未感染个体.令y(t)表示时刻t 感染个体的数量.对于温和的疾病,如普通的感冒,每个个体保持活性,流行病从感染者传播到为感染者.由于两组间有PQ 中可能的接触,y(t)的变化率与PQ 成正比.故该问题可以描述为初值问题:(1) 用L=250000,k=0.000003,h=0.2和初值条件y(0)=250,并用欧拉方法程序计算区间[0,60]内的欧拉近似解. (2) 画出(1)的近似解.(3) 通过求(1)中欧拉方法的纵坐标平均值来估计平均感染个体的数目. (4)通过用曲线拟合(1)中的数据,并根据积分均值定理估计平均感染个体的数目. 程序欧拉近似解即求均值,拟合程序 function euler(f,a,b,ya,M) h=(b-a)/M; sum=0;t=zeros(1,M+1); y=zeros(1,M+1);t=a:h:b; % Ñ¡ºÃ²½³¤ y(1)=ya; for j=1:My(j+1)=y(j)+h*feval(f,t(j),y(j));% ¼ÆËã½üËÆÖµ sum=sum+y(j+1); end avg=sum./M; avg yplot(t,y,'r') hold onp=polyfit(t,y,10); f=poly2str(p,'t') t1=a:h./2:b; y1=polyval(p,t1); plot(t1,y1,'.')f(x)的源程序function f=w1_(t,y) f=0.000003.*y.*(250000-y);)0(),(y y y L ky y =-='matlab命令euler('w1_',0,60,250,300) 结果附录1.拉格朗日插值源程序% 功能:对一组数据做Lagrange插值% 调用格式:yi=Lagran_(x,y,xi)% x,y 数组形式的数据表% xi:待计算y值的横坐标数组% yi用Lagrange 插值算出的y值数组function fi=Lagran_(x,f,xi)fi=zeros(size(xi));np1=length(f);for i=1:np1z=ones(size(xi));for j=1:np1if i~=j,z=z.*(xi-x(j))/(x(i)-x(j));end endfi=fi+z*f(i);endreturn2.三次压紧样条源程序function S=csfit(X,Y,dx0,dxn)N=length(X)-1;H=diff(X);D=diff(Y)./H;A=H(2:N-1);B=2*(H(1:N-1)+H(2:N));C=H(2:N);U=6*diff(D);B(1)=B(1)-H(1)/2;U(1)=U(1)-3*(D(1));B(N-1)=B(N-1)-H(N)/2;U(N-1)=U(N-1)-3*(-D(N));for k=2:N-1temp=A(k-1)/B(k-1);B(k)=B(k)-temp*C(k-1);U(k)=U(k)-temp*U(k-1);endM(N)=U(N-1)/B(N-1);for k=N-2:-1:1M(k+1)=(U(k)-C(k)*M(k+2))/B(k);endM(1)=3*(D(1)-dx0)/H(1)-M(2)/2;M(N+1)=3*(dxn-D(N))/H(N)-M(N)/2;for k=0:N-1S(k+1,1)=(M(k+2)-M(k+1))/(6*H(k+1));S(k+1,2)=M(k+1)/2;S(k+1,3)=D(k+1)-H(k+1)*(2*M(k+1)+M(k+2))/6;S(k+1,4)=Y(k+1);end3.复合梯形源程序function I=T_quad(x,y)%复化梯形求积公式,其中,%x为向量,被积函数自变量的等距节点;%y为向量,被积函数在节点处的函数值;n=length(x);m=length(y); %积分自变量的节点数应与它的函数值的个数相同if n~=merror('The lengths of X and Y must be equal');return;endh=(x(n)-x(1))/(n-1);a=[1 2*ones(1,n-2) 1];I=h/2*sum(a.*y);4.复合辛普生源程序function I=S_quad(x,y)%复化Simpson求积公式,其中,%x为向量,被积函数自变量的等距节点;%y为向量,被积函数在节点处的函数值.n=length(x);m=length(y); %积分自变量的节点数应与它的函数值的个数相同if n~=merror('The lengths of X and Y must be equal');return;endif rem(n-1,2)~=0 %如果n-1不能被2整除,则调用复化梯形公式I=T_quad(x,y);return;endN=(n-1)/2;h=(x(n)-x(1))/N;a=zeros(1,n);for k=1:Na(2*k-1)=a(2*k-1)+1;a(2*k)=a(2*k)+4;a(2*k+1)=a(2*k+1)+1;endI=h/6*sum(a.*y);。