org.sbml.jsbml.util.compilers
public class MathMLCompiler extends java.lang.Object implements ASTNodeCompiler
ASTNode
can be transformed into a MathML
string.Modifier and Type | Field and Description |
---|---|
private org.w3c.dom.Document |
document
XML document for the output.
|
private org.w3c.dom.Element |
lastElementCreated
The last top
Element that has been created in the previous step. |
private int |
level
The SBML level to be used in this class.
|
Constructor and Description |
---|
MathMLCompiler() |
MathMLCompiler(ASTNode ast) |
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) |
private ASTNodeValue |
createApplyNode(org.w3c.dom.Node tag,
ASTNodeValue... childNodes) |
private ASTNodeValue |
createApplyNode(org.w3c.dom.Node tag,
java.util.List<ASTNode> childNodes)
Creates an apply
Node with the given tag Node as its
child and ASTNodeValue s on the same level as the tag Node
. |
private ASTNodeValue |
createApplyNode(java.lang.String tagName,
ASTNode... childNodes) |
private ASTNodeValue |
createApplyNode(java.lang.String tagName,
ASTNodeValue... childNodes) |
private ASTNodeValue |
createApplyNode(java.lang.String tagName,
java.util.List<ASTNode> childNodes)
Creates a
Node with the tag "apply" and adds the given
Node as its child. |
private ASTNodeValue |
createCiElement(java.lang.String name) |
private org.w3c.dom.Element |
createCnElement(double mantissa,
int exponent,
java.lang.String units) |
private org.w3c.dom.Element |
createCnElement(java.lang.Number value,
java.lang.String units) |
private ASTNodeValue |
createConstant(java.lang.String tagName)
Creates an
ASTNodeValue with the single node as defined by the
tagName. |
private org.w3c.dom.Element |
createCSymbol(java.lang.String name,
java.lang.String definitionURI) |
ASTNodeValue |
csc(ASTNode value) |
ASTNodeValue |
csch(ASTNode value) |
ASTNodeValue |
delay(java.lang.String delayName,
ASTNode x,
ASTNode delay,
java.lang.String timeUnit)
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() |
org.w3c.dom.Document |
getDocument() |
int |
getLevel() |
ASTNodeValue |
getNegativeInfinity() |
ASTNodeValue |
getPositiveInfinity() |
ASTNodeValue |
gt(ASTNode left,
ASTNode right)
Greater than.
|
private void |
init()
Re-initializes the
Document object belonging to this class. |
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()
Allows to re-use this object to compile another
ASTNode . |
ASTNodeValue |
root(ASTNode rootExponent,
ASTNode radiant) |
private ASTNodeValue |
root(ASTNodeValue rootExponent,
ASTNode radiant) |
ASTNodeValue |
root(double rootExponent,
ASTNode radiant) |
ASTNodeValue |
sec(ASTNode value) |
ASTNodeValue |
sech(ASTNode value) |
ASTNodeValue |
selector(java.util.List<ASTNode> nodes) |
private void |
setLevel(int level) |
ASTNodeValue |
sin(ASTNode value) |
ASTNodeValue |
sinh(ASTNode value) |
ASTNodeValue |
sqrt(ASTNode value)
Square root.
|
ASTNodeValue |
symbolTime(java.lang.String time)
The simulation time.
|
ASTNodeValue |
tan(ASTNode value) |
ASTNodeValue |
tanh(ASTNode value) |
private ASTNodeValue |
times(ASTNodeValue... values)
Convenient method to perform internal changes.
|
ASTNodeValue |
times(java.util.List<ASTNode> values)
Product of all given
ASTNode s. |
java.lang.String |
toMathML(boolean omitXMLDeclaration,
boolean indenting,
int indent) |
ASTNodeValue |
uMinus(ASTNode value)
Unary minus, i.e., negation of the given
ASTNode . |
private ASTNodeValue |
uMinus(ASTNodeValue value) |
ASTNodeValue |
unknownValue()
Dealing with a malformed
ASTNode . |
ASTNodeValue |
vector(java.util.List<ASTNode> nodes)
Dealing with a vector.
|
private java.lang.String |
writeName(java.lang.Object name)
Converts the given
Object into a String . |
ASTNodeValue |
xor(java.util.List<ASTNode> values)
Exclusive or.
|
private org.w3c.dom.Document document
private org.w3c.dom.Element lastElementCreated
Element
that has been created in the previous step.private int level
public MathMLCompiler() throws javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException
public MathMLCompiler(ASTNode ast) throws javax.xml.stream.XMLStreamException, SBMLException
ast
- javax.xml.stream.XMLStreamException
SBMLException
public ASTNodeValue abs(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
ASTNode
.abs
in interface ASTNodeCompiler
value
- Must be interpretable as a Number
.SBMLException
org.w3c.dom.DOMException
public ASTNodeValue and(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
and
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arccos(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arccos
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arccosh(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arccosh
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arccot(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arccot
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arccoth(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arccoth
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arccsc(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arccsc
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arccsch(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arccsch
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arcsec(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arcsec
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arcsech(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arcsech
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arcsin(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arcsin
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arcsinh(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arcsinh
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arctan(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arctan
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue arctanh(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
arctanh
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue ceiling(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
ceiling
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
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)
compile
in interface ASTNodeCompiler
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 org.w3c.dom.DOMException, SBMLException
cos
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue cosh(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
cosh
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue cot(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
cot
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue coth(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
coth
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
private ASTNodeValue createApplyNode(org.w3c.dom.Node tag, ASTNodeValue... childNodes) throws org.w3c.dom.DOMException, SBMLException
tag
- childNodes
- org.w3c.dom.DOMException
SBMLException
private ASTNodeValue createApplyNode(org.w3c.dom.Node tag, java.util.List<ASTNode> childNodes) throws org.w3c.dom.DOMException, SBMLException
Node
with the given tag Node
as its
child and ASTNodeValue
s on the same level as the tag Node
.tag
- childNodes
- SBMLException
org.w3c.dom.DOMException
private ASTNodeValue createApplyNode(java.lang.String tagName, ASTNode... childNodes) throws org.w3c.dom.DOMException, SBMLException
tagName
- childNodes
- org.w3c.dom.DOMException
SBMLException
private ASTNodeValue createApplyNode(java.lang.String tagName, ASTNodeValue... childNodes) throws org.w3c.dom.DOMException, SBMLException
tagName
- childNodes
- org.w3c.dom.DOMException
SBMLException
private ASTNodeValue createApplyNode(java.lang.String tagName, java.util.List<ASTNode> childNodes) throws org.w3c.dom.DOMException, SBMLException
Node
with the tag "apply" and adds the given
Node
as its child. Then it creates a new ASTNodeValue
that wraps the apply Node
.tagName
- The name of the node to be created, e.g., "abs" or "and".childNodes
- at least one child should be passed to this method.SBMLException
org.w3c.dom.DOMException
private ASTNodeValue createCiElement(java.lang.String name)
name
- private org.w3c.dom.Element createCnElement(double mantissa, int exponent, java.lang.String units)
mantissa
- exponent
- units
- Can be null
.private org.w3c.dom.Element createCnElement(java.lang.Number value, java.lang.String units)
value
- units
- Can be null
.private ASTNodeValue createConstant(java.lang.String tagName)
ASTNodeValue
with the single node as defined by the
tagName.tagName
- private org.w3c.dom.Element createCSymbol(java.lang.String name, java.lang.String definitionURI)
name
- definitionURI
- public ASTNodeValue csc(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
csc
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue csch(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
csch
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue delay(java.lang.String delayName, ASTNode x, ASTNode delay, java.lang.String timeUnit) throws org.w3c.dom.DOMException, 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)timeUnit
- the units for the delay.SBMLException
org.w3c.dom.DOMException
public ASTNodeValue eq(ASTNode left, ASTNode right) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
eq
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue exp(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
exp
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue factorial(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
factorial
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue floor(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
floor
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue frac(ASTNode numerator, ASTNode denominator) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
ASTNode
sfrac
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue frac(int numerator, int denominator) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
frac
in interface ASTNodeCompiler
org.w3c.dom.DOMException
SBMLException
public ASTNodeValue function(FunctionDefinition functionDefinition, java.util.List<ASTNode> args) throws org.w3c.dom.DOMException, SBMLException
function
in interface ASTNodeCompiler
args
- Values to be inserted into the parameter list of the
function.SBMLException
org.w3c.dom.DOMException
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 org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
geq
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
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 org.w3c.dom.Document getDocument() throws SBMLException
SBMLException
public int getLevel()
public ASTNodeValue getNegativeInfinity() throws org.w3c.dom.DOMException, SBMLException
getNegativeInfinity
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue getPositiveInfinity()
getPositiveInfinity
in interface ASTNodeCompiler
public ASTNodeValue gt(ASTNode left, ASTNode right) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
gt
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
private void init() throws javax.xml.stream.XMLStreamException
Document
object belonging to this class. Only
in this way a new ASTNode
tree can be compiled. To this end, also
the level attribute is reset (because maybe next time we want to compile
some ASTNode
with from a different source.javax.xml.stream.XMLStreamException
public ASTNodeValue lambda(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
FunctionDefinition
.lambda
in interface ASTNodeCompiler
values
- Place holders for arguments.SBMLException
org.w3c.dom.DOMException
public ASTNodeValue leq(ASTNode left, ASTNode right) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
leq
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue ln(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
ln
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue log(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
log
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue log(ASTNode base, ASTNode value) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
log
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue lt(ASTNode left, ASTNode right) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
lt
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue minus(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
minus
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue neq(ASTNode left, ASTNode right) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
neq
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue not(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
not
in interface ASTNodeCompiler
value
- This value must be interpretable as a Boolean
.SBMLException
org.w3c.dom.DOMException
public ASTNodeValue or(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
or
in interface ASTNodeCompiler
values
- These values must be interpretable as a Boolean
.SBMLException
org.w3c.dom.DOMException
public ASTNodeValue piecewise(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
piecewise
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue plus(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
plus
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue pow(ASTNode base, ASTNode exponent) throws org.w3c.dom.DOMException, SBMLException
pow
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public void reset() throws javax.xml.stream.XMLStreamException
ASTNode
. Without
reseting, this compiler can only be used one time. Otherwise it cannot be
guaranteed that the results will be correct.javax.xml.stream.XMLStreamException
public ASTNodeValue root(ASTNode rootExponent, ASTNode radiant) throws org.w3c.dom.DOMException, SBMLException
root
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
private ASTNodeValue root(ASTNodeValue rootExponent, ASTNode radiant) throws org.w3c.dom.DOMException, SBMLException
rootExponent
- radiant
- org.w3c.dom.DOMException
SBMLException
public ASTNodeValue root(double rootExponent, ASTNode radiant) throws org.w3c.dom.DOMException, SBMLException
root
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue sec(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
sec
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue sech(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
sech
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
private void setLevel(int level)
level
- the level to setpublic ASTNodeValue sin(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
sin
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue sinh(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
sinh
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue sqrt(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
sqrt
in interface ASTNodeCompiler
value
- This value must be interpretable as a Number
.SBMLException
org.w3c.dom.DOMException
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 org.w3c.dom.DOMException, SBMLException
tan
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
public ASTNodeValue tanh(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
tanh
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
private ASTNodeValue times(ASTNodeValue... values) throws org.w3c.dom.DOMException, SBMLException
values
- org.w3c.dom.DOMException
SBMLException
public ASTNodeValue times(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
ASTNode
s.times
in interface ASTNodeCompiler
values
- These values must be interpretable to Number
.SBMLException
org.w3c.dom.DOMException
public java.lang.String toMathML(boolean omitXMLDeclaration, boolean indenting, int indent) throws java.io.IOException, SBMLException
omitXMLDeclaration
- indenting
- indent
- java.io.IOException
SBMLException
public ASTNodeValue uMinus(ASTNode value) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
ASTNode
.uMinus
in interface ASTNodeCompiler
SBMLException
org.w3c.dom.DOMException
private ASTNodeValue uMinus(ASTNodeValue value) throws org.w3c.dom.DOMException, SBMLException
value
- org.w3c.dom.DOMException
SBMLException
public ASTNodeValue unknownValue() throws SBMLException
ASTNodeCompiler
ASTNode
.unknownValue
in interface ASTNodeCompiler
SBMLException
private java.lang.String writeName(java.lang.Object name)
Object
into a String
. Then it removes
leading and tailing white spaces from the given String
and then
inserts exactly one white space at the beginning and the end of the given
String
.name
- public ASTNodeValue xor(java.util.List<ASTNode> values) throws org.w3c.dom.DOMException, SBMLException
ASTNodeCompiler
xor
in interface ASTNodeCompiler
values
- It must be possible to evaluate the given values to
Boolean
.SBMLException
org.w3c.dom.DOMException
public ASTNodeValue selector(java.util.List<ASTNode> nodes) throws SBMLException
selector
in interface ASTNodeCompiler
SBMLException
public ASTNodeValue vector(java.util.List<ASTNode> nodes) throws SBMLException
ASTNodeCompiler
vector
in interface ASTNodeCompiler
SBMLException