matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Schulmathe
  Status Primarstufe
  Status Mathe Klassen 5-7
  Status Mathe Klassen 8-10
  Status Oberstufenmathe
    Status Schul-Analysis
    Status Lin. Algebra/Vektor
    Status Stochastik
    Status Abivorbereitung
  Status Mathe-Wettbewerbe
    Status Bundeswettb. Mathe
    Status Deutsche MO
    Status Internationale MO
    Status MO andere Länder
    Status Känguru
  Status Sonstiges

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
StartseiteMatheForenMatlabLösen Lgs mit LR-Zerlegung
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Deutsch • Englisch • Französisch • Latein • Spanisch • Russisch • Griechisch
Forum "Matlab" - Lösen Lgs mit LR-Zerlegung
Lösen Lgs mit LR-Zerlegung < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Lösen Lgs mit LR-Zerlegung: Frage (überfällig)
Status: (Frage) überfällig Status 
Datum: 08:02 Di 09.05.2017
Autor: Noya

Aufgabe
Ziel der Aufgabe ist Gleichungssysteme zu lösen, verwenden Sie dazu die LR-Zerlegung von letzter Woche ohne Pivotisierung. Desweiteren kommen folgende Teilprogramme hinzu:
(a) Eine Vorwärtssubstitution z = forward (L,b)
(b) Eine Rückwärtssubstitution x = backward(R,z)
(c) Ein Hauptprogramm x=solveLGS(A,b), das alle obigen Programme verwendet, um das lineare Gleichungssystem Ax = b für A [mm] \in \IR^{nxn} [/mm] und b [mm] \in \IR^n [/mm] zu lösen.

Hallo ihr Lieben,

ich bin totaler Neuling in Matlab und habe einige Schwierigkeiten meine Gedanken umzusetzen.


1. LR-Zerlegung
function [L,R]=lr(A)
%Bestimmt LR Zerlegung von A,s.d A=L*R mit L untere Dreiecksmatrix, mit 1 auf der Diagonalen und R %obere Dreiecksmatrix.
R = A;            
[n,m] = size(A);
L = eye(n); %Einheitsmatrix
if n~=m  
    error('Die Matrix ist nicht quadratisch')
end
if R(n,n) == 0 %letzte Element muss extra geprüft werden
    error ('Die Matrix ist nicht ohne Pivotisirung oder Permutation LR-zerlegber');
end
for i=1:n-1
    for k=i+1:n
       if R(i,i) == 0
           error ('Die Matrix ist nicht ohne Pivotisirung oder Permutation LR-zerlegber');
         else
           L(k,i) = R(k,i) / R(i,i);
           for j = i : n
           R(k,j) = R(k,j) - L(k,i)*R(i,j);
           end
       end  
    end    
end

das ist meine Funktion für die LR-Zerlegung. Sie funktioniert fehlerfrei.Sicherlich kann man das verschönern, aber ich verstehe das so.


2.Vorwärtselimination
function [z] = forward( L, b ) %Löse L*z=b
N=size(L); %L [mm] \in [/mm]  z [mm] \in \IR^{NxN} [/mm]
z=1:N; %soll die Dimension von z angeben z [mm] \in \IR^N [/mm]
b=1:N; &soll die Dimension von b angeben  b [mm] \in \IR^N [/mm]

for i=1:N
    z(i)=b(i);
    for k=1:i-1
    z(i)= z(i)-L(i,k)*z(k);
    end
end

Was ist hier falsch?
ich habe mir zur hilfe einfach mal eine 3x3-matrix genommen und z berechnet. so erhalte ich, dass
[mm] z_i=b_i-\sum^{i-1}_{k=1}l_{i,k}*z_k [/mm] und [mm] z_1=b_1 [/mm]


3.Rückwärtselimination
function [x] = backward( R, z ) % Löse z=Rx
n=size(R); %dim von R

for i=n:-1:1 %von n rückwärts bis zur 1.
    x(i)=z(i);
    for k=i+1:n
        x(i)=x(i)-R(i,k)*x(k);
    end
    x(i)=x(i)/R(i,i);
end

Könnt ihr mir helfen was hier falsch ist?
[mm] x_n=\bruch{z_n}{r_{i,i}} [/mm] ist und [mm] x_i=\bruch{1}{r_{i,i}}*(z_i-\sum^{n}_{k=i+1}r_{i,k}*x_k) [/mm]


4.Gesamtes Lösungsverfahren
function x = solveLGS( A, b ) %Löse Ax=b

%A LR-zerlegbar


A=input('Eingabe von A: ');
b=input('Eingabe von b: ');

[L,R]=lr(A)


hier würde ich gerne später drüber diskutieren wenn ich 2. und 3. hinbekommen habe.


Vielen Dank und liebe Grüße

Noya


        
Bezug
Lösen Lgs mit LR-Zerlegung: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 08:20 Fr 12.05.2017
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


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