Evaluation of Model Component Names in Expressions

SimBiology model components include quantities and expressions. You can refer to model quantities (compartments, species, and parameters) by their names in an expression, such as a reaction or an assignment equation. Follow these guidelines when you name model components or referencing their names in expressions. When evaluating a name that matches different quantities, SimBiology resolves it by following precedence rules.

Guidelines for Naming Model Components

  • Model and parameter names cannot contain brackets [ ] and cannot be empty, the word time, or all whitespace.

  • Compartment and species names cannot contain the characters ->, <->, [ or ] and cannot be empty, the word null, or the word time. However, a name can contain the words null and time within the name, such as nullDrug.

  • Reaction, event, and rule names cannot contain brackets [ ] and cannot be the word time.

Guidelines for Referencing Names in Expressions

  • If the quantity name is not a valid MATLAB® variable name, you must enclose the name in brackets when referring to it in an expression. For example, if the name of a species is DNA polymerase+, write [DNA polymerase+].

  • If you have multiple species with the same name in different compartments, you must qualify the name by referring to the name of the compartment that contains the species. For example, the qualified name nucleus.[DNA polymerase+] refers to the DNA polymerase+ species that resides in the nucleus compartment.

Precedence Rules for Evaluating Quantity Names

If a name referenced in an expression matches multiple quantities, SimBiology evaluates the expression using precedence rules. The rules depend on whether the name is referenced in a reaction or other expressions that are not reactions.

For Reactions

When a reaction refers to a name that matches different quantities, SimBiology evaluates the name as the first quantity with a matching name in this order: species, parameter scoped to the reaction, compartment, or parameter scoped to the model.

For Other Expressions

There are different types of expressions that are not reactions, namely rules and events. Rules include initial and repeated assignment equations, algebraic equations, and differential rate equations. An event contains expressions that represent an event trigger and one or more event functions to model discrete transitions in the values of quantities or expressions in the model.

When a nonreaction expression refers to a name that matches different quantities, SimBiology evaluates the name as the first quantity with a matching name in this order: species, compartment, or parameter scoped to the model.

See Also

Related Topics