首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python中的微分方程作图系统

Python中的微分方程作图系统
EN

Stack Overflow用户
提问于 2017-03-18 08:16:20
回答 1查看 12.5K关注 0票数 5

我刚刚开始使用Python绘制微分方程的数值解。我知道如何使用scipy.odeint求解和绘制单个微分方程,但我对微分方程组一无所知。如何绘制下面的耦合系统?

代码语言:javascript
复制
N' = a * N - (C/(1+C)) * b * N
C' = (C/(1+C)) * N - C + 1

a = 4
b = 7
N(0) = 100
C(0) = 5
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-18 13:33:03

只需将所有变量定义为空间向量,然后应用集成:

代码语言:javascript
复制
import numpy as np
from scipy.integrate import odeint
import matplotlib.pyplot as plt

def f(s,t):
    a = 4
    b = 7
    n = s[0]
    c = s[1]
    dndt = a * n - (c/(c+1)) * b * n
    dcdt = (c/(c+1)) * n - c + 1
    return [dndt, dcdt]

t = np.linspace(0,20)
s0=[20,5]

s = odeint(f,s0,t)

plt.plot(t,s[:,0],'r--', linewidth=2.0)
plt.plot(t,s[:,1],'b-', linewidth=2.0)
plt.xlabel("t")
plt.ylabel("S[N,C]")
plt.legend(["N","C"])
plt.show()

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42868971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档