SimBiology® lets you find species, parameters, and compartments that are not used in a model. You can also query how a particular quantity is used by other expressions such as a parameter being used as a reaction rate constant or species being used in an event.
From the command line, use the findUnusedComponents
function to look for unused model components and
the findUsages
function to see how a
component is used in expressions. If you are using the SimBiology Model Builder app, in the
Browser pane, expand Model Assessment
Tools. Then click Unused to see a list of unused
quantities. To look for usages of a quantity, click the quantity block in the diagram or
in the browser table. Then in the Property Editor pane, look at the
Usages section.
A species is used when it is referenced in any of the following properties of other components:
The Reaction
or ReactionRate
property of a
Reaction object
,
The ParameterVariableNames
or
SpeciesVariableNames
property of a KineticLaw object
,
The Rule
property of a
Rule object
,
The Trigger
or EventFcns
property of an
Event object
,
The Expression
property of an observable
object, and
The TargetName
property of a
ScheduleDose object
or
RepeatDose object
.
A parameter is used when it is referenced in any of the following properties of other components:
The ReactionRate
property of a
Reaction object
,
The ParameterVariableNames
property of a KineticLaw object
,
The Rule
property of a
Rule object
,
The Trigger
or EventFcns
property of an
Event object
,
The Expression
property of an observable
object,
The Content
property of a
Variant object
, and
The DurationParameterName
or LagParameterName
property of a ScheduleDose object
or
RepeatDose object
.
The Amount
, Rate
, Interval
, StartTime
, or RepeatCount
property of a
RepeatDose object
.
A compartment is used when it is referenced in any of the following properties of other components:
The Parent
property of a
Species object
,
The Owner
property of a
Compartment object
,
The ReactionRate
property of a
Reaction object
,
The ParameterVariableNames
property of a KineticLaw object
,
The Rule
property of a
Rule object
,
The Trigger
or EventFcns
property of an
Event object
,
The Expression
property of an observable
object, and
The Content
property of a
Variant object
.
An observable object is used when it is referenced in the
Expression
property of another observable.
A unit or unit prefix is used when it is referenced in any of the following properties of other components:
The Composition
property of all
units in the BuiltInLibrary
and
UserDefinedLibrary
,
The Units
property of a species, compartment, parameter, or observable object in the
specified models,
The TimeUnits
property of all
specified doses,
The AmountUnits
property of all
specified doses, and
The RateUnits
property of all
specified doses.
An abstract kinetic law object aklObj can only be used by a
Reaction object
robj. It is used when:
The KineticLaw
property of the
reaction object is not empty, and
robj.KineticLaw.KineticLawName
matches the name of the
abstract kinetic law aklObj.Name
.
findUnusedComponents
| findUsages(AbstractKineticLaw)
| findUsages(observable)
| findUsages(species,parameter,compartment)
| findUsages(unit,unitprefix)