Как упростить линейную систему уравнений, исключив промежуточные переменныеPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как упростить линейную систему уравнений, исключив промежуточные переменные

Сообщение Anonymous »

У меня есть линейная система, показанная на блок-схеме ниже.
Изображение

Эта система описывается следующей системой линейных уравнений:

Код: Выделить всё

err = inp - fb
out = a * err
fb = f * out
Я хотел бы использовать Sympy для вычисления вывода (out) функции ввода (inp). Таким образом, я хотел бы исключить переменные err и fb. Мне нужна помощь, так как я не могу понять, как выразить то, что хочу. На данный момент у меня есть:

Код: Выделить всё

from sympy import symbols, Eq, solve

inp, err, out, fb, a, f = symbols("inp err out fb a f")

eqns = [
Eq(err, inp - fb),
Eq(out, a * err),
Eq(fb, f * out),
]

solution = solve(eqns, [out])

solution
# []
Это явно не работает.
Я думал, что, возможно, Simple() может здесь помочь, но я не знаю, как это сделать. применить функцию упрощения к системе уравнений.
Результат, которого я надеюсь достичь:

Код: Выделить всё

         a
out = ------ * inp
1 + af
Может ли кто-нибудь указать мне правильное направление?

Подробнее здесь: https://stackoverflow.com/questions/793 ... te-variabl
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»