public class RowReduce extends AbstractFunctionEvaluator
Reduce the matrix to row reduced echelon form.
See:Constructor and Description |
---|
RowReduce() |
Modifier and Type | Method and Description |
---|---|
IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
static IAST |
rowReduced2List(org.apache.commons.math4.linear.FieldMatrix matrix,
EvalEngine engine)
Return the solution of the given (augmented-)matrix interpreted as a system of linear equations
|
static IAST |
rowReduced2RulesList(org.apache.commons.math4.linear.FieldMatrix matrix,
IAST variableList,
IAST resultList)
Row reduce the given
(augmented-)matrix and append the result as rules for the given variableList . |
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 IAST rowReduced2List(org.apache.commons.math4.linear.FieldMatrix matrix, EvalEngine engine)
matrix
- F.NIL
if the linear system is inconsistent and has no solutionpublic static IAST rowReduced2RulesList(org.apache.commons.math4.linear.FieldMatrix matrix, IAST variableList, IAST resultList)
(augmented-)matrix
and append the result as rules for the given variableList
.matrix
- a (augmented-)matrixvariableList
- list of variable symbolsresultList
- a list to which the rules should be appended