当前位置: 首页 > ai >正文

数值运算的误差估计

数值运算的误差估计

设两个近似数 x 1 ∗ x_1^* x1 x 2 ∗ x_2^* x2的误差限分别为 ε ( x 1 ∗ ) \varepsilon(x_{1}^{*}) ε(x1) ε ( x 2 ∗ ) \varepsilon(x_{2}^{*}) ε(x2)

误差限满足一下运算法则:

  1. 和差运算的误差限

    • y = x 1 ± x 2 y = x_1\pm x_2 y=x1±x2
    • 对于 y ∗ = x 1 ∗ ± x 2 ∗ y^ *= x_1^*\pm x_2^* y=x1±x2,其误差限 ε ( y ∗ ) \varepsilon(y^*) ε(y)满足 ε ( y ∗ ) = ε ( x 1 ∗ ) + ε ( x 2 ∗ ) \varepsilon(y^*)=\varepsilon(x_1^*)+\varepsilon(x_2^*) ε(y)=ε(x1)+ε(x2)
    • 证明:因为
      ∣ x 1 − x 1 ∗ ∣ ⩽ ε ( x 1 ∗ ) \vert x_1 - x_1^*\vert\leqslant\varepsilon(x_1^*) x1x1ε(x1) ∣ x 2 − x 2 ∗ ∣ ⩽ ε ( x 2 ∗ ) \vert x_2 - x_2^*\vert\leqslant\varepsilon(x_2^*) x2x2ε(x2)

      ∣ y − y ∗ ∣ = ∣ ( x 1 ± x 2 ) − ( x 1 ∗ ± x 2 ∗ ) ∣ = ∣ ( x 1 − x 1 ∗ ) ± ( x 2 − x 2 ∗ ) ∣ ⩽ ∣ x 1 − x 1 ∗ ∣ + ∣ x 2 − x 2 ∗ ∣ ⩽ ε ( x 1 ∗ ) + ε ( x 2 ∗ ) \vert y - y^*\vert=\vert(x_1\pm x_2)-(x_1^*\pm x_2^*)\vert=\vert(x_1 - x_1^*) \pm(x_2 - x_2^*)\vert\leqslant\vert x_1 - x_1^*\vert+\vert x_2 - x_2^*\vert\leqslant\varepsilon(x_1^*)+\varepsilon(x_2^*) yy=(x1±x2)(x1±x2)=(x1x1)±(x2x2)x1x1+x2x2ε(x1)+ε(x2)
  2. 乘积运算的误差限

    • y = x 1 x 2 y = x_1x_2 y=x1x2


    • ε ( y ∗ ) ∣ y ∗ ∣ ≈ ∣ x 2 ∗ ∣ ε ( x 1 ∗ ) + ∣ x 1 ∗ ∣ ε ( x 2 ∗ ) ∣ x 1 ∗ x 2 ∗ ∣ = ε ( x 1 ∗ ) ∣ x 1 ∗ ∣ + ε ( x 2 ∗ ) ∣ x 2 ∗ ∣ \frac{\varepsilon(y^*)}{\vert y^*\vert}\approx\frac{\vert x_2^*\vert\varepsilon(x_1^*)+\vert x_1^*\vert\varepsilon(x_2^*)}{\vert x_1^*x_2^*\vert}=\frac{\varepsilon(x_1^*)}{\vert x_1^*\vert}+\frac{\varepsilon(x_2^*)}{\vert x_2^*\vert} yε(y)x1x2x2ε(x1)+x1ε(x2)=x1ε(x1)+x2ε(x2)(当 x 1 ∗ ≠ 0 x_1^*\neq0 x1=0 x 2 ∗ ≠ 0 x_2^*\neq0 x2=0),所以
      ε ( y ∗ ) ≈ ∣ x 2 ∗ ∣ ε ( x 1 ∗ ) + ∣ x 1 ∗ ∣ ε ( x 2 ∗ ) \varepsilon(y^*) \approx\vert x_2^*\vert\varepsilon(x_1^*)+\vert x_1^*\vert\varepsilon(x_2^*) ε(y)x2ε(x1)+x1ε(x2)

    • 证明:
      ∣ y − y ∗ ∣ = ∣ x 1 x 2 − x 1 ∗ x 2 ∗ ∣ = ∣ x 1 x 2 − x 1 x 2 ∗ + x 1 x 2 ∗ − x 1 ∗ x 2 ∗ ∣ = ∣ x 1 ( x 2 − x 2 ∗ ) + x 2 ∗ ( x 1 − x 1 ∗ ) ∣ ⩽ ∣ x 1 ∣ ∣ x 2 − x 2 ∗ ∣ + ∣ x 2 ∗ ∣ ∣ x 1 − x 1 ∗ ∣ \vert y - y^*\vert=\vert x_1x_2 - x_1^*x_2^*\vert=\vert x_1x_2 - x_1x_2^*+x_1x_2^* - x_1^*x_2^*\vert=\vert x_1(x_2 - x_2^*)+x_2^*(x_1 - x_1^*)\vert\leqslant\vert x_1\vert\vert x_2 - x_2^*\vert+\vert x_2^*\vert\vert x_1 - x_1^*\vert yy=x1x2x1x2=x1x2x1x2+x1x2x1x2=x1(x2x2)+x2(x1x1)x1∣∣x2x2+x2∣∣x1x1
      当用近似值 x 1 ∗ x_1^* x1 x 2 ∗ x_2^* x2代替 x 1 x_1 x1 x 2 x_2 x2时,
      ∣ y − y ∗ ∣ ≈ ∣ x 2 ∗ ∣ ε ( x 1 ∗ ) + ∣ x 1 ∗ ∣ ε ( x 2 ∗ ) \vert y - y^*\vert\approx\vert x_2^*\vert\varepsilon(x_1^*)+\vert x_1^*\vert\varepsilon(x_2^*) yyx2ε(x1)+x1ε(x2)

  3. 商运算的误差限

    • y = x 1 x 2 ( x 2 ≠ 0 ) y=\frac{x_1}{x_2}(x_2\neq0) y=x2x1(x2=0)

    • ε ( y ∗ ) ∣ y ∗ ∣ ≈ ε ( x 1 ∗ ) ∣ x 1 ∗ ∣ + ε ( x 2 ∗ ) ∣ x 2 ∗ ∣ \frac{\varepsilon(y^*)}{\vert y^*\vert}\approx\frac{\varepsilon(x_1^*)}{\vert x_1^*\vert}+\frac{\varepsilon(x_2^*)}{\vert x_2^*\vert} yε(y)x1ε(x1)+x2ε(x2)(当 x 1 ∗ ≠ 0 x_1^*\neq0 x1=0 x 2 ∗ ≠ 0 x_2^*\neq0 x2=0),所以
      ε ( y ∗ ) ≈ ∣ x 2 ∗ ∣ ε ( x 1 ∗ ) + ∣ x 1 ∗ ∣ ε ( x 2 ∗ ) ∣ x 2 ∗ ∣ 2 \varepsilon(y^*) \approx\frac{\vert x_2^*\vert\varepsilon(x_1^*)+\vert x_1^*\vert\varepsilon(x_2^*)}{\vert x_2^*\vert^2} ε(y)x22x2ε(x1)+x1ε(x2)
    • 证明:
      ∣ y − y ∗ ∣ = ∣ x 1 x 2 − x 1 ∗ x 2 ∗ ∣ = ∣ x 1 x 2 ∗ − x 1 ∗ x 2 x 2 x 2 ∗ ∣ = ∣ x 1 x 2 ∗ − x 1 ∗ x 2 ∗ + x 1 ∗ x 2 ∗ − x 1 ∗ x 2 x 2 x 2 ∗ ∣ = ∣ x 2 ∗ ( x 1 − x 1 ∗ ) + x 1 ∗ ( x 2 ∗ − x 2 ) x 2 x 2 ∗ ∣ ⩽ ∣ x 2 ∗ ∣ ∣ x 1 − x 1 ∗ ∣ + ∣ x 1 ∗ ∣ ∣ x 2 − x 2 ∗ ∣ ∣ x 2 ∣ ∣ x 2 ∗ ∣ \vert y - y^*\vert=\left\vert\frac{x_1}{x_2}-\frac{x_1^*}{x_2^*}\right\vert=\left\vert\frac{x_1x_2^* - x_1^*x_2}{x_2x_2^*}\right\vert=\left\vert\frac{x_1x_2^* - x_1^*x_2^*+x_1^*x_2^* - x_1^*x_2}{x_2x_2^*}\right\vert=\left\vert\frac{x_2^*(x_1 - x_1^*)+x_1^*(x_2^* - x_2)}{x_2x_2^*}\right\vert\leqslant\frac{\vert x_2^*\vert\vert x_1 - x_1^*\vert+\vert x_1^*\vert\vert x_2 - x_2^*\vert}{\vert x_2\vert\vert x_2^*\vert} yy= x2x1x2x1 = x2x2x1x2x1x2 = x2x2x1x2x1x2+x1x2x1x2 = x2x2x2(x1x1)+x1(x2x2) x2∣∣x2x2∣∣x1x1+x1∣∣x2x2
      当用近似值 x 1 ∗ x_1^* x1 x 2 ∗ x_2^* x2代替 x 1 , x 2 x_1,x_2 x1,x2时,
      ε ( y ∗ ) ≈ ∣ x 2 ∗ ∣ ε ( x 1 ∗ ) + ∣ x 1 ∗ ∣ ε ( x 2 ∗ ) ∣ x 2 ∗ ∣ 2 \varepsilon(y^*) \approx\frac{\vert x_2^*\vert\varepsilon(x_1^*)+\vert x_1^*\vert\varepsilon(x_2^*)}{\vert x_2^*\vert^2} ε(y)x22x2ε(x1)+x1ε(x2)
  4. 一般函数关系

ε ( A ∗ ) ≈ ∑ k = 1 n ( ∣ ∂ f ∂ x k ∗ ε ( x k ∗ ) ∣ ) \boxed{\varepsilon(A^*)\approx \sum_{k=1}^{n}\left(\left|\dfrac{\partial f}{\partial x_k}^*\varepsilon(x^*_k)\right|\right)} ε(A)k=1n( xkfε(xk) )



另一个同理,只写前半部分。设 f ( x ) = ln ⁡ ( x − x 2 − 1 ) f(x)=\ln (x-\sqrt{x^2-1}) f(x)=ln(xx21 )
y = ln ⁡ ( x − x 2 − 1 ) y=\ln (x-\sqrt{x^2-1}) y=ln(xx21 )

由误差公式:

ε ( f ∗ ) = ε ( y ∗ ) ∣ y ∗ ∣ \varepsilon(f^*)=\frac{\varepsilon(y^*)}{|y^*|} ε(f)=yε(y)

计得,保留 4 4 4位有效数字
∣ y ∗ ∣ = 0.01667 |y^*|=0.01667 y=0.01667

带入得到:

ε ( f ∗ ) = 0.5 × 1 0 − 5 0.01667 ≈ 2.9994 × 1 0 − 4 \varepsilon(f^*)=\frac{0.5\times 10^{-5}}{0.01667}\approx 2.9994\times 10^{-4} ε(f)=0.016670.5×1052.9994×104


原答案:

http://www.xdnf.cn/news/5372.html

相关文章:

  • DAMA车轮图
  • PyCharm软件下载和配置Python解释器
  • 【英语笔记(八)】介词和冠词的分析;内容涵盖介词构成、常用介词用法、介词短语;使用冠词表示不同的含义:不定冠词、定冠词、零冠词
  • 【Java项目脚手架系列】第六篇:Spring Boot + JPA项目脚手架
  • Git初始化相关配置
  • Vue 跨域解决方案及其原理剖析
  • springboot3+vue3融合项目实战-大事件文章管理系统-更新用户密码
  • 【AI提示词】免疫系统思维专家
  • 英语句型结构
  • ElasticSearch进阶
  • 【C/C++】const关键词及拓展
  • MIT 6.S081 2020 Lab3 page tables 个人全流程
  • 基于Java和高德开放平台的WebAPI集成实践-以搜索POI2.0为例
  • Typora自动对其脚注序号
  • 差分与位移算子
  • PostGreSQL:数据表被锁无法操作
  • JVM-类加载子系统
  • DA14585墨水屏学习(2)
  • Day01 ST表——倍增表
  • 11、参数化三维产品设计组件 - /设计与仿真组件/parametric-3d-product-design
  • 移动应用开发的六大设计原则
  • [Java实战]Spring Boot 整合 Freemarker (十一)
  • C++入门小馆: 二叉搜索树
  • 前端面试2
  • 【C语言干货】二维数组传参本质
  • C++23 views::repeat (P2474R2) 写一篇博客
  • Flutter - UIKit开发相关指南 - 导航
  • 深入理解 Java 适配器模式:架构设计中的接口转换艺术
  • 集成灶十大品牌对比
  • Nodejs核心机制