So vereinfachen Sie ein lineares Gleichungssystem durch Eliminierung von ZwischenvariablenPython

Python-Programme
Anonymous
 So vereinfachen Sie ein lineares Gleichungssystem durch Eliminierung von Zwischenvariablen

Post by Anonymous »

Ich habe ein lineares System, das im Blockdiagramm unten dargestellt ist.
Image

Dieses System wird mit dem folgenden Satz linearer Gleichungen beschrieben:

Code: Select all

err = inp - fb
out = a * err
fb = f * out
Ich möchte Sympy verwenden, um die Ausgabe (out) der Funktion der Eingabe (inp) zu berechnen. Daher möchte ich die Variablen err und fb eliminieren. Ich hätte gerne Hilfe, da ich nicht herausgefunden habe, wie ich ausdrücken kann, was ich möchte. Bisher habe ich:

Code: Select all

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
# []
Das funktioniert eindeutig nicht.
Ich dachte, vielleicht könnte vereinfachen() hier helfen, aber ich weiß nicht, wie das geht Wenden Sie die Vereinfachungsfunktion auf ein Gleichungssystem an.
Das Ergebnis, das ich zu erreichen hoffe, ist:

Code: Select all

         a
out = ------ * inp
1 + af
Kann mir jemand den richtigen Weg weisen?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post