Адаптивный размер шага для метода Рунге-Кутты - PullRequest
0 голосов
/ 03 ноября 2019

Я хочу реализовать адаптивный размер шага в моем методе Рунге-Кутты, который я прилагаю ниже:

def rk4trial(f,v0,t,n,V,h):  
    v=v0
    for j in range(n):  
        V.append(v)
        k1=f(v,t[j])*h
        k2=f(v+0.5*k1,t[j]+0.5*h)*h
        k3=f(v+0.5*k2,t[j]+0.5*h)*h
        k4=f(v+k3,t[j]+h)*h
        v=v+(k1+2*k2+2*k3+k4)/6
    return V, t, h

Кто-нибудь знает самый простой способ сделать это? В настоящее время я имею дело с уравнениями, которые чрезвычайно чувствительны к размеру шага, хотя я хочу продолжать работать с этим методом RK4.

...