View source code
Display the source code in std/math/algebraic.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Function std.math.algebraic.poly
Evaluate polynomial A(x) = a0 + a1x + a2x2 + a3x3; ...
Unqual!(CommonType!(T1,T2)) poly(T1, T2)
(
T1 x,
in T2[] A
) pure nothrow @nogc @trusted
if (isFloatingPoint!T1 && isFloatingPoint!T2);
Unqual!(CommonType!(T1,T2)) poly(T1, T2, int N)
(
T1 x,
const ref T2[N] A
) pure nothrow @nogc @safe
if (isFloatingPoint!T1 && isFloatingPoint!T2 && (N > 0) && (N <= 10));
Uses Horner's rule A(x) = a0 + x(a1 + x(a2 + x(a3 + ...)))
Parameters
Name | Description |
---|---|
x | the value to evaluate. |
A | array of coefficients a0, a1, etc. |
Example
real x = 3.1L;
static real[] pp = [56.1L, 32.7L, 6];
writeln(poly(x, pp)); // (56.1L + (32.7L + 6.0L * x) * x)
Authors
Walter Bright, Don Clugston, Conversion of CEPHES math library to D by Iain Buclaw and David Nadlinger
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.