数值计算day1-计算机中的浮点数;误差;数学基础

鉴于课堂笔记较为潦草,这里将为期两周的暑期学校学习内容整理到博客中,一来今后查阅起来比较方便,二来学过的东西如果不趁热整理很快就会忘记。

书籍:Numerical Methods for Engineers and Scientist--《工程科学中的数值计算》
课时:24小时

1. 计算机中浮点数的表示

1.1 十进制浮点表示

其中称作小数部分(mantissa)

例子:

的次幂表示数据的数量级,小数点前面的数字要小于5,否则数量级为。在这里,的数量级为,记为;而 的数量级为

1.2 二进制浮点表示

的次幂称作指数部分(exponent),小数部分和指数部分都应该写为二进制形式。 转换方法:

例子:

1.3 IEEE-754标准

在计算机中存储二进制浮点数,小数点前的数字不需要存储,IEEE-754标准分为单精度(single precision)和双精度(double precision)。在单精度中,使用位(字节)存储浮点数,双精度使用位(字节)存储。两者的首位均为符号位,对应着,对应着。接下来的位存储指数部分(双精度中使用位),最后位存储小数部分(双精度中使用位)。

image

小数部分存储为二进制,指数部分的值需要加上一个偏差(bias)。以双精度为例,用于存储指数部分的位二进制能存储的最大值是,使用为偏差,即当指数部分为时,实际存储的值为,按照此逻辑,指数部分能存储的最小值为,最大值为。但是,最小和最大的指数值(加上偏差)被留作表示,以及。如果指数部分加上偏差为,小数部分为时,存储的是;如果指数部分加上偏差为(全部为),当小数部分为时,存储的是,当小数部分不为时,存储的是(在单精度中,偏差为)。

例子: 指数部分为,存储为,小数部分为:

image

注意

  • 在双精度中,存储的最小正数为 此数与之间的数无法被计算机存储;
  • 在双精度中,存储的最大正数为
image

2. 数值方法中的误差

2.1 Round-Off Errors (舍入误差)

舍入误差分为两类:

  • 截取(chopping off)

  • 四舍五入(rounding)

例子:

采用截取(chopping off):
采用舍入(rounding):

两种舍入产生的差值分别为:,两值实际的差距为,在此问题中,四舍五入更接近真实值。

2.2 Truncation Errors (截断误差)

截断误差依赖于使用的数值方法

考虑正弦函数的如下泰勒展开: 当时,。若只取第一项,,截断误差为;若取前两项,, 截断误差为

2.3 Total Error (总误差)

数值解的总误差也叫真实误差(true error),包括舍入误差和截断误差两部分,是真实解和数值解之间的差值: 真实误差的绝对值和真实解的比值称作真实相对误差:

3. 数学基础

3.1 函数的连续性

定义:函数称作在处连续,如果以下三个条件成立:

  • 存在
  • 极限存在

介值定理(Intermediate value theorem):在闭区间上连续,是介于和之间的数值,则至少存在一个点使得。

image

3.2 函数的可微性

函数在点处的导数记为, 定义为:

image

可导函数则必是连续函数,连续函数未必可导,一个连续可导的函数称作是光滑的(smooth)。
链式法则:函数,其中,则

微分中值定理(Mean value theorem for derivatives):在闭区间上连续,在开区间上可导,则存在一个数,使得

image

3.3 函数的积分

积分基本定理:函数在闭区间上连续,是在上的不定积分,则:
积分中值定理:函数在闭区间上连续,存在使得: 值称作是函数在区间上的均值(average value):

image

变上下限积分

4. 总结

本节课主要讲述了浮点数在计算机中的表示方法,其中IEEE-754标准是20世纪80年代以来最广泛使用的浮点数运算标准,为许多CPU与浮点运算器所采用。之后,介绍了数值计算中的几种常用的误差,包括舍入误差、截断误差等。最后简单回顾了一下函数连续、可微等数学背景。课堂中,还简单演示了MATLAB中向量、矩阵的相关运算,较为简单,这里没有做总结,后续笔记中,会涉及到相应的一些操作。

你可能感兴趣的:(数值计算day1-计算机中的浮点数;误差;数学基础)