|
|
Problem beim Auflösen einer Gleichung nach einer Variablen |
|
Slev1n |

Forum-Anfänger
|
 |
Beiträge: 11
|
 |
|
 |
Anmeldedatum: 18.08.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.08.2015, 17:42
Titel: Problem beim Auflösen einer Gleichung nach einer Variablen
|
 |
Hallo Leute,
hab in der Hilfefunktion in Matlab und der Suchfunktion des Forums schon ein paar Einträge bezüglich dem "solve" Befehl durchforstet. Werde aber trotzdem nicht ganz schlau aus meinem Ergebnis.
Durch auflösen der Gleichung will ich die -3dB Grenzfrequenz finden, dafür setze ich H=0 indem ich den Frequenzgang noch minus 1/sqrt(2) nehme.
fzero klappt auch nicht, weil er sagt, dass nur "double" als input erlaubt ist.
Bin eher Anfänger in Matlab und hoffe ihr könnt mir helfen. Wenn ich mir den geplotteten Freuqenzgang ansehe, dann müsste w ungefähr 0,009 sein. Das Ergebnis unter ans verstehe ich allerdings nicht.
Viele Grüße
Slev1n
|
|
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 18.08.2015, 19:50
Titel:
|
 |
für mich siht das im plot nicht so aus als hätte H nullstellen.
Zitat: |
fzero klappt auch nicht, weil er sagt, dass nur "double" als input erlaubt ist. |
Zitat: |
Function to solve, specified as a handle to a scalar-valued function. |
du hast aber eine symbolische funktion
Zitat: |
H=@(w) (sin(w*M/2)/M.*sin(w/2)).^mp-1/sqrt(2) |
_________________
richtig Fragen
|
|
|
Slev1n |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 11
|
 |
|
 |
Anmeldedatum: 18.08.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.08.2015, 09:03
Titel:
|
 |
Hey,
danke für die schnelle Antwort. Mir ist ein Fehler mit der Klammer aufgefallen wodurch nun zumindest die richtige Gleichung da steht. Ich schaff es aber nun nicht mal die Funktion für mehrere w zu plotten.
Ich bekomme nur einen Wert für H raus, obwohl es doch ein Vektor sein müsste? Scheinbar überseh ich was.
Wenn ich nur 0.001 für w einsetze, bekomme einen sinnvollen Wert.
Gruß
Slev1n
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 24.08.2015, 13:22
Titel:
|
 |
ist die matrix division hier gewollt ?
_________________
richtig Fragen
|
|
|
Slev1n |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 11
|
 |
|
 |
Anmeldedatum: 18.08.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.08.2015, 09:19
Titel:
|
 |
Was so ein kleiner Punkt nicht alles ausmacht...
Die richtige Formel lautet:
Nun will ich aber die 3dB-Frequenz bestimmen. Dafür nehme ich folgende Gleichung und suche die Nullstelle.
das "1/sqrt(2)" ist ja der Wert an der 3dB Stelle.
Nun bekomme ich aber einen seltsamen Wert:
Am Plot kann man sehen, dass sie bei ca. 0.01 liegen müsste.
Viele Grüße
Stefan
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 25.08.2015, 14:11
Titel:
|
 |
Zitat: |
Nun bekomme ich aber einen seltsamen Wert:
|
immer auch mit angeben welche eingabe diese ausgabe erzeugt.
Zitat: |
If the symbolic solver cannot find a solution of an equation or a system of equations, the toolbox internally calls the numeric solver that tries to find a numeric approximation. |
ich würde mal raten das du wieder solve genommen hast und nicht fzero und davon ausgehen das er da er keine lösung gefunden hat nummerisch rangegangen ist und da deine funktion nicht stetig ist treten da ein paar probleme auf. daher das ergebenis.
ich würde mal
fzero
probieren mit gutem startwert. oder
vpasolve
mit gutem startwert.
_________________
richtig Fragen
|
|
|
Slev1n |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 11
|
 |
|
 |
Anmeldedatum: 18.08.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 28.08.2015, 13:09
Titel:
|
 |
Hey,
du hast recht, hab es ausversehen nochmal mit solve versucht. Funktionieren tut es wie folgt:
je nachdem wieich den Startwert setze, kommen ganz passable Werte raus. Für 0.01 bisher am besten
Gruß
Slev1n
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|