数学建模
实验报告
姓名:
学院:
专业班级:
学号:
数学建模实验报告(一)
——用最小二乘法进行数据拟合
一.实验目的:
1.学会用最小二乘法进行数据拟合。
2.熟悉掌握matlab软件的文件操作和命令环境。
3.掌握数据可视化的基本操作步骤。
4.通过matlab绘制二维图形以及三维图形。
二.实验任务:
来自课本64页习题:
用最小二乘法求一形如y=a+b的多项式,使之与下列数据拟合:
、
三.实验过程:
1.实验方法:用最小二乘法解决实际问题包含两个基本环节:先根据所给出数据点的变化趋势与问题的实际背景确定函数类;然后按照最小二乘法原则求最小二乘解来确定系数。即要求出二次多项式: y=a+b的系数。
2.程序:
x=[19 25 31 38 44]
y=[19.0 32.3 49.0 73.3 97.8]
ab=y/[ones(size(x));x.^2];
a=ab(1),b=ab(2)
xx=19:44;
plot(xx,a+b*xx.^2,x,y,'.')
3.上机调试
得到结果如下:
x = 19 25 31 38 44
y=19.0000 32.3000 49.0000 73.3000 97.8000
a = 0.9726
b = 0.0500
图形:
四.心得体会
通过本次的数学模型的建立与处理,我们学习并掌握了用最小二乘法进行数据拟合,及多项式数据拟合的方法,进一步学会了使用matlab软件,加深了我们的数学知识,提高了我们解决实际问题的能力,为以后深入学习数学建模打下了坚实的基础。
数学建模实验报告(二)
——用Newton法求方程的解
一. 实验目的
1. 掌握Newton法求方程的解的原理和方法。
2. 利用Matlab进行编程求近似解。
二. 实验任务
来自课本109页习题4-2:
用Newton法求f(x)=x-cosx=0的近似解
三. 实验过程
1. 实验原理:
把f(x)在x0点附近展开成泰勒级数 f(x) = f(x0)+(x-x0)f'(x0)+(x-x0)^2*f''(x0)/2! +… 取其线性部分,作为非线性方程f(x) = 0的近似方程,即泰勒展开的前两项,则有f(x0)+f'(x0)(x-x0)=0 设f'(x0)≠0则其解为x1=x0-f(x0)/f'(x0) 这样,得到牛顿法的一个迭代序列:x(n+1)=x(n)-f(x(n))/f'(x(n))。
2. 程序设计:
function y=nd(x)
y= x-cosx
function y=nd0(x)
y=1+sinx
主程序
x=0; %迭代初值
i=0; %迭代次数计数
while i<=100;
y=x-nd(x)/nd0(x); %牛顿迭代格式
if abs(y-x)>10^(-5); %收敛判断
x=y;
else break
end
i=i+1;
end
fprintf('\n%s%.4f \t%s%d','x=',x,'i=',i) %输出结果
四. 实验心得
通过这次实验我掌握了Newton法求解方程的方法。并通过编程进一步熟悉了Matlab的使用方法。在实验过程中仍然遇到了不少的困难,比如说编程调试部分,需要有很大的耐心去修改,再调试。而在这一步步的改进过程中发现自己的进步。
数学建模实验报告(三)
——用Jacobi迭代法求解线性方程组
一. 实验目的
2. 掌握Jacobi迭代法求解线性方程组的方法
3. 学会用Matlab编程求解方程
二. 实验任务
课本155页习题1:
取初始向量x=,用Jacobi迭代法求解线性方程组:
三. 实验过程
1. 方法原理:迭代法就是用某种极限过程逐渐逼近线性方程组精确解的方法。迭代法的基本思想是构造一串收敛到解的序列,即建立一种从已有近似解计算新的近似解的规则。
将方程组(4.1.3)中系数矩阵分解为
(7.2.1)
其中为A的对角矩阵,
(7.2.2)
-L,-U分别为A的严格下三角矩阵与A的严格上三角矩阵.
假定 (i=1,2,…,n),则D非奇异.取M=D,N=L+U,则得
1
1称为解方程组的Jacobi迭代法,简称J法.计算时可写成如下分量形式:
2.程序:
a=[1 2 -2;1 1 1;2 2 1]
d=[1;3;5]
x=[0;0;0]; %初始向量
stop=1.0e-4 %迭代的精度
L=-tril(a,-1)
U=-triu(a,1)
D=inv(diag(diag(a)))
X=D*(L+U)*x+D*d; % J迭代公式
n=1;
while norm(X-x,inf)>=stop % 时迭代中止否则继续
x=X;
X=D*(L+U)*x+D*d;
n=n+1;
end
X
n
3.上机调试:
得实验结果:
a =
1 2 -2
1 1 1
2 2 1
d =
1
3
5
stop =
1.0000e-004
L =
0 0 0
-1 0 0
-2 -2 0
U =
0 -2 2
0 0 -1
0 0 0
D =
1 0 0
0 1 0
0 0 1
X =
1
1
1
n =
4
四. 实验体会
通过本次实验,我掌握了高斯-赛德尔迭代法,雅可比迭代法求解线性方程的实验方法。此实验报告中只列出了雅可比迭代法的求解程序。但从实验结果来看,高斯-赛德尔迭代法要比雅可比迭代公式的收敛速度快,可见雅可比迭代法并不是一种理想的求解方法,但在一些简单地线性方程中,雅可比迭代法还是比较简单方便的。关于程序的编写也是翻阅了大量资料才得出的,其中犯了不少的语法错误,可见我对matlab软件还不是很熟练,得加强学习。
西安交通大学数学实验报告高等数学实验报告MATLAB实验操作报告同组人髙加西20xx年04月10日电气工程学院电气工程与自动化专业…
数学实验实验报告20xx20xx学年第1学期学生姓名学号院部数理学院专业班级任课教师实验报告1实验目的熟悉Mathematica软…
实验六实验项目名称优化实验时间20xx52620xx6220xx69实验地点理学实验楼525实验目的1掌握Matlab优化工具箱的…
天水师范学院数学与统计学院实验报告实验项目名称所属课程名称实验类型线性代数实验实验日期班级学号姓名成绩12附录1源程序附录2实验报…
数学与计算科学学院实验报告实验项目名称油价与船速的优化问题所属课程名称数学实验实验类型综合实验日期20xx922班级学号姓名成绩1…
****大学****学院实验报告一、实验目的及要求实验目的:1.了解旋转曲面参数方程的构成方式.2.掌握Matlab的绘图命令及简…
江西科技师范学院实验报告课程系别班级学号姓名目录实验一Matlab基本语法与绘图实验二Matlab解规划问题实验三Matlab解微…
数学模型实验报告实验内容1实验目的学习使用lingo和MATLAB解决数学模型问题实验原理实验环境MATLAB70实验结论源程序第…
实验报告五院系数学与统计学院课程名称数学模型与数学实验日期20xx年5月22日注实验报告用A4纸双面打印篇幅不要超过一页
数学建模实验报告周五符号方程的求解实验七班级电气工程试验班1401姓名吴建武学号0908140315指导老师刘新儒日期20xx年1…
实验报告课程名称数学建模年级日期姓名实验目的及要求1练习数值微分的计算2掌握用MATLAB软件求微分方程初值问题的方法3通过实例学…