public class Factor extends AbstractFunctionEvaluator
Constructor and Description |
---|
Factor() |
Modifier and Type | Method and Description |
---|---|
IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
static IExpr |
factor(IExpr expr,
java.util.List<IExpr> varList,
boolean factorSquareFree) |
static IAST |
factorComplex(edu.jas.poly.GenPolynomial<edu.jas.arith.BigRational> polyRat,
JASConvert<edu.jas.arith.BigRational> jas,
java.util.List<IExpr> varList,
ISymbol head,
boolean noGCDLCM) |
static IAST |
factorComplex(IExpr expr,
java.util.List<IExpr> varList,
ISymbol head,
boolean noGCDLCM,
boolean numeric2Rational)
Factor the
expr in the domain of GaussianIntegers. |
static IExpr |
factorList(IExpr expr,
java.util.List<IExpr> varList,
boolean factorSquareFree) |
static IAST |
factorModulus(JASModInteger jas,
edu.jas.arith.ModLongRing modIntegerRing,
edu.jas.poly.GenPolynomial<edu.jas.arith.ModLong> poly,
boolean factorSquareFree) |
static IExpr |
factorWithOption(IAST ast,
IExpr expr,
java.util.List<IExpr> varList,
boolean factorSquareFree,
EvalEngine engine)
Factor the
expr with the option given in ast . |
createRuleFromMethod, getNormalizedNegativeExpression, getNormalizedNegativeExpression, getPeriodicParts, getPureImaginaryPart, getRuleAST, initSerializedRules, isNegativeExpression, setUp
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()
public static IExpr factor(IExpr expr, java.util.List<IExpr> varList, boolean factorSquareFree) throws JASConversionException
JASConversionException
public static IExpr factorList(IExpr expr, java.util.List<IExpr> varList, boolean factorSquareFree) throws JASConversionException
JASConversionException
public static IExpr factorWithOption(IAST ast, IExpr expr, java.util.List<IExpr> varList, boolean factorSquareFree, EvalEngine engine) throws JASConversionException
expr
with the option given in ast
.ast
- expr
- varList
- factorSquareFree
- JASConversionException
public static IAST factorComplex(IExpr expr, java.util.List<IExpr> varList, ISymbol head, boolean noGCDLCM, boolean numeric2Rational) throws JASConversionException
expr
in the domain of GaussianIntegers.expr
- varList
- head
- the head of the result ASTnoGCDLCM
- numeric2Rational
- TODOJASConversionException
public static IAST factorComplex(edu.jas.poly.GenPolynomial<edu.jas.arith.BigRational> polyRat, JASConvert<edu.jas.arith.BigRational> jas, java.util.List<IExpr> varList, ISymbol head, boolean noGCDLCM)
public static IAST factorModulus(JASModInteger jas, edu.jas.arith.ModLongRing modIntegerRing, edu.jas.poly.GenPolynomial<edu.jas.arith.ModLong> poly, boolean factorSquareFree)