人口logistic模型代码
时间: 2024-10-31 10:02:47 浏览: 14
人口Logistic模型是一种常用的数学模型,它描述了种群随时间的增长趋势,在资源有限的情况下会受到制约。这种模型假设种群增长率为该种群数量与环境容纳量的比例乘以剩余的资源空间。以下是Python中使用`scipy.optimize`库求解人口Logistic模型的一个简单示例:
```python
import numpy as np
from scipy.optimize import fsolve
# Logistic growth function
def logistic_growth(population, carrying_capacity, initial_population):
return population * (carrying_capacity - population) / carrying_capacity + initial_population - population
# 定义初始条件、资源容纳量和迭代函数参数
initial_population = 50
carrying_capacity = 1000
t_max = 100 # 观察时间范围
time_steps = 1000 # 时间间隔
# 使用fsolve求解每个时间步的人口数量
times = np.linspace(0, t_max, time_steps)
solutions = [fsolve(logistic_growth, initial_population, args=(carrying_capacity, t)) for t in times]
# 显示结果
for i, t in enumerate(times):
print(f"时间 {t:.2f}: 种群数量 {solutions[i][0]:.2f}")
阅读全文