Построение разницы между графиками временных рядов системы ODE с использованием odeint python - PullRequest
0 голосов
/ 11 февраля 2019

Я решаю две системы од с разными параметрами в python, используя функцию odeint.Я могу построить их оба, но хочу визуально показать разницу между точками данных графика временных рядов.Ниже приведен мой код и пример.

from scipy.integrate import odeint
from pylab import *
import matplotlib.pyplot as plt

initial_condi = [.1,.1,.1,.1,.1]# Initial Conditions
t = np.arange(0, 18,.1)    

def equation(w, t): #System of ODEs defined in Equation 1
    T, U, V,W,I = w
    dT = 0.9*I*1*10.24 - T*0.0012
    dU = V*T*0.0154 - U*1*0.81        
    dV = W*0.1*0.12 + U*1*0.81 - V*1.64 - V*T*0.015        
    dW= V*1.64 + 0.7*1*0.47 - W*0.1*0.12 - W*U*1591.5*1        
    dI= T*0.0012 + 0.8*U*1410.79*1- 0.9*I*1*10.24 - I*1*1934.77*1

    return  dT, dU, dV, dW, dI    
result_init = odeint(equation, initial_condi, t)

def equation3(w, t):#Alternative System of ODEs defined in Equation 2

    T,U,V,W,I = w        
    dT = 0.00690000e02-0.00890000e02*T+4.6500000010*I+1.96600002*I    
    dU = U*T*0.29060000 - U*2.99990001+1.9000011*U        
    dV =- V*0.0090e02 + U*0.39+ W*0.022 - 1.6900e00*V        
    dW = V*0.00590001e-05 + 0.306001011 -W*0.19999002 - W*U*1303.271000e+00        
    dI= -105.00010e+01*I-73.54000000e01*I -0.17500060*U +0.00900000e+03 + 104.00120*U            
    return  dT, dU, dV, dW, dI
result_mdu = odeint(equation3, initial_condi, t)

plt.plot(t, result_init[:,0 ],'g',t, result_mdu[:,0],'b')
plt.show()

На нем представлен следующий график: enter image description here

Я хочу построить график, чтобы показать, насколько два раза отличаютсяграфы серии используют odeint.Как показано в примере ниже.Неважно следовать точному примеру.Это просто идея прояснить, чтобы показать, спасибо.enter image description here

...