Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import numpy as np
- import matplotlib.pyplot as plt
- from scipy.integrate import odeint
- def new_system(y, t):
- x, y = y
- dydt = [1 + x**2 * y - 2*x, x - y * x**2]
- return dydt
- def plot_phase_portrait(system, title, xlabel, ylabel, y0, t):
- sol = odeint(system, y0, t)
- plt.plot(sol[:, 0], sol[:, 1], label='Фазовий портрет')
- plt.title(title)
- plt.xlabel(xlabel)
- plt.ylabel(ylabel)
- plt.axis('equal')
- plt.legend()
- plt.grid(True)
- plt.show()
- y0_new_system = [0.0, 10.0]
- plot_phase_portrait(new_system, 'Фазовий портрет нової системи', 'x', 'y', y0_new_system, t)
- A_new_system = np.array([[1, 0],
- [-2*y0_new_system[1]*y0_new_system[0]**2 + y0_new_system[1]**2, -2*y0_new_system[0]*y0_new_system[1]*y0_new_system[0]]])
- eigenvalues_new_system = np.linalg.eigvals(A_new_system)
- print("Власні значення матриці A:", eigenvalues_new_system)
- if all(eig_real < 0 for eig_real in eigenvalues_new_system.real):
- print("Положення рівноваги для системи є стійким.")
- else:
- print("Положення рівноваги для системи є нестійким.")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement