|
|
Variablen einer Gleichung ändern |
|
ZeroLab |

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 17.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.10.2012, 13:25
Titel: Variablen einer Gleichung ändern
|
 |
Hi Leute,
ich habe für meine Abschlußarbeit ein Matlab Programm bekommen, welches viele Variablen enthält, die ich selber vorgben muss. Jetzt will ich schauen was passiert, wenn ich nur einen Parameter ändere, während die anderen gleich bleieben.
Ich gebe am besten ein Beispiel: "dsn = ((ksn * di * D) / Ng)^0.5;" Hier will ich, dass "dsn" berechnet wird. Dabei sollen alle Werten vorgegeben sein, außer "Ng". Dieser soll von 5 bis 10 in 1er Schritten eingesetzt werden. Vermutlich muss ich eine for-Schleife in den Quell-code einbauen, bin mir aber nicht sicher wie ich da am besten vorgehe. Vielleicht gibt es auch eine einfachere Lösung. Ich danke euch allen schon mal im Voraus für eure Vorschläge.
Beste Grüße.
|
|
|
|
|
evil2106 |

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 11.10.12
|
 |
|
 |
Wohnort: Rostock
|
 |
|
 |
Version: 2012b
|
 |
|
|
 |
|
Verfasst am: 17.10.2012, 19:02
Titel:
|
 |
Hallo,
du kannst für NG einen Vektor anlegen
und dann die Gleichung ausführen.
dsn wird dann automatisch ein Vektor der Länge (1,5). Wichtig ist, dass du die Potenz mit . ausführst, damit die Operation elementweise passiert.
Viele Grüße
Christof
|
|
|
ZeroLab |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 17.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.10.2012, 13:10
Titel:
|
 |
Vielen Dank für die Antwort. Ng funktionier nicht als Zeilenvektor, da eine Division in der Gleichung ist, aber in einer Spalte nimmt Matlab die Zahlen an. Jetzt habe ich bei der Ausgabe ein Problem. Es kommt so raus:
Der verwendete Befehl ist:
Muss ich an dem Ausgabebefehl was ändern oder doch in der Gleichung?
(so sieht die jetzt aus).
|
|
|
evil2106 |

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 11.10.12
|
 |
|
 |
Wohnort: Rostock
|
 |
|
 |
Version: 2012b
|
 |
|
|
 |
|
Verfasst am: 18.10.2012, 15:30
Titel:
|
 |
Zitat: |
Ng funktionier nicht als Zeilenvektor, da eine Division in der Gleichung ist
|
Das bezweifle ich, dass Matlab damit ein Problem hat.
Du musst die Formel anpassen, damit es klappt.
Wie sehen denn die Werte von dsn aus?
Viele Grüße
Christof
|
|
|
ZeroLab |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 17.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.10.2012, 19:09
Titel:
|
 |
Das Ergebnis aus der Berechnung habe ich ich oben hingeschrieben:
Das kommt raus wenn ich für Ng
einsetze. Und bei den weiteren Gleichungen kommen Werte raus, ich weiß nicht ob die stimmen, ist aber zumindest nicht Null.
Wenn ich für Ng aber
einsetze kommt
Vielen Dank für deine Hilfe. Ich hatte bis jetzt nicht viel mit Matlab zu tun und da dieses Programm, das ich ichbenutze, von jemand Anderem geschrieben wurde ist es noch etwas schwieriger.
Beste Grüße.
|
|
|
evil2106 |

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 11.10.12
|
 |
|
 |
Wohnort: Rostock
|
 |
|
 |
Version: 2012b
|
 |
|
|
 |
|
Verfasst am: 18.10.2012, 20:18
Titel:
|
 |
Hallo,
anbei ein Beispiel mit Ng als Zeilenvektor. Hat eben mir funktioniert.
Was stimmt denn nicht bei Ausgabe mit disp()?
Christof
|
|
|
ZeroLab |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 17.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 20.10.2012, 13:34
Titel:
|
 |
Also ich habe den Teil des Programms in eine separaten Datei copiert. Es sieht so aus:
Das angezeigte Ergebnis ist:
Was aber eben nicht stimmt. Ich möchte ja, dass die Zahlen von 5 bis 10 eiesetzt werden und das richtige Ergebnis angezeigt wird:
Ja das habe ich jetzt gerechnet indem ich Ng von Hand geändert habe. Ich will das aber nicht für die Anderen Rechnungen machen, weil die nicht mehr so einfach (bzw. so wenige) Zahlen haben.
|
|
|
evil2106 |

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 11.10.12
|
 |
|
 |
Wohnort: Rostock
|
 |
|
 |
Version: 2012b
|
 |
|
|
 |
|
Verfasst am: 21.10.2012, 17:11
Titel:
|
 |
Hallo,
du muss
damit die Operation Elementweise geschieht.
Christof
|
|
|
ZeroLab |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 17.10.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 22.10.2012, 19:46
Titel:
|
 |
Vielen Dank für die Hilfe. Es funktioniert jetzt alles.
Beste Grüße.
|
|
|
|
|
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.
|
|