matlab数学实验报告6
- 格式:pdf
- 大小:278.70 KB
- 文档页数:9
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` 函数从外部文件读取数据和将数据保存到文件中。
《管理数学实验》实验报告班级姓名实验1:MATLAB的数值运算【实验目的】(1)掌握MATLAB变量的使用(2)掌握MATLAB数组的创建,(3)掌握MA TLAB数组和矩阵的运算。
(4)熟悉MATLAB多项式的运用【实验原理】矩阵运算和数组运算在MA TLAB中属于两种不同类型的运算,数组的运算是从数组元素出发,针对每个元素进行运算,矩阵的运算是从矩阵的整体出发,依照线性代数的运算规则进行。
【实验步骤】(1)使用冒号生成法和定数线性采样法生成一维数组。
(2)使用MA TLAB提供的库函数reshape,将一维数组转换为二维和三维数组。
(3)使用逐个元素输入法生成给定变量,并对变量进行指定的算术运算、关系运算、逻辑运算。
(4)使用MA TLAB绘制指定函数的曲线图,将所有输入的指令保存为M文件。
【实验内容】(1)在[0,2*pi]上产生50个等距采样数据的一维数组,用两种不同的指令实现。
0:(2*pi-0)/(50-1):2*pi 或linspace(0,2*pi,50)(2)将一维数组A=1:18,转换为2×9数组和2×3×3数组。
reshape(A,2,9)ans =Columns 1 through 71 3 5 7 9 11 132 4 6 8 10 12 14Columns 8 through 915 1716 18reshape(A,2,3,3)ans(:,:,1) =1 3 52 4 6ans(:,:,2) =7 9 118 10 12 ans(:,:,3) =13 15 17 14 16 18(3)A=[0 2 3 4 ;1 3 5 0],B=[1 0 5 3;1 5 0 5],计算数组A 、B 乘积,计算A&B,A|B,~A,A= =B,A>B 。
A.*Bans=0 0 15 121 15 0 0 A&Bans =0 0 1 11 1 0 0 A|Bans =1 1 1 11 1 1 1~Aans =1 0 0 00 0 0 1A==Bans =0 0 0 01 0 0 0A>=Bans =0 1 0 11 0 1 0(4)绘制y= 0.53t e -t*t*sin(t),t=[0,pi]并标注峰值和峰值时间,添加标题y= 0.53t e -t*t*sint ,将所有输入的指令保存为M 文件。
程序设计实验报告(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进行各种计算和数值分析,同时也能够深入理解相关的数学原理和算法。
这些知识和技能对我未来的学习和工作都将有着重要的帮助。
实验一1.设x=-74°,y=-27°,求22的值。
√tan|x+y|+π2.当a取-3.0,-2.9,-2.8,…,2.8,2.9,3.0时,求e−0.3a sin(a+0.3)在各点的函数值。
3. 设x=24−0.455,求12In(x+√1+x ²)的值,并分析结果矩阵中各元素的含义。
4. 已知A=354234−457879015,B=1−2672874930求下面的表达式的值。
(1)A*B和A.*B。
(2)A^3和A.^3.。
(3)A/B和A\B。
(4)[A,B]和[A([1,3],:);B^2]。
实验二一、实验步骤:1)新建脚本2)在编辑器中输入相应程序3)在命令窗口执行文件,得到结果1. 根据π²6=11²+12²+13²+…+1n ²,求π的近似值。
当n 分别取100、1000、10000时,结果是多少?要求:分别用循环结构和向量运算(使用sum 函数)来实现。
1)循环结构一、实验步骤二、1)新建脚本2)在编辑器中输入相应程序3)保存文件,将文件命名为PI.m4)在命令窗口输入PI执行文件,得到结果三、实验代码四、实验结果2.根据y=1+13+15+⋯+12n−1,求(1)y<3时的最大n值(2)与(1)的n值对应的y值一、实验步骤1)打开matlab,新建脚本2)在脚本文件中输入实验代码3)保存文件,存名字为value.m4)在命令窗口中输入value,得到实验结果二、实验代码三、实验结果。
实验一一、实验问题有一艘宽为5m 的长方形驳船,欲过某河道的直角弯,经测量知河道的宽度为10m 和 12m ,试问,要驶过该直角湾,驳船的长度不能超过多少米?(误差<10-3m )二、问题的分析题目的主体是求一个极值。
所以先建立关于驳船长度的函数关系,然后再求极值。
我们会发现,所能通过驳船长度与驳船和内壁的角度有关。
于是,就可列出驳船长度与角度间的关系。
求极值的问题,可以转换成解方程的问题。
驻点时,函数的导数为零,可看作一个方程,然后求解。
三、程序设计流程建立函数 完成四、上机实验建立函数:f(x)=x x x x x x cos 12tan 10sin )12tan 10(5sin )12tan 10(+••+−•+ f(x)= xx x xcos sin 5sin )12tan 10(•−•+ 编写代码: syms xf=(((10/tan(x))+12)*sin(x)-5)/(sin(x)*cos(x)); %建立函数 diff(f,x) %求导%(ans=(-10/tan(x)^2*(1+tan(x)^2)*sin(x)+(10/tan(x)+12)*cos(x))/sin(x)/cos(x)-((10/tan(x)+12)* sin(x)-5)/sin(x)^2+((10/tan(x)+12)*sin(x)-5)/cos(x)^2 )z=inline('(-10/tan(x)^2*(1+tan(x)^2)*sin(x)+(10/tan(x)+12)*cos(x))/sin(x)/cos(x)-((10/tan(x)+12)* sin(x)-5)/sin(x)^2+((10/tan(x)+12)*sin(x)-5)/cos(x)^2'); %给出方程 a=0; b=3.14; dlt=1.0e-5; k=1;while abs(b-a)>dltc=(a+b)/2 if z(c)==0 break;elseif z(c)*z(b)<0 a=c; else b=c; endfprintf('k=%d,x=%.5f\n',k,c); k=k+1;end %二分法解方程所以x =0.73200 此时用语句: x=0.73200 s=eval(f)得出s 的值便是驳船的最大长度 s =21.0372结论:驳船的长度不能超过21.0372米五、实验的总结与体会通过本次实验,我学会了用数学模型解决生活中的实际问题。
初识MATLAB的实验报告1. 引言MATLAB(Matrix Laboratory)是一种高级的技术计算环境和编程语言。
它具有强大的矩阵计算能力和丰富的科学和工程绘图功能,被广泛应用于各个领域的科研与工程实践中。
本实验旨在初步了解MATLAB的基本语法和功能,通过实际操作加深对MATLAB编程的理解。
2. 实验目的1. 掌握MATLAB的安装和基本使用方法;2. 学习MATLAB中的常用数学函数和操作;3. 了解MATLAB绘图功能并能够绘制简单的图形。
3. 实验步骤3.1 MATLAB安装首先,在官方网站(3.2 MATLAB入门3.2.1 MATLAB语法MATLAB的语法类似于其他常见的编程语言,每个语句以分号结尾。
在MATLAB 中,可以直接进行基本的数学运算,例如加减乘除、指数、对数等。
通过以下代码可以计算两个变量的和并将结果打印出来:matlaba = 10;b = 20;sum = a + b;disp(sum);3.2.2 MATLAB变量在MATLAB中,可以创建和操作各种类型的变量,例如数值、字符串、矩阵等。
以下代码演示了如何创建一个矩阵:matlabmatrix = [1, 2, 3; 4, 5, 6; 7, 8, 9];disp(matrix);3.2.3 MATLAB函数MATLAB提供了许多内置的数学函数,可以直接调用。
以下代码演示了如何计算正弦函数值并打印结果:matlabx = pi/4;y = sin(x);disp(y);3.3 MATLAB绘图MATLAB具有强大的绘图功能,可以绘制各种图形,如曲线、散点图、柱状图等。
以下代码演示了如何绘制一个简单的正弦曲线:matlabx = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);xlabel('x');ylabel('y');title('Sine Curve');4. 实验结果与分析在完成上述实验步骤后,我们成功安装了MATLAB,并学习了基本的语法、变量和函数的使用方法。
matlab 实验报告Matlab 实验报告引言:Matlab(Matrix Laboratory)是一种强大的科学计算软件,它为科学家、工程师和研究人员提供了一个强大的计算环境。
本实验报告旨在介绍我对Matlab的实验结果和使用体验,以及对其优点和局限性的思考。
一、Matlab的基本功能和特点Matlab是一种高级编程语言和开发环境,它具有广泛的数学和工程计算功能。
通过Matlab,我可以进行矩阵运算、数值计算、数据可视化、算法开发等一系列操作。
Matlab的语法简洁易懂,可以快速实现复杂的计算任务。
此外,Matlab还提供了大量的工具箱,如信号处理、控制系统、图像处理等,使得各种领域的科学研究和工程应用变得更加便捷。
二、实验结果与应用案例在本次实验中,我选择了一个经典的数值计算问题——求解非线性方程。
通过Matlab的数值计算能力,我可以使用不同的迭代方法来求解方程的根。
在实验中,我使用了牛顿迭代法、二分法和割线法来求解方程。
通过对比这些方法的收敛速度和精度,我得出了不同方法的优缺点。
在实际应用中,Matlab可以广泛应用于信号处理、图像处理、数据分析等领域。
例如,在信号处理中,我可以使用Matlab的信号处理工具箱来进行滤波、频谱分析等操作。
在图像处理中,我可以利用Matlab的图像处理工具箱进行图像增强、边缘检测等操作。
这些应用案例充分展示了Matlab在科学计算和工程应用中的重要性和灵活性。
三、Matlab的优点1. 强大的计算功能:Matlab提供了丰富的数学和工程计算函数,可以高效地进行复杂的计算任务。
2. 简洁的语法:Matlab的语法简洁易懂,使得编程变得更加高效和便捷。
3. 丰富的工具箱:Matlab提供了大量的工具箱,覆盖了各种领域的科学计算和工程应用需求。
4. 可视化能力强:Matlab提供了丰富的绘图函数,可以直观地展示数据和计算结果。
四、Matlab的局限性1. 高昂的价格: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. 建立的数学模型与实验数据拟合良好,模型预测结果与实验结果吻合度高。
班级:通信班姓名:彭羊平学号: 222008315222033实验一:matlab的基本操作一、实验目的:1、了解MATLAB的集成环境,熟悉其基本操作。
2、了解MATLAB的基础知识,包括矩阵的建立、简单操作、逻辑操作和关系运算。
3、熟悉基本的数学函数和逻辑函数。
4、在命令窗口输入命令完成一些简单的功能,为MATLAB程序设计奠定基础。
二、实验内容:1、利用diag等函数产生下列矩阵:然后利用reshape函数将它们变换成行向量。
2、利用rand函数产生(0,1)间均匀分布的10*10随机矩阵A,然后统计A中大于等于0.6的元素的个数。
3、有一矩阵A,找出矩阵中值大于1的元素,并将它们重新排列成列向量B。
4、在一测量矩阵A(6*6),存在有奇异值(假设大于100的值为奇异值),编程实现删去奇异值所在的行。
三、实验结果:1、程序如下:a=fliplr(diag([8,-7,2])+diag([5,3],-1))a=reshape(a,1,9)b=diag([2,5,8])+diag([4],2)+diag([7],-2) b=reshape(b,1,9)结果如下:2、程序如下:A=rand(10)A=A>0.6sum(sum(A))结果如下:3、程序如下:A=fix(5*rand(5))a=A>1;K=find(a);for k=1:length(K)B(k)=A(K(k));endB=B'结果如下:4、程序如下:A=fix(100*rand(8))+5 B=A>100;k=find(any(B'))A(k,:)=0结果如下:班级:通信班姓名:彭羊平学号: 222008315222033实验二: matlab绘图(1)一、实验目的:1、了解MATLAB图形系统和各种图形函数。
2、熟悉MATLAB的基本图形操作,具备MATLAB画图能力。
3、熟悉各种数学函数,并通过图形函数画出。
MATLAB实验报告实验六实验六1.x=linspace(0,2*pi,101);y=(0.5+3*sin(x)./(1+x.^2));plot(x,y)2.x=-pi:pi/100:pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;plot(x,y1,'r:',x,y2,'g-',x,y3,'b--')x=-pi:pi/100:pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(1,3,1);plot(x,y1,'r:');title('y1=x.^2'); subplot(1,3,2);plot(x,y2,'g-');title('y2=cos(2*x)'); subplot(1,3,3);plot(x,y1,'b--');title('y3=y1.*y2');x=-pi:pi/100:pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(2,2,1);plot(x,y1,'r:',x,y2,'g-',x,y3,'b--'); subplot(2,2,2);bar(x,y1,'r');title('y1=x^2');subplot(2,2,3);bar(x,y2,'g');title('y2=cos(2*x)');subplot(2,2,4);bar(x,y3,'b');title('y3=y1.*y2');x=-pi:pi/100:pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(2,2,1);plot(x,y1,'r:',x,y2,'g-',x,y3,'b--'); subplot(2,2,2); stairs(x,y1,'r:');title('y1=x^2');subplot(2,2,3);stairs(x,y2,'g-');title('y2=cos(2*x)');subplot(2,2,4);stairs(x,y3,'b--');title('y3=y1.*y2');x=-pi:pi/100:pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(2,2,1);plot(x,y1,'r:',x,y2,'g-',x,y3,'b--'); subplot(2,2,2); stem(x,y1,'r:');title('y1=x^2');subplot(2,2,3);stem(x,y2,'g-');title('y2=cos(2*x)');subplot(2,2,4);stem(x,y3,'b--');title('y3=y1.*y2');x=-pi:pi/100:pi;y1=x.^2;y2=cos(2*x);y3=y1.*y2;subplot(2,2,1);plot(x,y1,'r:',x,y2,'g-',x,y3,'b--'); subplot(2,2,2);fill(x,y1,'r:');title('y1=x^2');subplot(2,2,3);fill(x,y2,'g-');title('y2=cos(2*x)');subplot(2,2,4);fill(x,y3,'b--');title('y3=y1.*y2');3.x=-5:0.01:5;y=(x+sqrt(pi))./(exp(2)).*(x<=0)+0.5*log(x+sqrt(1+x.*x)).*(x>0); plot(x,y4.theta=0:pi/100:2*pi; a=input('请输⼊a:');b=input('请输⼊b:');n=input('请输⼊n:'); rho=a*sin(b+n*theta); polar(theta,rho,'g')a=b=n=2a=b=2,n=4a=n=2,b=4a=4,b=n=2采⽤控制变量法的办法,固定两个参数,变动第三个参数观察输出图象的变化。
实验一:Matlab操作环境熟悉一、实验目的1.初步了解Matlab操作环境.2.学习使用图形函数计算器命令funtool及其环境。
二、实验内容熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format 命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool,并进行下列计算:1.单函数运算操作。
求下列函数的符号导数(1)y=sin(x);(2) y=(1+x)^3*(2-x);求下列函数的符号积分(1)y=cos(x);(2)y=1/(1+x^2);(3)y=1/sqrt(1—x^2);(4)y=(x1)/(x+1)/(x+2)求反函数(1)y=(x-1)/(2*x+3); (2) y=exp(x);(3) y=log(x+sqrt(1+x^2));代数式的化简(1)(x+1)*(x-1)*(x-2)/(x-3)/(x—4);(2)sin(x)^2+cos(x)^2;(3)x+sin(x)+2*x—3*cos(x)+4*x*sin(x);2.函数与参数的运算操作。
从y=x^2通过参数的选择去观察下列函数的图形变化(1)y1=(x+1)^2(2)y2=(x+2)^2(3) y3=2*x^2 (4) y4=x^2+2 (5) y5=x^4 (6) y6=x^2/2 3.两个函数之间的操作求和(1)sin(x)+cos(x) (2) 1+x+x^2+x^3+x^4+x^5乘积(1)exp(—x)*sin(x) (2) sin(x)*x商(1)sin(x)/cos(x); (2) x/(1+x^2); (3) 1/(x—1)/(x—2); 求复合函数(1)y=exp(u) u=sin(x) (2) y=sqrt(u) u=1+exp(x^2)(3) y=sin(u) u=asin(x) (4) y=sinh(u) u=-x实验二:MATLAB基本操作与用法一、实验目的1.掌握用MATLAB命令窗口进行简单数学运算。
数据的分析之数据的拟合一、实验项目:Matlab 数据拟合 二、实验目的和要求1、掌握用matlab 作最小二乘多项式拟合和曲线拟合的方法。
2、通过实例学习如何用拟合方法解决实际问题,注意差值方法的区别。
3、鼓励不囿于固定的模式或秩序,灵活调整思路,突破思维的呆板性,找到打破常规的解决方法。
并在文献检索 动手和动脑等方面得到锻炼。
三、实验内容操作一:Malthus 人口指数增长模型用以上数据检验马尔萨斯人口指数增长模型,根据检验结果进一步讨论马尔萨斯人口模型的改进。
马尔萨斯模型的基本假设是人口的增长率为常数,记为r 。
记时刻t 的人口为()x t ,且初始时刻的人口为x 0,于是得到如下微分方程(0)dx rxdtx x ⎧=⎪⎨⎪=⎩ 需要先求微分方程的解,再用数据拟合模型中的参数。
一、分析有这个方程很容易解出0()*rtx t x e =r>0时,是表示人口箭杆指数规律随时间无限增长,称为指数增长模型。
将上式取对数,可得y=rt+a ,y=lnx ,a=lnx0 二、用matlab 编码t=1790:10:1980;x=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.9 76.0 92 106.5 123.2 131.7 150.7 179.3 204.0 226.5]; p=polyfit(t,log(x),1); r=p(1) x0=exp(p(2)) x1=x0.*exp(r.*t); plot(t,x,'r',t,x1,'b')三、结果和图像 0.0214r =0 1.2480016x e =-17801800182018401860188019001920194019601980050100150200250300350操练二:旧车价格预测分析用什么形式的曲线来拟合数据,并预测使用4、5年后的轿车平均价格大致为多少。
matlab数值计算实验报告Matlab数值计算实验报告引言:Matlab是一种强大的数值计算软件,广泛应用于科学和工程领域。
本实验旨在通过实际案例,展示Matlab在数值计算中的应用能力。
本报告将从三个方面进行讨论:数值积分、线性方程组求解和最优化问题。
一、数值积分:数值积分是数学中常见的问题,Matlab提供了多种函数和方法来解决这类问题。
我们以求解定积分为例进行讨论。
假设我们要求解函数f(x) = x^2在区间[0, 1]上的定积分。
我们可以使用Matlab中的quad函数来进行计算,代码如下:```matlabf = @(x) x.^2;integral = quad(f, 0, 1);disp(integral);```运行以上代码,我们可以得到定积分的近似值为0.3333。
通过调整积分方法和精度参数,我们可以得到更精确的结果。
二、线性方程组求解:线性方程组求解是数值计算中的重要问题,Matlab提供了多种函数和方法来解决线性方程组。
我们以一个简单的线性方程组为例进行讨论。
假设我们要求解以下线性方程组:```2x + y = 5x - y = 1```我们可以使用Matlab中的linsolve函数来求解,代码如下:```matlabA = [2 1; 1 -1];B = [5; 1];X = linsolve(A, B);disp(X);```运行以上代码,我们可以得到方程组的解为x = 2,y = 3。
通过调整方程组的系数矩阵和右侧向量,我们可以求解更复杂的线性方程组。
三、最优化问题:最优化问题在科学和工程领域中广泛存在,Matlab提供了多种函数和方法来解决这类问题。
我们以求解无约束最优化问题为例进行讨论。
假设我们要求解函数f(x) = x^2的最小值。
我们可以使用Matlab中的fminunc函数来进行计算,代码如下:```matlabf = @(x) x.^2;x0 = 1; % 初始点options = optimoptions('fminunc', 'Display', 'iter');[x, fval] = fminunc(f, x0, options);disp(x);disp(fval);```运行以上代码,我们可以得到最小值的近似解为x = 0,f(x) = 0。
MATLAB数学实验报告实验日期:2012.5学院:能源与动力工程班级:化工11组员:王旭 2110308015 陆清华 2110308011 仲秋晨 2110308024一、实验目的1.学习MATLAB软件的循环和选择结构,进一步提高MATLAB编程能力;2.通过对一些基础数学实验的学习和实践,了解级数逼近和数值积分、用最小二乘法进行数据拟合等的数学思想和数学方法,开拓数学视野,提高数学水平。
二、实验内容1.(1)问题:对于数列{√n},n=1,2,···,求当其前n项和不超过1000时的值以及和的大小。
(2)分析:这个问题书上已有例题解答,不过书上的程序运行结果最后一行结果并不是我们所要求的解的答案,而倒数第二行则是所求问题的解。
以下是修改后的程序已解决此问题。
(3)程序:clear;clc;n=1;s=1;while s<=1000fprintf('n=%.0f,s=%.4f\n',n,s)n=n+1;s=s+sqrt(n);end(4)运行结果···n=123,s=914.7651n=124,s=925.9007n=125,s=937.0810n=126,s=948.3060n=127,s=959.5754n=128,s=970.8891n=129,s=982.2469n=130,s=993.64872.(1)问题:1790年到1980年各年美国人口数的统计数据如下表:长的近似曲线(设美国人口总容纳量为10亿),并预测后00年的人口数,通过与实际数据相比较,对两种预测结果进行分析。
(2)分析:根据题目要求分别用Malthas模型和Logistic模型建立美国人口增长的近似曲线。
(3)程序:%Malthasclear;clft=1790:10:1980;N=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.0 72.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5];plot(t,N,'k.','markersize',20);axis([1790 2080 3 400]);grid;hold onpause(0.5)n=20;a=sum(t(1:n));b=sum(t(1:n).*t(1:n));c=sum(log(N(1:n)));d=sum(t(1:n).*log(N(1:n)));A=[n a;a b];B=[c;d];p=inv(A)*Bx=1790:2000;y=exp(p(1)+p(2)*x);plot(x,y,'r-','linewidth',2)%Logisticclear;clft=1790:10:1980;N=[3.9 5.3 7.2 9.6 12.9 17.1 23.2 31.4 38.6 50.2 62.0 72.0 92.0 106.5 123.2 131.7 150.7 179.3 204.0 226.5];plot(t,N,'k.','markersize',20);axis([1790 2080 0 1000]);grid;hold onpause(0.5)n=20;k=1000;M=N.^-1-k^-1;a=sum(t(1:n));b=sum(t(1:n).*t(1:n));c=sum(log(M(1:n)));d=sum(t(1:n).*log(M(1:n)));A=[n a;a b];B=[c;d];p=inv(A)*Bx=1790:10:2080;y=1./((1./k)+exp(p(1)+p(2)*x));plot(x,y,'r-','linewidth',2)3.(1)追击问题:在一边长为1的正方形跑到的四个顶点上各站有1人,他们同时开始以等速度沿跑道追逐下一个人,在追击过程中,每个人时刻对准目标,试模拟追击路线。
《数学实验》报告实验名称 Matlab 基础知识学院专业班级姓名学号2014年 6月一、【实验目的】1.认识熟悉Matlab这一软件,并在此基础上学会基本操作。
2.掌握Matlab基本操作和常用命令。
3.了解Matlab常用函数,运算符和表达式。
4.掌握Matlab工作方式和M文件的相关知识。
5.学会Matlab中矩阵和数组的运算。
二、【实验任务】P16 第4题编写函数文件,计算1!nkk =∑,并求出当k=20时表达式的值。
P27第2题矩阵A=123456789⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,B=468556322⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,计算A*B,A.*B,并比较两者的区别。
P27第3题已知矩阵A=5291⎡⎤⎢⎥⎣⎦,B=1292⎡⎤⎢⎥⎣⎦,做简单的关系运算A>B,A==B,A<B,并做逻辑运算(A==B)&(A<B),(A==B)&(A>B)。
P34 第1题用11114357π=-+-+……公式求π的近似值,直到某一项的绝对值小于-610为止。
三、【实验程序】P16 第4题function sum=jiecheng(n) sum=0;y=1;for k=1:nfor i=1:ky=y*i;endsum=sum+y;endsumP27第2题>>A=[1 2 3;4 5 6;7 8 9]>>B=[4 6 8;5 5 6;3 2 2]>>A*BP27第3题>> A=[5 2;9 1];B=[1 2;9 2];>>A>B>>A==B>>A<B>> (A==B)&(A<B)>> (A==B)&(A>B)P34 第1题t=1;pi=0;n=1;s=1;while abs(t)>=1e-6pi=pi+t;n=n+2;s=-s;t=s/n;endpi=4*pi;四、【实验结果】P16 第4题P27第2题两者的区别:A*B是按正规算法进行矩阵的计算, A.*B是对应元素相乘。
matlab实验报告Matlab实验报告引言:Matlab(Matrix Laboratory)是一种高级的计算机编程语言和环境,主要用于数值计算、数据分析和可视化。
它的功能强大,被广泛应用于科学研究、工程设计和教学实验等领域。
本实验报告将介绍我在使用Matlab进行实验过程中的一些经验和收获。
一、Matlab的基本语法和数据类型Matlab的语法与其他编程语言相比较简单,但仍然需要掌握一些基本的语法规则。
例如,Matlab中的变量命名不区分大小写,但建议使用小写字母来命名变量。
Matlab支持多种数据类型,包括数值型、字符型、逻辑型等。
在实验中,我常常使用数值型数据进行计算和分析。
二、Matlab中的矩阵运算矩阵运算是Matlab的重要特性之一,它使得处理大量数据变得更加高效和简便。
我在实验中经常使用矩阵运算来进行数据的处理和分析。
例如,我可以使用矩阵乘法来计算两个矩阵的乘积,或者使用矩阵的转置来进行数据的重排和变换。
Matlab还提供了丰富的矩阵运算函数,如求逆矩阵、特征值分解等,这些函数大大简化了复杂计算的过程。
三、Matlab的数据可视化Matlab提供了强大的数据可视化功能,可以帮助我们更直观地理解和展示数据。
在实验中,我常常使用Matlab绘制曲线图、散点图和柱状图等,以便更清晰地观察数据的分布和趋势。
Matlab的绘图函数丰富多样,可以根据不同的需求选择合适的图形类型和样式。
此外,Matlab还支持图像处理和三维可视化等高级功能,这些功能在科学研究和工程设计中有着广泛的应用。
四、Matlab的编程和调试Matlab不仅是一种计算工具,还是一种编程语言。
通过编写脚本和函数,我们可以实现更复杂的计算和操作。
在实验中,我常常使用Matlab编写自定义函数来实现特定的功能。
编程过程中,我注意到Matlab的调试功能非常强大,可以帮助我们找出代码中的错误和问题。
Matlab提供了断点调试、变量监视和错误提示等功能,这些功能对于提高代码的可靠性和效率非常有帮助。
实验一 Matlab基本操作1.实验课程名称数学实验2.实验项目名称Matlab基本操作3.实验目的和要求了解Matlab的基本知识,熟悉其上机环境,掌握利用Matlab进行基本运算的方法。
4.实验内容和原理内容:三角形的面积的海伦公式为:area=)s-sa--)()(s(csb其中: s=(a+b+c)/2原理:将一般数学问题转化成对应的计算机模型并进行处理的能力。
了解Matlab的基本功能,会进行简单的操作。
5.主要仪器设备计算机与Windows 2000/XP系统;Matlab等软件。
6.操作方法与实验步骤步骤:(1)在M文件编辑窗口输入以下程序,并以文件名”area_helen.m”保存:a= input(‘a=‘) ; b= input(‘b=‘) ; c= input(‘c=‘) ;s= (a+b+c)/2;area=sqrt (s* (s-a) * (s-b) * (s-c))(2)在命令窗口输入文件名“area_helen”,按回车键,即可运行上面的程序,输入三边长,立即可得三角形面积(3)第二题在命令窗口输入b=6;a=3;c=a*b,d=c-2*b(4) 按回车键,即可运行上面的程序7.实验结果与分析<1> a=3; b=4; c=5;时,aera=6 当a为3,b为4,c为5时,s=6,aera=6<2> c= 18,d=6,a为3,b为6时,c=18,d=6实验二 Matlab的数值计算1.实验课程名称数学实验2.实验项目名称Matlab的数值计算3.实验目的和要求了解一些简单的矩阵、向量、数组和多项式的构造和运算方法实例,懂得编写简单的数值计算的Matlab程序。
熟悉一些Matlab的简单程序,会用Matlab的工具箱,懂得Matlab的安装和简单的使用。
4.实验内容和原理内容:从函数表:)1(),5.0(),2( ,0x 1x 021x 1x f(x) 32-⎪⎩⎪⎨⎧≤≤<>+=f f f x x求设)1(),2( ,1211)(2-⎩⎨⎧≤>+=f f x xx x x f 求设 原理:利用矩阵、向量、数组、和多项式的构造和运算方法,用常用的几种函数进行一般的数值问题求解。
matlab 模拟实验报告《利用Matlab模拟的实验报告》摘要:本实验利用Matlab软件对某一特定系统进行了模拟实验。
通过对系统的建模和仿真,我们得出了一些有价值的结论,并对系统的性能进行了评估。
本文将详细介绍实验的目的、方法、结果和分析,以及对实验结果的讨论和总结。
1. 引言Matlab是一种强大的数学建模和仿真工具,广泛应用于工程、科学和技术领域。
利用Matlab进行系统仿真可以帮助我们更好地理解系统的行为和性能,优化系统设计,并预测系统在不同条件下的表现。
本实验旨在利用Matlab对某一特定系统进行仿真,以验证系统的性能和稳定性。
2. 实验目的本实验的主要目的是利用Matlab对某一特定系统进行建模和仿真,分析系统的动态响应和稳定性,并评估系统的性能。
具体来说,我们将通过仿真实验探讨系统的频率响应、阶跃响应和脉冲响应,以及系统的稳定性和鲁棒性。
3. 实验方法首先,我们对系统进行了建模,包括系统的传递函数、状态空间模型等。
然后,利用Matlab软件进行仿真实验,分别对系统的频率响应、阶跃响应和脉冲响应进行了分析。
最后,我们对仿真结果进行了统计和评估,得出了一些有价值的结论。
4. 实验结果与分析通过Matlab的仿真实验,我们得到了系统的频率响应曲线、阶跃响应曲线和脉冲响应曲线。
通过对这些曲线的分析,我们可以得出系统的动态特性和稳定性。
同时,我们还对系统的性能进行了评估,包括系统的超调量、调节时间等指标。
5. 结果讨论与总结通过对实验结果的讨论和总结,我们得出了一些结论和建议。
我们对系统的性能和稳定性进行了评估,发现系统在某些条件下存在一些问题,提出了一些建议和改进措施。
同时,我们也对Matlab软件在系统仿真中的应用进行了总结和展望。
结论本实验利用Matlab对某一特定系统进行了建模和仿真,得出了一些有价值的结论。
通过对系统的动态响应和稳定性进行分析,我们发现了系统存在的一些问题,并提出了一些建议和改进措施。