计算机的错误计算(一百六十三)

摘要 四个算式"sin(0.00024/2)^2"、"(1-cos(0.00024))/2"、"(1-sqrt(1-sin(0.00024)^2))/2"以及"sin(0.00024)^2/(2+2*sqrt(1-sin(0.00024)^2))"是等价的。但是,在 MATLAB 中计算它们,输出不完全一致:中间两个算式的输出中含有错误数字。

例1. 已知

用上述四个算式依次计算

直接贴图吧 :

事实上,16位的正确结果为 0.1439999993088000e-7(ISRealsoft 提供)。

容易看出,MATLAB的中间两个输出中,与红色数字对应的有效数字是错误数字。这样,中间两个运算的输出中均有7位错误数字;有效数字的错误率均为 7/16 = 43.75% .

注:可参考计算机的错误计算(一百二十七)。出错原因可参看(一百二十九)

参考文献

1\] Ward Cheney, David Kincaid. Numerical Mathematics and Computing. 6th Ed. CA: Thomson Higher Education, 2008, p, 37

相关推荐
小马爱打代码10 小时前
Spring Boot:模块化实战 - 保持清晰架构
java·spring boot·架构
快乐zbc10 小时前
【C++ 基础】:给定一个指针 p,你能判断它是否指向合法的对象吗?
c++
tyatyatya10 小时前
MATLAB基础数据类型教程:数值型/字符型/逻辑型/结构体/元胞数组全解析
开发语言·matlab
程序员小远10 小时前
软件测试之单元测试详解
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
小坏讲微服务11 小时前
SpringBoot4.0整合knife4j 在线文档完整使用
java·spring cloud·在线文档·knife4j·文档·接口文档·swagger-ui
8***Z8911 小时前
springboot 异步操作
java·spring boot·mybatis
i***132411 小时前
Spring BOOT 启动参数
java·spring boot·后端
sulikey11 小时前
C++类和对象(下):初始化列表、static、友元、内部类等核心特性详解
c++·static·初始化列表·友元·匿名对象·内部类·编译器优化
坚持不懈的大白11 小时前
后端:SpringMVC
java
IT_Octopus11 小时前
(旧)Spring Securit 实现JWT token认证(多平台登录&部分鉴权)
java·后端·spring