您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 数值分析第五版第1章习题答案-李庆扬
第1章复习与思考题1、什么是数值分析?它与数学科学和计算机的关系如何?答:数值分析是研究数值问题的算法,概况起来有四点:第一,面向计算机,要根据计算机的特点提供切实可行的有效算法,即算法只能包括计算机能直接处理的加、减、乘、除运算和逻辑运算。第二,有可靠的理论分析,能任意逼近并达到精度要求,对近似算法要保证收敛性和数值稳定性,还要对误差进行分析,这些都是建立在相应数学理论基础上第三,要有好的计算复杂性,时间复杂性是指能节省计算时间,空间复杂性是指能节省计算存储空间,这也是算法要研究的问题,它关系到算法能否在计算机上实现。要有数值试验,即任何一个算法除了从理论上要满足上述三个条件外,还要通过数值试验证明是行之有效的。2、何谓算法?如何判断数值算法的优劣?答:将连续问题离散化,使得输出数据是原函数在求解区间上的离散点的近似值,就是“数值问题”,求解“数值问题”的各种数值方法就是算法。判断数值算法的指标是计算复杂性,分为时间复杂性和空间复杂性。3、列出科学计算中误差的三个来源,并说出截断误差和舍入误差的区别?答:科学计算中的误差的三个来源是:截断误差、舍入误差和模型误差截断误差是数值计算方法的近似解与模型精确解之间产生误差。舍入误差是计算机由于字长限制,原始数据在计算机上表示时产生的误差。4、什么是绝对误差与相对误差?什么是近似数的有效数字?它与绝对误差和相对误差有何关系答:绝对误差是计算机计算的近似值与模型精确值之间的差值的绝对值相对误差是绝对误差除以精确值的绝对值,通常使用绝对误差除以计算机计算的近似值的绝对值表示近似数的有效数字:若近似数第m位有效,而第m+1为无效,则从第m位向前数到X*的第一位非零数字共有n位。就说近似数具有n位有效数字。此时的近似数的绝对误差不大于第m位的半个单位。即有效数字越多,绝对误差限越小5、什么是算法的稳定性?如何判断算法稳定?为什么不稳定的算法不能使用答:如果一个算法在计算过程中有舍入误差,而舍入误差在计算过程中不增长,则称此算法是数值稳定的。通过误差传播是否扩大可以判断算法是否稳定不稳定的算法,其误差传播是扩大的,导致计算结果不准确,因而不能使用。6、什么是问题的病态性?它是否受所用算法的影响答:对于一个数值问题本身,如果输入数据有微小的扰动(即误差),引起输出数据(即问题解)相对误差很大,这就是问题的病态性。病态问题是数值问题自身固有的,与所用算法无关。但选择算法可以减少误差的危害。7、什么是迭代法,试利用x^3-a=0,构造计算√𝑎3的迭代公式答:迭代法是指按同一公式重复计算逐次逼近真值的算法。x^3-a=0令X=X0+∆X则(X0+∆X)3=a有𝑥03+3𝑥0∆𝑥2+3∆𝑥𝑥02+∆𝑥3=a由于△x时是小量,若省略高阶项△x的二次方和三次方。有𝑥03+3∆𝑥𝑥02=a即∆x=(a−𝑥03)/(3𝑥02)于是有x1=x0+∆x≈x0+𝑎3𝑥02−𝑥03,重复,可以得到迭代公式𝑥𝑘+1=2𝑥𝑘3+𝑎3𝑥𝑘28、直接利用以直代曲的原则构造方程x^2-a=0的根x*=√𝑎的迭代法答:𝑥𝑘+1=𝑥𝑘−𝑥𝑘2−𝑎2𝑥𝑘=𝑥𝑘2+𝑎2𝑥𝑘9、举例说明什么是松弛技术。答:刘徽的割圆术计算π的方法,取松弛因子ω=36/105,加速计算得到了π的近似值3.141610、考虑无穷级数∑1𝑛⁄∞𝑛,它是发散的,在计算机上计算它的部分和,会得到什么结果?为什么?答:计算结果不会发散。原因是受计算机字长的限制,当n趋近于无穷时,1/n趋近于0,受计算机字长的限制,会直接得零。因此,总和在n达到某一个值(受计算机字长限制,可由字长计算)后,总和保持不变。11、判断下列命题的正确性(1)解对数据的微小变化高度敏感是病态的对(2)高精度运算可以改善问题的病态性错(3)无论问题是否病态,只要算法稳定都能得到好的近似值错(4)用一个稳定的算法计算良态问题一定会得到好的近似值错(5)用一个收敛的迭代法计算良态问题一定会得到好的近似值对(6)两个近似数相减必然会使有效数字损失对(7)计算机上将1000个数量级不同的数相加,不管次序如何结果都是一样的错习题1、设X0,X的相对误差为δ,求lnX的误差解:设近似值为*0X,依据定义r(X*)|X*X|/X*E(X*)|X*-X|=X*E所以**XXX解法1:按定义求解E(lnX)=|lnX-LnX*|=ln(X/X*)=ln(1-)r(lnX)|lnXln*|/lnX*ln(1)/lnX*ln(1)/lnX*EX解法2:按泰勒展开求解,2(x)(x*)=(x*)(xx*)()(xx*)ffff则:1(lnX*)|lnXlnX*|lnX*(XX*)**r(lnX*)|lnXlnX*|/ln*/ln*EXXEXX问题是解法1错了吗?没错,当很小时,ln(1-)=2、设X的相对误差为2%,求nX的相对误差解:由已知条件设X*X为X的近似数,有Er(*)=|(X-X*)/X*|=0.02X所以*0.02*XXX解法1:按照定义:{(10.02)X*}*(1.02)nnnnXX(X)(XX*)/X*1.021(10.02)1nnnnnEr多项式展开,有10(X)0.02nnniiEr解法2:按照泰勒展开11(X)(XX*)*(XX*)nX*(0.02X*)0.02X*(X)(XX*)/X*0.02*/*0.02nnnnnnnnnnnnEnXErnXXn问题是解法1错了吗?10.02nnii收敛于(0.02/(1-0.02)=0.002004008016032064128256)与0.02n不一致。如何解释?应该没有错,按照泰勒展开,相当于将误差限放大了。3、下列各数都是经过四舍五入得到的近似数,即误差限不超过最后一位的半个单位,试指出它们是几位有效数字*11.1021x,*20.031x,*3385.6x,*456.430x,*571.0x。解:X1有4位有效数字;X2有1位有效数字;X3有3位有效数字;X4有1位有效数字4、利用公式(2.3)求些列各近似值的误差限***124xxx,***123xxx,*4*2/xx其中****1234xxxx,,,均为上题给出的数。公式(2.3):1(A*)|()*|(X)nkkkfX解:******4333124124()()()()0.5100.5100.5101.0510xxxxxx************1232311321234313()()()()0.031385.60.5101.1021385.60.5101.10210.0310.510(0.59768212.484881.708255)100.214790815xxxxxxxxxxxx******2*2442244323335(/)1/()/()()1/56.4300.5100.031/(56.430)0.510(10.031/56.430)/56.4300.510=(0.99945064681906787169945064681907)0.5/56.430100.885610xxxxxxx5、计算求体积要使相对误差限为1%,问度量半径R所允许的相对误差是多少?解:球的体积公式3VR利用公式2.3有23(V)3R(R)/R3(R)/R0.01r有(R)0.01/3R(R)(R)/1/300rR6、设Y0=28,按递推公式11783100nnYY,1,2,3.....n计算到Y100,若取78327.982(5位有效数字),试问计算Y100将有多大的误差解:令nY和nY分别表示准确值和近似值,绝对误差nnn(Y)(YY),所以(Y)0n。111783100127.982100nnnnYYYY所以nnn11n1n1n2n200(Y)|(YY)|11|(783)(27.982)|10010011|(YY)(27.982783)|10010011|(YY)2(27.982783)|10010011|(YY)(27.982783)|10010011|(27.982783)|100100nnYYnn当n=100时3n11(Y)|100(27.982783)||27.982783|0.510100100此种迭代,误差越来越大,属于不稳定算法。7、求方程25610XX的两个根,使它至少具有4位有效数字(78327.982)解:利用求根公式有21,242bbacXa令2221456564282812878322bbacXa224287832bbacXa当78327.982,具有5为有效数字。因此12827.98255.982X,具有5位有效数字,符合题意的要求。22827.9820.018X,只具有2位有效数字,不符合题意的要求。因此将2211287831.786291055.98228783X,具有5位有效数字,满足题意的要求。此题的重点是,要注意两式相减时其有效位数是会降低的。因此,要避免2个接近的数字相减。8、当XY时,计算lnlnXY有效位数会损失,改用lnlnlnxxyy是否就能减少舍入误差?(提示:考虑对数函数何时出现病态)。解:令XZ=Y利用3.3式,相对误差比值(x)(x*)(x)||||(X)(x)ffxfff有1*lnzlnz*1*||||||lnz*lnz*lnz*zz由于XZ=1Y因此ln0z,所以lnzlnz*||1lnz,故误差是扩大的。只有当|ln*|1z,即|*||*|XeY时,误差才会减少。答:因此改用lnlnlnxxyy不能减少舍入误差。问题:对于本题,该如何得到要求精度的解。9、正方形的边长大约为100cm,应怎样测量才能使其面积误差不超过12cm?解:面积公式:2SL2(S)(L)2(L)2*100(L)1L所以1(L)200,即1L=100200cm10、设212Sgt,假定g是准确的,而对t的测量有0.1秒的误差,证明当t增加时S的绝对误差增加,而相对误差却减少。证明:根据绝对误差和相对误差定义有:2(S)|2gt(t)||0.2|0.2gt(t)0.1(S)|(S)/2gt|||gtrtt从上式可以看出,当t增加时,(S)增加而(S)r减少11、序列ny满足递推关系1101nnyy1,2,3...,n,若021.41y(三位有效数字),计算到10y时误差有多大?这个计算过程稳定吗?此题同第6题解:设ny和ny分别为递推公式的准确值和精确值有002,1.41yy101010999910001028(Y)|Y||(10Y1)(10Y1)||10(YY)|....|10(YY)||100.510||0.510|Y因此,计算过程是不稳定的。12、计算6(21)f,取21.4,利用下列公式计算,哪一个得到的结果最好?61(21),3(322),31(322),99702。解:利用泰勒展开有141767116()|6|(1.4)||0.5106.54100.5102.4(21)(21),即1位有效数字保留了下来32111((322))|6(322)|(1.4)|60.2|0.5100.6100.510,没有有效数字141434116()|6()|(1.4)||0.5100.265100.5105.8(322)(322)即1位有效数字保留了下来11(99702)|70|(1.4)35100.510,没有有效数字13、2()ln(1)fxxx,求)30(f的值。若开平方用六位函数表,问求对数时误差有多大?若改用另一等价公式22ln(1)ln(1)xxxx计算,求对数时误差有多大?解:使用六位函数表时,230-1=899=29.9833,则4(30)0.510利用泰勒展开有424241(())|(30)(30)|||0.51011=||0.5100.2994100.5103029.9833fXfxx降低了计算精度424641(())|(30)(30)|||0.51011=||0.5100.8336100.5103029.9833fXfxx保持了计算精度本题说明,选择合理的计算方法能
本文标题:数值分析第五版第1章习题答案-李庆扬
链接地址:https://www.777doc.com/doc-2402964 .html