Питон. Увеличение числа p в соответствии с полученным другим значением h

есть таблица соответствий p к h .Если система дифференциальных уравнений позволяет найти значение h то p задать значения соответствующие из таблицы не получается, я нашел среднее арифметическое изменение с шагом h = 2000м,и просто прибавил к p :0,0551 . с уменьшением h возрастает p.Но h меняется не однозначно , как в питоне задать то соответствие, помогите ,пожалуйста . мой код:

[![################################подключение необходимых библиотек####################
import math 
import numpy as np
import matplotlib.pyplot as plt
from scipy import integrate
##############################определение функции,вычисляющую правую часть системы###
def sir_model(t, y, B, g, R, k):
    v, h, l, teta, p = y
    dv_dt = ((-0.5*B*p*v*v)/2)-((g*math.sin(teta)))
    dh_dt = v*math.sin(teta)
    dl_dt = v*math.cos(teta)
    dteta_dt = ((B*k*v*p)/2)-((g*math.cos(teta))/v)
    dp_dt = p+0.0551
    return dv_dt, dh_dt, dl_dt, dteta_dt, dp_dt
################################исходные данные######################################   
k = .1
B = .006
p0 = .0136
g = 9.81
R = 6371000
v0 = 3000
l0 = 0
h0= 30000
teta0 = 20
###########################решатель##################################################
T = 30
sol = integrate.solve_ivp(lambda t, y: sir_model(t, y, B ,g, R, k), \[0,T\], \[v0,h0,l0,teta0,p0\], dense_output = True)
###########################ВИЗУАЛИЗАЦИЯ##############################################
t = np.linspace(0, T, 50)
y = sol.sol(t)
v, h, l, teta, p = y\[0,:\], y\[1,:\], y\[2,:\], y\[3,:\], y\[4,:\]
pass][1]][1]

мои результаты в корне не верны см рис 1 и таблицу ниже

h             p
   0     1,2250 
 500     1,1673 
1000     1,1117
1500     1,0581 
2000     1,0065 
2500     0,9569 
3000     0,9093 
4000     0,8194 
5000     0,7365
6000     0,6601 
7000     0,59   
8000     0,5258 
9000     0,4671 
10 000   0,4135 
11 000   0,3648 
12 000   0,3119 
14 000   0,2279 
16 000   0,1665 
18 000   0,1216 
20 000   0,0889 
24 000   0,0469 
28 000   0,0251 
32 000   0,0136 
36 000   7,26⋅10−3      
40 000   4,00⋅10−3      
50 000   1,03⋅10−3      
60 000   3,00⋅10−4      
80 000   1,85⋅10−5      
100 000  3,19⋅10−2

введите сюда описание изображения


Ответы (0 шт):