public class Table extends AbstractFunctionEvaluator
Constructor and Description |
---|
Table() |
Modifier and Type | Method and Description |
---|---|
VariablesSet |
determineIteratorExprVariables(IAST ast)
Determine all local variables of the iterators starting with index
2 in the given ats . |
IAST |
determineIteratorVariables(IAST ast)
Determine all local variables of the iterators starting with index
2 . |
static IExpr |
evalBlockWithoutReap(IExpr expr,
IAST localVariablesList)
Disable the
Reap() and Sow() mode temporary and evaluate an expression for the given "local variables
list". |
IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
protected static IExpr |
evaluateLast(IExpr arg1,
Iterator iter,
IAST resultList,
IExpr defaultValue)
Evaluate only the last iterator in
ast (i.e. |
protected static IExpr |
evaluateTable(IAST ast,
IAST resultList,
IExpr defaultValue,
EvalEngine engine)
Generate a table from standard iterator notation.
|
void |
setUp(ISymbol symbol)
Evaluate built-in rules and define Attributes for a function.
|
createRuleFromMethod, getNormalizedNegativeExpression, getNormalizedNegativeExpression, getPeriodicParts, getPureImaginaryPart, getRuleAST, initSerializedRules, isNegativeExpression
numericEval
public 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 AbstractFunctionEvaluator
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()
protected static IExpr evaluateTable(IAST ast, IAST resultList, IExpr defaultValue, EvalEngine engine)
ast
- resultList
- the result list to which the generated expressions should be appended.defaultValue
- the default value used in the iteratorF.NIL
if no evaluation is possibleprotected static IExpr evaluateLast(IExpr arg1, Iterator iter, IAST resultList, IExpr defaultValue)
ast
(i.e. ast.get(ast.size() - 1)
) for Sum()
or
Product()
function calls.public void setUp(ISymbol symbol)
AbstractFunctionEvaluator
setUp
in interface IEvaluator
setUp
in class AbstractFunctionEvaluator
symbol
- the symbol which should be set uppublic IAST determineIteratorVariables(IAST ast)
2
.ast
- public VariablesSet determineIteratorExprVariables(IAST ast)
2
in the given ats
.ast
- public static IExpr evalBlockWithoutReap(IExpr expr, IAST localVariablesList)
Reap() and Sow()
mode temporary and evaluate an expression for the given "local variables
list". If evaluation is not possible return the input object.expr
- the expression which should be evaluatedlocalVariablesList
- a list of symbols which should be used as local variables inside the block