zoukankan      html  css  js  c++  java
  • 数值分析/基础

    基础

    多项式计算

    改变多项式的运算顺序,有利于提高计算效率

    数字计算机对微小误差会放大,导致计算存在不可靠的风险,本课程目的即是懂得避免并降低这种风险

    如果可能,尽量避免很接近的数相减,比如重构表达式,避免相近数的相减

    嵌套乘法

    嵌套乘法又叫Horner方法,matlab中用nest函数计算

    一般形式如下:

    [c_1 + (x-r_1)(c_2+(x-r2)(c_3+(x-r_3)(c_4+(x-r_4)(c_5)))) ]

    其中:(r_1, r_2, r_3, r_4) 称为基点

    nest(次数,[系数],求值点,[基点])
    nest(4,[-1 5 -3 3 2],1/2,[0 0 0 0])
    

    其中:基点可以省略,求值点也可以是数组来同时求多组数据

    二进制数

    二进制数表示

    [...b_2 imes 2^2 +b_1 imes 2^1 + b_0 imes 2^0 + b_{-1} imes 2^{-1}+b_{-2} imes2^{-2}... ]

    实数的浮点表示

    浮点格式

    IEEE标准由符合、尾数、阶这三部分组成,形式如下:

    [pm 1.bbbb..b imes 2^p ]

    由于正规化要求最前面的数是1.

    常见精度如下:
    精度 符号 尾数
    1 8 23
    1 11 52
    长双 1 15 64

    定义

    机器 (varepsilon) 表示1 与大于 1 的最小浮点数之间的差,记为 (varepsilon_{mach}) ,对于IEEE的double标准来说:

    [varepsilon_{mach} = 2^{-52} ]

    由于机器2进制计数,导致对于有些数不能精确表示,我们可用断位法舍入法来处理。

    最近舍入规则

    double类型,二进制数第53位是0,则舍去,否则就进位1到第52位。

    误差

    绝对误差和相对误差

    [绝对误差 = |x_c -x|qquad 相对误差= frac{|x_c-x|}{|x|}quad 其中:x_c 是准确值x的计算结果 ]

    相对舍入误差

    在IEEE标准下,相对舍入误差 (f(x))不大于机器 (varepsilon) 的一半

    [frac{|f(x)-x|}{|x|} leq frac{1}{2}varepsilon_{mach} ]

    微积分回顾

    定理

    介值定理 :(f) 是区间 ([a,b]) 上的一个连续函数,那么 (f) 能取到$ f(a)$ 和 (f(b)) 之间的任何一个值。

    也就是说存在 (y) 且$f(a) le y le f(b) $ 则存在一个数 (c) 使得 (f(c) = y)

    连续函数的极限:(f) 是在 (x_0) 的某一个领域内的连续函数,且 $lim_{n oinfty}x_n = x_0 $,那么:

    [lim_{n o infty}f(x_n) = f(lim_{n o infty }x_n)= f(x_0) ]

    中值定理:(f) 是区间 ([a,b]) 上的一个连续可微函数,那么在 (a)(b) 之间存在一个数 (c) ,使得:

    [f'(c) = frac{f(b)-f(a)}{b-a} ]

    Rolle定理:(f) 是区间 ([a,b]) 上的一个连续可微函数,并假设 (f(a) = f(b)),那么在 (a)(b) 之间存在一个数 (c) ,使得 (f'(c)=0)

    带余项的Taylor公式:(x)(x_0) 是实数,(f) 在区间 ([x_0,x])(k+1) 次连续可微,那么在 (x)(x_0) 之间存在一个数 (c) ,使得:

    [f(x) = f(x_0) + (x-x_0)f'(x_0)+frac{(x-x_0)^2}{2!}f''(x_0)+frac{(x-x_0)^3}{3!}f'''(x_0)+...+\ frac{(x-x_0)^k}{k!}f^{(k)}(x_0)+frac{(x-x_0)^{(k+1)}}{(k+1)!}f^{(k+1)}(c) ]

    或者:

    [f(Delta x+x_0) = f(x_0)+f'(x_0)Delta x +frac{f''(x_0)}{2!}Delta x^2+frac{f'''(x_0)}{3!}Delta x^3 +...+frac{f^{(k)}(x_0)}{k!}Delta x^k+frac{f^{(k+1)}(c)}{(k+1)!}Delta x^{k+1} ]

    积分形式的中值定理:(f) 是区间 ([a,b]) 上的一个连续函数,(g) 是可积函数,并且在 ([a,b]) 上不变号,那么在 ([a,b]) 内存在一个数 (c) ,使得:

    [int_a^b f(x)g(x)dx=f(c)int_a^b g(x) dx ]

  • 相关阅读:
    cmake学习笔记之add_library、target_link_libraries和link_directories
    Linux的.a、.so和.o文件及链接时的命名
    【CH2401】送礼物
    【POJ1011】Sticks
    【CH2101】可达性统计
    【CH2201】小猫爬山
    【HNOI2002】营业额统计
    【洛谷P3128】最大流
    【JLOI2014】松鼠的新家
    【洛谷P4552】IncDec Sequence
  • 原文地址:https://www.cnblogs.com/niubidexiebiao/p/10477618.html
Copyright © 2011-2022 走看看