Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#3

Re: numerische Differentiation

  Alt 27. Nov 2005, 12:49
Hi,
ich bin mir nicht ganz sicher, aber kannst du nicht deine Rekursive Formel sehr leicht in eine lineare umwandeln?
Zitat von rayman:
Delphi-Quellcode:
function foo_(x: Double; degree: integer): Double;
begin
if degree = 0
  then Result := foo(x)
  else Result := (foo_(x + PRECISION, degree - 1) - foo_(x - PRECISION, degree - 1)) / (2*PRECISION);
end;
Weiß natürlich nicht was foo macht, werd vielleicht mal in deinen Code (war doch welcher angehangen?) schauen. Aber die foo_ (gute Benennung), kannst du denke ich auch so schreiben:
Delphi-Quellcode:
function foo_(x : Double; degree: Integer): Double;
begin
  if degree = 0 then
    begin
      result := foo(x);
    end
  else
    begin
      result := (foo(x + ((degree - 1) * PRECISION)) / degree * PRECISION) - (foo(x - ((degree - 1) * PRECISION)) / degree * PRECISION);
    end;
end;
Hoffe Klammerung stimmt, sorry hab's mir nicht genauer angeschaut.

Gruß Der Unwissende
  Mit Zitat antworten Zitat