| SimBiology® | ![]() |
kineticlawObj =
addkineticlaw(reactionObj, 'KineticLawNameValue')
kineticlawObj=
addkineticlaw(..., 'PropertyName', PropertyValue,
...)
| reactionObj | Reaction object. Enter a variable name for a reaction object. |
| KineticLawNameValue | Property to select the type of kinetic law object to create.
For built-in kinetic law, valid values are: 'Unknown', 'MassAction', 'Henri-Michaelis-Menten', 'Henri-Michaelis-Menten-Reversible', 'Hill-Kinetics', 'Iso-Uni-Uni', 'Ordered-Bi-Bi', 'Ping-Pong-Bi-Bi', 'Competitive-Inhibition', 'NonCompetitive-Inhibition', and 'UnCompetitive-Inhibition'. Find valid KineticLawNameValues by querying the SimBiology root object with the commands get(sbioroot, 'BuiltInKineticLaws'), and get(sbioroot, 'UserDefinedKineticLaws'). sbiowhos -kineticlaw lists BuiltInKineticLaws and UserDefinedKineticLaws in the SimBiology root. The root contains all BuiltInKineticLaws and all UserDefinedKineticLaws that are added using sbioaddtolibrary. |
kineticlawObj = addkineticlaw(reactionObj, 'KineticLawNameValue') creates a kinetic law object and returns the kinetic law object (kineticlawObj).
In the kinetic law object, this method assigns a name (KineticLawNameValue) to the property KineticLawName and assigns the reaction object to the property Parent. In the reaction object, this method assigns the kinetic law object to the property KineticLaw.
modelObj = sbiomodel('cell');
reactionObj = addreaction(modelObj, 'a -> b');
kineticlawObj = addkineticlaw(reactionObj, 'MassAction');
parameterObj = addparameter(kineticlawObj, 'K1_forward', 0.1);
set(kineticlawObj, ParameterVariableName, 'K1_forward');

KineticLawNameValue is any valid abstract kinetic law. See Abstract Kinetic Law for a definition of abstract kinetic laws and more information about how they are used to get the reaction rate expression.
kineticlawObj=
addkineticlaw(..., 'PropertyName', PropertyValue,
...) constructs a kinetic law object, kineticlawObj,
and configures kineticlawObj with
property value pairs. The property name/property value pairs can
be in any format supported by the function set (for
example, name-value string pairs, structures, and name-value cell
array pairs). The kineticlawObj properties are
listed in Property Summary.
You can view additional kinetic law object properties with the get command. You can modify additional kinetic law object properties with the set command. The kinetic law used to determine the ReactionRate of the Reaction can be viewed with get(reactionObj, 'KineticLaw'). Remove a SimBiology kinetic law object from a SimBiology reaction object with the delete command.
Methods for kinetic law objects
| addparameter (model, kineticlaw) | Create parameter object and add to model or kinetic law object |
| copyobj (any object) | Copy SimBiology object and its children |
| delete (any object) | Delete SimBiology object |
| display (any object) | Display summary of SimBiology object |
| get (any object) | Get object properties |
| getparameters (kineticlaw) | Get specific parameters in kinetic law object |
| getspecies (kineticlaw) | Get specific species in kinetic law object |
| set (any object) | Set object properties |
| setparameter (kineticlaw) | Specify specific parameters in kinetic law object |
| setspecies (kineticlaw) | Specify species in kinetic law object |
Properties for kinetic law objects
| Annotation | Store link to URL or file |
| Expression | Expression to determine reaction rate equation |
| KineticLawName | Name of kinetic law applied to reaction |
| Name | Specify name of object |
| Notes | HTML text describing SimBiology object |
| Parameters | Array of parameter objects |
| ParameterVariableNames | Cell array of reaction rate parameters |
| ParameterVariables | Parameters in abstract kinetic law |
| Parent | Indicate parent object |
| SpeciesVariableNames | Cell array of species used in reaction rate equation |
| SpeciesVariables | Species in abstract kinetic law |
| Tag | Specify label for SimBiology object |
| Type | Display top-level SimBiology object type |
| UserData | Specify data to associate with object |
This example uses the built-in kinetic law Henri-Michaelis-Menten.
Create a model object, and add a reaction object to the model.
modelObj = sbiomodel ('Cell');
reactionObj = addreaction (modelObj, 'Substrate -> Product');Define an abstract kinetic law for the reaction object and view the parameters to be set.
kineticlawObj = addkineticlaw(reactionObj, 'Henri-Michaelis-Menten'); get (kineticlawObj, 'Expression')
ans =
Vm*S/(Km + S)The addkineticlaw method adds an abstract kinetic law expression to the reaction object (reactionObj).
The Henri-Michaelis-Menten kinetic law has two parameters (Vm and Km) and one species (S). You need to enter values for these parameters by first creating parameter objects, and then adding the parameter objects to the kinetic law object.
Add parameter objects to a kinetic law object. For example, create a parameter object parameterObj1 named Vm_d, another paramter parameterObj2) named Km_d, and add them to a kinetic law object (kineticlawObj).
parameterObj1 = addparameter(kineticlawObj, 'Vm_d', 'Value', 6.0); parameterObj2 = addparameter(kineticlawObj, 'Km_d', 'Value', 1.25);
The addparameter method creates two parameter objects with concrete values that will be associated with the abstract kinetic law parameters.
Associate concrete kinetic law parameters with the abstract kinetic law parameters.
set(kineticlawObj,'ParameterVariableNames', {'Vm_d' 'Km_d'});
set(kineticlawObj,'SpeciesVariableNames', {'Substrate'});This method associates the concrete parameters in the property ParameterVariableNames with the abstract parameters in the property ParameterVariables using a one-to-one mapping in the order given.
Verify that the reaction rate is expressed correctly in the reaction object ReactionRate property.
get (reactionObj, 'ReactionRate')
ans =
Vm_d*Substrate/(Km_d+Substrate)Enter an initial value for the substrate and simulate.
modelObj.Species(1).InitialAmount = 8; [T, X] = sbiosimulate(modelObj); plot(T,X)

This example uses the built-in kinetic law MassAction.
Create a model object, and then add a reaction object.
modelObj = sbiomodel ('Cell');
reactionObj = addreaction (modelObj, 'a -> b');Define an abstract kinetic law for the reaction object.
kineticlawObj = addkineticlaw(reactionObj, 'MassAction');
get(kineticlawObj, 'Expression')
ans =
MassActionNotice, the property Expression for an abstract kinetic law with property Type set to MassAction does not show the parameters and species in the reaction rate.
Assign the rate constant for the reaction.
parameterObj = addparameter(kineticlawObj, 'k_forward'); set (kineticlawObj, 'ParameterVariablenames', 'k_forward'); get (reactionObj, 'ReactionRate')
ans =
k_forward*aEnter an initial value for the substrate and simulate.
modelObj.Species(1).InitialAmount = 100; [T, X] = sbiosimulate(modelObj);plot(T,X)
The value used for k_forward is the default value = 1.0.

![]() | addevent (model) | addmodel (model) | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |