导航:首页 > 计算方法 > 数值微分的计算方法

数值微分的计算方法

发布时间:2022-05-02 11:35:52

① 数值微分的举例说明

根据函数在一些离散点的函数值,推算它在某点的导数或某高阶导数的近似值。通常用差商代替微商,或用一能近似代替该函数的较简单的函数(如多项式、样条函数)的相应导数作为所求导数的近似值。例如,对带余项的插值公式ƒ(x)=I(x)+R(x)取k阶导数就得到带余项的数值微分公
这里插值函数I(x)的k阶导数I(k)(x)即为所求k阶导数 ƒ(k)(x)的近似值,而插值函数余项R(x)的k阶导数R(k)(x)则给出此近似值的截断误差。
通常利用多项式插值进行数值微分。设函数ƒ(x)在n+1个等距点xv=α+vh(v=0,1,…,n)上的值ƒv=ƒ(xv)为已知,则通过低次插值可导出一些最基本和常用的数值微分公式,例如,两点公式 三点公式等等。此外,利用具有n+1个等距节点的拉格朗日插值公式,还可导出在节点xj(i=0,1,…,n)上的较为一般的数值微分公式
这里Ai,v、Bi,v仅与 n、i、v有关,而相应的截断误差可分别表成式中因此,当节点的个数n+1固定时,间距h愈小, 则截断误差也愈小。但是这时系数绝对值之和随h的变小而剧增,所以函数值ƒv的舍入误差对近似导数的影响也随h的变小而剧增。因此,h并非愈小愈好,而是要适中,这是数值微分不同于某些插值之处。如果函数ƒ(x)有很好的可微性,即存在绝对值不太大的较高阶导数,则宁取间距稍大而个数稍多的节点。当ƒ(x)在节点分布的整个区间上的可微性不太好时,利用样条插值进行数值微分比利用多项式插值更适宜,只是计算量要大得多。
如果数据ƒv带有不容忽视的随机误差,而其对应的自变量分布甚密,就应该用曲线拟合代替上述函数插值,然后用拟合曲线的导数作为函数ƒ(x)的导数的近似值。这样求得的导数叫做磨光的导数。

② 微分公式是什么

基本微分公式是dy=f'(x)dx。

微分公式的推导设函数y = f(x)在某区间内有定义,x0及x0+△x在这区间内,若函数的增量Δy = f(x0 +Δx)−f(x0)可表示为Δy = AΔx + o(Δx),其中A是不依赖于△x的常数,o(Δx)是△x的高阶无穷小,则称函数y = f(x)在点x0是可微的。

学习微积分的方法有:

1、课前预习

一个老生常谈的话题,也是提到学习方法必将的一个,话虽老,虽旧,但仍然是不得不提。虽然大家都明白该这样做,但是真正能够做到课前预习的能有几人,课前预习可以使我们提前了解将要学习的知识,不至于到课上手足无措,加深我们听课时的理解,从而能够很快的吸收新知识。

2、记笔记

这里主要指的是课堂笔记,因为每节课的时间有限,所以老师将的东西一般都是精华部分,因此很有必要把它们记录下来,一来可以加深我们的理解,好记性不如烂笔头吗,二来可以方便我们以后复习查看。

3、认真听讲

对于大学生,特别是大一新生,学习方式与上高中时有了很大不同,上课时老师基本都用PPT来讲课,但是,千万不要认为上课不用听,下课把老师的PPT拷贝下来学习就可以了,老师上课会渗透很多PPT上没有的内容,如果错过了,在PPT上是找不到的。

4、课后复习

同预习一样,是个老生常谈的话题,但也是行之有效的方法,课堂的几十分钟不足以使我们学习和消化所学知识,需要我们在课下进行大量的练习与巩固,才能真正掌握所学知识。

③ 数值微分法用通俗的语言解释一下它的实现方法

就是求导了!
作差,求商,求极限呗
参考:http://ke..com/view/295773.htm
数学分析里面有的
根据函数在一些离散点的函数值,推算它在某点的导数或高阶导数的近似值的方法。通常用差商代替微商,或者用一个能够近似代替该函数的较简单的可微函数(如多项式或样条函数等)的相应导数作为能求导数的近似值。例如一些常用的数值微分公式(如两点公式、三点公式等)就是在等距步长情形下用插值多项式的导数作为近似值的。此外,还可以采用待定系数法建立各阶导数的数值微分公式,并且用外推技术来提高所求近似值的精确度。当函数可微性不太好时,利用样条插值进行数值微分要比多项式插值更适宜。如果离散点上的数据有不容忽视的随机误差,应该用曲线拟合代替函数插值,然后用拟合曲线的导数作为所求导数的近似值,这种做法可以起到减少随机误差的作用。数值微分公式还是微分方程数值解法的重要依据。

另请参考:http://www.fjtu.com.cn/fjnu/courseware/0329/course/_source/web/lesson/char7/j1.htm

下面是一个包含了简单差商的C代码,是我写给别人的,椐说有点错误,但我因为这不影响你理解差商
0 0.5 1.0 1.5 2.0 2.5
0.84147 0.85770 0.89924 0.94898 0.98777 0.99955

要求:
1.根据上表,计算差商表,并打印出来.
2.打印出Newton插值多项式.
3.计算f(1.673),用3次Newton插值多项式.
4.计算f(0.618),用5次Newton插值多项式.
根据以上要求,请用C或C++编写个程序.

#include<math.h>
#include<stdio.h>
#include<stdlib.h>
typedef struct data
{float x;
float y;}Data;
void scan(Data* a)
{float x,y;
scanf("%f%f",&x,&y);
(*a).x=x;
(*a).y=y;}
float f(Data *d,int s,int t)
{
if(t==s+1) return (d[t].y-d[s].y)/(d[t].x-d[s].x);
else return (f(d,s+1,t)-f(d,s,t-1))/(d[t].x-d[s].x);
}
float Newton(Data *d,float x)
{float t=1.0;
float y=d[0].y;
float yt=0;
int j,n;
while(1){
printf("\ninput n:");
scanf("%d",&n);
if(n<20) break;
else system("cls");}
for(j=1;j<=n;j++){
t=(x-d[j-1].x)*t;
yt=f(d,0,j)*t;
printf("%f\n",f(d,0,j));
y=y+yt;}
return y;
}
main(){
Data d[20];
Data *p=d;
int i,n;
float y,x;
printf("\ninput arrey ( <20 ):" );
scanf("%d",&n);
for(i=0;i<n;i++) scan(p+i);
printf("\ninput x:");
scanf("%f",&x);
y=Newton(d,x);
printf("\nji guowei:%f",y);
}

④ 一般来讲,解决问题有经验方法、理论方法、经验对比法等,请问数值计算的方法

摘要 您好,很高兴为您解答:

怎么算啊

知乎,中文互联网高质量的问答社区和创作者聚集的原创内容平台,于2011 年1月正式上线,以“让人们更好地分享知识、经验和见解,找到...

进行数字加减时,把复杂的数字转换成容易加减的各位数位零的数字.如,465+654=(400+600)+(50+50)+15+4=1119, ...

计算方法又名数值分析,是为各种数学问题的数值解答研究提供最有效的算法。计算方法主要内容包括函数逼近论、数值微分、数值积分、误差分析等,常用方法有迭代法、差分法、插值法、有限元素法等,现代计算方法要求适应电子计算机的特点。计算方法又称“数值分析”。是为各种数学问题的数值解答研究提供最有效的算法。主要内...

⑥ 数值微分的一阶导数和二阶导数公式在具体计算时

答:本题是算是问对人了,
如果你要想深入分析,需要用到函数的泰勒展开。
1) 你说的两种方法都可以用,但是后面的方法精度更高。
f''(x)=[f(x+h)-2f(x)+f(x-h)]/h^2 方法是等效与 f''(x)=[f'(x+h/2)-f'(x-h/2)]/h 是2阶精度
2) 先求其一阶导数值,然后再用一阶的差分公式求出2阶的导数,是1阶精度。

就好比 f'(x)=[f(x+h)-f(x-h)]/2h 是2阶精度,
f'(x)=[f(x+h)-f(x)]/h 是1阶精度。

关键就是在泰勒展开方面
f(x+h)=f(x)+f'(x)*h+b*f''(x)*h^2+c*f'''(x)*h^3 b,c为泰勒展开的系数
f(x-h)=f(x)-f'(x)*h+b*f''(x)*h^2-c*f'''(x)*h^3
可以看出 如果用 [f(x+h)-f(x)]/h =f'(x)+b*f''(x)*h+c*f'''(x)*h^2 后面的是误差项。

如果用 [f(x+h)-f(x=h)]/2h =f'(x) + c*f'''(x)*h^2 可以明显看出第二种方法的误差更小。

同理可以推导二阶导数的精度问题。

望采纳,如果有不明白的,可以进一步沟通

⑦ 求函数微分

使用diff命令
符号运算
diff函数用以演算一函数的微分项,相关的函数语法有下列4个:
diff(f) 传回f对预设独立变数的一次微分值
diff(f,'t') 传回f对独立变数t的一次微分值
diff(f,n) 传回f对预设独立变数的n次微分值
diff(f,'t',n) 传回f对独立变数t的n次微分值
也即matlab求导命令diff调用格式:
diff(函数) , 求的一阶导数;
diff(函数, n) , 求的n阶导数(n是具体整数);
diff(函数,变量名), 求对的偏导数;
diff(函数, 变量名,n) ,求对的n阶偏导数;
数值微分函数也是用diff,因此这个函数是靠输入的引数决定是以数值或是符号微分,如果引数为向量则执行数值微分,如果引数为符号表示式则执行符号微分。如果输入一个长度为n的一维向量,则该函数将会返回长度为n-1的向量,向量的值是原向量相邻元素的差,于是可以计算一阶导数的有限差分近似。
先定义下列三个方程式,接着再演算其微分项:
>>S1 = '6*x^3-4*x^2+b*x-5';
>>S2 = 'sin(a)';
>>S3 = '(1 - t^3)/(1 + t^4)';
>>diff(S1)
ans=18*x^2-8*x+b
>>diff(S1,2)
ans= 36*x-8
>>diff(S1,'b')
ans= x
>>diff(S2)
ans=cos(a)
>>diff(S3)
ans=-3*t^2/(1+t^4)-4*(1-t^3)/(1+t^4)^2*t^3
>>simplify(diff(S3))
ans= t^2*(-3+t^4-4*t)/(1+t^4)^2

阅读全文

与数值微分的计算方法相关的资料

热点内容
金泰加食用方法 浏览:745
创伤性耳鸣治疗方法 浏览:555
怎么样制作生日蛋糕的简单方法 浏览:979
测量力的变化的方法 浏览:913
怎么辨别坏蛋的方法 浏览:156
外墙门窗台花边安装方法 浏览:212
硫酸亚锡分析方法 浏览:997
最简单的电机装置方法 浏览:423
古人的读书方法并简单介绍30字 浏览:277
男胖子脖子黑可以用什么方法解决 浏览:330
大圆肌的锻炼方法图片 浏览:500
面罩使用方法 浏览:705
卡通图片编织方法 浏览:262
花样系鞋带方法视频 浏览:892
初中数学常规方法和技巧 浏览:911
研究关节的方法 浏览:323
材料入库出库有哪些方法 浏览:600
淘宝黑名单哪里设置方法 浏览:318
三星账户怎么解锁设备在哪里设置方法 浏览:197
去痣什么方法最好 浏览:943