Можно ли сгенерировать правильные графики корневых локусов с помощью Python 3?

Я пытаюсь сгенерировать графики корневых локусов через Python 3, но графики, которые создает Python, кажутся не полными.

Вот система, которая будет внедрена для корневого локуса;

Вот мой код для сюжета Root Locus;

import numpy as np
from matplotlib import pyplot as plt 
import control

%matplotlib

G = control.TransferFunction((1, 1.5), (1, 11, 10, 0))

rlist, klist = control.rlocus(G)

plt.show()

И вот график, который я получаю;

Но из учебника, который я использую, это сюжет, который у них есть;

Есть ли способ заставить Python предоставить график, который ближе к реальному решению, или это наилучшее приближение возможно с Python прямо сейчас?

1 ответ

Попробуй это,

import numpy as np
from matplotlib import pyplot as plt 
import control

G = control.TransferFunction((1, 1.5), (1, 11, 10, 0))

rlist, klist = control.rlocus(G, kvect=np.linspace(100.0, -100.0, num=1000))

plt.show()

Выход:

Вы можете выбрать более оптимальный диапазон kvect в зависимости от вашей передаточной функции.

kvect (list или ndarray, необязательный) - список усилений для использования в вычислительной диаграмме

Источник: control.root_locus Документация

Другие вопросы по тегам