www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Matlab" - for-schleife
for-schleife < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

for-schleife: aufgabe
Status: (Frage) beantwortet Status 
Datum: 00:08 Mi 14.06.2006
Autor: meg

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

Hallo, könnte mir vielleicht jemand bei dieser aufgabe helfen..

Es sei A aus R(n,n) eine untere Dreiecksmatrix mit von Null verschiedenen Elementen auf der Diagonalen. Schreiben Sie eine Matlab-Funktion x=vorwaerts(A,b), welche das Gleichungssystem Ax=b löst.

Es wird darauf hingewisen, dass man hier for-schleife und size-Befehl benutzen sollte.

Die Aufgabe habe ich wie gewöhnlich angefangen:

function x = vorwaerts(A,b)

Ich komme leider nicht weiter :(

        
Bezug
for-schleife: Antwort
Status: (Antwort) fertig Status 
Datum: 01:23 Mi 14.06.2006
Autor: dormant

Hi!

Finde irgendwo (z.B. aus einem Satz in der Vorlesung, oder in einem Buch über numerische Mathematik, etwa von Stoer oder Plato; in fast allen Büchern über lineare Algebra) einen Algorithmus wie durch Vorwärtseinsetzen ein homogenes lineares Gleichungssystem gelöst wird und versuch den in Matlab umzusetzen.

Sonst ist prinzipiell alles klar - Variablen definieren (hier A und b), Algorithmus ausführen, Ausgabe oder ähnliches.

Gruß,
dormant

Bezug
                
Bezug
for-schleife: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 20:03 Mi 14.06.2006
Autor: meg

Danke! Ich habe mich schon erfahren, worum es im Vorwärts- und Rückwärtseinsetzen geht :)
ich habe aber immer Probleme mit Schreiben der for-schleife. Also das geht noch, wenn ich selbst auf dem zettel rechne, aber mit matlab ist schon etwas komplizierter...

Bezug
                        
Bezug
for-schleife: Antwort
Status: (Antwort) fertig Status 
Datum: 02:45 Do 15.06.2006
Autor: dormant

Hi!

Na gut - dann schreib mal hier rein, was du auf deinem Zettel hast.

Gruß,
dormant

Bezug
                                
Bezug
for-schleife: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 19:41 Do 15.06.2006
Autor: meg

Also:
Ax=b
=> x=1/A*b

Und versuchte ich das in Matlabsprache zu übersetzen : )

function x= vorwaerts(A,b)
Aa=inv(A);
x=size(n,1)
for i=1:n
    x=0
    for j=1:n
        x=x+Aa(i,j)*b(j,1)
        x(j,1)=x
    end
end

Wo mache ich den Fehler?

Danke im Voraus : )

Bezug
                                        
Bezug
for-schleife: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:43 Do 15.06.2006
Autor: dormant

Hi!

Das ist nicht der Algorithmus für Vorwärtseinsetzen - du darfst die Matrix A nicht invertieren! Ich meine - du darfst sie schon invertieren, aber man hat ja Methoden wie das Rück- und Vorwärtseinsetzen entwickelt um das numerisch aufwändige Problem der inversen Matrix zu umgehen.

Du sollst [mm] a_{11}*x_{1}=b_{1} [/mm] benutzen, das Ergebnis für [mm] x_{1} [/mm] in die zweite Gleichung einsetzen und da ergibt sich [mm] a_{21}*\bruch{b_{1}}{a_{11}}+a_{22}*x_{2}=b_{2} [/mm] usw.

Gruß,
dormant

Bezug
                                
Bezug
for-schleife: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 00:25 Sa 17.06.2006
Autor: viktory_hh

also hier:

[m,n]=size(A);
x=zeros(n,1); %nicht notwendig aber damit schneller läuft

for i=1:n
    temp=0;
    for j=1:i-1
        temp = temp + x(j)*A(i,j);
    end
    x(i)=(b(i)-temp)/A(i,i);
end

so ich hoffe das ist richtig, hatte keine Lust Matlab zu starten.

wenn nicht läufr, bitte Morgen nochmal melden.


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]