00001
00002
00004
00005 #include "MartielGoldbeterDictyNetwork.h"
00006
00008
00010
00011 CMartielGoldbeterDictyNetwork::CMartielGoldbeterDictyNetwork()
00012 {
00013
00014 double CFactor = 300000;
00015 double SecPerMin = 60.0;
00016
00017
00018 Chemical *R = new Chemical(chemicals.size(),1.0*CFactor,"R");
00019 chemicals.push_back(R);
00020
00021 Chemical *D = new Chemical(chemicals.size(),0.0,"D");
00022 chemicals.push_back(D);
00023
00024 Chemical *BoundR = new Chemical(chemicals.size(),0.0,"BoundR");
00025 chemicals.push_back(BoundR);
00026
00027 Chemical *BoundD = new Chemical(chemicals.size(),0.0,"BoundD");
00028 chemicals.push_back(BoundD);
00029
00030 Chemical *E = new Chemical(chemicals.size(),0.0,"E");
00031 chemicals.push_back(E);
00032
00033 Chemical *C = new Chemical(chemicals.size(),(1.0/15.0)*CFactor,"C");
00034 chemicals.push_back(C);
00035
00036 Chemical *cAMPi = new Chemical(chemicals.size(),0.0,"cAMPi");
00037 chemicals.push_back(cAMPi);
00038
00039 Chemical *cAMPe = new Chemical(chemicals.size(),0.0,"cAMPe");
00040 chemicals.push_back(cAMPe);
00041
00042
00043 RateConstant *kp1 = new RateConstant(0.036,"kp1");
00044 rateConstants.push_back(kp1);
00045
00046 RateConstant *km1 = new RateConstant(0.36,"km1");
00047 rateConstants.push_back(km1);
00048
00049 RateConstant *kp2 = new RateConstant(0.666,"kp2");
00050 rateConstants.push_back(kp2);
00051
00052 RateConstant *km2 = new RateConstant(0.00333,"km2");
00053 rateConstants.push_back(km2);
00054
00055 RateConstant *a1 = new RateConstant(1.0,"a1");
00056 rateConstants.push_back(a1);
00057
00058 RateConstant *d1 = new RateConstant(30000,"d1");
00059 rateConstants.push_back(d1);
00060
00061 RateConstant *a2 = new RateConstant(1.0,"a2");
00062 rateConstants.push_back(a2);
00063
00064 RateConstant *d2 = new RateConstant(3000,"d2");
00065 rateConstants.push_back(d2);
00066
00067 RateConstant *a3 = new RateConstant(1.0,"a3");
00068 rateConstants.push_back(a3);
00069
00070 RateConstant *d3 = new RateConstant(30000,"d3");
00071 rateConstants.push_back(d3);
00072
00073 RateConstant *k4 = new RateConstant(1.0,"k4");
00074 rateConstants.push_back(k4);
00075
00076 RateConstant *k5 = new RateConstant(10.0,"k5");
00077 rateConstants.push_back(k5);
00078
00079 RateConstant *ki = new RateConstant(1.7,"ki");
00080 rateConstants.push_back(ki);
00081
00082 RateConstant *kt = new RateConstant(0.9,"kt");
00083 rateConstants.push_back(kt);
00084
00085 RateConstant *ke = new RateConstant(5.4,"ke");
00086 rateConstants.push_back(ke);
00087
00088
00089 Reaction *FreeDesensitization = new TransformationReaction(R,D,kp1,"FreeDesensitization");
00090 reactions.push_back(FreeDesensitization);
00091
00092 Reaction *FreeResensitization = new TransformationReaction(D,R,km1,"FreeResensitization");
00093 reactions.push_back(FreeResensitization);
00094
00095 Reaction *RBindingcAMP = new HeterodimerizationReaction(R,cAMPe,BoundR,a1,"RBindingcAMP");
00096 reactions.push_back(RBindingcAMP);
00097
00098 Reaction *RUnbindingcAMP = new HeterodimerDissociationReaction(BoundR,R,cAMPe,d1,"RUnbindingcAMP");
00099 reactions.push_back(RUnbindingcAMP);
00100
00101 Reaction *DBindingcAMP = new HeterodimerizationReaction(D,cAMPe,BoundD,a2,"DBindingcAMP");
00102 reactions.push_back(DBindingcAMP);
00103
00104 Reaction *DUnbindingcAMP = new HeterodimerDissociationReaction(BoundD,D,cAMPe,d2,"DUnbindingcAMP");
00105 reactions.push_back(DUnbindingcAMP);
00106
00107 Reaction *BoundDesensitization = new TransformationReaction(BoundR,BoundD,kp2,"BoundDesensitization");
00108 reactions.push_back(BoundDesensitization);
00109
00110 Reaction *BoundResensitization = new TransformationReaction(BoundD,BoundR,km2,"BoundResensitization");
00111 reactions.push_back(BoundResensitization);
00112
00113 Reaction *ComplexFormation = new CTrimerFormation(BoundR,BoundR,C,E,a3,"ComplexFormation");
00114 reactions.push_back(ComplexFormation);
00115
00116 Reaction *ComplexDissociation = new CTrimerDissociation(E,BoundR,BoundR,C,d3,"ComplexDissociation");
00117 reactions.push_back(ComplexDissociation);
00118
00119 Reaction *ComplexcAMPProduction = new GenerationReaction(E,cAMPi,k4,"ComplexcAMPProduction");
00120 reactions.push_back(ComplexcAMPProduction);
00121
00122 Reaction *CyclasecAMPProduction = new GenerationReaction(C,cAMPi,k5,"CyclasecAMPProduction");
00123 reactions.push_back(CyclasecAMPProduction);
00124
00125 Reaction *InternalHydrolysis = new UnstableProteinDegradationReaction(cAMPi,ki,"InternalHydrolysis");
00126 reactions.push_back(InternalHydrolysis);
00127
00128 Reaction *cAMPTransport = new ChemicalTransportReaction(cAMPi,cAMPe,kt,"cAMPTransport");
00129 reactions.push_back(cAMPTransport);
00130
00131 Reaction *ExternalHydrolysis = new UnstableProteinDegradationReaction(cAMPe,ke,"ExternalHydrolysis");
00132 reactions.push_back(ExternalHydrolysis);
00133 }
00134
00135 CMartielGoldbeterDictyNetwork::~CMartielGoldbeterDictyNetwork()
00136 {
00137
00138 }