www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

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 "Uni-Analysis-Sonstiges" - Numerische Differentiation
Numerische Differentiation < Sonstiges < Analysis < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Uni-Analysis-Sonstiges"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Numerische Differentiation: Idee
Status: (Frage) beantwortet Status 
Datum: 00:56 So 27.11.2011
Autor: Katze_91

Hallo,

ich halte am montag mein Proseminar über Numerische Differentation und wollte auch kurz etwas über das Rauschen von Funktionswerten sagen, dass das zwar bei den Funktionswerten nicht viel ausmacht, aber dann bei den höheren Ableitungen starke veränderungen macht...

nunja jetzt bin ich dabei ein Programm zu schreiben aber ich komm einfach nicht drauf, wie ich die ableitung bestimme, wenn ich nur Messwerte habe (selber ausgedacht)
alle meine Versuche sind gescheitert

clc;close all;clear all;
xi=0:0.01:50;
x=[0 2 5 10 15 20 25 30 35 40 45 50]';
y=[5 10 15 20 30 32 31 29 25 20 10 0];
yi=Inter_polation(x,y,xi);
plot(xi,yi,'r')
axis([0 10 -1 20])
hold on
m=waitforbuttonpress;
n=length(yi);
y2=yi;
e=(10^(-1)).*rand(1,n);
for i = 1:10:n
y2(1,i)=yi(1,i)+e(1,i);
end
plot(xi,y2,'b')

meine Function Inter_polation hat auf jeden fall keinen Fehler, aber ich weiß einfach nicht wie ich in den differenzenquptienten dieses x+h hineinbekomme, wenn ich f nicht gegeben habe :( hoffe mir kann noch einer rechtzeitig helfen

LG
Katze

        
Bezug
Numerische Differentiation: Antwort
Status: (Antwort) fertig Status 
Datum: 08:54 So 27.11.2011
Autor: rainerS

Hallo!

> ich halte am montag mein Proseminar über Numerische
> Differentation und wollte auch kurz etwas über das
> Rauschen von Funktionswerten sagen, dass das zwar bei den
> Funktionswerten nicht viel ausmacht, aber dann bei den
> höheren Ableitungen starke veränderungen macht...
>  
> nunja jetzt bin ich dabei ein Programm zu schreiben aber
> ich komm einfach nicht drauf, wie ich die ableitung
> bestimme, wenn ich nur Messwerte habe (selber ausgedacht)
>  alle meine Versuche sind gescheitert
>  
> clc;close all;clear all;
>  xi=0:0.01:50;
>  x=[0 2 5 10 15 20 25 30 35 40 45 50]';
>  y=[5 10 15 20 30 32 31 29 25 20 10 0];
>  yi=Inter_polation(x,y,xi);
>  plot(xi,yi,'r')
>  axis([0 10 -1 20])
>  hold on
>  m=waitforbuttonpress;
> n=length(yi);
>  y2=yi;
>  e=(10^(-1)).*rand(1,n);
>  for i = 1:10:n
>  y2(1,i)=yi(1,i)+e(1,i);
>  end
>  plot(xi,y2,'b')
>  
> meine Function Inter_polation hat auf jeden fall keinen
> Fehler, aber ich weiß einfach nicht wie ich in den
> differenzenquptienten dieses x+h hineinbekomme, wenn ich f
> nicht gegeben habe :( hoffe mir kann noch einer rechtzeitig
> helfen

Du kannst doch den Funktionswert von f an der Stelle x+h näherungsweise durch Interpolation bestimmen. Nimm dir also zu einem x eine Folge von [mm] $h_i$, [/mm] zB. [mm] $h_i=10^{-i}$ [/mm] und benutze deine Interpolationsfunktion um die zugehörigen y-Werte an den Stellen [mm] $x+h_i$ [/mm] auszurechnen.

  Viele Grüße
    Rainer

Bezug
                
Bezug
Numerische Differentiation: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 12:00 So 27.11.2011
Autor: Katze_91

hallo :3

ja das hab ich auch schon versucht

x2=(10^(-3))+x             % x waren meine Stützstellen

aber ich weiß irgendwie nicht wie ich jetzt meine y-werte jetzt mit der Interpolations function bestimmen kann :(

Bezug
                        
Bezug
Numerische Differentiation: Antwort
Status: (Antwort) fertig Status 
Datum: 12:27 So 27.11.2011
Autor: rainerS

Hallo!

> ja das hab ich auch schon versucht
>  
> x2=(10^(-3))+x             % x waren meine Stützstellen
>  
> aber ich weiß irgendwie nicht wie ich jetzt meine y-werte
> jetzt mit der Interpolations function bestimmen kann :(

Wenn ich den Aufruf richtig verstehe, dann ist der dritte Parameter von inter_polation die Liste der x-Werte, an denen du die interpolierten Funktionswerte ausrechnen willst.

Also etwa so, um die Werte f(1+h) zu berechnen:

x0=1
hi=[0.1 0.01 0.001 0.0001]
xi = x0 + hi
y0 = interpolation(x,y,[x0])
y0 = y0(1)
yi=inter_polation(x,y,xi)

Jetzt steht f(x0) in y0, und die Werte f(x0+hi) in yi

Viele Grüße
   Rainer

Bezug
                                
Bezug
Numerische Differentiation: Frage (überfällig)
Status: (Frage) überfällig Status 
Datum: 14:22 So 27.11.2011
Autor: Katze_91

Danke!
ich hab jetzt

clc;close all;clear all;
xi=0:0.01:50;
x=[0 2 5 10 15 20 25 30 35 40 45 50]';
y=[5 10 15 20 30 32 31 29 25 20 10 0];
yi=Inter_polation(x,y,xi);
plot(xi,yi,'r')
axis([0 10 -1 20])
hold on

m=waitforbuttonpress;
n=length(yi);
y2=yi;
e=(10^(-1)).*rand(1,n);
for i = 1:10:n
y2(1,i)=yi(1,i)+e(1,i);
end
plot(xi,y2,'b')
hold on

m=waitforbuttonpress;
x0=xi;
hi=0.0001 ;
xi = x0 + hi;
y0 = Inter_polation(x,y,[x0]);
yi=Inter_polation(x,y,xi);
zi=(yi-y0)./(2*hi);
plot(xi,zi,'r')

m=waitforbuttonpress;
x3=xi;
hi=0.0001 ;
xi = x3 + hi;
y3 = Inter_polation(x,y,[x3]);
y2=Inter_polation(x,y,xi);
z2=(y2-y3)./(2*hi);
plot(xi,z2,'b')

okay was ist jetzt aber der unterschied zwischen der ersten ableitung des Interpolationspolynoms und der ableitung des veränderten IP... ich seh des jetzt irgendwie nicht und es klappt nicht :(

gibt es jetzt eigentlich einen einfacheren weg höhere ableitungen (3te zum beispiel) zu bestimmen oder muss man das immer weiter so machen?
weil bei der ersten sehe ich leider noch nciht den effekt den ich sehen wollte und gibt es eigentlich auch einen befehl, der eine Funktion wieder aus dem plot rauswirft? also zum beispiel, dass die ersten ableitungen verschwinden wenn ich mit den zweiten anfange?

LG

Bezug
                                        
Bezug
Numerische Differentiation: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 03:20 Mo 28.11.2011
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Uni-Analysis-Sonstiges"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


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