Provides classes responsible for turning the ODE the user inputs into
functions that can be understood by the solver.
What the files are, in order of importance:
The parser interface takes a parsed string and associates it with a function
that can be interpreted by solvers and used in the numerical methods there.
The grammar in grammar.html is automatically turned into the parser class by
first using JJTree to parse, and then JavaCC to generate the Parser.java
class. This class can interpret the strings, and then hands them off to the
parser interface which interprets them as functions.
Otherwise Noteworthy
Function - An abstract class for defining functions
Constant - A way to deal with user defined constants
ImmutableStack -Appears not to be called
DataFunction - Deals with functions that are not ODEs (which includes constants)
ParseException -Automatically generated, but can be modified for smarter error messages
UserDefinedFunction.java - How it stores a function defined by the user and then
parsed
The following files are automatically generated, and should not be changed
manually:
ASTBooleanOperatoNode.java
ASTConstantDefinitionNode.java
ASTFirstOrderODEDefinitionNode.java
ASTFunctionDefintionNode.java
ASTFunctionNode.java
ASTIdentifierNode.java
ASTNumberNode.java
ASTOperatorNode.java
ASTPiecewiseNode.java
ASTRelationalNode.java
JJParserState.java
Node.java
ParseException.java
Parser.java
ParserConstants.java
ParserTokenManager.java
ParserTreeConstants.java
SimpleCharStream.java
SimpleNode.java
Token.java
TokenMgrError.java
grammar.jj
The following files implement built-in functions:
AbsFunction.java
AcosFunction.java
AcoshFunction.java
AsinFunction.java
AsinhFunction.java
AtanFunction.java
AtanhFunction.java
CeilFunction.java
CosFunction.java
CoshFunction.java
CotFunction.java
ExpFunction.java
FactFunction.java
FloorFunction.java
HeavisideFunction.java
LnFunction.java
LogFunction.java
MaxFunction.java
MinFunction.java
PowFunction.java
SignFunction.java
SincFunction.java
SinFunction.java
SinhFunction.java
SqpFunction.java
SqrtFunction.java
SqwFunction.java
StairFunction.java
SwpFunction.java
SwwFunction.java
TanFunction.java
TanhFunction.java
TrpFunction.java
TrwFunction.java