/*
* Vascular and perivascular nitric oxide release and transport:
* biochemical pathways of neuronal nitric oxide synthase (NOS1)
* and endothelial nitric oxide synthase (NOS3)
*
* Model Status
*
* This CellML model runs in OpenCell and COR and is known to be
* mathematically consistent with the publication it was based
* on. The units are consistent. An additional variable and equation
* has been added to allow the CellML model to reproduce Figure
* 2 of the publication. The three different graphs of this figure
* can be produced by altering the variable 'Fe3' in the 'Fe3'
* component (this variable represents the concentration of NOS-1
* in its Fe3+ bound state) to 0.3, 0.6 or 0.9 micromolar. In this
* particular version of the model it has been set to 0.6.
*
* Model Structure
*
* ABSTRACT: Nitric oxide (NO) derived from nitric oxide synthase
* (NOS) is an important paracrine effector that maintains vascular
* tone. The release of NO mediated by NOS isozymes under various
* O(2) conditions critically determines the NO bioavailability
* in tissues. Because of experimental difficulties, there has
* been no direct information on how enzymatic NO production and
* distribution change around arterioles under various oxygen conditions.
* In this study, we used computational models based on the analysis
* of biochemical pathways of enzymatic NO synthesis and the availability
* of NOS isozymes to quantify the NO production by neuronal NOS
* (NOS1) and endothelial NOS (NOS3). We compared the catalytic
* activities of NOS1 and NOS3 and their sensitivities to the concentration
* of substrate O(2). Based on the NO release rates predicted from
* kinetic models, the geometric distribution of NO sources, and
* mass balance analysis, we predicted the NO concentration profiles
* around an arteriole under various O(2) conditions. The results
* indicated that NOS1-catalyzed NO production was significantly
* more sensitive to ambient O(2) concentration than that catalyzed
* by NOS3. Also, the high sensitivity of NOS1 catalytic activity
* to O(2) was associated with significantly reduced NO production
* and therefore NO concentrations, upon hypoxia. Moreover, the
* major source determining the distribution of NO was NOS1, which
* was abundantly expressed in the nerve fibers and mast cells
* close to arterioles, rather than NOS3, which was expressed in
* the endothelium. Finally, the perivascular NO concentration
* predicted by the models under conditions of normoxia was paradoxically
* at least an order of magnitude lower than a number of experimental
* measurements, suggesting a higher abundance of NOS1 or NOS3
* and/or the existence of other enzymatic or nonenzymatic sources
* of NO in the microvasculature.
*
* model diagram
*
* [[Image file: chen_2007.png]]
*
* Schematic diagram of the mathematical model. Pathway of NO release
* and transport catalysed by neuronal nitric oxide synthase ((NOS1),
* here represented by the heme iron (Fe)). The heme ion of NOS1
* binds L-arginine (Arg), hydroxyl-L-arginine (NOHA), and oxygen
* (O2), and undergoes a series of oxygenation and reduction reactions.
*
* The original paper reference is cited below:
*
* Vascular and perivascular nitric oxide release and transport:
* biochemical pathways of neuronal nitric oxide synthase (NOS1)
* and endothelial nitric oxide synthase (NOS3), Kejing Chen and
* Aleksander S. Popel, 2007, Free Radical Biology and Medicine
* , 42, 811-822. PubMed ID: 17320763
*/
import nsrunit;
unit conversion on;
// unit micromolar predefined
unit first_order_rate_constant=1 second^(-1);
unit second_order_rate_constant=1E3 meter^3*second^(-1)*mole^(-1);
unit flux=1E-3 meter^(-3)*second^(-1)*mole^1;
math main {
realDomain time second;
time.min=0;
extern time.max;
extern time.delta;
real Fe3(time) micromolar;
when(time=time.min) Fe3=0.6;
real Arg micromolar;
Arg=100.0;
real Fe3_Arg(time) micromolar;
when(time=time.min) Fe3_Arg=0.0;
real Fe3_NO(time) micromolar;
when(time=time.min) Fe3_NO=0.0;
real Fe2_NO(time) micromolar;
when(time=time.min) Fe2_NO=0.0;
real O2 micromolar;
O2=100.0;
real k1 second_order_rate_constant;
k1=6.6;
real k_1 first_order_rate_constant;
k_1=6.6;
real k2 first_order_rate_constant;
k2=20.8;
real k13 first_order_rate_constant;
k13=39.9;
real k12 second_order_rate_constant;
k12=0.01;
real k3 first_order_rate_constant;
k3=20.8;
real Fe2(time) micromolar;
when(time=time.min) Fe2=0.0;
real Fe2_Arg(time) micromolar;
when(time=time.min) Fe2_Arg=0.0;
real k_4 first_order_rate_constant;
k_4=6.6;
real k4 second_order_rate_constant;
k4=6.6;
real Fe3_O2_Arg(time) micromolar;
when(time=time.min) Fe3_O2_Arg=0.0;
real k5 second_order_rate_constant;
k5=8.5;
real k_5 first_order_rate_constant;
k_5=215.6;
real k6 first_order_rate_constant;
k6=175.6;
real Fe3_NOHA(time) micromolar;
when(time=time.min) Fe3_NOHA=0.0;
real k7 first_order_rate_constant;
k7=20.8;
real Fe2_NOHA(time) micromolar;
when(time=time.min) Fe2_NOHA=0.0;
real NOHA(time) micromolar;
when(time=time.min) NOHA=0.0;
real Fe3_O2_NOHA(time) micromolar;
when(time=time.min) Fe3_O2_NOHA=0.0;
real k9 second_order_rate_constant;
k9=8.6;
real k_9 first_order_rate_constant;
k_9=399.2;
real k_8 first_order_rate_constant;
k_8=13.2;
real k8 second_order_rate_constant;
k8=13.2;
real k10 first_order_rate_constant;
k10=39.1;
real k11 first_order_rate_constant;
k11=20.8;
real NO(time) micromolar;
when(time=time.min) NO=0.0;
real dNOdt(time) flux;
real citrulline(time) micromolar;
when(time=time.min) citrulline=0.0;
real NO3(time) micromolar;
when(time=time.min) NO3=0.0;
//
//
Fe3:time=(k_1*Fe3_Arg+k13*Fe3_NO+k12*Fe2_NO*O2-(k1*Arg*Fe3+k2*Fe3));
//
Fe3_Arg:time=(k1*Fe3*Arg-(k_1*Fe3_Arg+k3*Fe3_Arg));
//
Fe2:time=(k2*Fe3+k_4*Fe2_Arg-k4*Fe2*Arg);
//
Fe2_Arg:time=(k3*Fe3_Arg+k_5*Fe3_O2_Arg+k4*Fe2*Arg-(k5*Fe2_Arg*O2+k_4*Fe2_Arg));
//
Fe3_O2_Arg:time=(k5*Fe2_Arg*O2-(k6*Fe3_O2_Arg+k_5*Fe3_O2_Arg));
//
Fe3_NOHA:time=(k6*Fe3_O2_Arg-k7*Fe3_NOHA);
//
Fe2_NOHA:time=(k7*Fe3_NOHA+k_9*Fe3_O2_NOHA+k8*Fe2*NOHA-(k_8*Fe2_NOHA+k9*Fe2_NOHA*O2));
//
Fe3_O2_NOHA:time=(k9*Fe2_NOHA*O2-(k10*Fe3_O2_NOHA+k_9*Fe3_O2_NOHA));
//
Fe3_NO:time=(k10*Fe3_O2_NOHA-(k13*Fe3_NO+k11*Fe3_NO));
//
Fe2_NO:time=(k11*Fe3_NO-k12*Fe2_NO*O2);
//
NO:time=(k13*Fe3_NO);
NO:time=dNOdt;
//
citrulline:time=(k10*Fe3_O2_NOHA);
//
NO3:time=(k12*Fe2_NO*O2);
//
NOHA:time=(k_8*Fe2_NOHA-k8*Fe2*NOHA);
//
}