使用欧拉一阶方法传播错误

计算科学 有限差分 计算物理学
2021-12-07 05:12:19

我通过使用简单的一阶阶跃函数来估计下落物体的位置与时间的关系,其中

for i=2:length(t) % We're using Euler, so we need an initial previous point to start

    t = t(i);        
    V = V + dv;        
    rho_i =    % Calculate our height and then pull rho from data        
    K = m/(mg - 0.5*C_d*A*V^2*rho_i);        
    dv = dt/K;    
    pos = pos - (V - V_previous)/2*dt;        
    V_previous=V;
    velocity_Vector(i) = V;
    pos_Vector(i) = pos;
end

现在我想知道,这个东西掉下来之后会有多少误差,比如很多公里?

我知道这是一阶近似值,所以有错误。但是说我需要知道那个错误的界限;我该怎么计算呢?

2个回答

成正比,在整个区间内,累积误差的量级为成正比和错误加起来。因此可以将错误输入为其中是特定于问题参数的某个常数,应该可以使用一些来确定不同的步长。(Δt)2Δt1Δt

ΔEΔt
ΔE=KΔt
K

的各种不同值重复计算并获得表格Δt

  • Δt=0.1,x(T)=12.345
  • Δt=0.01,x(T)=12.033
  • Δt=0.001,x(T)=12.003
  • Δt=0.0001,x(T)=12.0003

使用诸如此类的数据,您可以推断出最可能的精确值(这里只是 12.0),然后您可以评估对于的任何先前选择的错误。Δt