Hi, weiß jemand wie man folgende Zusammenfassung mit matlab machen kann? P1=L*R*s+1 P2=C*s Produkt von P1 und P1 als Ergebnis wie folgt rausgeben lassen: Z=P1*P2=L*C*R*s^2+C*s Ist das bestimmt irgendwie möglich, oder? Nach der Zusammenfasseng der Gleichungen möchte ich die genannten Parameter mit Wert vorsehen und das Ergebnis rausfinden lassen wie z.B.: L=1 R=2 C=3 Z=6s^2+3s Vielen Dank für Eure Tipps Wulf
Hallo wulf, ich habe momentan gerade kein Matlab zur Hand und muss daher auf Octave zurückgreifen. Du benötigst in Matlab die "Symbolic Math Toolbox" um L,R und C als Variablen verwenden zu können. Anschließend kannst du mit dem Befehl: L=sym("L") Deine Induktivität als symbolische Variable anlegen. Dies geht leider mit Octave nicht zuverlässig, daher kann ich dir kein getestetes Beispiel geben. Allgemein kannst du die Übertragungsfunktion wie folgt anlegen: num = [L*R 1] den = [1] P1 = tf(num,den) num = [C 0] den = [1] P2 = tf(num,den) "tf" steht für Transfer Function. Ob du die Toolbox installiert hast kannst du einfach über die Befehlsreferenz herausfinden. help sym Viel Erfolg
Ich würde es so machen:
1 | s = tf('s'); |
2 | |
3 | Z = @(L,R,C)(L*C*R*s^2+C*s); |
4 | |
5 | Z1 = Z(1,2,3) |
Das Z ist ein function handle, mit den Parametern L,R,C. Das mit dem tf geht nur, wenn du die control system box installiert hast. Wenn du P1 und P2 benutzen willst, könntest du ne eigene Datei erstellen mit der function Z: Z.m
1 | function out = Z(L,R,C) |
2 | s = tf('s'); |
3 | |
4 | P1 = L*R*s + 1; % oder halt was anderes.. |
5 | P2 = C*s; |
6 | |
7 | out = P1*P2; |
8 | end |
P1 und P2 kannst du natürlich ändern ;) Die funktion wird dann in einer anderen Datei mit
1 | Z1 = Z(1,2,3); |
aufgerufen. Was mein Vorposter geschrieben hat mit den symbolischen Variablen funktioniert in matlab (zumindest in 2012b) NICHT. Er kann die symbolischen Variablen nicht in eine transfer function casten. Es gibt noch die Möglichkeit der "tunable parameter", siehe http://www.mathworks.de/de/help/control/ref/realp.html Schöne Grüße, Jan
Vielen Dank für Eure Infos. ich habe eine Studentenversion und werde erst überprüfen ob es mit sym einfach geht. Ansonsten werde ich den Jan's Vorschlag überprüfen. Das sieht ja sehr gut aus. Ich hoffe, dass ich dabei vorankommen kann. Danke nochmal Wulf
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.