Class StrictnessPredicate
- All Implemented Interfaces:
Predicate<org.sbml.jsbml.Model>
The following restrictions are in effect if an “fbc” model object has a value of 'true'
for the attribute 'strict' on Model:
1) Each Reaction in a Model must define values for the attributes 'lowerFluxBound' and 'upperFluxBound',
with each attribute pointing to a valid Parameter object defined in the current Model.
(implemented via reactionHasValidBounds(org.sbml.jsbml.Reaction)
)
2) Each Parameter object referred to by the Reaction attributes 'lowerFluxBound' and 'upperFluxBound'
must have its 'constant' attribute set to the value 'true'
and its 'value' attribute set to a value of type double. This value may not be 'NaN'.
(implemented via reactionHasValidBounds(org.sbml.jsbml.Reaction)
)
3) SpeciesReference objects in Reaction objects must have their 'stoichiometry' attribute set to a double value
that is not 'NaN', nor '-INF', nor 'INF'.
In addition, the value of their 'constant' attribute must be set to 'true'.
(implemented via reactionSpeciesReferencesHaveValidAttributes(org.sbml.jsbml.Reaction)
)
4) InitialAssignment objects may not target the Parameter objects referenced by
the Reaction attributes 'lowerFluxBound' and 'upperFluxBound', nor any SpeciesReference objects.
(implemented via initialAssignmentDoesNotReferenceBoundParameters(org.sbml.jsbml.InitialAssignment)
and initialAssignmentDoesNotReferenceSpeciesReferences(org.sbml.jsbml.InitialAssignment)
)
5) All defined FluxObjective objects must have their coefficient attribute set
to a double value that is not 'NaN', nor '-INF', nor 'INF'.
(implemented via fluxObjectiveHasValidCoefficients(org.sbml.jsbml.ext.fbc.FluxObjective)
)
6) A Reaction 'lowerFluxBound' attribute may not point to a Parameter object that has a value of 'INF'.
(implemented via reactionHasValidBounds(org.sbml.jsbml.Reaction)
)
7) A Reaction 'upperFluxBound' attribute may not point to a Parameter object that has a value of '-INF'.
(implemented via reactionHasValidBounds(org.sbml.jsbml.Reaction)
)
8) For all Reaction objects, the value of a 'lowerFluxBound' attribute must be
less than or equal to the value of the 'upperFluxBound' attribute.
(implemented via reactionHasValidBounds(org.sbml.jsbml.Reaction)
)
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfluxObjectiveHasValidCoefficients
(org.sbml.jsbml.ext.fbc.FluxObjective fo) 5) All defined FluxObjective objects must have their coefficient attribute set to a double value that is not 'NaN', nor '-INF', nor 'INF'.boolean
initialAssignmentDoesNotReferenceBoundParameters
(org.sbml.jsbml.InitialAssignment ia) 4) InitialAssignment objects may not target the Parameter objects referenced by the Reaction attributes 'lowerFluxBound' and 'upperFluxBound', nor any SpeciesReference objects.boolean
initialAssignmentDoesNotReferenceSpeciesReferences
(org.sbml.jsbml.InitialAssignment ia) 4) InitialAssignment objects may not target the Parameter objects referenced by the Reaction attributes 'lowerFluxBound' and 'upperFluxBound', nor any SpeciesReference objects.boolean
isBoundSet
(org.sbml.jsbml.Parameter bound) boolean
reactionHasValidBounds
(org.sbml.jsbml.Reaction r) 1) Each Reaction in a Model must define values for the attributes 'lowerFluxBound' and 'upperFluxBound', with each attribute pointing to a valid Parameter object defined in the current Model.boolean
reactionSpeciesReferencesHaveValidAttributes
(org.sbml.jsbml.Reaction r) boolean
strictnessOfSpeciesReferences
(org.sbml.jsbml.ListOf<org.sbml.jsbml.SpeciesReference> listOfSpeciesReference) 3) SpeciesReference objects in Reaction objects must have their 'stoichiometry' attribute set to a double value that is not 'NaN', nor '-INF', nor 'INF'.boolean
test
(org.sbml.jsbml.Model model)
-
Constructor Details
-
StrictnessPredicate
public StrictnessPredicate()
-
-
Method Details
-
test
public boolean test(org.sbml.jsbml.Model model) -
reactionHasValidBounds
public boolean reactionHasValidBounds(org.sbml.jsbml.Reaction r) 1) Each Reaction in a Model must define values for the attributes 'lowerFluxBound' and 'upperFluxBound', with each attribute pointing to a valid Parameter object defined in the current Model. 2) Each Parameter object referred to by the Reaction attributes 'lowerFluxBound' and 'upperFluxBound' must have its 'constant' attribute set to the value 'true' and its 'value' attribute set to a value of type double. This value may not be 'NaN'. 6) A Reaction 'lowerFluxBound' attribute may not point to a Parameter object that has a value of 'INF'. 7) A Reaction 'upperFluxBound' attribute may not point to a Parameter object that has a value of '-INF'. 8) For all Reaction objects, the value of a 'lowerFluxBound' attribute must be less than or equal to the value of the 'upperFluxBound' attribute. -
isBoundSet
public boolean isBoundSet(org.sbml.jsbml.Parameter bound) -
reactionSpeciesReferencesHaveValidAttributes
public boolean reactionSpeciesReferencesHaveValidAttributes(org.sbml.jsbml.Reaction r) -
strictnessOfSpeciesReferences
public boolean strictnessOfSpeciesReferences(org.sbml.jsbml.ListOf<org.sbml.jsbml.SpeciesReference> listOfSpeciesReference) 3) SpeciesReference objects in Reaction objects must have their 'stoichiometry' attribute set to a double value that is not 'NaN', nor '-INF', nor 'INF'. In addition, the value of their 'constant' attribute must be set to 'true'. -
initialAssignmentDoesNotReferenceBoundParameters
public boolean initialAssignmentDoesNotReferenceBoundParameters(org.sbml.jsbml.InitialAssignment ia) 4) InitialAssignment objects may not target the Parameter objects referenced by the Reaction attributes 'lowerFluxBound' and 'upperFluxBound', nor any SpeciesReference objects. -
initialAssignmentDoesNotReferenceSpeciesReferences
public boolean initialAssignmentDoesNotReferenceSpeciesReferences(org.sbml.jsbml.InitialAssignment ia) 4) InitialAssignment objects may not target the Parameter objects referenced by the Reaction attributes 'lowerFluxBound' and 'upperFluxBound', nor any SpeciesReference objects. -
fluxObjectiveHasValidCoefficients
5) All defined FluxObjective objects must have their coefficient attribute set to a double value that is not 'NaN', nor '-INF', nor 'INF'.
-