Hallo, ich habe mehrere Gleichungen f1,f2,f3,...fk mit mehreren abhäniggen Variablen fk(x1,x2,x3...). Ich möchte jetzt eine Gleichung in Abhänigkeit eines Parameters plotten, dabei sind die anderen Parameter konstant vorgegeben. D.h. in Summe ist die Lösung eindeutig. Allerdings möchte ich jetzt nicht händisch alle Formeln umstellen und einsetzen sondern lieber alle Formeln definieren, die nicht-zu-verändernden Parameter vorgeben und dan am liebsten eine Funktion in Abhängikeit der noch übrigen einen Variable plotten. Als Ergänzung möchte ich dann nich nur eine variable als Parameter sondenr z.b. 2 und dann ein 3D Plot machen. Mit welchem Tool kann man das am einfachsten machen? Matlab? Am liebsten soll es dann aus mehreren gleichungen auch noch die analythische lösung nach der gesuchten Größe ausspucken. Danke
Ich hätte dir jetzt auch MATLAB vorgeschlagen, unabhängig davon dass du es unten selbst erwähnt hast. Wenn das Budget nicht vorhanden ist, könntest du auch Octave oder Scilabs verwenden. Ansonsten könntest du dir auch mal Mathematica anschauen.
Franz F. schrieb: > Ich hätte dir jetzt auch MATLAB vorgeschlagen, unabhängig davon dass du > es unten selbst erwähnt hast. Matlab ist vorhanden, steh aber auf dem Schlauch. Hab mit syms + solve rumprobiert.
Ich hab grad einen Ausschnitt gefunden, der eine Differenztialgleichung löst.
1 | u_c = dsolve('Du_c + u_c / tau = u_e / tau', 'u_c(0) = 0', 't'); %Differentialgleichung lösen |
2 | u_c = subs(u_c); %Symbolische Konstanten ersetzen |
3 | double(u_c); %Typecast auf double |
4 | i = (u_e-u_c)/(R1+R2); |
5 | u_1 = i*R1; |
6 | u_2 = i*R2; |
7 | u_a = u_1+u_c; |
Mit solve sollte es nicht viel anders gehen
Wenn es eher analytisch ist, nutz Maple, sonst ist Matlab voll ok ;-) Definiere einfach deine Funktion, setze die PArameter fest die du kennst und lasse dir die restlichen Funktionswerte in einer Schleife über den Bereich berechnen der dich interessiert und danach plotten. Ja, Matlab kann auch symbolische Gleichungen handhaben, aber so ganz dafür gedacht ist es doch nicht... Wenn sich dein Problem mit obiger Methode erschlagen lässt ist das zwar quick&dirty aber funktioniert
Danke, habs hinbekommen. Vorgehen (es folgt ein sinnfreies beispiel) 1. definieren der Variablen syms y2 x eta 2. vorgeben bekannter größen, bzw. sweep der zu untersuchenden variable a = 5 b = 5 (oder b = 1, 2, 3 ... nacheinander) 3. Definieren von allen Gleichungen als : eqn1 = y2 == 1+3x+5*sin(eta*a+b) eqn2 = ... eqn3 = ... 4. lösen lassen S = solve(eqn1,eqn2,eqn3...) 5. gesuchten wert plotten, wert steckt z.B. in S.x Momemtan ist die Lösung noch nicht ganz optimal, da für ein sweep jedesmal das komplette gleichungssystem neu gelöst wird ;-)
>Momemtan ist die Lösung noch nicht ganz optimal, da für ein sweep
jedesmal das komplette gleichungssystem neu gelöst wird ;-)
Der Standardansatz fuer ein lineares System ist hier mit Mathe
dahinterzugehen. Ist das System ueberbestimmt, macht man Fits umd die
Anzahl Variablen zu minimieren.
Und wenn die Variablenanzahl minimal ist, kann man diagonalisieren, um
die Zusammenhaenge zu entflechten.
Ich kenn Systeme, da loest man fuer jeden Punkt eines Graphen iterativ
ein Integral und minimiert das Integral nach einem Parameter.
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.