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 Hochschulmathe
  Status Uni-Analysis
    Status Reelle Analysis
    Status UKomplx
    Status Uni-Kompl. Analysis
    Status Differentialgl.
    Status Maß/Integrat-Theorie
    Status Funktionalanalysis
    Status Transformationen
    Status UAnaSon
  Status Uni-Lin. Algebra
    Status Abbildungen
    Status ULinAGS
    Status Matrizen
    Status Determinanten
    Status Eigenwerte
    Status Skalarprodukte
    Status Moduln/Vektorraum
    Status Sonstiges
  Status Algebra+Zahlentheo.
    Status Algebra
    Status Zahlentheorie
  Status Diskrete Mathematik
    Status Diskrete Optimierung
    Status Graphentheorie
    Status Operations Research
    Status Relationen
  Status Fachdidaktik
  Status Finanz+Versicherung
    Status Uni-Finanzmathematik
    Status Uni-Versicherungsmat
  Status Logik+Mengenlehre
    Status Logik
    Status Mengenlehre
  Status Numerik
    Status Lin. Gleich.-systeme
    Status Nichtlineare Gleich.
    Status Interpol.+Approx.
    Status Integr.+Differenz.
    Status Eigenwertprobleme
    Status DGL
  Status Uni-Stochastik
    Status Kombinatorik
    Status math. Statistik
    Status Statistik (Anwend.)
    Status stoch. Analysis
    Status stoch. Prozesse
    Status Wahrscheinlichkeitstheorie
  Status Topologie+Geometrie
  Status Uni-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
StartseiteMatheForenDifferenzialrechnungBisektionsverfahren
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Deutsch • Englisch • Französisch • Latein • Spanisch • Russisch • Griechisch
Forum "Differenzialrechnung" - Bisektionsverfahren
Bisektionsverfahren < Differenzialrechnung < Analysis < Oberstufe < Schule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Differenzialrechnung"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Bisektionsverfahren: Programierung
Status: (Frage) beantwortet Status 
Datum: 19:03 Mo 13.05.2013
Autor: PeterSteiner

ich versuche Krampfhaft das bisektionsverfahren in Matlab zu programieren mittels einer vorschleife, jedoch ohne erfolg.
Da ich auf dem Gebiet noch kine erfahrung habe benötige ich hilfe oder hat vielleicht jemanhd schon ein fertig geschriebens programm in matlab dafür?

        
Bezug
Bisektionsverfahren: Antwort
Status: (Antwort) fertig Status 
Datum: 19:33 Mo 13.05.2013
Autor: leduart

Hallo
Zeig doch mal deine Versuche,oder wenigstens ein Flussdiagramm!
Gruß  leduart

Bezug
                
Bezug
Bisektionsverfahren: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 20:06 Mo 13.05.2013
Autor: PeterSteiner

Also mal die schritte:

F(a)F(b)<0
dann c= a+b/2

f(c) < 10^-8

ende sonst nchmal die schleife

hab kein plan wie das zu programieren ist.

Bezug
                        
Bezug
Bisektionsverfahren: Antwort
Status: (Antwort) fertig Status 
Datum: 21:33 Mo 13.05.2013
Autor: Al-Chwarizmi


> Also mal die schritte:
>  
> F(a)F(b)<0
>  dann c= a+b/2     [haee]

du meinst vermutlich  c = [mm] \frac{a+b}{2} [/mm]

damit dies richtig rüberkommt, musst du aber eben
den Bruchstrich verwenden oder richtig Klammern setzen
  

> f(c) < 10^-8
>  
> ende sonst nchmal die schleife
>
> hab kein plan wie das zu programieren ist.



Hallo Peter,

um sowas wirklich programmieren zu können,
muss man sich den ganzen Vorgang schon genauer
überlegen und eben seine einzelnen Schritte planen.
Vermutlich soll eine Funktion f vorausgesetzt sein,
welche über einem Intervall [a...b] mit a<b definiert
und stetig ist und die Voraussetzung f(a)*f(b)<0 erfüllt.
Die Werte von a und b und die Formel zur Berechnung
von Funktionswerten f(x) aus gegebenen x-Werten
müssen dem Programm als Eingabewerte vorliegen.
Nun müsste folgender Prozess mehrmals wiederholt
werden (bis ein gewisses Abbruchkriterium erfüllt
ist):
1.) Berechne den Mittelwert c von a und b.
2.) Berechne den Funktionswert f(c).
3.) Wird (zufällig) exakt f(c)=0, dann ist c eine
     Nullstelle, und wir sind am Ziel und könnten
     ev. die Schleife (in Matlab mittels "break")
     abbrechen.
     Andernfalls:
4.) Setze [mm] b_{neu}:=c [/mm] , falls f(a)*f(c)<0  oder aber
     [mm] a_{neu}:=c [/mm] , falls f(c)*f(b)<0

Anstatt einer FOR - Schleife würde ich aber eher eine
WHILE - Schleife empfehlen, da die Anzahl der
notwendigen Schritte nicht im Voraus bekannt ist.

Als While-Bedingung kannst du dann etwa nehmen:

While [mm] ABS(f(c))>10^{-8} [/mm] .....  Dazu müsste man aber
dem c gleich schon von Anfang an einen Wert zuordnen;
man könnte z.B. am Start des Programms c:=a setzen.

(wie die Syntax in Matlab genau aussieht, weiß ich
nicht, da ich nicht mit Matlab arbeite).

LG ,   Al-Chw.










Bezug
                                
Bezug
Bisektionsverfahren: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 21:39 Mo 13.05.2013
Autor: PeterSteiner

ok. ich habe dein ausführung verstanden nur bin ich nicht in der Lage eine solche schleife zu programieren:(

Bezug
                                        
Bezug
Bisektionsverfahren: Antwort
Status: (Antwort) fertig Status 
Datum: 22:03 Mo 13.05.2013
Autor: Al-Chwarizmi

Naja, allzu schwierig wäre es natürlich nicht, dazu
im Netz mögliche Wege zu finden.

Google halt mal z.B.

Matlab Bisektionsmethode

Matlab Intervallhalbierung

oder so ...

Besser fände ich es allerdings noch, wenn du dann
konkrete Fragen wieder hier vorbringen würdest.

LG ,

Al-Chw.



Bezug
                                                
Bezug
Bisektionsverfahren: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 10:13 Di 14.05.2013
Autor: Al-Chwarizmi

Ich habe mal ein wenig gegraben nach einem eigenen
Progrämmchen zu diesem Thema. Allerdings ist es
in Pascal geschrieben. Das Wesentliche daraus:


PROGRAM Bisektion;

const epsilon = 1E-12;

var   a, b, c, fa, fb, fc: real;

function f(x:real):real;
  begin
   f:={Funktionsterm}
  end;
    
{------------------------------------}

BEGIN
a:=1;b:=5;   {vorgegebene Intervallgrenzen}
c:=a;
while abs(f(c)) > epsilon do
  begin
   fa:=f(a);
   fb:=f(b);
   fc:=f(c);  
   if fc*fa < 0 then b:=c else a:=c;
   c:=(a+b)/2;
  end;
writeln(c,f(c))
END.

LG ,   Al-Chw.

Bezug
        
Bezug
Bisektionsverfahren: Antwort
Status: (Antwort) fertig Status 
Datum: 21:03 Mo 13.05.2013
Autor: Al-Chwarizmi


> ich versuche Krampfhaft das bisektionsverfahren in Matlab
> zu programieren mittels einer vorschleife, jedoch ohne
> erfolg.

vorschleife ???

du meinst wohl eine FOR - Schleife !

Bezug
                
Bezug
Bisektionsverfahren: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 16:05 Di 14.05.2013
Autor: PeterSteiner

ich habs mit biegen und brechen doch irgendwie hinbekommen :) jetzt wüsste ich gerne wie ich den absolouten Fehler berechnen kann?

Auch ganz allgmein

Bezug
                        
Bezug
Bisektionsverfahren: Antwort
Status: (Antwort) fertig Status 
Datum: 16:41 Di 14.05.2013
Autor: Event_Horizon

Hallo!

Die Schleife läuft so lange durch, bis die Länge des Intervalls einen gewissen Wert nicht unterschreitet. Diesen Wert findest du bei Al-Chwarizmi's Beitrag  z.B. unter dem Variablennamen "epsilon". Das ist also die maximale Diffenz zwischen dem ermittelten und dem realen Wert. Damit kann der Fehler nicht bestimmt werden, sondern er wird vorgegeben!

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


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