无穷小演算

无穷小演算是微分和积分演算的另一个名字, 不过说到底, 我是怎么也学不会微积分.

第一章 求上界, 求下界

第二章 方程的根的逼近

1. 问题的地位

2. 试位法

本节假定函数f在某个区间[a,b]上定义, 具有连续的二阶导数, f在该区间上恒不为零 (由于连续性, 其符号不变), 并且f(a)f(b)<0. 设ξ0f在区间上唯一的那个根, 而ξ是将函数的两端连起来的直线 (也就是一次插值) 与横轴的交点. 若将ξ当作ξ0的近似值, 那么我们的问题是考虑误差|ξξ0|的上界.

引理.J的一个区间, fJ上两次连续可导 [注记: 其实两次连续可导的意思就是连续可导且导函数连续可导] 的函数, x0,x1J上不同的两点, L是在点x0x1处取与f相同的值的一次多项式:L(z)=(zx0)f(x1)(zx1)f(x0)x1x0;那么在含有x,x0,x1的最小区间上, 存在(与x有关的)一个点ζ满足f(x)L(x)=12f(ζ)(xx0)(xx1).
证明. 显然仅考虑xx0xx1的情况即可, 设J上函数u(z)=f(z)L(z)c(zx0)(zx1)其中常数cu(x)=0确定, 根据假设这是可能的. [注记: 这句话看上去有些奇怪, 但实际上就是令c=f(x)L(x)(xx0)(xx1)于是u(x)=0, 并不存在循环.] 因此, 我们有u(x)=u(x0)=u(x1)=0. 由Rolle定理, 在包含x,x0,x1的最小区间上, 存在不同的两点y1,y2使得u(y1)=u(y2)=0. 对于u再次应用Rolle定理, 在以y1,y2为端点的区间上存在ζ满足u(ζ)=0. 可是u(z)=f(z)2c, 从而c=12f(ζ), 即f(x)L(x)=12f(ζ)(xx0)(xx1).
推论. 如果fJ上恒不为零, 且ξ,ξ0J满足f(ξ0)=0,L(ξ)=0, 那么存在ζ,ζJ满足ξξ0=12f(ζ)f(ζ)(ξx0)(ξx1).如果对于xJ|f(x)|m>0f(x)M, 那么|ξξ0|M2m|ξx0||ξx1|.
证明. 根据引理, 我们有f(ξ)=12f(ζ)(ξx0)(ξx1)另一方面, 根据有限增量公式, 存在以ξ0ξ为端点的区间上的一个点ζ满足f(ξ)=(ξξ0)f(ζ).[注记: ξ=ξ0的退化情况下任取即可.] 由此即得推论.
评注. 若此式给出的误差还不足够小, 那么可以重复进行此步骤. 计算f(ξ)的符号, 由此判断根ξ0是在区间[a,ξ]还是[ξ,b]中, 然后可以得到第二近似值ξ. 理论上, 这种方法可以应用无限次, 也可证明得到的数列收敛于ξ0.

注记: 看起来好像根据推论, 不选择根所在的区间也可以缩小误差, 但是问题在于此时我们没法控制一次插值多项式的根仍然还在区间上, 所以不行. 另外, 本节要求二阶导数连续是为了保证|f(x)|在闭区间上有最大值, 可以控制误差.

练习9. 设在中的区间J=[a,b]上, 二次连续可导函数f满足|f(x)|m>0f(x)M, 且f(a)f(b)异号, 证明若M4m(ba)=q<1, 便可逐步应用试位法n次, 在区间[a,b]上找到端点是an,bn的一个区间, 其包含f(x)=0的唯一一根, 并且|bnan|4mMq2n.
证明. 实在是不知道怎么做. |b0a0|=|ba|. 设tn=|bnan|. 根据答案, 如果能够控制tn+12|ξn+1ξ0|Mm|ξn+1an||ξn+1bn|其中ξ0表示根的精确值, 而ξnn1时表示试位法的第n个猜测值, 那么tn+1Mm|ξn+1an||ξn+1bn|Mm(|bnan|2)2=M4mtn2这实际上就可以和要证明的结论合上了. 设s0=t0, 而sn+1=M4msn2, 那么tnsn. 现在考虑求sn的通项, 这是很简单的. 设rn=sn2n[注记: 这破浏览器MathML渲染根式怎么都有问题.] 那么rn+12n+1=M4m(rn2n)2=M4mrn2n+1于是rn+1rn=M4m2n+1对于n1, 我们有rn=rnrn1r1r0r0=(ba)k=1n(M4m)12k=(ba)(M4m)112n我们发现r0也满足此公式. 那么, 我们有sn=rn2n=(ba)2n(M4m)2n1=4mM[M4m(ba)]2n=4mMq2n

3. 用迭代法解x=g(x)

前一节我们有关步骤的出发点是有限增量公式, 即如果f(ξ)是小的, 而f却不太小, 那么误差|ξξ0|就是小的. 在下面, 我们要明确这种模糊的想法. 首先是迭代法.

g(x)=xf(x), 那么方程f(x)=0就等价于方程x=g(x).换言之, 就是寻找g的不动点. 我们有以下结果: