jmathlib.toolbox.jmathlib.matrix
Class determinant

java.lang.Object
  extended by jmathlib.core.interpreter.RootObject
      extended by jmathlib.core.functions.Function
          extended by jmathlib.core.functions.ExternalFunction
              extended by jmathlib.toolbox.jmathlib.matrix.determinant
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, ErrorCodes, TokenConstants

public class determinant
extends ExternalFunction

An external function for determining the determinant of a matrix

See Also:
Serialized Form

Field Summary
 
Fields inherited from class jmathlib.core.functions.ExternalFunction
IMAG, REAL
 
Fields inherited from class jmathlib.core.functions.Function
lastModified, name, pathAndFileName
 
Fields inherited from interface jmathlib.core.constants.ErrorCodes
ERR_BRACKET_OPEN, ERR_BRACKET_ORDER, ERR_FUNCTION_NOT_FOUND, ERR_FUNCTION_NOT_IMPLEMENTED, ERR_INSUFFICIENT_PARAMETERS, ERR_INVALID_PARAMETER, ERR_LVALUE_REQUIRED, ERR_MATRIX_SINGULAR, ERR_NOT_SQUARE_MATRIX, ERR_OPNOTSUPPORTED, ERR_TOO_MANY_PARAMETERS, ERR_USER_ERROR, ERR_VARIABLE_NOTDEFINED, OK, OK_FUNCTION_PROCESS
 
Fields inherited from interface jmathlib.core.constants.TokenConstants
ADDSUB_PRIORITY, AND_PRIORITY, ANDAND_PRIORITY, ASSIGN_PRIORITY, BRACKET_PRIORITY, COMPARE_PRIORITY, CONCAT, MATRIX, MULDIV_PRIORITY, OR_PRIORITY, OROR_PRIORITY, PARAMETER, POWER_PRIORITY, RELATION_PRIORITY, SINGLE, ttDelimiter, ttNotSet, ttOperand, ttOperator
 
Constructor Summary
determinant()
           
 
Method Summary
private  double calcDeterminant(double[][] values, int size)
          Function to actually calculate the determinant values = array of values size = the size of the matrix result = the determinant
private  double[][] constructMatrix(double[][] values, int size, int column)
          constructs a sub matrix values = the array of values size = the size of the origional matrix column = the column to remove result = the [size-1][size-1] array of values after reomoving row 1 and the specified column
 OperandToken evaluate(Token[] operands, GlobalValues globals)
          Check that the parameter is a square matrix then claculate it's determinant
 
Methods inherited from class jmathlib.core.functions.ExternalFunction
getParamCount
 
Methods inherited from class jmathlib.core.functions.Function
debugLine, equals, getLastModified, getName, getNArgIn, getNArgOut, getNoOfLeftHandArguments, getPathAndFileName, setLastModified, setName, setNoOfLeftHandArguments, setPathAndFileName, throwMathLibException
 
Methods inherited from class jmathlib.core.interpreter.RootObject
clone, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

determinant

public determinant()
Method Detail

evaluate

public OperandToken evaluate(Token[] operands,
                             GlobalValues globals)
Check that the parameter is a square matrix then claculate it's determinant

Specified by:
evaluate in class Function
Parameters:
operands - - an array of the functions paramaters
globals - TODO
Returns:
the result as an OperandToken

calcDeterminant

private double calcDeterminant(double[][] values,
                               int size)
Function to actually calculate the determinant values = array of values size = the size of the matrix result = the determinant


constructMatrix

private double[][] constructMatrix(double[][] values,
                                   int size,
                                   int column)
constructs a sub matrix values = the array of values size = the size of the origional matrix column = the column to remove result = the [size-1][size-1] array of values after reomoving row 1 and the specified column


FOOTER

BOTTOM