数值分析+微积分

最近一段时间在复习数值计算相关内容,也恰逢简书断更了,不用每天督促着自己非要更出点什么东西才好,有更多的空间来打磨文章的内容,在之前的每天不断更的坚持下,目前写电子稿的速度有了较大的提升,对于以后写文章之类的有着还是很多好处的,虽断了更有点遗憾,但总的来说还是利大于弊的。

这次我准备写一个系列的数值计算的内容,学习的教材是李庆扬的《数值分析》,这是研究生的教材,实际上在本科生的基础上也就加进去一点点新的内容,主要是更加系统,根本的阐述了这些数值计算方法的内容,之后在竞赛完以后应该还会提前学习偏微分方程数值解的内容,这些东西提前系统地一起学了对于以后研究生活应该有不少的好处。
所以目前的大体框架安排为:

  • 数值分析与微积分
  • 数值分析与线性代数
  • 数值分析与常微分方程
  • 数值分析与偏微分方程
    这一节我们讲解的是数值分析与微积分:

概述

为什么我们要从微积分开始讲呢?大家如果有心的话,可以注意到,我编排的顺序其实和大多数人学习课程的顺序是极为相似的高数\rightarrow 线代\rightarrow 常微\rightarrow 偏微
不知道大家有没有思考过为什么课程是这么设置的,我个人的理解是前一项往往是后一项的基础,所以按照这个顺序来,效果会最好。

数值分析介绍

学一门课,首先要知道这门课程存在的必要性。我认为对于此课程重要性,大家记住这句话即可:“解决实际问题的时候我们往往是将问题抽象成一个数学模型,而这些模型的完备形式往往不能够方便的求出精确解,只能转为简化模型求其数值解,往往为了方便求解,又过于简化了,这时,使用数值的方法就可以求解较少简化模型,从而得到满足近似程度要求的结果”

误差相关

算法数值稳定性

一个算法,如果输入数据有误差,而在计算过程中舍入误差不增长,则称此算法是数值稳定的,否则则是不稳定的。

病态数和条件数

所谓病态的就是说一个数值问题微小的输入会引起输出数据误差很大,那么这就是病态问题。定义相对误差的比值为条件数,即
\left|\frac{f(x)-f(x*)}{f(x)}\right|/\left|\frac{\Delta x}{x}\right|\approx\left|\frac{xf'(x)}{f(x)}\right|=C_p
举个例子:
求解线性方程组\left\{\begin{array}{c} x+\alpha y=1,\\ \alpha x+y=0.\end{array}\right.
\alpha\not =1时解为x=\frac{1}{1-\alpha^2},y=-\frac{\alpha}{1-\alpha^2}由公式可以计算得到C_p=\left|\frac{\alpha x'(\alpha)}{x(\alpha)}\right|=\left|\frac{2\alpha^2}{1-\alpha^2}\right|我们可以看到当\alpha\rightarrow 1C_p\rightarrow +\infty

数值计算中的算法设计技术

给出几个代表性的算法,其实大家几乎能从几个为数不多的算法之中感受到计算方法的魅力。

多项式求值的秦九韶算法

给定多项式p(x)=a_0x^n+a_1x^{n-1}+\ldots+a_{n-1}x+a_n,a_0\not=0直接计算每一项再相加,需要的乘法次数为O(n^2)但是采用秦九韶算法以后。迭代计算公式如下:
\left\{\begin{array}{c}b_0=a_0\\ b_i=b_{i-1}x*+a_i,i=1,2,\ldots,n,\end{array}\right.那么b_n=p(x*)即为所求。乘法次数降为了O(n),类似我们还可以求出p'(x)x*的值,算法为\left\{\begin{array}{c} c_0=b_0,\\ c_i=c_{i-1}x*+b_i,i=1,2,\ldots,n-1,\end{array}\right.c_{n-1}=q(x*)=p'(x*)

迭代法与开方求值

例如求解方程x^2-a=0,可用迭代法求解,转化为x_{k+1}=\frac{1}{2}(x_k+\frac{a}{x_k}),k=0,1,2,\ldots

以曲代直和化整为零

例如刘徽求圆周率使用的割圆术,牛顿迭代法求根,微积分计算定积分时使用的梯形公式。

加权平均的松弛技术

通过将迭代过程中的结果加权从而起到更进一步近似的效果。

插值法

插值法是之后的所有的基础,所以务必要学习牢固。
插值是什么意思呢,就是过给定点的多项式函数,当然这个定点的意思不光包含定点的值,还包括它的导数的值还有光滑性等条件。

  • 要注意的一点是:插值函数不一定就是多项式函数,只要满足经过给定点就好。

插值函数:

拉格朗日插值法

其从简单的两点插值连成一条直线出发,到三点插成抛物线,抽象出一般的规律,导出了线性插值基函数的概念,即对于某一点x_i,它的线性插值基函数是满足l_i(x_j)=\delta_{ij}的多项式,从而求解得到一般的表达式l_i(x)=\prod_{i\not=j,j=0}^n\frac{x-x_j}{x_i-x_j},那么进一步知道插值多项式的形式L_n(x)=\sum_{i=0}^n l_i(x)f(x_i)

均差与牛顿插值多项式

已经有了拉格朗日插值法,很多人觉得已经够了,其实我们很可能遇到实时采样的问题,每采一个样,根据之前的公式,全部的系数都要重新计算,其实一个样本带来的扰动,并没有那么大,所以拉格朗日插值法对于实时采样的问题来说,做了很多重复的工作,浪费了算力,我们能不能找一种方法来优化一下呢?这就是牛顿插值法。
其核心思想是对于已知n+1个点的插值多项式若已知,为P_n(x)那么再加入一个新的点,P_{n+1}(x)=P_n(x)+K(x-x_0)(x-x_1)\ldots(x-x_{n+1})我们可以求出常数K
我们可以使用归纳法得到K的数值,最后使用差商的定义,来将这些有规律的K表示出来,记为f[x_0,x_1,\ldots,x_k],称为k阶差商。f[x_0,x_k]=\frac{f(x_k)-f(x_0)}{x_k-x_0}为函数f(x)关于点x_0,x_k的一阶均差,f[x_0,x_1,x_k]=\frac{f[x_0,x_k]-f[x_0,x_1]}{x_k-x_1}称为f(x)二阶均差,一般的f[x_0,x_1,\ldots,x_k]=\frac{f[x_0,\ldots,x_{k-2},x_k]-f[x_0,x_1,\ldots,x_{k-1}]}{x_k-x_{k-1}}
最终的插值多项式为:P_n(x)=f(x_0)+f[x_0,x_1](x-x_0)+\ldots+f[x_0,x_1,\ldots,x_n](x-x_0)(x-x_1)\ldots(x-x_{n-1})

埃尔米特插值

有了牛顿插值以后我又满足了,但是数学的魅力就像个哲学故事一样:一个高僧的徒弟想要出师,高僧让徒弟装一桶石头,问:满了吗?然后再装沙子,问:满了吗?再装入水,问:满了吗?所以,同志们,还有很长路要继续走,come on。
我们拉格朗日插值解决了插值的问题,使用牛顿插值解决了动态入点的问题,的确,对于没有特殊要求的插值,已经够了,但是对于实际问题中,我们往往还要求导数值的相等,这就是我们要说的埃尔米特插值法。
这里的导数可以通过极限的观点和之前的均差衔接上,那么我们就可以很好的从牛顿插值法过度过来,而不用另辟蹊径。f[x_0,x_0]=lim_{x\rightarrow x_0}\frac{f(x)-f(x_0)}{x-x_0}=f'(x_0),进一步f[x_0,x_0,\ldots,x_0]=\frac{1}{n!}f^{(n)}(x_0),从而我们得到泰勒插值多项式是牛顿插值多项式的极限形式,属于埃尔米特插值多项式的一种。
一般的计算没有什么太多难的地方,按照牛顿插值法来算就好,有几阶导数就写几次。

分段低次插值

我们选用高次插值有一个问题就是次数高了,那些高次项影响太大了,导致函数变化的非常的剧烈,不符合一般实际生活的需要,所以效果不好,一般不会选取高次插值法,为了解决这一问题,我们可以把区间分成一些小的,分别进行低次插值就好。

分段线性

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,588评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,456评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,146评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,387评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,481评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,510评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,522评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,296评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,745评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,039评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,202评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,901评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,538评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,165评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,415评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,081评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,085评论 2 352

推荐阅读更多精彩内容

  • 老薛复合了,《认真的雪》听了好多年。回头示爱,是这些年一群人心疼的那个男人对感情的最好回答。 我们选择回头示爱,不...
    开饭了小呆阅读 304评论 0 0
  • 公司新配置的电脑到了,终于不用忍受自己的笔记本了,在此记录下Android Studio 安装步骤 1、先下载 A...
    颖字传说阅读 262评论 0 2
  • 以前总觉得咖啡没什么用,只是喜欢那种甜甜香香的感觉。喝与不喝也无所谓,即使很累的时候开车,咖啡红牛更是没什么用。但...
    骑驴书生阅读 607评论 3 49