www.vorkurse.de
Ein Projekt von vorhilfe.de
Die Online-Kurse der Vorhilfe

E-Learning leicht gemacht.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Teams · Forum · Wissen · Kurse · Impressum
Forenbaum
^ Forenbaum
Status Mathe-Vorkurse
  Status Organisatorisches
  Status Schule
    Status Wiederholung Algebra
    Status Einführung Analysis
    Status Einführung Analytisc
    Status VK 21: Mathematik 6.
    Status VK 37: Kurvendiskussionen
    Status VK Abivorbereitungen
  Status Universität
    Status Lerngruppe LinAlg
    Status VK 13 Analysis I FH
    Status Algebra 2006
    Status VK 22: Algebra 2007
    Status GruMiHH 06
    Status VK 58: Algebra 1
    Status VK 59: Lineare Algebra
    Status VK 60: Analysis
    Status Wahrscheinlichkeitst

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

Matlab: Dreitermrekursion
Status: (Frage) beantwortet Status 
Datum: 15:45 Fr 26.01.2007
Autor: eps

Aufgabe
Implementieren Sie die Dreitermrekursion mit dem algorithmus von miller. vergleichen sie diesen ansatz mit ihrem programm von blatt 6 und der geschlossenen lösung anhand der unten angegebenen iterationen.
[mm] R_{k+1}=-2R_{k}+3R_{k-1} [/mm]   mit [mm] R_{0}=1 [/mm] und [mm] R_{-1}=1 [/mm]
[mm] R_{k+1}=-4R_{k}-3R_{k-1} [/mm]    mit [mm] R_{0}=-0.1 [/mm] und [mm] R_{-1}=0.1 [/mm]
Geben Sie dazu die ersten 30 Iterationen für alle drei verfahren in einer Tabelle an.

also etwas habe ich schon, es funktioniert aber leider nicht:

function f= MILLER(x0,K,n,a,b)

y(n)=1;
y(n+1)=0;

for k=n:-1:0
    y(k-1)=(a*y(k)+y(k+1))/b;
end

f=x0*y(K)/y(0);

return


folgende fehlermeldung bekomme ich:

>> MILLER(1,30,100,2,3)
??? Attempted to access y(0); index must be a positive integer or logical.

Error in ==> MILLER at 7
    y(k-1)=-(-a*y(k)-y(k+1))/b;


ich verstehe es nicht und brauch unbedingt hilfe!!!!!!!  danke schonmal....

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

        
Bezug
Matlab: Antwort
Status: (Antwort) fertig Status 
Datum: 16:55 Fr 26.01.2007
Autor: Martin243

Hallo,

das Problem ist simpel: In Matlab fangen die Arrays mit dem Index 1 an. Also musst du die Arrays so anlegen, dass alle Indizes um 1 höher sind.


Gruß
Martin

Bezug
                
Bezug
Matlab: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 17:35 Fr 26.01.2007
Autor: eps

Das heisst also......

function f = Miller(x0,K,n,a,b)

y(n)=1;
y(n+1)=0;

for k=n:-1:0

    
    y(k)= (a*y(k+1)+y(k+2))/b;
end

f=x0*y(K)/ y(1);

return  


dann bekomm ich diese fehlermeldung:

>> Miller(-0.1, 30, 98, 4, -3)
??? Attempted to access y(100); index out of bounds because numel(y)=99.

Error in ==> Miller at 8
    y(k)= (a*y(k+1)+y(k+2))/b;


muss ich statt y(n) jetzt y(n+1) schreiben?
und statt y(n+1) jetzt y(n+2) schreiben?
ich hab einiges ausprobiert, bekomm aber immer ne fehlermeldung ähnlich der oben.

sorry.... ich kenn mich nur ganz wenig mit matlab aus und hab da so meine probleme, brauche aber unbedingt volle punktzahl:-(


Bezug
                        
Bezug
Matlab: Antwort
Status: (Antwort) fertig Status 
Datum: 18:54 Fr 26.01.2007
Autor: ullim

Hi,

> Das heisst also......
>  
> function f = Miller(x0,K,n,a,b)
>
> y(n)=1;
> y(n+1)=0;
>
> for k=n:-1:0
>      

In der FOR Schleife darf der Index auch nur bis 1 und nicht bis 0 laufen, dann läuft das Programm korrekt und endet mit 0.1 als Ergebnis.


mfg ullim

Bezug
                                
Bezug
Matlab: Frage (überfällig)
Status: (Frage) überfällig Status 
Datum: 19:30 Fr 26.01.2007
Autor: eps

....vielen Dank....!

und das ist korrekt????

>> Miller(-0.1, 30, 100, 4, -3)

ans =

    0.1000

ich dachte, ich muss viiiieele werte rausbekommen und als graph darstellen....
aber vielleicht ist das auch der teil "...Blatt 6..."
auf jeden Fall danke ich recht herzlich für die schnelle hilfe:)

Bezug
                                        
Bezug
Matlab: Frage (überfällig)
Status: (Frage) überfällig Status 
Datum: 15:40 Sa 27.01.2007
Autor: eps

>> Miller(1, 30, 100, 2, 3)
Miller:0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75        0.75     0.74999     0.75004     0.74989     0.75034     0.74897     0.75309     0.74074     0.77778     0.66667

ans =

     1

>> Miller(-0.1, 30, 100, 4, -3)
Miller:1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5         1.5        -1.5      1.4999     -1.4998      1.4993     -1.4979      1.4938     -1.4815      1.4444     -1.3333

ans =

    0.1000

stimmt das? die graphen sehen etwas seltsam aus......bitte um antwort und danke schonmal:)

Bezug
                                                
Bezug
Matlab: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:20 Mo 29.01.2007
Autor: matux

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


^ Seitenanfang ^
www.vorkurse.de
[ Startseite | Mitglieder | Teams | Forum | Wissen | Kurse | Impressum ]