求方程 f ( x ) = 0 f(x)=0 f(x)=0的根。
1 划界法函数通常在其根附近改变符号。利用两个初始值,这两个初始值必须位于跟的两侧。利用中值定理,必存在一个根落在区间内。利用这个性质,不断地缩小根的区间范围,直到足够接近结果为止。这类方法称为“划界法”。
1.1 二分法思路: 若已知 f ( a ) < 0 f(a)0 f(b)>0,根据中值定理,必存在一个根落在区间(a, b)内。因此,
取区间(a, b)的中点,计算中点的值 f ( x ) = f ( ( a + b ) / 2 ) f(x)=f((a+b)/2) f(x)=f((a+b)/2);若 f ( ( a + b ) / 2 ) f((a+b)/2) f((a+b)/2)与 f ( b ) < 0 f(b) number, dtFunc: (param: number) => number, x0: number, tol: number = 1e-12, validEps?: number, maxIterNum?: number, ) { let iter = 0; let xi: number = x0; let bIsDecrease = true; while (iter = NORMAL_ITER_NUM) { const newFx = func(newx); bIsDecrease = Math.abs(newFx)