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" - rekursive Folge in Matlab
rekursive Folge in Matlab < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

rekursive Folge in Matlab: Hilfe, Korrektur
Status: (Frage) beantwortet Status 
Datum: 16:04 Do 10.11.2011
Autor: DER-Helmut

Aufgabe
Folgendes soll gelöst werden:

Gegeben ist die Folge mit
[mm] b_{1}>\wurzel{a} [/mm]
[mm] b_{n+1} [/mm] = [mm] \bruch{1}{2}(b_{n}+\bruch{a}{b_{n}}) [/mm]
[mm] a\ge0 [/mm] beliebig wählbar.
Es soll eine Funktion aufgestellt werden, die für das Argument n einen Vektor der ersten n Folgenglieder ausgibt. a soll beliebig gewählt werden. Zudem sollen die Werte geplottet und ein konstante Fkt. als 'Grenzwert' in das Diagramm gezeichnet werden...

Meein Vorschlag:


function y=function(n,b1)
b=[sqrt(b1)];    %Startwert
for k=1:n
    b(k+1)=0.5*(b(k)+(b1/b(k)));
end
plot(b,'--')
hold on
x=[1:n];
y=ones(n);
z=y(:,1);
plot(b,'r','MarkerSize',12)  
hold off


Kann mir hier jemand helfen? Wäre echt super - mein Problem liegt bei dem [mm] b_{1}>\wurzel{a}. [/mm]
Dadurch, dass ich in Matlab b=[sqrt(b1)] schreibe, sind alle Folgenglieder gleich groß und der Graph konstant =/

Danke falls das jemand kann!? Besten Dank,
vg

        
Bezug
rekursive Folge in Matlab: Antwort
Status: (Antwort) fertig Status 
Datum: 17:34 Do 10.11.2011
Autor: meili

Hallo,

> Folgendes soll gelöst werden:
>  
> Gegeben ist die Folge mit
> [mm]b_{1}>\wurzel{a}[/mm]
> [mm]b_{n+1}[/mm] = [mm]\bruch{1}{2}(b_{n}+\bruch{a}{b_{n}})[/mm]
>  [mm]a\ge0[/mm] beliebig wählbar.
>  Es soll eine Funktion aufgestellt werden, die für das
> Argument n einen Vektor der ersten n Folgenglieder ausgibt.
> a soll beliebig gewählt werden. Zudem sollen die Werte
> geplottet und ein konstante Fkt. als 'Grenzwert' in das
> Diagramm gezeichnet werden...
>  
> Meein Vorschlag:
>  
>
> function y=function(n,b1)
>  b=[sqrt(b1)];    %Startwert
>  for k=1:n
>      b(k+1)=0.5*(b(k)+(b1/b(k)));
>  end
>  plot(b,'--')
>  hold on
>  x=[1:n];
>  y=ones(n);
>  z=y(:,1);
>  plot(b,'r','MarkerSize',12)  
> hold off
>  
> Kann mir hier jemand helfen? Wäre echt super - mein
> Problem liegt bei dem [mm]b_{1}>\wurzel{a}.[/mm]
>  Dadurch, dass ich in Matlab b=[sqrt(b1)] schreibe, sind
> alle Folgenglieder gleich groß und der Graph konstant =/

Das Problem ist, dass Dein Programm nicht [mm] $b_1 [/mm] > [mm] \Wurzel{a}$ [/mm] erfüllt,
sondern mit [mm] $b_1 [/mm] = [mm] \Wurzel{a}$ [/mm] startet.
Entweder Du setzst  b=[sqrt(b1)] +1, schränkst Dich aber unnötig ein im Startwert,
oder Du übergibst der Funktion auch a
z.B.  function y=function(n,b1,a)
und überprüfst dann b1 > [sqrt(a)].
Wenn nicht erfüllt, lässt Du die Funktion mit Fehlermeldudng enden,
andernfalls durchlaufen.

>  
> Danke falls das jemand kann!? Besten Dank,
> vg

Gruß
meili

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


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