public class Product extends Table implements ProductRules
RULES
Constructor and Description |
---|
Product() |
Modifier and Type | Method and Description |
---|---|
IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
IAST |
getRuleAST()
Get the predefined rules for this function symbol.
|
IExpr |
numericEval(IAST functionList,
EvalEngine engine)
Numeric evaluation of a function.
|
void |
setUp(ISymbol symbol)
Evaluate built-in rules and define Attributes for a function.
|
determineIteratorExprVariables, determineIteratorVariables, evalBlockWithoutReap, evaluateLast, evaluateTable
createRuleFromMethod, getNormalizedNegativeExpression, getNormalizedNegativeExpression, getPeriodicParts, getPureImaginaryPart, initSerializedRules, isNegativeExpression
public IAST getRuleAST()
AbstractFunctionEvaluator
getRuleAST
in class AbstractFunctionEvaluator
null
if no rules are definedpublic IExpr evaluate(IAST ast, EvalEngine engine)
AbstractFunctionEvaluator
ast.get(0)
(or alternatively ast.head()
) contains the
head (i.e. the function symbol) of this abstract syntax tree (AST). ast.arg1()
to ast.get(n)
the ast
contains the first to n-th argument of the
function (alternatively you get the first to fifth argument with the methods arg1()
, arg2()
,...
arg5()
).Validate
class to check the number or types of arguments in the evaluate
method.null
value without throwing an exception!evaluate
in interface IFunctionEvaluator
evaluate
in class Table
ast
- the abstract syntax tree (AST) which should be evaluatedengine
- the users current evaluation enginenull
, if evaluation isn't possibleValidate
,
IExpr.head()
,
IAST.arg1()
,
IAST.arg2()
,
IAST.arg3()
public IExpr numericEval(IAST functionList, EvalEngine engine)
AbstractEvaluator
ast.get(0)
(or alternatively ast.head()
) contains the head
(i.e. the function symbol) of this abstract syntax tree (AST). ast.arg1()
to ast.get(n)
the ast
contains the first to n-th argument of the
function (alternatively you get the first to fifth argument with the methods arg1()
, arg2()
,...
arg5()
).Validate
class to check the number or types of arguments in the evaluate
method.numericEval
in interface IFunctionEvaluator
numericEval
in class AbstractEvaluator
functionList
- the abstract syntax tree (AST) which should be evaluatedengine
- the users current evaluation enginenull
, if evaluation isn't possibleValidate
,
IExpr.head()
,
IAST.arg1()
,
IAST.arg2()
,
IAST.arg3()
public void setUp(ISymbol symbol)
AbstractFunctionEvaluator
setUp
in interface IEvaluator
setUp
in class Table
symbol
- the symbol which should be set up