ZKX's LAB

欧拉公式-龙格库塔法 请教一个关于C++的问题,在C++中分析方法和欧拉方法的区别是什么?请大虾指点,跪求

2020-10-17知识17

请教一个关于C++的问题,在C++中分析方法和欧拉方法的区别是什么?请大虾指点,跪求 我的理解是,你是在问解析法和数值法的差别。一般对解数学方程,特别是微分方程,在计算机里很难找到解析解,很多时候,微分方程解不出解析解,只能算数值解。举个例子吧初值问题 y'(t)=-15y(t)已知y(0)=1这个方程的解析解是y(t)=exp(-15t)在一般的应用中,我们其实只需要数值的解,而不需要上面那个解析解,也就是说要能能够给出给定的时间t上,y是个什么值。如果我们已知解析解,比如上面的例子,那么直接把要求的时间t1代入上面第二个方程,y就出来了。这样的解法就是解析法。而由于刚才说过,很多时候解析解是求不出来的,或者很难通过计算机程序去求出来。所以,在计算机里面,解决这些问题,基本上都通过数值方法。有一个学科叫数值计算,专门研究这样的问题。解微分方程最简单的数值方法是欧拉方法。我们首先确定计算的步长dt,比如0.01秒,那么欧拉方法就假设这个函数在这个时间段内是个常数,那么我们就可以一步一步迭代将整个y关于时间t的数值给求出来。那么给定时间t的y值就可以通过这样的方法近似地计算出来。很容易发现,当步长趋向于无穷小的时候,那么计算的结果的误差也趋向于无穷小。举例子,同样是这个初值问题,y'(t)=-15y(t),已知y(0)=1我们规定步长。

欧拉公式-龙格库塔法 请教一个关于C++的问题,在C++中分析方法和欧拉方法的区别是什么?请大虾指点,跪求

#欧拉常数#欧拉#微分方程

随机阅读

qrcode
访问手机版