www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 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" - Newtonverfahren
Newtonverfahren < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Newtonverfahren: Aufgabe
Status: (Frage) beantwortet Status 
Datum: 13:46 Mi 22.06.2011
Autor: Nagelfar

Aufgabe
Erweitern Sie Ihre Funktion newton.m (Newtonverfahren mit Eingabeparametern f, x0 (Startwert), maxiter (maximale Iterationsanzahl), tol) zu newton2.m derart, dass der Benutzer anstatt des Startwerts x0 die Grenzen a, b (reell) eines Intervalls [a; b] vorgibt; die restlichen Argumente bleiben unverändert.
Ihre Funktion soll möglichst viele Nullstellen von f innerhalb des Intervalls [a; b] fi nden und
in Form eines Vektors z zusammen mit dem Vektor fz der entsprechenden Funktionswerte
zurückgegeben werden.

Hallo,
also die Funktion newton.m mit dem Newtonverfahren und Starwert x0 funktioniert einwandfrei.
Nur bekomme ich das mit den Grenzen irgendwie nicht hin.
Hab gedacht ich lege die linke Intervallgrenze a als mein "x0" fest und gehe dann in äquidistanten Schritten zu b (würde da eine for-schleife mit k=a:(b-a)/100:b funktionieren?). Aber irgendwie klappt das nicht so. Wenn die Funktion bsp. nahe an eine Extremstelle kommt, klappt nichts mehr..
Irgendwie komm' ich keinen Schritt vorwärts.
Danke für jedwede Tipps
Gruß

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


        
Bezug
Newtonverfahren: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 15:59 Mi 22.06.2011
Autor: wieschoo


> Erweitern Sie Ihre Funktion newton.m (Newtonverfahren mit
> Eingabeparametern f, x0 (Startwert), maxiter (maximale
> Iterationsanzahl), tol) zu newton2.m derart, dass der
> Benutzer anstatt des Startwerts x0 die Grenzen a, b (reell)
> eines Intervalls [a; b] vorgibt; die restlichen Argumente
> bleiben unverändert.
>  Ihre Funktion soll möglichst viele Nullstellen von f
> innerhalb des Intervalls [a; b] fi nden und
>  in Form eines Vektors z zusammen mit dem Vektor fz der
> entsprechenden Funktionswerte
>  zurückgegeben werden.
>  Hallo,
>  also die Funktion newton.m mit dem Newtonverfahren und
> Starwert x0 funktioniert einwandfrei.
>  Nur bekomme ich das mit den Grenzen irgendwie nicht hin.
>  Hab gedacht ich lege die linke Intervallgrenze a als mein
> "x0" fest und gehe dann in äquidistanten Schritten zu b
> (würde da eine for-schleife mit k=a:(b-a)/100:b

Das funktioniert.

> funktionieren?). Aber irgendwie klappt das nicht so. Wenn
> die Funktion bsp. nahe an eine Extremstelle kommt, klappt
> nichts mehr..

Verräts du noch, was das genau heißt. Du hast doch "maxiter", der in solchen Fällen eingreift.

>  Irgendwie komm' ich keinen Schritt vorwärts.
>  Danke für jedwede Tipps
>  Gruß
>  

Vielleicht postest du auch noch deinen Quelltext "newton.m". Bis jetzt kann man nur im Dunkeln tappen und tippen, dass deine Schleife endlos irgendwo wird, sofern ich "klappt nicht" richtig verstanden habe.


Bezug
        
Bezug
Newtonverfahren: Antwort
Status: (Antwort) fertig Status 
Datum: 16:20 Mi 22.06.2011
Autor: leduart

Hallo
mit äquidistanten Schritten würdest du a) mögliche Nst. überspringen oder eben dein problem mit den max haben. stell dir was wie die funktion sin(1/x) vor, a=0.001, b=1
oder [mm]f(x)=\produkt_{i=1}^{n} (x-e/n) \textrm{ n=10 und ausmultipliziert! }[/mm] a=0, b=3
Ich denke du musst einen vorspann haben, der Intervalle mit möglichen Nst ermittelt und dann dein altes erfahren verwenden.
gruss leduart


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


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]