数值分析与算法 课程作业3(2016 - 2017秋季学期)_527805326
- 格式:pdf
- 大小:839.30 KB
- 文档页数:1
数值分析第三次作业1.设计方案对Fredholm积分方程,用迭代法进行求解:()'(())u x A u x=,其中11(())()(,)()A u x g x K x y u y dy-=-⋅⎰对于公式中的积分部分用数值积分方法。
复化梯形积分法,取2601个节点,取迭代次数上限为50次。
实际计算迭代次数为18次,最后算得误差为r= 0.97E-10。
复化Simpson积分法,取迭代次数上限为50次,取2*41+1,即83个节点时能满足精度要求。
实际计算迭代次数为17次,最后的误差为r= 0.97E-10。
Guass积分法选择的Gauss—Legendre法,取迭代次数上限为50次,直接选择8个节点,满足精度要求。
实际计算迭代次数为24次,最后算得误差为r= 0.87E-10。
2.全部源程序module integralimplicit nonecontains!//////////复化梯形subroutine trapezoid(m)implicit noneinteger :: i,j,k,mreal*8 :: x(m+1),u(m+1)real*8 :: sum,sum1,g,r,hreal*8 :: e=1.0e-10h=2./mdo i=1,m+1x(i)=-1.+(i-1)*hend dou=0.02do k=1,50do i=1,m+1sum1=0.g=dexp(x(i)*4.)+(dexp(x(i)+4.)-dexp(-4.-x(i)))/(x(i)+4.)do j=2,msum1=sum1+dexp(x(i)*x(j))*u(j)end dosum=h/2.*(dexp(x(i)*-1.)*u(1)+dexp(x(i)*1.)*u(m+1)+2*sum1)u(i)=g-sumend dor=h/2.*((dexp(x(1)*4)-u(1))**2+(dexp(x(m+1)*4)-u(m+1))**2) do i=2,mr=r+h*(dexp(x(i)*4)-u(i))**2end doif(dabs(r)<=e) exitend dowrite(*,*) kopen(1,file="trapezoid.txt")do i=1,m+1write(1,'(3(f18.12))') x(i),u(i),dexp(x(i)*4.)end dowrite(1,'(4x,a2,e9.2)') "r=",rclose(1)returnend subroutine trapezoid!///////////复化simpsonsubroutine simpson(m)implicit noneinteger :: i,j,k,mreal*8 :: x(2*m+1),u(2*m+1)real*8 :: sum,sum1,sum2,g,r,hreal*8 :: e=1.0e-10h=2./(2.*m)do i=1,2*m+1x(i)=-1.+(i-1)*hend dou=0.02do k=1,50do i=1,2*m+1sum1=0.sum2=0.g=dexp(x(i)*4.)+(dexp(x(i)+4.)-dexp(-4.-x(i)))/(x(i)+4.)do j=1,msum1=sum1+dexp(x(i)*x(2*j))*u(2*j)end dodo j=1,m-1sum2=sum2+dexp(x(i)*x(2*j+1))*u(2*j+1)sum=h/3.*(dexp(x(i)*-1.)*u(1)+dexp(x(i)*1.)*u(2*m+1)+4*sum1+2*sum2) u(i)=g-sumend dor=h/3.*((dexp(x(1)*4)-u(1))**2+(dexp(x(2*m+1)*4)-u(2*m+1))**2)do i=1,mr=r+4.*h/3.*(dexp(x(2*i)*4)-u(2*i))**2end dodo i=1,m-1r=r+2.*h/3.*(dexp(x(2*i+1)*4)-u(2*i+1))**2end doif(dabs(r)<=e) exitend dowrite(*,*) kopen(2,file="simpson.txt")do i=1,2*m+1write(2,'(3(f18.12))') x(i),u(i),dexp(x(i)*4.)end dowrite(2,'(4x,a2,e9.2)') "r=",rclose(2)returnend subroutine simpson!///////////Gauss_Legendre法subroutine Gaussimplicit noneinteger,parameter :: m=8integer :: i,j,kreal*8 :: x(m),u(m),a(m)real*8 :: sum,g,rreal*8 :: e=1.0e-10data x /-0.9602898565,-0.7966664774,-0.5255324099,-0.1834346425,&0.1834346425,0.5255324099,0.7966664774,0.9602898565/data a /0.1012285363,0.2223810345,0.3137066459,0.3626837834,&0.3626837834,0.3137066459,0.2223810345,0.1012285363/u=0.02do k=1,50do i=1,mg=dexp(x(i)*4.)+(dexp(x(i)+4.)-dexp(-4.-x(i)))/(x(i)+4.)do j=1,msum=sum+dexp(x(i)*x(j))*u(j)*a(j)end dou(i)=g-sumend dor=0.do i=1,mr=r+a(i)*(dexp(x(i)*4)-u(i))**2end doif(dabs(r)<=e) exitend dowrite(*,*) kopen(3,file="Gauss.txt")do i=1,mwrite(3,'(3(f18.12))') x(i),u(i),dexp(x(i)*4.)end dowrite(3,'(4x,a2,e9.2)') "r=",rclose(3)returnend subroutine Gaussend module!//////////主程序program mainuse integralimplicit noneinteger :: code1=2600integer :: code2=41call trapezoid(code1)call simpson(code2)call Gaussend program3.各种积分方法的节点和数值解(由于数据太多,在打印时用了较计算时少的有效数字)复化Simpson法4.各方法所得曲线(由于所取节点太多,且精度高,所以图中很难看出各曲线的区别。
第一章 绪论(12) 第二章 插值法(40-42)2、当2,1,1-=x 时,4,3,0)(-=x f ,求)(x f 的二次插值多项式。
[解]372365)1(34)23(21)12)(12()1)(1(4)21)(11()2)(1()3()21)(11()2)(1(0))(())(())(())(())(())(()(2221202102210120120102102-+=-++--=+-+-⨯+------⨯-+-+-+⨯=----+----+----=x x x x x x x x x x x x x x x x x x x y x x x x x x x x y x x x x x x x x y x L 。
3、给出x x f ln )(=的数值表用线性插值及二次插值计算54.0ln 的近似值。
X 0.4 0.5 0.6 0.7 0.8 x ln -0.916291 -0.693147 -0.510826 -0.357765 -0.223144[解]若取5.00=x ,6.01=x ,则693147.0)5.0()(00-===f x f y ,510826.0)6.0()(11-===f x f y ,则604752.182321.1)5.0(10826.5)6.0(93147.65.06.05.0510826.06.05.06.0693147.0)(010110101-=---=--⨯---⨯-=--+--=x x x x x x x x x y x x x x y x L ,从而6202186.0604752.19845334.0604752.154.082321.1)54.0(1-=-=-⨯=L 。
若取4.00=x ,5.01=x ,6.02=x ,则916291.0)4.0()(00-===f x f y ,693147.0)5.0()(11-===f x f y ,510826.0)6.0()(22-===f x f y ,则 217097.2068475.404115.2)2.09.0(5413.25)24.0(3147.69)3.01.1(81455.45)5.06.0)(4.06.0()5.0)(4.0()510826.0()6.05.0)(4.05.0()6.0)(4.0()693147.0()6.04.0)(5.04.0()6.0)(5.0(916291.0))(())(())(())(())(())(()(22221202102210120120102102-+-=+--+-⨯++-⨯-=----⨯-+----⨯-+----⨯-=----+----+----=x x x x x x x x x x x x x x x x x x x x x x y x x x x x x x x y x x x x x x x x y x L ,从而61531984.0217097.21969765.259519934.0217097.254.0068475.454.004115.2)54.0(22-=-+-=-⨯+⨯-=L补充题:1、令00=x ,11=x ,写出x e x y -=)(的一次插值多项式)(1x L ,并估计插值余项。
数值分析第三版习题答案
《数值分析第三版习题答案》
数值分析是一门研究利用数学方法和计算机技术解决实际问题的学科。
《数值分析第三版习题答案》是一本重要的教材,它包含了大量的习题和答案,帮助学
生更好地理解和掌握数值分析的知识。
在这本教材中,学生将会学习到一些重要的数值分析方法,比如插值法、数值
积分、常微分方程数值解法等。
这些方法在工程、物理、经济等领域都有着广
泛的应用,因此掌握这些方法对于学生来说非常重要。
《数值分析第三版习题答案》不仅提供了习题的答案,还对每个答案进行了详
细的解释,帮助学生更好地理解每个问题的解决方法。
通过练习这些习题,学
生可以提高他们的数值分析能力,为将来的工作和研究打下坚实的基础。
除了学生,这本教材也对教师和研究人员有着重要的意义。
教师可以通过这本
教材中的习题和答案来设计课程和考试,帮助学生更好地掌握数值分析的知识。
研究人员则可以通过这本教材中的方法和技巧来解决实际问题,推动学科的发展。
总之,《数值分析第三版习题答案》是一本非常重要的教材,它对于学生、教师和研究人员都有着重要的意义。
希望更多的人能够通过这本教材来学习和掌握
数值分析的知识,为推动科学技术的发展做出更大的贡献。
数值计算方法与算法第三版课后习题答案1. 矩阵乘法问题描述给定两个矩阵A和B,尺寸分别为n×m和m×p,求矩阵A 和矩阵B的乘积矩阵C,尺寸为n×p。
算法实现import numpy as npdef matrix_multiplication(A, B):n, m = A.shapem, p = B.shapeC = np.zeros((n, p))for i in range(n):for j in range(p):for k in range(m):C[i][j] += A[i][k] * B[k][j] return C示例A = np.array([[1, 2], [3, 4]])B = np.array([[5, 6], [7, 8]])C = matrix_multiplication(A, B)print(C)输出结果:[[19. 22.][43. 50.]]2. 数值积分问题描述给定一个函数f(x),以及积分区间[a, b],求函数f(x)在区间[a, b]上的定积分值∫abf(x)dx。
算法实现简单的数值积分算法是采用小梯形法,将区间[a, b]均分成n个子区间,然后计算每个子区间的面积,最后将这些子区间面积相加得到定积分值。
def numerical_integration(f, a, b, n):h = (b - a) / nintegral =0for i in range(n):x1 = a + i * hx2 = a + (i +1) * hintegral += (f(x1) + f(x2)) * h /2 return integral示例import mathf =lambda x: math.sin(x)a =0b = math.pin =100result = numerical_integration(f, a, b, n) print(result)输出结果:1.99983550388744363. 非线性方程求解问题描述给定一个非线性方程f(x) = 0,求方程的根x。
数值分析练习题及答案数值分析练习题及答案数值分析是应用数学的一个分支,它研究如何使用数值方法解决实际问题。
在数值分析的学习过程中,练习题是非常重要的一部分,通过练习题的完成,我们可以更好地理解和掌握数值分析的原理和方法。
本文将给出一些数值分析的练习题及其答案,希望对读者有所帮助。
一、插值与拟合1. 插值是指根据已知数据点的函数值,通过某种方法推导出在这些数据点之间的函数值。
请问插值的目的是什么?答案:插值的目的是通过已知数据点的函数值,推导出在这些数据点之间的函数值,以便于我们在这些数据点之间进行计算和分析。
2. 拟合是指根据已知数据点的函数值,通过某种方法找到一个函数,使得该函数与这些数据点尽可能接近。
请问拟合的目的是什么?答案:拟合的目的是通过已知数据点的函数值,找到一个函数,使得该函数与这些数据点尽可能接近,以便于我们对数据的趋势和规律进行分析和预测。
二、数值积分1. 数值积分是指通过数值方法计算一个函数在某个区间上的积分值。
请问数值积分的应用领域有哪些?答案:数值积分在科学计算、工程设计、金融分析等领域都有广泛的应用。
例如,在物理学中,数值积分可以用来计算物体的质心、重心等重要物理量;在金融分析中,数值积分可以用来计算期权的价格和风险价值等。
2. 辛普森法则是一种常用的数值积分方法,它通过将积分区间划分为若干个小区间,并在每个小区间上使用一个二次多项式来逼近被积函数。
请问辛普森法则的原理是什么?答案:辛普森法则的原理是通过将积分区间划分为若干个小区间,并在每个小区间上使用一个二次多项式来逼近被积函数。
然后,通过对这些小区间上的二次多项式进行积分,最后将这些积分值加起来,就可以得到整个积分区间上的积分值。
三、数值微分1. 数值微分是指通过数值方法计算一个函数在某个点处的导数值。
请问数值微分的作用是什么?答案:数值微分的作用是通过数值方法计算一个函数在某个点处的导数值,以便于我们对函数的变化趋势和规律进行分析和预测。
7、计算的近似值,取。
利用以下四种计算格式,试问哪一种算法误差最小。
〔1〕〔2〕〔3〕〔4〕解:计算各项的条件数由计算知,第一种算法误差最小。
解:在计算机上计算该级数的是一个收敛的级数。
因为随着的增大,会出现大数吃小数的现象。
9、通过分析浮点数集合F=〔10,3,-2,2〕在数轴上的分布讨论一般浮点数集的分布情况。
10、试导出计算积分的递推计算公式,用此递推公式计算积分的近似值并分析计算误差,计算取三位有效数字。
解:此算法是数值稳定的。
第二章习题解答1.〔1〕 R n×n中的子集“上三角阵〞和“正交矩阵〞对矩阵乘法是封闭的。
〔2〕R n×n中的子集“正交矩阵〞,“非奇异的对称阵〞和“单位上〔下〕三角阵〞对矩阵求逆是封闭的。
设A是n×n的正交矩阵。
证明A-1也是n×n的正交矩阵。
证明:〔2〕A是n×n的正交矩阵∴A A-1 =A-1A=E 故〔A-1〕-1=A∴A-1〔A-1〕-1=〔A-1〕-1A-1 =E 故A-1也是n×n的正交矩阵。
设A是非奇异的对称阵,证A-1也是非奇异的对称阵。
A非奇异∴A可逆且A-1非奇异又A T=A ∴〔A-1〕T=〔A T〕-1=A-1故A-1也是非奇异的对称阵设A是单位上〔下〕三角阵。
证A-1也是单位上〔下〕三角阵。
证明:A是单位上三角阵,故|A|=1,∴A可逆,即A-1存在,记为〔b ij〕n×n由A A-1 =E,那么〔其中 j>i时,〕故b nn=1, b ni=0 (n≠j)类似可得,b ii=1 (j=1…n) b jk=0 (k>j)即A-1是单位上三角阵综上所述可得。
R n×n中的子集“正交矩阵〞,“非奇异的对称阵〞和“单位上〔下〕三角阵〞对矩阵求逆是封闭的。
2、试求齐次线行方程组Ax=0的根底解系。
A=解:A=~~~故齐次线行方程组Ax=0的根底解系为,3.求以下矩阵的特征值和特征向量。
1D 原问题和子问题使用相同的方法解8.用动态规划算法解决最大字段和问题,其时间复杂性为( B ). A.logn B.n C.n 2 D.nlogn9.解决活动安排问题,最好用( B )算法 A.分治 B.贪心C.动态规划 D.穷举10.下面哪种函数是回溯法中为避免无效搜索采取的策略( B ) A .递归函数B.剪枝函数C 。
随机数函数D.搜索函数11. 从活结点表中选择下一个扩展结点的不同方式将导致不同的分支限界法,以下除( C )之外都是最常见的方式.A.队列式分支限界法B.优先队列式分支限界法C.栈式分支限界法D.FIFO 分支限界法12. .回溯算法和分支限界法的问题的解空间树不会是( D ). A.有序树 B.子集树C.排列树 D.无序树13.优先队列式分支限界法选取扩展结点的原则是( C )。
A 、先进先出B 、后进先出C 、结点的优先级D 、随机14.下面是贪心算法的基本要素的是( C )。
A 、重叠子问题B 、构造最优解C 、贪心选择性质D 、定义最优解15.回溯法在解空间树T 上的搜索方式是( A ).A.深度优先B.广度优先C.最小耗费优先D.活结点优先 二、填空题(20分,每空1分)。
1.算法由若干条指令组成的又穷序列,且满足输入、 输出 、 确定性 和 有限性 四个特性。
2.分支限界法的两种搜索方式有 队列式(FIFO)分支限界法 、 优先队列式分支限界法 ,用一个队列来存储结点的表叫 活节点表 。
23. 直接或间接 调用自身的方法叫 递归算法 。
4、大整数乘积算法是用 分治算法 来设计的。
5、以广度优先或以最小耗费方式搜索问题解的算法称为 分支限界法 。
6.动态规划的子问题 重叠 。
7.贪心算法的选择性质是 贪心选择性质 、动态规划法的选择性质是 最优子结构性质 。
8.问题的 最优子结构性质 是该问题可用动态规划算法或贪心算法求解的关键特征。
9.以深度优先方式搜索问题解的算法称为 回溯法 。
2016 –2017秋季学期数值分析与算法课程作业
第三章最佳逼近
1、选取常数 a ,使
|x3−ax|
max
0≤x≤1
达到极小,又问这个解是否唯一?
2、求 f(x)=sinx 在[0,π/2]上的最佳一次逼近多项式,并估计误差。
3、求 f(x)=x4+3x3−1 在区间[0,1]上的三次最佳一致逼近多项式。
x,在[−1,1]上按勒让德多项式展开求三次最佳平方逼近多项式。
4、 f(x)=sinπ
2
5、分别求e|x|在[−1,1]上的(1)≤1次的最佳一致逼近多项式;(2)≤2次的最佳一致逼近多项式;(3)≤3次的最佳一致逼近多项式。
如果求解过程需要求解超越方程,不需求出具体数值。
6、求[0,1]上与√x偏差最小的首项系数为1的一次多项式。