forked from weihaolem/UECM3033_assign3
-
Notifications
You must be signed in to change notification settings - Fork 0
/
task2.py
34 lines (29 loc) · 751 Bytes
/
task2.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import numpy as np
from scipy.integrate import odeint
import matplotlib.pylab as plt
a = 1.0
b = 0.2
y = [0.1, 1.0]
t = np.linspace(0, 5, 100)
def deriv(y, t, a, b):
y0, y1 = y
dydt = [a*y0-a*y0*y1, -b*y1 + b*y0*y1]
return dydt
solution = odeint(deriv, y, t, args=(a, b))
plt.figure(figsize=(8,8))
plt.plot(t, solution[:, 0], 'b', label='y0(t)')
plt.plot(t, solution[:, 1], 'r', label='y1(t)')
plt.grid()
plt.title('Graph of y0 and y1 against t')
plt.xlabel('t')
plt.ylabel('y')
plt.legend(loc='best')
plt.savefig('GraphAgainstT.jpg')
plt.figure(figsize=(8,8))
plt.plot(solution[:, 0], solution[:, 1])
plt.grid()
plt.title('Graph of y0 against y1')
plt.xlabel('y0')
plt.ylabel('y1')
plt.legend(loc='best')
plt.savefig('GraphY0Y1.jpg')