NAME
Math::NumSeq::Expression -- mathematical expression values
SYNOPSIS
use Math::NumSeq::Expression;
my $seq = Math::NumSeq::Expression->new (expression => '2*i+1');
my ($i, $value) = $seq->next;
DESCRIPTION
In progress ...
An expression string evaluated at i=0, 1, 2, etc. There's a choice of evaluators for the given string, according to which evaluator modules are available.
Perl
The default expression_evaluator => 'Perl' is to evaluate the input string with Perl itself, compiled using the Safe module so as to restrict it to arithmetic. This is always available.
The $i sequence index is in ...
The functions made available include
atan2 sin cos exp log \ Perl builtins
sqrt rand /
min max List::Util (currently)
floor ceil POSIX module
cbrt hypot erf erfc expm1 \
j0 j1 jn lgamma_r log10 | Math::Libm
log1p pow rint y0 y1 yn /
tan asin acos atan \
csc cosec sec cot cotan | Math::Trig
acsc acosec asec acot acotan |
sinh cosh tanh |
csch cosech sech coth cotanh |
asinh acosh atanh |
acsch acosech asech acoth acotanh /
Math-Symbolic
expression_evaluator => 'MS' selects the Math::Symbolic module, if available.
The expression should use a single variable, of any name, which will be the $i index in the sequence.
Math-Expression-Evaluator
expression_evaluator => 'MEE' selects the Math::Expression::Evaluator module, if available.
The expression should use a single input variable, of any name, which will be the $i index in the sequence. Temporary variables can be
Language-Expr
expression_evaluator => 'LE' selects the Language::Expr module. See Language::Expr::Manual::Syntax for its expression syntax, if available.
The expression should use a single variable, of any name, which will be the $i index in the sequence.
FUNCTIONS
See "FUNCTIONS" in Math::NumSeq for the behaviour common to all path classes.
$seq = Math::NumSeq::Expression->new (radix => $r, modulus => $d)-
Create and return a new sequence object.
$value = $seq->ith($i)-
Return the
expressionevaluated at$i.