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
StartseiteMatheForenMatlabMATLAB Algorithmus
Foren für weitere Studienfächer findest Du auf www.vorhilfe.de z.B. Astronomie • Medizin • Elektrotechnik • Maschinenbau • Bauingenieurwesen • Jura • Psychologie • Geowissenschaften
Forum "Matlab" - MATLAB Algorithmus
MATLAB Algorithmus < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

MATLAB Algorithmus: Aufgabe 19 c)
Status: (Frage) beantwortet Status 
Datum: 15:11 Di 05.12.2006
Autor: Fidel

Aufgabe
Beschreiben Sie folgenden Algorithmus, insbesondere die Bedeutung der Variablen [mm] u_k [/mm] und [mm] err_k. [/mm]

[mm] err_0 [/mm] = 0; [mm] S_0 [/mm] = 0;
Für k =1 bis n:
     [mm] u_k [/mm] = [mm] err_k_-_1 [/mm] + [mm] a_k; [/mm]
     [mm] S_k [/mm] = [mm] S_k_-_1 [/mm] + [mm] u_k; [/mm]
     [mm] err_k [/mm] = [mm] u_k [/mm] - [mm] (S_k [/mm] - [mm] S_k_-_1); [/mm]
end

Also es geht um die Berechnung von Summenfolgen mit dem Computer. Die Iterationsschleife ist klar. Aber was wird da gerechnet? [mm] (S_k [/mm] - [mm] S_k_-_1) [/mm] dort werden ja für grosse k zwei zunehmend gleichgrosse Zahlen subtrahiert -> Zunehmende Auslöschung. Soll damit irgendwie der Rundungsfehler kompensiert werden? Bei der Summierung von links nach rechts werden ja zu einer immer grösser werdenden Zahl zunehmend kleiner werdende addiert. -> Zunehmender Rundungsfehler.
Wer weiss mehr?








Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt

        
Bezug
MATLAB Algorithmus: Antwort
Status: (Antwort) fertig Status 
Datum: 16:00 Di 05.12.2006
Autor: Martin243

Hallo,

ich weiß nicht, was das mit Matlab zu tun hat. Aber mal davon abgesehen können wir uns das mal genauer ansehen und uns wundern. Hat das Ganze eine Anwendung oder ist es eine ganz theoretische Übung?

Nun, formen wir etwas um. Für $k>0$ gilt:
[mm]err_k = u_k - \left(S_k - S_{k-1}\right) = u_k - \left(\left(S_{k-1}+u_k\right)-S_{k-1}\right)=u_k-u_k = 0[/mm]
Also: [mm] $err_k [/mm] = 0 [mm] \quad \forall k\in\IN$. [/mm]

Damit gilt für alle $k>0$:
[mm]u_k = err_{k-1} + a_k = 0 + a_k = a_k[/mm]
Also: [mm] $u_k [/mm] = [mm] a_k \quad \forall k\in\IN^{>0}$. [/mm]

Damit kommen wir auf:
[mm]S_k = S_{k-1} + u_k = S_{k-1} + a_k[/mm]
Mit [mm] $S_0$ [/mm] als Rekursionbasis kommen wir auf die simple Summe:
[mm]S_n = \sum_{k=1}^{n}a_k \quad \forall n\in\IN^{>0}[/mm]

Wenn du dich also nicht vertippt hast, dann sind die beiden Variablen nicht mehr als Dummies. OK, in Matlab nimmt [mm] $err_k$ [/mm] in manchen Schritten einen Wert in der Größenordnung von [mm] $\pm 10^{-16}$ [/mm] an. Geht es um diese numerischen Fehler?


Gruß
Martin


Bezug
                
Bezug
MATLAB Algorithmus: Präzisierung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:19 Di 05.12.2006
Autor: Fidel

Hallo Martin

Jetzt wo Du's sagst, der Algorithmus ist nicht unbedingt auf Matlab beschränkt. Wir benutzen halt dieses Programm in der Nummerik.
Bei uns geht's momentan schon um die Rundungsfehler und Stellendefekte.
Also Summenfolgen von links und von rechts aufsummieren und gucken was rauskommt. Der Witz an der Geschichte sollte halt sein, dass dieser Algorithmus irgendwie genauere Werte berechnet wenn Summenglieder aufsummiert werden. Es geht also um die kleinen Werte, die Du angesprochen hast.

Bezug
                        
Bezug
MATLAB Algorithmus: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:48 Di 05.12.2006
Autor: Martin243

Ach so! Da kenne ich mich nicht so gut aus. Es mag ja sein, dass der Rundungsfehler zunimmt, aber nicht so stark wie bei der einfachen Summation.
Mit [mm] $err_k$ [/mm] berechnet man ja den bei der letzten Addition aufgetretenen Fehler und erzeugt mit [mm] $u_k [/mm] = [mm] a_k [/mm] + [mm] err_{k-1}$ [/mm] einen "fehlerkompensierten" Summanden für die nächste Addition. Man muss nämlich auf das Vorzeichen achten: Ist [mm] $S_k$ [/mm] nämlich durch einen Rundungsfehler zu groß geraten, dann wird [mm] $err_k$ [/mm] negativ und der nächste Summand wird vermindert. Umgekehrt sieht es aus, wenn [mm] $S_k$ [/mm] nach unten gerundet wurde. [mm] $err_k$ [/mm] ist dann positiv und [mm] $u_{k+1}$ [/mm] ist dann größer als [mm] $a_{k+1}$. [/mm]
Mehr kann ich als Laie dazu nicht sagen...


Gruß
Martin

Bezug
                                
Bezug
MATLAB Algorithmus: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:57 Di 05.12.2006
Autor: Fidel

Hallo Martin

Das klingt schon nach etwas. Ich überleg's mir nochmal selber.
Besten Dank für die Mühe!

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


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