org.sbml.jsbml.util.compilers
public class FindUnitsCompiler extends java.lang.Object implements ASTNodeCompiler
ASTNodeCompiler
is basically empty, only methods related to
'cn' elements are implementedModifier and Type | Field and Description |
---|---|
private ASTNodeValue |
dummyValue |
private boolean |
isUnitsDefined |
Constructor and Description |
---|
FindUnitsCompiler() |
Modifier and Type | Method and Description |
---|---|
ASTNodeValue |
abs(ASTNode value)
The absolute value represented by the given
ASTNode . |
ASTNodeValue |
and(java.util.List<ASTNode> values) |
ASTNodeValue |
arccos(ASTNode value) |
ASTNodeValue |
arccosh(ASTNode value) |
ASTNodeValue |
arccot(ASTNode value) |
ASTNodeValue |
arccoth(ASTNode value) |
ASTNodeValue |
arccsc(ASTNode value) |
ASTNodeValue |
arccsch(ASTNode value) |
ASTNodeValue |
arcsec(ASTNode value) |
ASTNodeValue |
arcsech(ASTNode value) |
ASTNodeValue |
arcsin(ASTNode value) |
ASTNodeValue |
arcsinh(ASTNode value) |
ASTNodeValue |
arctan(ASTNode value) |
ASTNodeValue |
arctanh(ASTNode value) |
ASTNodeValue |
ceiling(ASTNode value) |
ASTNodeValue |
compile(CallableSBase variable) |
ASTNodeValue |
compile(Compartment c) |
ASTNodeValue |
compile(double mantissa,
int exponent,
java.lang.String units)
Creates an
ASTNodeValue that represents a real number in
scientific notation, i.e., mantissa * 10^exponent, and the given units. |
ASTNodeValue |
compile(double real,
java.lang.String units) |
ASTNodeValue |
compile(int integer,
java.lang.String units) |
ASTNodeValue |
compile(java.lang.String name)
A compiler will also have to deal with a name.
|
ASTNodeValue |
cos(ASTNode value) |
ASTNodeValue |
cosh(ASTNode value) |
ASTNodeValue |
cot(ASTNode value) |
ASTNodeValue |
coth(ASTNode value) |
ASTNodeValue |
csc(ASTNode value) |
ASTNodeValue |
csch(ASTNode value) |
ASTNodeValue |
delay(java.lang.String delayName,
ASTNode x,
ASTNode delay,
java.lang.String timeUnits)
Evaluates delay functions.
|
ASTNodeValue |
eq(ASTNode left,
ASTNode right)
Equal.
|
ASTNodeValue |
exp(ASTNode value) |
ASTNodeValue |
factorial(ASTNode value) |
ASTNodeValue |
floor(ASTNode value) |
ASTNodeValue |
frac(ASTNode numerator,
ASTNode denominator)
Fraction of two
ASTNode s |
ASTNodeValue |
frac(int numerator,
int denominator)
A fraction of two int values.
|
ASTNodeValue |
function(FunctionDefinition functionDefinition,
java.util.List<ASTNode> args) |
ASTNodeValue |
function(java.lang.String functionDefinitionName,
java.util.List<ASTNode> args) |
ASTNodeValue |
geq(ASTNode left,
ASTNode right)
Greater equal.
|
ASTNodeValue |
getConstantAvogadro(java.lang.String name)
Creates an
ASTNodeValue that represent's Avogadro's number. |
ASTNodeValue |
getConstantE() |
ASTNodeValue |
getConstantFalse() |
ASTNodeValue |
getConstantPi() |
ASTNodeValue |
getConstantTrue() |
ASTNodeValue |
getNegativeInfinity() |
ASTNodeValue |
getPositiveInfinity() |
ASTNodeValue |
gt(ASTNode left,
ASTNode right)
Greater than.
|
boolean |
isUnitsDefined() |
ASTNodeValue |
lambda(java.util.List<ASTNode> values)
The body of a
FunctionDefinition . |
ASTNodeValue |
leq(ASTNode left,
ASTNode right)
Less equal.
|
ASTNodeValue |
ln(ASTNode value)
Natural logarithm.
|
ASTNodeValue |
log(ASTNode value)
Logarithm of the given value to base 10.
|
ASTNodeValue |
log(ASTNode base,
ASTNode value)
Logarithm of the given value to the given base.
|
ASTNodeValue |
lt(ASTNode left,
ASTNode right)
Less than.
|
ASTNodeValue |
minus(java.util.List<ASTNode> values)
Subtraction.
|
ASTNodeValue |
neq(ASTNode left,
ASTNode right)
Not equal.
|
ASTNodeValue |
not(ASTNode value) |
ASTNodeValue |
or(java.util.List<ASTNode> values) |
ASTNodeValue |
piecewise(java.util.List<ASTNode> values) |
ASTNodeValue |
plus(java.util.List<ASTNode> values) |
ASTNodeValue |
pow(ASTNode base,
ASTNode exponent) |
void |
reset() |
ASTNodeValue |
root(ASTNode rootExponent,
ASTNode radiant) |
ASTNodeValue |
root(double rootExponent,
ASTNode radiant) |
ASTNodeValue |
sec(ASTNode value) |
ASTNodeValue |
sech(ASTNode value) |
ASTNodeValue |
selector(java.util.List<ASTNode> value) |
ASTNodeValue |
sin(ASTNode value) |
ASTNodeValue |
sinh(ASTNode value) |
ASTNodeValue |
sqrt(ASTNode radiant)
Square root.
|
ASTNodeValue |
symbolTime(java.lang.String time)
The simulation time.
|
ASTNodeValue |
tan(ASTNode value) |
ASTNodeValue |
tanh(ASTNode value) |
ASTNodeValue |
times(java.util.List<ASTNode> values)
Product of all given
ASTNode s. |
ASTNodeValue |
uMinus(ASTNode value)
Unary minus, i.e., negation of the given
ASTNode . |
ASTNodeValue |
unknownValue()
Dealing with a malformed
ASTNode . |
ASTNodeValue |
vector(java.util.List<ASTNode> nodes)
Dealing with a vector.
|
ASTNodeValue |
xor(java.util.List<ASTNode> values)
Exclusive or.
|
private boolean isUnitsDefined
private final ASTNodeValue dummyValue
public boolean isUnitsDefined()
public void reset()
public ASTNodeValue abs(ASTNode value) throws SBMLException
ASTNodeCompiler
ASTNode
.abs
in interface ASTNodeCompiler
value
- Must be interpretable as a Number
.SBMLException
public ASTNodeValue and(java.util.List<ASTNode> values) throws SBMLException
and
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arccos(ASTNode value) throws SBMLException
arccos
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arccosh(ASTNode value) throws SBMLException
arccosh
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arccot(ASTNode value) throws SBMLException
arccot
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arccoth(ASTNode value) throws SBMLException
arccoth
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arccsc(ASTNode value) throws SBMLException
arccsc
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arccsch(ASTNode value) throws SBMLException
arccsch
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arcsec(ASTNode value) throws SBMLException
arcsec
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arcsech(ASTNode value) throws SBMLException
arcsech
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arcsin(ASTNode value) throws SBMLException
arcsin
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arcsinh(ASTNode value) throws SBMLException
arcsinh
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arctan(ASTNode value) throws SBMLException
arctan
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue arctanh(ASTNode value) throws SBMLException
arctanh
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue ceiling(ASTNode value) throws SBMLException
ceiling
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue compile(Compartment c)
compile
in interface ASTNodeCompiler
public ASTNodeValue compile(double mantissa, int exponent, java.lang.String units)
ASTNodeCompiler
ASTNodeValue
that represents a real number in
scientific notation, i.e., mantissa * 10^exponent, and the given units.compile
in interface ASTNodeCompiler
mantissa
- The number to be multiplied with ten to the power of the given
exponent.exponent
- The exponent for the multiplier ten.units
- The identifier of the units object associated with the number
represented by this element. Can be null if no units have been
defined.public ASTNodeValue compile(double real, java.lang.String units)
compile
in interface ASTNodeCompiler
units
- A String representing the Unit
of the given number.
This can be the identifier of a UnitDefinition
in the
model or a literal in Unit.Kind
. Can be null if no units
have been defined.public ASTNodeValue compile(int integer, java.lang.String units)
compile
in interface ASTNodeCompiler
units
- A String representing the Unit
of the given number.
This can be the identifier of a UnitDefinition
in the
model or a literal in Unit.Kind
. Can be null if no units
have been defined.public ASTNodeValue compile(CallableSBase variable) throws SBMLException
compile
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue compile(java.lang.String name)
ASTNodeCompiler
Species
in the
system. In case of numerical computation, the ASTNodeCompiler
must create an ASTNodeValue
representing the current value of
this Species
.compile
in interface ASTNodeCompiler
public ASTNodeValue cos(ASTNode value) throws SBMLException
cos
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue cosh(ASTNode value) throws SBMLException
cosh
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue cot(ASTNode value) throws SBMLException
cot
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue coth(ASTNode value) throws SBMLException
coth
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue csc(ASTNode value) throws SBMLException
csc
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue csch(ASTNode value) throws SBMLException
csch
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue delay(java.lang.String delayName, ASTNode x, ASTNode delay, java.lang.String timeUnits) throws SBMLException
ASTNodeCompiler
delay
in interface ASTNodeCompiler
delayName
- the name of this delay function.delay
- an expression of a positive duration time (the amoutn of
delay)timeUnits
- the units for the delay.SBMLException
public ASTNodeValue eq(ASTNode left, ASTNode right) throws SBMLException
ASTNodeCompiler
eq
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue exp(ASTNode value) throws SBMLException
exp
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue factorial(ASTNode value) throws SBMLException
factorial
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue floor(ASTNode value) throws SBMLException
floor
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue frac(ASTNode numerator, ASTNode denominator) throws SBMLException
ASTNodeCompiler
ASTNode
sfrac
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue frac(int numerator, int denominator) throws SBMLException
ASTNodeCompiler
frac
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue function(FunctionDefinition functionDefinition, java.util.List<ASTNode> args) throws SBMLException
function
in interface ASTNodeCompiler
args
- Values to be inserted into the parameter list of the
function.SBMLException
public ASTNodeValue function(java.lang.String functionDefinitionName, java.util.List<ASTNode> args) throws SBMLException
function
in interface ASTNodeCompiler
args
- Values to be inserted into the parameter list of the
function.SBMLException
public ASTNodeValue geq(ASTNode left, ASTNode right) throws SBMLException
ASTNodeCompiler
geq
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue getConstantAvogadro(java.lang.String name)
ASTNodeCompiler
ASTNodeValue
that represent's Avogadro's number.
Optionally, the compiler may associate the given name with this number.getConstantAvogadro
in interface ASTNodeCompiler
name
- An optional name for Avogadro's number.public ASTNodeValue getConstantE()
getConstantE
in interface ASTNodeCompiler
public ASTNodeValue getConstantFalse()
getConstantFalse
in interface ASTNodeCompiler
public ASTNodeValue getConstantPi()
getConstantPi
in interface ASTNodeCompiler
public ASTNodeValue getConstantTrue()
getConstantTrue
in interface ASTNodeCompiler
public ASTNodeValue getNegativeInfinity() throws SBMLException
getNegativeInfinity
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue getPositiveInfinity()
getPositiveInfinity
in interface ASTNodeCompiler
public ASTNodeValue gt(ASTNode left, ASTNode right) throws SBMLException
ASTNodeCompiler
gt
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue lambda(java.util.List<ASTNode> values) throws SBMLException
ASTNodeCompiler
FunctionDefinition
.lambda
in interface ASTNodeCompiler
values
- Place holders for arguments.SBMLException
public ASTNodeValue leq(ASTNode left, ASTNode right) throws SBMLException
ASTNodeCompiler
leq
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue ln(ASTNode value) throws SBMLException
ASTNodeCompiler
ln
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue log(ASTNode value) throws SBMLException
ASTNodeCompiler
log
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue log(ASTNode base, ASTNode value) throws SBMLException
ASTNodeCompiler
log
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue lt(ASTNode left, ASTNode right) throws SBMLException
ASTNodeCompiler
lt
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue minus(java.util.List<ASTNode> values) throws SBMLException
ASTNodeCompiler
minus
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue neq(ASTNode left, ASTNode right) throws SBMLException
ASTNodeCompiler
neq
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue not(ASTNode value) throws SBMLException
not
in interface ASTNodeCompiler
value
- This value must be interpretable as a Boolean
.SBMLException
public ASTNodeValue or(java.util.List<ASTNode> values) throws SBMLException
or
in interface ASTNodeCompiler
values
- These values must be interpretable as a Boolean
.SBMLException
public ASTNodeValue piecewise(java.util.List<ASTNode> values) throws SBMLException
piecewise
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue plus(java.util.List<ASTNode> values) throws SBMLException
plus
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue pow(ASTNode base, ASTNode exponent) throws SBMLException
pow
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue root(ASTNode rootExponent, ASTNode radiant) throws SBMLException
root
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue root(double rootExponent, ASTNode radiant) throws SBMLException
root
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue sec(ASTNode value) throws SBMLException
sec
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue sech(ASTNode value) throws SBMLException
sech
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue sin(ASTNode value) throws SBMLException
sin
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue sinh(ASTNode value) throws SBMLException
sinh
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue sqrt(ASTNode radiant) throws SBMLException
ASTNodeCompiler
sqrt
in interface ASTNodeCompiler
radiant
- This value must be interpretable as a Number
.SBMLException
public ASTNodeValue symbolTime(java.lang.String time)
ASTNodeCompiler
symbolTime
in interface ASTNodeCompiler
time
- The name of the time symbol.ASTNodeValue
that represents the current time.public ASTNodeValue tan(ASTNode value) throws SBMLException
tan
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue tanh(ASTNode value) throws SBMLException
tanh
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue times(java.util.List<ASTNode> values) throws SBMLException
ASTNodeCompiler
ASTNode
s.times
in interface ASTNodeCompiler
values
- These values must be interpretable to Number
.SBMLException
public ASTNodeValue uMinus(ASTNode value) throws SBMLException
ASTNodeCompiler
ASTNode
.uMinus
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue unknownValue() throws SBMLException
ASTNodeCompiler
ASTNode
.unknownValue
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue xor(java.util.List<ASTNode> values) throws SBMLException
ASTNodeCompiler
xor
in interface ASTNodeCompiler
values
- It must be possible to evaluate the given values to
Boolean
.SBMLException
public ASTNodeValue selector(java.util.List<ASTNode> value) throws SBMLException
selector
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue vector(java.util.List<ASTNode> nodes) throws SBMLException
ASTNodeCompiler
vector
in interface ASTNodeCompiler
SBMLException