NAME

Spreadsheet::Engine::Fn::Approximator - Solve using Newton's method

SYNOPSIS

my $answer = iterate(
  initial_guess => 0.3,
  maximum_iterations => 50,
  epsilon => 0.0001,
  function => sub { 
    my $value = shift;
    return calculate_next_guess($value);
  }
);

DESCRIPTION

This iterates towards an approximate result using the Newtown-Raphson method.

EXPORTS

iterate

This must be passed a 'function' to calculate the next guess given the previous one. It should also be passed an initial guess.

It may also be given a maximum number of iterations and/or an epsilon for how close an answer is accepable.

HISTORY

This is a Modified Version of code extracted from SocialCalc::Functions in SocialCalc 1.1.0

COPYRIGHT

Portions (c) Copyright 2005, 2006, 2007 Software Garden, Inc. All Rights Reserved.

Portions (c) Copyright 2007 Socialtext, Inc. All Rights Reserved.

Portions (c) Copyright 2008 Tony Bowden

LICENCE

The contents of this file are subject to the Artistic License 2.0; you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.perlfoundation.org/artistic_license_2_0