#!/home/misha/venv/bin/python import numpy as np import matplotlib.pyplot as plt import scipy.integrate as ode g_rask=9.814 r_keha=0.1 s_keha=np.pi*r_keha**2 c_keha=0.47 v_keha=4.*np.pi*r_keha**3/3 m_keha=15. p_atm=100000. t_atm=293. mu_atm=29. R=8314. ro_atm_0=p_atm*mu_atm/(R*t_atm) p1=g_rask*mu_atm/(R*t_atm) p2=0.5*c_keha*s_keha/m_keha p3=g_rask*v_keha/m_keha def func(t,y): yp=np.zeros_like(y) yp[0]=y[1] ro=ro_atm_0*np.exp(-p1*y[0]) v=np.abs(y[1]) yp[1]=-g_rask-p2*ro*v*y[1]+p3*ro return yp y0=[10.,0.] t0=0. dt=0.01 r=ode.ode(func) r.set_initial_value(y0,t0) res=[] t=[] while r.successful() and r.y[0] >= 0.0: r.integrate(r.t+dt) res.append(r.y) t.append(r.t) # print (r.y[0]) res=np.array(res) t=np.array(t) fig,[p1,p2]=plt.subplots(1,2) p1.plot(t,res[:,1]) p2.plot(t,res[:,0]) p1.grid() p2.grid() plt.show()