|
Henrikzn |
Forum-Newbie
|
|
Beiträge: 2
|
|
|
|
Anmeldedatum: 02.06.23
|
|
|
|
Wohnort: Kiel
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.06.2023, 20:44
Titel: Thesis - Lavaldüse
|
|
|
|
|
Moin Moin,
Ich bin neu hier und ein wirklich kompletter Anfänger in Matlab.
Mir liegt Programmieren auch nicht wirklich.
Für meine Thesis soll ich mich mit der Lavaldüse auseinandersetzen und ein paar Berechnungen durchführen.
Nun brauche ich einen Code, der mir ein paar Werte herausgibt.
Ich habe 3 Gleichungen:
Die erste brauche ich für die folgenden.
Sie bekommt einen Vektor 'Querschnitt_Verdichtungsstoss' übergeben und soll einen weiteren Vektor 'Ma_s_values' speisen. Das kann ich im Normalfall ja mit einer Schleife machen, doch muss das ganze iterativ geschehen, weswegen ich etwas verzweifle und keine richtigen Werte bekomme. Ich hatte das mit fsolve versucht.
Durch den Vektor 'Ma_s_values' kann ich die anderen beiden Gleichungen speisen. Dannn das gleiche Spiel dann nochmal miut den anderen Gleichungen.
Vielleich könnt ihr mir ja helfen. Kritik nehme ich ebenfalls gerne an.
Grüße
Falls es hilft ist hier noch einmal die Gleichung:
A = Ma_s*(((2/(k+1))*(1+((k-1)/2)*Ma_s^2))^((1+k)/(2(1-k))))
A steht dabei für den Vektor Querschnitt_Verdichtungsstoss
Ma_s für den zu befüllenden Vektor Ma_s_values
k ist einfach ein Wert
|
|
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 03.06.2023, 07:13
Titel:
|
|
Moin,
für mich klingt das ganze nach einem zu lösenden Differentialgleichungssystem, ich sehe aber keine solche Gleichung. Sofern es ein solches ist, Matlab ist sehr gut im Lösen von Differentialgleichungssystemen und du findest hier im Forum, in der Matlab-Dokumentation (spontanes Stichwort "ode solver") oder MatlabCentral sicherlich einige Ansätze.
Gruß,
Steve
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Henrikzn |
Themenstarter
Forum-Newbie
|
|
Beiträge: 2
|
|
|
|
Anmeldedatum: 02.06.23
|
|
|
|
Wohnort: Kiel
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.06.2023, 08:23
Titel:
|
|
steve hat Folgendes geschrieben: |
Moin,
für mich klingt das ganze nach einem zu lösenden Differentialgleichungssystem, ich sehe aber keine solche Gleichung. Sofern es ein solches ist, Matlab ist sehr gut im Lösen von Differentialgleichungssystemen und du findest hier im Forum, in der Matlab-Dokumentation (spontanes Stichwort "ode solver") oder MatlabCentral sicherlich einige Ansätze.
Gruß,
Steve |
Moin Steve,
Nein das ist keine Differentialgleichung.
Lediglich eine implizite Gleichng, die nicht nach Ma_s umgestellt werden kann.
Bei einem anderen Fall hatte ich das mit 'fsolve' hinbekommen.
Dort hatte ich aber nur Werte übergeben.
Jetzt habe ich einen Vektor übergeben und tue mich etwas schwer.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 05.06.2023, 09:20
Titel:
|
|
Hallo,
vor allem wenn man Display off wählt, würde ich mir bei fsolve und ähnlichen Funktionen immer drei Argumente zurückgeben lassen, damit man die Selbstdiagnose des Solvers einsehen kann. Hier sieht nun alles soweit gut aus.
Die Frage wäre nun: wenn diese Werte nicht "richtig" sind, was sind denn richtige Werte? Bei nichtlinearen Gleichungen kann es mehrere Lösungen geben. Dann ist es wichtig, dass man den Startwert so wählt, dass man die gewünschte Lösung bekommt.
Wenn ich das richtig sehe, kann die Gleichung so umgestellt werden, dass die Nullstellen eines kubischen Polynoms in Ma_s benötigt werden. Dann könnte man auch
roots
verwenden.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
|
|
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 - 2024
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.
|
|