WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Lösung Gleichungsystem

 

dareal
Forum-Anfänger

Forum-Anfänger


Beiträge: 27
Anmeldedatum: 08.08.09
Wohnort: köln
Version: ---
     Beitrag Verfasst am: 24.08.2009, 14:05     Titel: Lösung Gleichungsystem
  Antworten mit Zitat      
Hallo,
wie kann ich mit Matlab folgendes Gleichungssystem Lösen:

a+ 2b + 4c + 3d + 6e = 0
b + 4c + 3e = 0
b + 2e = 0


die lösung wäre:
a=6 , b=-3, c=0 , d= -2 ,e= 1

oder noch
a=4 , b=-4, c=1 , d= 0 ,e= 0

beide erfüllen das Gl.sys
Private Nachricht senden Benutzer-Profile anzeigen


Titus
Forum-Meister

Forum-Meister


Beiträge: 871
Anmeldedatum: 19.07.07
Wohnort: Aachen
Version: ---
     Beitrag Verfasst am: 24.08.2009, 17:50     Titel:
  Antworten mit Zitat      
Hallo,

hmm, bei 5 Unbekannten und 3 Gleichungen gibt es sehr viele Lösungen (genauer, eine zweidimensionale Mannigfaltigkeit von Lösungen).
Die Lösung erhält man, indem Du die Gleichung als Matrixgleichung der Form A*x=b schreibst, wobei b = [0;0;0] und x = [a;b;c;d;e] aus Deinem Gleichungssystem.
Die Lösung ist dann
Code:

wobei das so zu lesen ist: jede Lösung ist gegeben durch Werte p,q und
Code:
xs = p*x(:,1) + q*x(:,2);


Ciao,
Titus
Private Nachricht senden Benutzer-Profile anzeigen
 
dareal
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 27
Anmeldedatum: 08.08.09
Wohnort: köln
Version: ---
     Beitrag Verfasst am: 24.08.2009, 18:25     Titel:
  Antworten mit Zitat      
Hallo Titus,
danke für deine Antwort, das hab ich schon mal ausprobiert aber ich bekomme nicht die gewünschten ergebnisse
Code:

>>A=[1 2 4 3 6; 0 1 4 0 3; 0 1 0 0 2]
A =

     1     2     4     3     6
     0     1     4     0     3
     0     1     0     0     2

>>x=null(A,'r')
x =

   -3.0000   -1.0000
         0   -2.0000
         0   -0.2500
    1.0000         0
         0    1.0000
 

weiter komme ich icht mit der auswahl von p und q nicht auf die ergebnisse die ich schon oben gennant habe.

hast du vielleicht eine andere Vorschlag, falls das ich nicht verstanden habe.
ich benutze hier null(A,'r') !ist es auch ok !!
danke
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 24.08.2009, 19:52     Titel:
  Antworten mit Zitat      
Hallo dareal,

die beiden von Dir angegebenen Lösungen erfüllen beide die dritte Gleichung nicht. Die Version mit 'r' kannst Du auch nehmen.

Gruß vom Gast
 
dareal
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 27
Anmeldedatum: 08.08.09
Wohnort: köln
Version: ---
     Beitrag Verfasst am: 24.08.2009, 20:05     Titel:
  Antworten mit Zitat      
sorry

genau war das problem Embarassed
Code:

>> A=[1 2 4 3 6; 0 1 4 0 3; 0 0 0 1 2]

A =

     1     2     4     3     6
     0     1     4     0     3
     0     0     0     1     2

>> null(A,'r')

ans =

     4     6
    -4    -3
     1     0
     0    -2
     0     1
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Coja
Forum-Century

Forum-Century


Beiträge: 166
Anmeldedatum: 20.06.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.08.2009, 16:52     Titel:
  Antworten mit Zitat      
Wie bereits erwähnt wurde, ist das Gleichungssystem nicht eindeutig lösbar:
Wenn du mit symbolischen Variablen arbeitest, bekommst du zumindest eine "Teillösung":
Code:
[c,d,e]=solve('a+ 2*b + 4*c + 3*d + 6*e = 0','b + 4*c + 3*e = 0','b + 2*e = 0')
 
 

liefert
Code:

c =
1/8*b
 
d =
-1/3*a+1/6*b
 
e =
-1/2*b
Private Nachricht senden Benutzer-Profile anzeigen
 
gargamel
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 07.04.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.08.2009, 15:09     Titel:
  Antworten mit Zitat      
hi,

hab auch ein problem in dieser art und möchte keinen neuen thread dazu öffnen deshalb schreib ich es gleich hier dazu.

Folgende Gleichung möchte ich von Matlab gelöst haben:

Code:
F = a*F1 + (1-a)*F2

gesucht a

mit der Bedingung, dass
Code:
det(a*F1 + (1-a)*F2) = 0

erfüllt ist.

F1 und F2 vollständig bekannte 3x3 Matrizen und a ist ein Skalar. Laut Literatur sollte das ganze zu einer kubsichen Gleichung mit mindestens einer, maximal aber 3 Lösungen führen.

ich hoffe einer von euch kann mir behilfich sein.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.