public class Sum extends Table implements SumRules
Constructor and Description |
---|
Sum() |
Modifier and Type | Method and Description |
---|---|
IExpr |
definiteSum(IExpr expr,
Iterator iterator,
IAST list,
EvalEngine engine)
Evaluate the definite sum:
Sum[arg1, {var, from, to}] |
IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
IAST |
getRuleAST()
Get the predefined rules for this function symbol.
|
IExpr |
indefiniteSum(IExpr arg1,
ISymbol var)
Evaluate the indefinite sum:
Sum[arg1, var] |
void |
setUp(ISymbol symbol)
Evaluate built-in rules and define Attributes for a function.
|
IExpr |
sumPower(IAST powAST,
ISymbol var,
IExpr from,
IExpr to)
|
IExpr |
sumPowerFormula(IExpr from,
IExpr to,
IInteger p)
|
determineIteratorExprVariables, determineIteratorVariables, evalBlockWithoutReap, evaluateLast, evaluateTable
createRuleFromMethod, getNormalizedNegativeExpression, getNormalizedNegativeExpression, getPeriodicParts, getPureImaginaryPart, initSerializedRules, isNegativeExpression
numericEval
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 definiteSum(IExpr expr, Iterator iterator, IAST list, EvalEngine engine)
Sum[arg1, {var, from, to}]
arg1
- the first argument of the Sum[]
function.list
- constructed as
{Symbol: var, Integer: from, Symbol: to}
public IExpr indefiniteSum(IExpr arg1, ISymbol var)
Sum[arg1, var]
arg1
- var
- public IExpr sumPower(IAST powAST, ISymbol var, IExpr from, IExpr to)
powAST
- an AST of the form Power[var, i_Integer]
var
- from
- TODOto
- public IExpr sumPowerFormula(IExpr from, IExpr to, IInteger p)
from
- TODOto
- p
- public void setUp(ISymbol symbol) throws SyntaxError
setUp
in interface IEvaluator
setUp
in class Table
symbol
- the symbol which should be set upSyntaxError