数值计算方法第二章—非线性方程的数值解法

本文介绍了非线性方程的数值解法,包括初始近似值搜索、迭代法如牛顿迭代法和弦截法。通过举例和误差分析,探讨了迭代法的收敛性、局部收敛性和加速技巧,以及牛顿法的修正策略,如简化牛顿法和下山法,强调了选择合适初值和迭代格式的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

非线性方程的数值解法

初始近似值的搜索

  • 方程的根

    f ( x ∗ ) = 0 f(x^*)=0 f(x)=0 x ∗ x^* x f ( x ) f(x) f(x) 的根


    单根和重根

    f ( x ∗ ) f(x^*) f(x) m m m 重根 x ∗ x^* x 的充要条件是
    f ( x ∗ ) = f ′ ( x ∗ ) = ⋯ = f ( m − 1 ) ( x ∗ ) = 0 f(x^*)=f'(x^*)=\cdots=f^{(m-1)}(x^*)=0 f(x)=f(x)==f(m1)(x)=0

    f ( m ) ( x ∗ ) ≠ 0 f^{(m)}(x^*)\ne0 f(m)(x)=0

    例: x = 0 x=0 x=0 是方程 f ( x ) = e 2 x − 1 − 2 x − 2 x 2 = 0 f(x)=e^{2x}-1-2x-2x^2=0 f(x)=e2x12x2x2=0 的几重根

    解: f ( x ) = e 2 x − 1 − 2 x − 2 x 2    f ( 0 ) = 0 f(x)=e^{2x}-1-2x-2x^2\ \ f(0)=0 f(x)=e2x12x2x2  f(0)=0

    f ′ ( x ) = 2 e 2 x − 2 − 4 x    f ′ ( 0 ) = 0 f'(x)=2e^{2x}-2-4x\ \ f'(0)=0 f(x)=2e2x24x  f(0)=0

    f ′ ′ ( x ) = 4 e 2 x − 4    f ′ ′ ( 0 ) = 0 f''(x)=4e^{2x}-4\ \ f''(0)=0 f(x)=4e2x4  f(0)=0

    f ′ ′ ′ ( x ) = 8 e 2 x    f ′ ′ ′ ( 0 ) = 8 ≠ 0 f'''(x)=8e^{2x}\ \ f'''(0)=8\ne0 f(x)=8e2x  f(0)=8=0

    x = 0 x=0 x=0 f ( x ) f(x) f(x) 的三重根


    • 有根区间

      f ( x ) = 0 f(x)=0 f(x)=0有根区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ]至少有一个


      f ( x ) f(x) f(x) 在区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ]连续,且 f ( a ) f ( b ) < 0 f(a)f(b)<0 f(a)f(b)<0 ,则 f ( x ) = 0 f(x)=0 f(x)=0 在区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ]至少有一个

    • 隔根区间

      f ( x ) = 0 f(x)=0 f(x)=0隔根区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ]只有一个


      f ( x ) f(x) f(x) 在区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ]单调连续,且 f ( a ) f ( b ) < 0 f(a)f(b)<0 f(a)f(b)<0 ,则 f ( x ) = 0 f(x)=0 f(x)=0 在区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ]有且仅有一个根

  • 逐步搜索法

    f ( x ) f(x) f(x) 的有根区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ] ,不妨假定 f ( a ) < 0 f(a)<0 f(a)<0 ,从 x 0 = a x_0=a x0=a 出发,按步长 h h h 一步一步向右跨。一旦 x k = a + k h x_k=a+kh xk=a+kh 上的 f ( x k ) f(x_k) f(xk) f ( a ) f(a) f(a) 异号,则确定了缩小的有根区间 [   x k − 1 ,   x k   ] [\ x_{k-1},\ x_k\ ] [ xk1, xk ]

  • 区间二分法(只能求单根)

    f ( x ) f(x) f(x) 在隔根区间 [   a ,   b   ] [\ a,\ b\ ] [ a, b ] 上单调连续,则不断计算 f ( a + b 2 ) f(\dfrac {a+b}2) f(2a+b)


    误差分析

    取有根区间 [   a k ,   b k   ] [\ a_{k},\ b_k\ ] [ ak, bk ] 的中点
    x k = 1 2 ( a k + b k ) x_k=\dfrac 12(a_k+b_k) xk=21(ak+bk)
    作为根的近似值,则此时的误差
    ∣ x ∗ − x k ∣ ≤ 1 2 ( b k − a k ) = 1 2 k + 1 ( b − a ) |x^*-x_k|\le\dfrac 12(b_k-a_k)=\dfrac 1{2^{k+1}}(b-a) xxk21(bkak)=2k+11(ba)
    若事先给定误差要求为 ε \varepsilon ε ,则只需
    ∣ x ∗ − x k ∣ ≤ 1 2 k + 1 ( b − a ) < ε |x^*-x_k|\le\dfrac 1{2^{k+1}}(b-a)<\varepsilon xxk2k+11(ba)<ε
    即可停止运算

    此时二分最小次数 k k k ,由 ∣ x ∗ − x k ∣ ≤ 1 2 k + 1 ( b − a ) < ε |x^*-x_k|\le\dfrac 1{2^{k+1}}(b-a)<\varepsilon xxk2k+11(ba)<ε 2 k + 1 > b − a ε 2^{k+1}>\dfrac {b-a}\varepsilon 2k+1>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值