二分法牛顿迭代法.docx
《二分法牛顿迭代法.docx》由会员分享,可在线阅读,更多相关《二分法牛顿迭代法.docx(7页珍藏版)》请在冰豆网上搜索。

二分法牛顿迭代法
2014级硕士研究生数值分析上机实习(第一次)
姓名:
乔永亮学号:
14S030125学院:
船舶与海洋工程学院
实习题目:
分别用二分法和Newton迭代法求方程
的根.
实习目的:
掌握两种解法,体会两种解法的收敛速度.
实习要求:
用C程序语言编程上机进行计算,精确到8位有效数字.
报告内容:
1.确定实根的个数以及所在区间.
解:
对函数
求导,得
。
易知
恒成立,所以函数
没有极值,只有一个实根。
又可以知道
方程在区间
有一个实根,且为奇数重根,可以二分法和Newton求解
2.将最后两次计算结果填入下表(保留8位数字):
方法
二分法
13
1.3687744
14
1.3688354
Newton法
2
1.3688148
3
1.3688082
3.实习过程中遇到哪些问题?
如何解决?
有何心得体会?
在编程的过程中由于对基本计算原理的理解有一定不足,同时对编程语言的不熟悉,导致在编程过程中错误百出,耗费了大量时间。
但是通过课本以及网络对所需知识的不断学习,通过尝试不同的方法,最终还是得到了几种不同的思路与方法。
通过这次编程,深深的感受到自己的不足,同时也明白了数学与计算机编程的紧密结合,不努力提高自己在当今社会就要被淘汰。
4.两种解法的计算程序(此页写不下时可以加页):
二分法(Fortran语言)
programAnalysis1
real:
:
a,b,c,m
real:
:
fa,fc
a=1.
b=2.
m=0.0001
!
--------------------
dowhile(abs(b-a)>=m)
c=(a+b)/2
fa=a**3+2.*a*a+10.*a-20
fc=c**3+2.*c*c+10.*c-20
if(fa*fc<0)then
b=c
else
a=c
endif
write(*,"(f10.7)")c
enddo
pause
endprogramAnslysis1
牛顿迭代法(Fortran语言)
programAnalysis2
implicitnone
!
定义变量---------------------------------------------------------------
externalf,df
realm,x0,x1,f,df
integeri
!
初始化变量-------------------------------------------------------------
m=0.0001
x0=1.5
!
牛顿迭代法-------------------------------------------------------------
dowhile(abs(f(x0))>=m)
x1=x0-f(x0)/df(x0)
x0=x1
i=i+1
write(*,"(i4,f10.7)")i,x0
enddo
pause
endprogramAnalysis2
!
定义原函数-------------------------------------------------------------
functionf(x)
implicitnone
realf,x
f=x**3+2.*x*x+10.*x-20.
return
endfunction
!
定义原函数的导函数-------------------------------------------------------
functiondf(x)
implicitnone
realdf,x
df=3.*x*x+4.*x+10.
return
endfunction
2014级硕士研究生数值分析上机实习(第二次)
姓名:
学号:
学院:
实习题目:
计算8阶三对角矩阵
的行列式.
实习目的:
掌握计算行列式的方法.
实习要求:
首先选择一种算法,然后用C程序语言编程上机进行计算.
报告内容:
1.简单描述所采用的算法:
2.计算结果:
3.实习过程中遇到哪些问题?
如何解决?
有何心得体会?
4.写出C语言计算程序(此页写不下时可以加页):
2014级硕士研究生数值分析上机实习(第三次)
姓名:
学号:
学院:
实习题目:
分别用Jacobi迭代法和Gauss-Seidel迭代法求解线性方程组
实习目的:
感受两种迭代法的收敛速度.
实习要求:
首先构造收敛的Jacobi迭代法和Gauss-Seidel迭代法,然后用C程序语言编程上机进行求解,初始值均取为0,精确到4位小数.
报告内容:
1.写出收敛的Jacobi迭代法和Gauss-Seidel迭代法:
2.将最后一次迭代次数
与相应的迭代结果填入下表
迭代法
Jacobi
Gauss-Seidel
3.实习过程中遇到哪些问题?
如何解决?
有何心得体会?
4.C语言计算程序:
2014级硕士研究生数值分析上机实习(第四次)
姓名:
学号:
学院:
实习题目:
分别用复化梯形公式和复化Simpson公式计算积分
的近似值
和
.
实习目的:
体会两种复化求积公式的收敛性与收敛速度.
实习要求:
用C程序语言编程上机进行计算,结果要有八位有效数字.
报告内容:
1.写出求
和
的复化求积公式:
2.写出具有八位有效数字的计算结果:
;
=
;
=
3.实习过程中遇到哪些问题?
如何解决?
有何心得体会?
4.C语言计算程序(此页写不下时可以加页):