예제 #1
0
def effectors_bind_anti_apoptotics():
    """
    Slightly modified from lopez_modules.embedded version to add that Bcl2 cannot be phosphorylated on S70 and have anti-apoptotic activity. (These interactions turned on in crosstalk modules).    
    Binding of Bax and Bak to Bcl2, BclxL, and Mcl1.

    Affinities of Bak for Bcl-xL and Mcl-1 are taken from Willis et al.

    Preferential affinity of Bax for Bcl-2 and Bcl-xL were taken from Zhai et
    al.  Bax:Bcl2 and Bax:Bcl-xL affinities were given order of magnitude
    estimates of 10nM.

    See comments on units for :py:func:`tBid_binds_all_anti_apoptotics`.

    Willis, S. N., Chen, L., Dewson, G., Wei, A., Naik, E., Fletcher, J. I.,
    Adams, J. M., et al. (2005). Proapoptotic Bak is sequestered by Mcl-1 and
    Bcl-xL, but not Bcl-2, until displaced by BH3-only proteins. Genes &
    Development, 19(11), 1294-1305. `doi:10.1101/gad.1304105`

    Zhai, D., Jin, C., Huang, Z., Satterthwait, A. C., & Reed, J. C. (2008).
    Differential regulation of Bax and Bak by anti-apoptotic Bcl-2 family
    proteins Bcl-B and Mcl-1. The Journal of biological chemistry, 283(15),
    9580-9586.  `doi:10.1074/jbc.M708426200`
    """

    alias_model_components()
    bind_table([[                            Bcl2(S70='U'),  BclxL(state='M'),         Mcl1],
                [Bax(active_monomer), 10e-9*N_A*V,       10e-9*N_A*V,         None],
                [Bak(active_monomer),        None,       50e-9*N_A*V,  10e-9*N_A*V]],
               kf=1e6/(N_A*V))
예제 #2
0
def erk_nuclear_initial(fra1=True, elk1=False):
    alias_model_components() 
    if elk1 == True:
        Initial(ELK1(b=None, S383='U'), ELK1_0)
    
    if fra1 == True:
        Initial(FRA1(b=None, st='U'), FRA1_0)
예제 #3
0
def rec_events_lig_EGF():
    """ Receptor events involving the ligand EGF."""
    
    alias_model_components()
    
    # Binding of EGF to undimerized ErbB1
    bind_table([[                                                                                                                           EGF(st='M')],
                [erbb(ty='1', bl=None, bd=None, b=None, st='U', loc='C'),                                                                   (par['EGF_bind_ErbB1'])],
                [erbb(ty='3', b=None, bd=None, st='U', loc='C', pi3k1=None, pi3k2=None, pi3k3=None, pi3k4=None, pi3k5=None, pi3k6=None),    None],
                [erbb(ty='4', b=None, bd=None, st='U', loc='C'),                                                                            None]],
                'bl', 'b')
                
    # Binding of EGF to dimerized ErbB1
    
    bind_complex(erbb(ty='1', bl=None, bd=1, b=None, st='U', loc='C') % erbb(bl=None, bd=1, b=None, st='U', loc='C'), 'bl', EGF(st='M', b=None), 'b', par['EGF_bind_ErbB1d'], m1=erbb(ty='1', bl=None, bd=1, b=None, st='U', loc='C'))
    
    bind_complex(erbb(ty='1', bl=None, bd=1, b=None, st='U', loc='C') % erbb(bl=ANY, bd=1, b=None, st='U', loc='C'), 'bl', EGF(st='M', b=None), 'b', par['EGF_bind_ErbB1d'], m1=erbb(ty='1', bl=None, bd=1, b=None, st='U', loc='C'))
    
    # EGF binding/unbinding from endosomal receptors
    
    Rule('EGFE_bind_ErbBE',
         erbb(ty='1', bl=None, loc='E') + EGF(st='E', b=None) <>
         erbb(ty='1', bl=1, loc='E') % EGF(st='M', b=1),
         *par['EGFE_bind_ErbBE'])
    
    # degradation of endosomal EGF
    degrade(EGF(b=None, st='E'), par['kdeg_4'])
예제 #4
0
def declare_shared_components():

    Monomer('Bax', ['c3', 'c62', 'c120', 'c122', 'c126', 'c184'],
        {'c3': ['s', 'm'],
         'c62': ['s', 'm'],
         'c120': ['s', 'm'],
         'c122': ['s', 'm'],
         'c126': ['s', 'm'],
         'c184': ['s', 'm']})

    Parameter('Bax_0', 1)
    Parameter('c3_scaling', 0.7584)
    Parameter('c62_scaling', 0.9204)
    Parameter('c120_scaling', 0.975)
    Parameter('c122_scaling', 0.952)
    Parameter('c126_scaling', 0.966)

    alias_model_components()

    Observable('Baxc3', Bax(c3='m'))
    Observable('Baxc62', Bax(c62='m'))
    Observable('Baxc120', Bax(c120='m'))
    Observable('Baxc122', Bax(c122='m'))
    Observable('Baxc126', Bax(c126='m'))
    Observable('Baxc184', Bax(c184='m'))

    Initial(Bax(**sites_initial_state), Bax_0)
예제 #5
0
def cox2_drugs_init(ibuprofen=False):

    if ibuprofen:
        Monomer('IBU', ['b']) #Ibuprofen
        Parameter('IBU_0', 180) #Micromolar
        alias_model_components()
        Initial(IBU(b=None), IBU_0)
예제 #6
0
def indirect(do_pore_transport=True):
    """Bax and Bak spontaneously form pores without activation.
       The "activator" tBid binds all of the anti-apoptotics.
    """
    alias_model_components()

    declare_initial_conditions()

    translocate_tBid_Bax_BclxL()

    # Bax and Bak spontaneously become activated
    free_Bax = Bax(bf=None, s1=None, s2=None) # Alias
    free_Bak = Bak(bf=None, s1=None, s2=None) # Alias
    equilibrate(free_Bax(state='M'), free_Bax(state='A'), transloc_rates)
    equilibrate(free_Bak(state='M'), free_Bak(state='A'), transloc_rates)

    # Anti-apoptotics bind activator tBid
    # Doug Green's "MODE 1" inhibition
    tBid_binds_all_anti_apoptotics()

    # Anti-apoptotics bind activated effectors
    # Doug Green's "MODE 2" inhibition
    effectors_bind_anti_apoptotics()

    sensitizers_bind_anti_apoptotics()

    # Bax and Bak form pores by sequential addition
    lopez_pore_formation(do_pore_transport=do_pore_transport)
예제 #7
0
파일: irvin_mod.py 프로젝트: clopezx/anrm
def declare_initial_conditions():
    """Declare initial conditions for Bcl-2 family proteins, Cyto c, and Smac.
    """
    #Parameter('Bid_0'   , 4.0e4) # Bid
    Parameter('BclxL_0' , 2.0e4) # cytosolic BclxL
    Parameter('Mcl1_0'  , 2.0e4) # Mitochondrial Mcl1
    Parameter('Bcl2_0'  , 2.0e4) # Mitochondrial Bcl2
    Parameter('Bad_0'   , 1.0e3) # Bad
    Parameter('Noxa_0'  , 1.0e3) # Noxa
    Parameter('CytoC_0' , 5.0e5) # cytochrome c
    Parameter('Smac_0'  , 1.0e5) # Smac
    Parameter('Bax_0'   , 0.8e5) # Bax
    Parameter('Bak_0'   , 0.2e5) # Bak

    alias_model_components()

    #Initial(Bid(bf=None, state='U'), Bid_0)
    Initial(Bad(bf=None, state='C'), Bad_0)
    Initial(Bax(bf=None, s1=None, s2=None, state='C'), Bax_0)
    Initial(Bak(bf=None, s1=None, s2=None, state='M'), Bak_0)
    Initial(Bcl2(bf=None), Bcl2_0)
    Initial(BclxL (bf=None, state='C'), BclxL_0)
    Initial(Mcl1(bf=None, state='M'), Mcl1_0)
    Initial(Noxa(bf=None, state='C'), Noxa_0)
    Initial(CytoC(bf=None, state='M'), CytoC_0)
    Initial(Smac(bf=None, state='M'), Smac_0)
예제 #8
0
def PI3K_monomers():
    """ Declare monomers in the PI3K arm of the pathway, namely, 
        Gab1, ERK, PI3K, Shp2, PIP2, PIP3, PTEN, Shp, AKT, PDK1 Pase9t, and Pase3
        
        A description of sites on the monomers is given below
        ======================================================
        Gab1 sites: 'atp' is a site to bind ATP
                    'grb2' is a site to bind Grb2
                    'shp2' is a site to bind Shp2
                    'erk' is a site to bind ERK
                    'pase' is a site to bind Pase9t
                    'pi3k' is a site to bind PI3K
                    'state' denotes the phoshorylation status of the species, 
                    with 'up' denoting unphosphorylated,'p' donating singly-phoshorylated and 'pp' denoting doubly phoshporylated
       'gab1' are sites on Shp2, Pase9t, and PI3K to bind Gab1 
       'pip' are sites on AKT, Shp, PTEN, PDK1 to bind PIP3
    """

    Monomer('Gab1',['atp', 'grb2', 'shp2', 'state','erk','pase', 'pi3k'], {'state':['up','p', 'pp']})
    Monomer('Shp2',['gab1'])
    Monomer('Pase_9t', ['gab1'])
    Monomer('PI3K', ['gab1', 'pip2', 'ras'])  # 'pip2' and 'ras' are sites on PI3K to bind PIP2 and RAS
    Monomer('PIP2', ['pi3k']) # 'pi3k' is a site on PIP2 to bind PI3K
    Monomer('PIP3', ['akt', 'pdk','bnd']) # 'akt' and 'pdk' are sites on PIP3 to bind AKT and PDK respectively
    Monomer('AKT', ['pip', 'pase', 'raf', 'state'], {'state':['up','p', 'pp']})
    Monomer('PDK1',['pip'])
    Monomer('Shp', ['pip'])
    Monomer('PTEN', ['pip'])
    Monomer('Pase4', ['akt']) # 'akt' is a site on Pase4 to bind AKT

    alias_model_components()

    global receptors
    receptors = [ErbB1, ErbB2, ErbB3, ErbB4]
예제 #9
0
def bind_Gab1():
    " v688-694 "
    " Gab1 binds receptor dimers via Grb2 only when (1) dimers are in plasma mem (2) Grb2 (no SOS) is directly bound to receptor "
    
    # Initial amount
    # ==============
    Parameter('Gab1_0',94868.3)     # c426
    # Rate constant
    # ==============
    Parameter('k105', 6.67e-05)         # k105
    Parameter('kd105', 0.1)              # kd105
    Parameter('k122_gab', 1.8704e-8)      # k122
    Parameter('kd122_gab', 1.0)          # kd122
    Parameter('kd123_gab', 0.177828)          # kd123

    alias_model_components()
    
    # Initial conditions
    # ==============
    Initial(Gab1(atp=None, grb2=None, shp2=None, erk=None, pase=None, pi3k=None, state='up'), Gab1_0)
    
    # Rules
    # =====
    for erb in receptors[:2]:
        Rule('Gab1_binds_Grb2_'+erb.name, Gab1(grb2=None,atp=None,shp2=None,erk=None, state='up') +
             Grb2(sos=None, erb=2,gab1=None) % erb(gs=2, comp='pm',cpp=None) <>
             Gab1(grb2=1,atp=None,state='up', erk=None, shp2=None) % Grb2(sos=None, erb=2, gab1=1) % erb(gs=2, comp='pm',cpp=None),
             k105, kd105)

    ## v30-v36, v815-v821
    ## Gab1 + ATP <-> Gab1:ATP -> Gab1~P + ATP
    catalyze(ATP(erb=None), 'gab1', Gab1(state='up',grb2=ANY, shp2=None,erk=None), 'atp', Gab1(state='p',grb2=ANY, shp2=None,erk=None),
             (k122_gab, kd122_gab, kd123_gab))
예제 #10
0
def bind_PI3K():
    " v621-v627 "
    " PI3K binds scaffolding protein Gab1~P "
    " yet to account for reactions with rc k67, kd67 "
    
    # Initial amount
    # ==============
    Parameter('PI3K_0', 3.55656e+7)    # c287
    # Rate constants
    # ==============
    Parameter('k66', 1.5e-5)   # k66  # K67 and kd67 also used for a subset of rxns, no pattern observed :(
    Parameter('kd66', 0.2)
    Parameter('k67', 5e-5)
    Parameter('kd67', 0.02)

    alias_model_components()
    
    # Initial conditions
    # ==============
    Initial(PI3K(gab1=None, pip2=None, ras=None), PI3K_0)

    # Rules
    # ======
    # This was almost a nice single rule, except a few of the species need a
    # different rate.
    for erb, other_erbs in (ErbB1, receptors), (ErbB2, receptors[1:]):
        for other_erb in other_erbs:
            rates = (k66, kd66)
            if ((erb is ErbB2 and (other_erb is ErbB2 or other_erb is ErbB3)) or
                (erb is ErbB1 and other_erb is ErbB3)):
                rates = (k67, kd67)
            Rule('_'.join((erb.name, other_erb.name, 'bind_gab1_pI3k')),
                 erb() % other_erb() % Gab1(state='p', shp2=None, erk=None, pi3k=None) + PI3K(gab1=None, ras=None, pip2=None) <>
                 erb() % other_erb() % Gab1(state='p', shp2=None, erk=None, pi3k=1) % PI3K(gab1=1, ras=None, pip2=None),
                 *rates)
예제 #11
0
def crosstalk_erbb_apoptosis_events(akt_puma=True, erk_bim=True, s6k_bad=True, akt_bad=True):
    """Crosstalk interactions between pathways downstream of ErbB signaling and apoptotic signaling."""
    
    alias_model_components()
    if akt_puma:
        Rule('FOXO_cyto_to_nucleus',
             FOXO(active='Y', loc='C', b=None) |
             FOXO(active='Y', loc='N', b=None),
             *par['FOXO_cyto_to_nucleus'])
        
        catalyze_state(AKT(S='PP', bpdk1=None), 'bpip3', FOXO(loc='C'), 'b', 'active', 'Y', 'N', par['Akt_prevent_FOXO_transport'])
        
        #This is almost certainly not the best way to handle this but it's somewhere to start
        Rule('FOXO_tf',
             FOXO(loc='N') >>
             FOXO(loc='N') + Puma(bf=None, state='C'),
             par['FOXO_tf_Puma'])
        
    if erk_bim:
        catalyze_state(ERK(st='PP', loc='C'), 'b', Bim(state='C'), 'bf', 'S69', 'U', 'P', par['Erk_phos_Bim'])
        
        degrade(Bim(state='C', bf=None, S69='P'), par['kdeg_Bim'])
        
    if s6k_bad:
        catalyze_state(S6K(T252='P', T412='P'), 'b', Bad(state='C'), 'bf', 'S75', 'U', 'P', par['S6K_phos_Bad'])
    
    if akt_bad:
        catalyze_state(AKT(S='PP', bpdk1=None), 'bpip3', Bad(state='C'), 'bf', 'S99', 'U', 'P', par['Akt_phos_Bad'])
예제 #12
0
def receptor_dimerization():
    """ ErbB receptor dimerization. 
    """
    
    # ErbB dimerization
    # ErbB1 is not required to contain a ligand in order to dimerize (3 and 4 are)
    # Rates for ErbB1 dimerization with and without ligand are different
    # Assumptions: 
    # ErbB3/ErbB3 and ErbB3/ErbB4 dimers neglected (assumed to be at very low concentration since both components likely are)
    # ErbB3 and ErbB4 have the same dimerization rate independent of ligand
    # If we ever add multiple ligand types per receptor, the rates for dimerization as defined currently will not depend on the ligand type
    # These rules only cover binding/unbinding of unphosphorylated receptors.  Binding/unbinding of phosphorylated receptors is currently in ErbB2 lateral signaling section 
    
    alias_model_components()    
    
    erbb1 = erbb(ty='1', bl=None, b=None, st='U', loc='C')
    erbb1Lig = erbb(ty='1', bl=ANY, b=None, st='U', loc='C')
    erbb2Lig = erbb(ty='2', b=None, st='U', loc='C')
    erbb3Lig = erbb(ty='3', b=None, st='U', loc='C', pi3k1=None, pi3k2=None, pi3k3=None, pi3k4=None, pi3k5=None, pi3k6=None)
    erbb4Lig = erbb(ty='4', b=None, st='U', loc='C')
    bind_table([[                          erbb1,                      erbb1Lig,                     erbb2Lig,                    erbb3Lig, erbb4Lig],
                [erbb1,                    (par['ErbB1_bind_ErbB1']),  None,                         None,                        None,     None],
                [erbb1Lig,                 (par['ErbB1_bind_ErbB1L']), (par['ErbB1L_bind_ErbB1L']),  None,                        None,     None],
                [erbb2Lig,                 (par['ErbB1_bind_ErbB2']),  (par['ErbB1L_bind_ErbB2']),   (par['ErbB2_bind_ErbB2']),   None,     None],
                [erbb3Lig,                 (par['ErbB1_bind_ErbB3']),  (par['ErbB1L_bind_ErbB3']),   (par['ErbB2_bind_ErbB3']),   None,     None],
                [erbb4Lig,                 (par['ErbB1_bind_ErbB4']),  (par['ErbB1L_bind_ErbB4']),   (par['ErbB2_bind_ErbB4']),   None,     None]],
                'bd', 'bd')
예제 #13
0
def RIP1_Hypothesis_2():
    """Deubiquitinated RIP1, released from Complex I, can bind FADD and initiate apoptosis and necrosis (the literature). Yet, there is nothing explicitely stated in the literature to distinguish deubiquitinated from unmodifed RIP1. Uniprot reports a binding reaction between RIP1 and FADD. If RIP1-unmod =! RIP1-deub (i.e. RIP1 Hypothesis 2), then a RIP1-deub-FADD binding interaction could facilitate the apoptotic/necrotic signaling that occurs downstream of TNFR1 without creating a state that is """

    Parameter('RIP1_0'  , 12044) # molecules per cell (arbitrarily assigned) 12044
    alias_model_components()
    Initial(RIP1(bDD=None, bRHIM = None, bPARP = None, state = 'unmod'), RIP1_0)   # RIP1
    # =============================
    # Complex I - RIP1 Modification
    # -----------------------------
    #   CompI + RIP1 <> CompI:RIP1 >> [active]CompI:RIP1-Ub
    #   [active]CompI:RIP1-Ub >> [active]CompI:RIP1-deub
    #   [active]CompI:RIP1-deub <> [active]CompI + RIP1-deub
    #   [active]CompI:RIP1-deub >> [active]CompI
    # -----------------------------
    
    # Complex I recruits RIP1
    bind(CompI(bDD=None, state = 'unmod'), 'bDD', RIP1(bDD=None, bRHIM = None, state='unmod'), 'bDD',[1e-6, 1e-3])
    Rule('CompI_Ub_1', CompI(bDD=ANY, state = 'unmod')%RIP1(bDD=ANY,bRHIM=None, state = 'unmod')>> CompI(bDD=ANY, state = 'mod')%RIP1(bDD=ANY,bRHIM=None, state = 'ub'), Parameter('k3', 1))
    
    # De-ubiquitination and degradation or release of RIP1 from complex I
    Rule('CompI_deUb', CompI(bDD=ANY, state='mod')%RIP1(bDD=ANY, bRHIM=None,  state='ub')>>CompI(bDD=ANY, state='mod')%RIP1(bDD=ANY, bRHIM=None,state='deub'), Parameter('k6',1e-3))
    
    Rule('RIP1_deg', CompI(bDD=ANY, state='mod')%RIP1(bDD=ANY, bRHIM=None,  state='deub') >> CompI(bDD=None, state='mod'), Parameter('k7',1))
    
    bind(CompI(bDD=None, state='mod'), 'bDD', RIP1(bDD=None, bRHIM = None,  state = 'deub'), 'bDD', [1e-10,1])
예제 #14
0
def rec_events_inh_ERL():
    """Receptor events involving the EGFR kinase inhibitor erlotinib.  Binds in the ATP binding pocket."""
    alias_model_components()
    
    #Binding of erlotinib to EGFR
    #Assumption here: erlotinib only binds to dimers and its ligand binding status doesn't matter (need to check this)
    bind(erbb(ty='1', bd=ANY, st='U', loc='C'), 'b', ERL(), 'b', par['EGFR_bind_ERL'])    
예제 #15
0
def declare_initial_conditions():
    """Declare initial conditions for Bcl-2 family proteins, Cyto c, and Smac.
        Jurkat Cell parameters were used instead of the Hela cells used in Lopez_modules.
        """
    Parameter('Bid_0'   , 12044) # Bid
    Parameter('BclxL_0' , 36132) # cytosolic BclxL (assigned since Bcl-2 in Jurkats is 36132)
    Parameter('Mcl1_0'  , 36132) # Mitochondrial Mcl1 ("")
    Parameter('Bcl2_0'  , 36132) # Mitochondrial Bcl2
    Parameter('Bad_0'   , 1.0e3) # Bad
    Parameter('Noxa_0'  , 1.0e3) # Noxa
    Parameter('CytoC_0' , 48176) # cytochrome c
    Parameter('Smac_0'  , 48176) # Smac
    Parameter('Bax_0'   , 40145) # Bax
    Parameter('Bak_0'   , 0.2e5) # Bak
    
    alias_model_components()
    
    Initial(Bid(bf=None, state='U'), Bid_0)
    Initial(Bad(bf=None, state='C'), Bad_0)
    Initial(Bax(bf=None, s1=None, s2=None, state='C'), Bax_0)
    Initial(Bak(bf=None, s1=None, s2=None, state='M'), Bak_0)
    Initial(Bcl2(bf=None), Bcl2_0)
    Initial(BclxL (bf=None, state='C'), BclxL_0)
    Initial(Mcl1(bf=None, state='M'), Mcl1_0)
    Initial(Noxa(bf=None, state='C'), Noxa_0)
    Initial(CytoC(bf=None, state='M'), CytoC_0)
    Initial(Smac(bf=None, state='M'), Smac_0)
예제 #16
0
파일: irvin_mod.py 프로젝트: clopezx/anrm
def lopez_pore_formation(do_pore_transport=True):
    """ Pore formation and transport process used by all modules.
    """
    alias_model_components()

    # Rates
    pore_max_size = 4
    pore_rates = [[2.040816e-04,  # 1.0e-6/v**2
                   1e-3]] * (pore_max_size - 1)
    pore_transport_rates = [[2.857143e-5, 1e-3, 10]] # 2e-6 / v?

    # Pore formation by effectors
    assemble_pore_sequential(Bax(bf=None, state='A'), 's1', 's2', pore_max_size, pore_rates)
    assemble_pore_sequential(Bak(bf=None, state='A'), 's1', 's2', pore_max_size, pore_rates)

    # CytoC, Smac release
    if do_pore_transport:
        pore_transport(Bax(bf=None, state='A'),'s1','s2','bf', 4, 4, CytoC(state='M'),
                      'bf', CytoC(state='C'), pore_transport_rates)
        pore_transport(Bax(bf=None, state='A'), 's1','s2','bf', 4, 4, Smac(state='M'),
                      'bf', Smac(bf=None, state='C'), pore_transport_rates)
        pore_transport(Bak(bf=None, state='A'), 's1','s2','bf', 4, 4, CytoC(state='M'),
                      'bf', CytoC(bf=None, state='C'), pore_transport_rates)
        pore_transport(Bak(bf=None, state='A'), 's1','s2','bf', 4, 4, Smac(state='M'),
                      'bf', Smac(bf=None, state='C'), pore_transport_rates)
예제 #17
0
def effectors_bind_anti_apoptotics():
    alias_model_components()
    """Binding of Bax and Bak to Bcl2, BclxL, and Mcl1.

    Affinities of Bak for Bcl-xL and Mcl-1 are taken from Willis et al.

    Preferential affinity of Bax for Bcl-2 and Bcl-xL were taken from Zhai et
    al.  Bax:Bcl2 and Bax:Bcl-xL affinities were given order of magnitude
    estimates of 10nM.

    See comments on units for :py:func:`tBid_binds_all_anti_apoptotics`.

    Willis, S. N., Chen, L., Dewson, G., Wei, A., Naik, E., Fletcher, J. I.,
    Adams, J. M., et al. (2005). Proapoptotic Bak is sequestered by Mcl-1 and
    Bcl-xL, but not Bcl-2, until displaced by BH3-only proteins. Genes &
    Development, 19(11), 1294-1305. `doi:10.1101/gad.1304105`

    Zhai, D., Jin, C., Huang, Z., Satterthwait, A. C., & Reed, J. C. (2008).
    Differential regulation of Bax and Bak by anti-apoptotic Bcl-2 family
    proteins Bcl-B and Mcl-1. The Journal of biological chemistry, 283(15),
    9580-9586.  `doi:10.1074/jbc.M708426200`
    """

    bind_table([[                            Bcl2,  BclxL(state='M'),         Mcl1],
                [Bax(state='A'), 10e-9*N_A*V,       10e-9*N_A*V,         None],
                [Bak(state='A'),        None,       50e-9*N_A*V,  10e-9*N_A*V]],
               'bf', 'bf', kf=1e6/(N_A*V))
예제 #18
0
def mapk_initial():

    # Initial conditions obtained from Schoeberl et al.
    Parameter('GAP_0', 1.2e4)
    Parameter('SHC_0', 1.01e6)
    # Parameter('SHCPase_0', 1000)
    Parameter('GRB2_0', 5.1e4)
    Parameter('SOS_0', 6.63e4)
    Parameter('RAS_0', 1.14e7)
    Parameter('RAF_0', 4e4)
    Parameter('MEK_0', 2.2e7)
    Parameter('ERK_0', 2.1e7)
    Parameter('PP1_0', 4e4)
    Parameter('PP2_0', 4e4)
    Parameter('PP3_0', 1e7)

    alias_model_components()

    Initial(GAP(bd=None, b=None), GAP_0)
    Initial(SHC(bgap=None, bgrb=None, batp=None, st='U'), SHC_0)
    Initial(GRB2(b=None, bsos=None), GRB2_0)
    Initial(SOS(bgrb=None, bras=None), SOS_0)
    Initial(RAS(bsos=None, braf=None, st='GDP'), RAS_0)
    Initial(RAF(b=None, st='U'), RAF_0)
    Initial(MEK(b=None, st='U'), MEK_0)
    Initial(ERK(b=None, st='U'), ERK_0)
    Initial(PP1(b=None), PP1_0)
    Initial(PP2(b=None), PP2_0)
    Initial(PP3(b=None), PP3_0)
예제 #19
0
def ligand_to_c8_monomers():
    """ Declares ligand, receptor, DISC, Flip, Bar and Caspase 8.

    'bf' is the site to be used for all binding reactions.

    The 'state' site denotes various localization and/or activity states of a
    Monomer, with 'C' denoting cytoplasmic localization and 'M' mitochondrial
    localization.
    """

    Monomer('L', ['bf']) # Ligand
    Monomer('R', ['bf']) # Receptor
    Monomer('DISC', ['bf']) # Death-Inducing Signaling Complex
    Monomer('flip', ['bf'])
    # Caspase 8, states: pro, Active
    Monomer('C8', ['bf', 'state'], {'state':['pro', 'A']})
    Monomer('BAR', ['bf'])

    alias_model_components()

    # == Annotations
    Annotation(L, 'http://identifiers.org/uniprot/P50591')
    Annotation(R, 'http://identifiers.org/uniprot/O14763')
    Annotation(DISC, 'http://identifiers.org/obo.go/GO:0031264')
    Annotation(flip, 'http://identifiers.org/uniprot/O15519')
    Annotation(C8, 'http://identifiers.org/uniprot/Q14790')
    Annotation(BAR, 'http://identifiers.org/uniprot/Q9NZS9')
예제 #20
0
def tsc2_gap_function():
    """GTPase Activating Protein activity of TSC2 on Rheb GTPase.
    References:
    Huang, J. & Manning, B. D. The TSC1-TSC2 complex: a molecular switchboard controlling cell growth. Biochem J 412, 179–190 (2008).
    """
    
    alias_model_components()
    # TSC2 can bind Rheb, inhibiting its GTPase activity if TSC2 is phosphorylated on S664 or S1798 (if phosphorylated on S939, S981, or T1462, TSC2 translocates from the membrane to the cytosol and can't bind Rheb at all).
    bind(TSC(S939='U', S981='U', T1462='U'), 'b', Rheb(S='GTP', bmTOR=None), 'bTSC', par['TSC2_bind_Rheb'])

    Rule('TSC2_Rheb',
         TSC(b=1, S1387='U', S664='U', S1798='U') % Rheb(S='GTP', bTSC=1, bmTOR=None) >>
         TSC(b=1, S1387='U', S664='U', S1798='U') % Rheb(S='GDP', bTSC=1, bmTOR=None),
         par['TSC2_Rheb_GTPase'])
    
    for site in ['S664', 'S1798']:
        Rule('TSC2_'+site+'_Rheb',
             TSC({'b':1, site:'P'}) % Rheb(S='GTP', bTSC=1, bmTOR=None) >>
             TSC({'b':1, site:'P'}) % Rheb(S='GDP', bTSC=1, bmTOR=None),
             par['TSC2p_Rheb_GTPase'])

    # If TSC2 is phosphorylated on S1387, its GAP activity is increased.
    Rule('TSC2_S1387_Rheb',
         TSC(b=1, S1387='P') % Rheb(S='GTP', bTSC=1, bmTOR=None) >>
         TSC(b=1, S1387='P') % Rheb(S='GDP', bTSC=1, bmTOR=None),
         par['TSC2pS1387_Rheb_GTPase'])
예제 #21
0
def momp_monomers():
    """Declare the monomers used in the Albeck MOMP modules."""

    # == Activators
    # Bid, states: Untruncated, Truncated, truncated and Mitochondrial
    Monomer('Bid', ['bf', 'state'], {'state':['U', 'T', 'M']})

    # == Effectors
    # Bax, states: Cytoplasmic, Mitochondrial, Active
    # sites 's1' and 's2' are used for pore formation
    Monomer('Bax', ['bf', 's1', 's2', 'state'], {'state':['C', 'M', 'A']})

    # == Anti-Apoptotics
    Monomer('Bcl2', ['bf'])

    # == Cytochrome C and Smac
    Monomer('CytoC', ['bf', 'state'], {'state':['M', 'C', 'A']})
    Monomer('Smac', ['bf', 'state'], {'state':['M', 'C', 'A']})

    alias_model_components()

    # == Annotations
    Annotation(Bid, 'http://identifiers.org/uniprot/P55957')
    Annotation(Bax, 'http://identifiers.org/uniprot/Q07812')
    Annotation(Bcl2, 'http://identifiers.org/uniprot/P10415')
    Annotation(CytoC, 'http://identifiers.org/uniprot/P99999')
    Annotation(Smac, 'http://identifiers.org/uniprot/Q9NR28')
예제 #22
0
def monomers():
    # Declare monomer species in the model
    # ------------------------------------
    Monomer('EGF', ['egfr'])
    Monomer('EGFR', ['egf', 'd', 'grb2'])
    Monomer('Grb2', ['egfr', 'sos'])
    Monomer('SOS', ['grb2', 'ras', 'erk', 'phos', 'state'],
            {'state': ['up', 'p']})
    Monomer('KRAS', ['raf', 'sos', 'state'], {'state': ['gdp', 'gtp']})

    # IC values
    # ---------
    Parameter('EGF_0', 1e3)
    Parameter('EGFR_0', 1e5)
    Parameter('Grb2_0', 1e5)
    Parameter('SOS_0', 1e3)
    Parameter('KRAS_0', 2e5)

    alias_model_components()

    # Initial conditions
    # ------------------
    Initial(EGF(egfr=None), EGF_0)
    Initial(EGFR(egf=None, d=None, grb2=None), EGFR_0)
    Initial(Grb2(egfr=None, sos=None), Grb2_0)
    Initial(SOS(grb2=None, ras=None, erk=None, phos=None, state='up'), SOS_0)
    Initial(KRAS(sos=None, raf=None, state='gdp'), KRAS_0)
예제 #23
0
def mek_phos_erk_2_step_generic():
    """Based on Table S4 of Markevich et al. Assuming distributive random 
    kinase mechanism.
    
    First and second order rate constants are in s^{-1} and nM^{-1}s^{-1}
    respectively.
    """
    Parameter('kf_mek', 4e-2)     # = k_1 + k_5
    Parameter('kr_mek', 1)        # = k_{-1} = k_{-3}
    Parameter('kf_mek_p', 3.2e-2) # = k_3 = k_7
    Parameter('kr_mek_p', 1)      # = k_{-5} = k_{-7}
    Parameter('kc_mek', 1e-2)     # = k_2 = k_6
    Parameter('kc_mek_p', 15)     # = k_4 = k_8
    alias_model_components()

    Rule('MEK_bind_ERK_uu', MEK(b=None) + ERK(b=None, T='u', Y='u') <>\
                            MEK(b=1) % ERK(b=1, T='u', Y='u'), kf_mek, kr_mek)
    Rule('MEK_bind_ERK_pT', MEK(b=None) + ERK(b=None, T='p', Y='u') <>\
                            MEK(b=1) % ERK(b=1, T='p', Y='u'), kf_mek_p, kr_mek_p)
    Rule('MEK_bind_ERK_pY', MEK(b=None) + ERK(b=None, T='u', Y='p') <>\
                            MEK(b=1) % ERK(b=1, T='u', Y='p'), kf_mek_p, kr_mek_p)
    Rule('MEK_bind_ERK_pp', MEK(b=None) + ERK(b=None, T='p', Y='p') <>\
                            MEK(b=1) % ERK(b=1, T='p', Y='p'), kf_mek_p, kr_mek_p)
    Rule('MEK_phos_ERK_T', MEK(b=1) % ERK(b=1, T='u', Y='u') >>\
                            MEK(b=None) + ERK(b=None, T='p', Y='u'), kc_mek)
    Rule('MEK_phos_ERK_Y', MEK(b=1) % ERK(b=1, T='u', Y='u') >>\
                            MEK(b=None) + ERK(b=None, T='u', Y='p'), kc_mek)
    Rule('MEK_phos_ERK_TpY', MEK(b=1) % ERK(b=1, T='u', Y='p') >>\
                            MEK(b=None) + ERK(b=None, T='p', Y='p'), kc_mek_p)
    Rule('MEK_phos_ERK_pTY', MEK(b=1) % ERK(b=1, T='p', Y='u') >>\
                            MEK(b=None) + ERK(b=None, T='p', Y='p'), kc_mek_p)
예제 #24
0
def erk_autophos():
    # * How does ERK autophosphorylate?
    # Does an already phosphorylated ERK phosphorylate another one?
    Parameter('kp_erk', 1e-8)
    alias_model_components()
    Rule('ERK_autophos', ERK(b=1, Y='u') % ERK(b=1, Y='p') >>\
                        ERK(b=1, Y='p') % ERK(b=1, Y='p'), kp_erk)
예제 #25
0
def mek_phos_erk_2_step_specific():
    """The parameters are based on Table S2 of Markevich et al. 
    But we assume distributive random kinase mechanism.
    
    First and second order rate constants are in s^{-1} and nM^{-1}s^{-1}
    respectively.
    """
    Parameter('kf_mek', 5.5e-3)   # = k_1 + k_5
    Parameter('kf_mek_y', 2.5e-2) # = k_3
    Parameter('kf_mek_t', 5e-3)   # = k_7
    Parameter('kr_mek', 1)        # = k_{-1} = k_{-3}
    Parameter('kr_mek_p', 1)      # = k_{-5} = k_{-7}
    Parameter('kc_mek_y', 1.08)   # = k_2
    Parameter('kc_mek_t', 8e-3)   # = k_6
    Parameter('kc_mek_ty', 4.5e-1) # = k_8
    Parameter('kc_mek_yt', 7e-3)   # = k_4
    alias_model_components()

    Rule('MEK_bind_ERK_uu', MEK(b=None) + ERK(b=None, T='u', Y='u') <>\
                            MEK(b=1) % ERK(b=1, T='u', Y='u'), kf_mek, kr_mek)
    Rule('MEK_bind_ERK_pT', MEK(b=None) + ERK(b=None, T='p', Y='u') <>\
                            MEK(b=1) % ERK(b=1, T='p', Y='u'), kf_mek_t, kr_mek_p)
    Rule('MEK_bind_ERK_pY', MEK(b=None) + ERK(b=None, T='u', Y='p') <>\
                            MEK(b=1) % ERK(b=1, T='u', Y='p'), kf_mek_y, kr_mek_p)
    Rule('MEK_bind_ERK_pp', MEK(b=None) + ERK(b=None, T='p', Y='p') <>\
                            MEK(b=1) % ERK(b=1, T='p', Y='p'), kf_mek, kr_mek_p)
    Rule('MEK_phos_ERK_T', MEK(b=1) % ERK(b=1, T='u', Y='u') >>\
                            MEK(b=None) + ERK(b=None, T='p', Y='u'), kc_mek_t)
    Rule('MEK_phos_ERK_Y', MEK(b=1) % ERK(b=1, T='u', Y='u') >>\
                            MEK(b=None) + ERK(b=None, T='u', Y='p'), kc_mek_y)
    Rule('MEK_phos_ERK_TpY', MEK(b=1) % ERK(b=1, T='u', Y='p') >>\
                            MEK(b=None) + ERK(b=None, T='p', Y='p'), kc_mek_yt)
    Rule('MEK_phos_ERK_pTY', MEK(b=1) % ERK(b=1, T='p', Y='u') >>\
                            MEK(b=None) + ERK(b=None, T='p', Y='p'), kc_mek_ty)
예제 #26
0
def mkp_dephos_erk_seq():
    """The parameters are based on Table S2 of Markevich et al. 
    But we assume distributive sequential phosphatase mechanism.

    First and second order rate constants are in s^{-1} and nM^{-1}s^{-1}
    respectively.
    """
    Parameter('kf_mkp', 2.9e-3)    # = h_{-6} + h_{-9}
    Parameter('kf_mkp_p', 1e-2)    # = h_{-3} + h_{7}
    Parameter('kf_mkp_pp', 4.5e-2) # = h_1
    Parameter('kr_mkp', 1.4e-1)    # = h_9 which is also used 
                                   #    in the reaction for the original h_6
    Parameter('kr_mkp_p', 1)       # = h_{3} = h_{-4} = h_{-7} = h_{12}
    Parameter('kr_mkp_pp', 1)      # = h_{-1}
    Parameter('kc_mkp', 5e-1)      # = h_5 which is also used
                                   #    in the reaction for the original h_8
    Parameter('kc_mkp_p', 9.2e-2)  # = h_2
    alias_model_components()

    Rule('MKP_bind_ERK_uu', MKP(b=None) + ERK(b=None, T='u', Y='u') <>\
                            MKP(b=1) % ERK(b=1, T='u', Y='u'), kf_mkp, 
                            kr_mkp)
    Rule('MKP_bind_ERK_pY', MKP(b=None) + ERK(b=None, T='u', Y='p') <>\
                            MKP(b=1) % ERK(b=1, T='u', Y='p'), kf_mkp_p,
                            kr_mkp_p)
    Rule('MKP_bind_ERK_pp', MKP(b=None) + ERK(b=None, T='p', Y='p') <>\
                            MKP(b=1) % ERK(b=1, T='p', Y='p'), 
                            kf_mkp_pp, kr_mkp_pp)

    Rule('MKP_dephos_ERK_ppT', MKP(b=1) % ERK(b=1, T='p', Y='p') >>\
                               MKP(b=None) + ERK(b=None, T='u', Y='p'),
                               kc_mkp_p)
    Rule('MKP_dephos_ERK_pY', MKP(b=1) % ERK(b=1, T='u', Y='p') >>\
                              MKP(b=None) + ERK(b=None, T='u', Y='u'),
                              kc_mkp)
예제 #27
0
def albeck_11c(do_pore_transport=True):
    """Model incorporating Bax oligomerization.

    Features:
        - Bid activates Bax
        - Active Bax dimerizes; Bax dimers dimerize to form tetramers
        - Bcl2 binds/inhibits Bax monomers, dimers, and tetramers
        - Bax tetramers bind to and transport Smac to the cytosol
    """

    alias_model_components()
    Initial(Bid(state='U', bf=None), Parameter('Bid_0', 4e4))
    Initial(Bax(bf=None, **inactive_monomer), Parameter('Bax_0', 1e5))
    Initial(Bcl2(bf=None), Parameter('Bcl2_0', 2e4))

    # tBid activates Bax
    catalyze(Bid(state='T'), Bax(inactive_monomer), Bax(active_monomer),
             [1e-7, KR, KC])

    # Bax dimerizes/tetramerizes
    Bax_tetramerizes(bax_active_state='A')

    # Bcl2 inhibits Bax, Bax2, and Bax4
    Bcl2_binds_Bax1_Bax2_and_Bax4(bax_active_state='A')

    if do_pore_transport:
        Initial(Smac(state='M', bf=None), Parameter('Smac_0', 1e6))
        Initial(CytoC(state='M', bf=None), Parameter('CytoC_0', 1e6))
        # NOTE change in KF here from previous model!!!!
        pore_transport(Bax(state='A'), 4, Smac(state='M'), Smac(state='C'),
            [[2*KF, KR, 10]])
        pore_transport(Bax(state='A'), 4, CytoC(state='M'), CytoC(state='C'),
            [[KF, KR, 10]])
예제 #28
0
def embedded(do_pore_transport=True):
    """ Direct and indirect modes of action, occurring at the membrane.
    """
    alias_model_components()

    declare_initial_conditions()

    translocate_tBid_Bax_BclxL()

    tBid_activates_Bax_and_Bak()


    # Autoactivation: Bax and Bak activate their own kind, but only when
    # free (i.e. not part of a pore complex)
    catalyze(Bax(active_monomer), Bax(state='M'), Bax(state='A'),
             activation_rates)
    catalyze(Bak(active_monomer), Bak(state='M'), Bak(state='A'),
             activation_rates)

    # Anti-apoptotics bind activator tBid
    # Doug Green's "MODE 1" inhibition
    tBid_binds_all_anti_apoptotics()

    # Anti-apoptotics bind activated effectors
    # Doug Green's "MODE 2" inhibition
    effectors_bind_anti_apoptotics()

    sensitizers_bind_anti_apoptotics()

    # Bax and Bak form pores by sequential addition and transport CytoC/Smac
    lopez_pore_formation(do_pore_transport=do_pore_transport)
예제 #29
0
def albeck_11b(do_pore_transport=True):
    """Minimal MOMP model shown in Figure 11b.

    Features:
        - Bid activates Bax
        - Active Bax is inhibited by Bcl2
        - Free active Bax binds to and transports Smac to the cytosol
    """

    alias_model_components()

    # Set initial conditions
    Initial(Bid(state='U', bf=None), Parameter('Bid_0', 1e5))
    Initial(Bax(bf=None, **inactive_monomer), Parameter('Bax_0', 1e5))
    Initial(Bcl2(bf=None), Parameter('Bcl2_0', 2e4))

    # MOMP Mechanism
    catalyze(Bid(state='T'), Bax(inactive_monomer), Bax(active_monomer),
             [1e-7, KR, KC])
    bind(Bax(active_monomer), Bcl2, [KF, KR])

    # Transport of Smac and Cytochrome C
    if do_pore_transport:
        Initial(Smac(state='M', bf=None), Parameter('Smac_0', 1e6))
        Initial(CytoC(state='M', bf=None), Parameter('CytoC_0', 1e6))
        catalyze(Bax(state='A'), Smac(state='M'), Smac(state='C'),
            [KF, KR, 10])
        catalyze(Bax(state='A'), CytoC(state='M'), CytoC(state='C'),
            [KF, KR, 10])
예제 #30
0
def cui_direct1(do_pore_transport=False):
    """The "direct 1" model drawn from [Cui2008]_.

    Builds on the (base) direct model from [Cui2008]_,
    implemented in :py:func:`cui_direct` (see source code).

    Parameters
    ----------
    do_pore_transport : True or False (default)
        As for :py:func:`chen_biophys_j`.
    """

    alias_model_components()

    # Build on the base "direct" model...
    cui_direct(do_pore_transport=do_pore_transport)

    # ...by adding inhibition of Bax by Bcl2,
    bind(Bax(state='A', s1=None, s2=None), Bcl2, [5e6/(N_A*V), 0.001])

    # ...associated displacement reactions
    displace_reversibly(Bax(active_monomer), Bid(state='T'), Bcl2,
                        [5e6/(N_A*V), 0.001])
    displace_reversibly(Bad(state='M'), Bax(active_monomer), Bcl2,
                        [1e5/(N_A*V), 0.005])

    # ...and degradation of the active Bax:Bcl2 complex
    degrade(Bax(bf=1) % Bcl2(bf=1), 0.005)
예제 #31
0
def mkp_dephos_erk_2_step_generic():
    """Based on and simplified from Table S4 of Markevich et al. 
    Assuming distributive random phosphatase mechanism. It is simplified to 
    2-step mechanisms from the 3-step ones in the original table.
    
    First and second order rate constants are in s^{-1} and nM^{-1}s^{-1}
    respectively.
    """
    Parameter('kf_mkp', 2.9e-3)  # = h_{-6} + h_{-9}
    Parameter('kf_mkp_p', 2e-2)  # = h_{-3} + h_4 = h_7 + h_{-12}
    Parameter('kf_mkp_pp', 4.5e-2)  # = h_1 = h_{10}
    Parameter('kr_mkp', 1.4e-1)  # = h_9 which is also used
    #    in the reaction for the original h_6
    Parameter('kr_mkp_p', 1)  # = h_{3} = h_{-4} = h_{-7} = h_{12}
    Parameter('kr_mkp_pp', 1)  # = h_{-1} = h_{-10}
    Parameter('kc_mkp', 5e-1)  # = h_5 which is also used
    #    in the reaction for the original h_8
    Parameter('kc_mkp_p', 9.2e-2)  # = h_2 = h_{11}
    alias_model_components()

    Rule('MKP_bind_ERK_uu', MKP(b=None) + ERK(b=None, T='u', Y='u') <>\
                            MKP(b=1) % ERK(b=1, T='u', Y='u'), kf_mkp,
                            kr_mkp)
    Rule('MKP_bind_ERK_pT', MKP(b=None) + ERK(b=None, T='p', Y='u') <>\
                            MKP(b=1) % ERK(b=1, T='p', Y='u'), kf_mkp_p,
                            kr_mkp_p)
    Rule('MKP_bind_ERK_pY', MKP(b=None) + ERK(b=None, T='u', Y='p') <>\
                            MKP(b=1) % ERK(b=1, T='u', Y='p'), kf_mkp_p,
                            kr_mkp_p)
    Rule('MKP_bind_ERK_pp', MKP(b=None) + ERK(b=None, T='p', Y='p') <>\
                            MKP(b=1) % ERK(b=1, T='p', Y='p'),
                            kf_mkp_pp, kr_mkp_pp)

    Rule('MKP_dephos_ERK_ppT', MKP(b=1) % ERK(b=1, T='p', Y='p') >>\
                               MKP(b=None) + ERK(b=None, T='u', Y='p'),
                               kc_mkp_p)
    Rule('MKP_dephos_ERK_ppY', MKP(b=1) % ERK(b=1, T='p', Y='p') >>\
                               MKP(b=None) + ERK(b=None, T='p', Y='u'),
                               kc_mkp_p)
    Rule('MKP_dephos_ERK_pT', MKP(b=1) % ERK(b=1, T='p', Y='u') >>\
                              MKP(b=None) + ERK(b=None, T='u', Y='u'),
                              kc_mkp)
    Rule('MKP_dephos_ERK_pY', MKP(b=1) % ERK(b=1, T='u', Y='p') >>\
                              MKP(b=None) + ERK(b=None, T='u', Y='u'),
                              kc_mkp)
예제 #32
0
def Momomers_FasL_to_DISC():
    """ Declares Fas ligand, CD95, FADD, Flip_L, Flip_S procaspase8 and Caspase 8. 
    
    bf' is the site to be used for all binding reactions.
        
    The 'state' site denotes various localization and/or activity states of a
    Monomer, with 'C' denoting cytoplasmic localization and 'M' mitochondrial
    localization.
    """
    Monomer('FasL', ['blig'])  #Fas Ligand
    Monomer('Fas', ['blig', 'bDD'])  #Fas Receptor (CD95)
    Monomer('FADD', ['bDD', 'bDED1', 'bDED2'])  #FADD
    Monomer('flip_L', ['bDED'])  #c-Flip[L] binds FADD at DED2
    Monomer('flip_S', ['bDED'])  #c-Flip[S] binds FADD at DED2
    Monomer('proC8', ['bDED'])  #procaspase 8 binds FADD at DED1 or DED2
    Monomer('C8', ['bf', 'state'], {'state': ['A', 'I']})  #active caspase 8
    Monomer('Bar', ['bC8'])  #bifunctional apoptosis regulator
    alias_model_components()
예제 #33
0
def tsc2_inhibition_by_akt():
    """Inhibition of TSC2 by AKT:PP."""

    alias_model_components()
    # AKT:PP phosphorylates TSC2 at S939, S981, and T1462, which causes it to translocate from the membrane to the cytosol and stops TSC2's GAP activity on Rheb (Cai 2006, Journal of Cell Biology).
    bind(AKT(S='PP', bpip3=None), 'bpdk1', TSC(S939='U', S981='U', T1462='U'),
         'b', par['AKTPP_bind_TSC2'])

    for site in ['S939', 'S981', 'T1462']:
        Rule(
            'AKTPP_phos_TSC2_' + site,
            AKT(S='PP', bpip3=None, bpdk1=1) % TSC({
                'b': 1,
                site: 'U'
            }) >> AKT(S='PP', bpip3=None, bpdk1=None) + TSC({
                'b': None,
                site: 'P'
            }), par['AKTPP_phos' + site + '_TSC2'])
예제 #34
0
def by_CRAF():

    Parameter('k_cwf', 1)
    Parameter('k_cwr', 0.1)
    Parameter('k_cwe', 1)

    alias_model_components()

    Rule(
        'CRAF_binds_ERK',
        CRAF(d=1, vem=None, erk=None) % CRAF(d=1) + MEK(s=None, state='up') <>
        MEK(s=2, state='up') % CRAF(d=1, vem=None, erk=2) % CRAF(d=1), k_cwf,
        k_cwr)

    Rule(
        'CRAF_activates_ERK',
        CRAF(d=ANY, vem=None, erk=1) % MEK(s=1, state='up') >>
        CRAF(d=ANY, vem=None, erk=None) + MEK(s=None, state='p'), k_cwe)
예제 #35
0
def albeck_11f(do_pore_transport=True):
    """Model as in 11e, but with cooperative assembly of Bax pores.

    Association rate constants for Bax dimerization, tetramerization, and
    insertion are set so that they increase at each step (from 1e-8 to 1e-7 and
    then 1e-6), thereby creating cooperative assembly.

    See also the documentation for albeck_11e().
    """

    albeck_11e(do_pore_transport=do_pore_transport)
    alias_model_components()

    # Set parameter values for cooperative pore formation
    equilibrate_BaxA_to_BaxM_kf.value = 1e-4  # was 1e-2 in 11e
    equilibrate_BaxA_to_BaxM_kr.value = 1e-4  # was 1e-2 in 11e
    Bax_dimerization_kf.value /= 100  # was 1e-6 in 11e
    Bax_tetramerization_kf.value /= 10  # was 1e-6 in 11e
예제 #36
0
def declare_initial_conditions():
    """Declare initial conditions for Bcl-2 family proteins, Cyto c, and Smac.
    """
    Parameter('Bid_0', 4.0e4)  # Bid
    Parameter('BclxL_0', 2.0e4)  # cytosolic BclxL
    Parameter('Mcl1_0', 2.0e4)  # Mitochondrial Mcl1
    Parameter('Bcl2_0', 2.0e4)  # Mitochondrial Bcl2
    Parameter('Bax_0', 0.8e5)  # Bax
    Parameter('Bak_0', 0.2e5)  # Bak

    alias_model_components()

    Initial(Bid(bf=None, state='U'), Bid_0)
    Initial(Bax(bf=None, s1=None, s2=None, state='C'), Bax_0)
    Initial(Bak(bf=None, s1=None, s2=None, state='M'), Bak_0)
    Initial(Bcl2(bf=None), Bcl2_0)
    Initial(BclxL(bf=None, state='C'), BclxL_0)
    Initial(Mcl1(bf=None, state='M'), Mcl1_0)
예제 #37
0
def albeck_11d(do_pore_transport=True):
    """Model incorporating mitochondrial transport.

    Features:
        - Bid activates Bax
        - Active Bax translocates to the mitochondria
        - All reactions on the mito membrane have increased association rates
        - Mitochondrial Bax dimerizes; Bax dimers dimerize to form tetramers
        - Bcl2 binds/inhibits Bax monomers, dimers, and tetramers
        - Bax tetramers bind to and transport Smac to the cytosol
    """

    alias_model_components()
    Initial(Bid(state='U', bf=None), Parameter('Bid_0', 4e4))
    Initial(Bax(bf=None, **inactive_monomer), Parameter('Bax_0', 1e5))
    Initial(Bcl2(bf=None), Parameter('Bcl2_0', 2e4))

    # Fractional volume of the mitochondrial membrane compartment
    v = 0.07
    rate_scaling_factor = 1. / v

    # tBid activates Bax in the cytosol
    catalyze(Bid(state='T'), Bax(inactive_monomer), Bax(active_monomer),
             [1e-7, KR, KC])

    # Active Bax translocates to the mitochondria
    equilibrate(Bax(bf=None, **active_monomer),
                Bax(bf=None, state='M', s1=None, s2=None), [1e-2, 1e-2])

    # Bax dimerizes/tetramerizes
    Bax_tetramerizes(bax_active_state='M',
                     rate_scaling_factor=rate_scaling_factor)

    # Bcl2 inhibits Bax, Bax2, and Bax4
    Bcl2_binds_Bax1_Bax2_and_Bax4(bax_active_state='M',
                                  rate_scaling_factor=rate_scaling_factor)

    if do_pore_transport:
        Initial(Smac(state='M', bf=None), Parameter('Smac_0', 1e6))
        Initial(CytoC(state='M', bf=None), Parameter('CytoC_0', 1e6))
        pore_transport(Bax(state='M'), 4, Smac(state='M'), Smac(state='C'),
                       [[rate_scaling_factor * 2 * KF, KR, 10]])
        pore_transport(Bax(state='M'), 4, CytoC(state='M'), CytoC(state='C'),
                       [[KF, KR, 10]])
예제 #38
0
def mkp_dephos_erk_random():
    """The parameters are based on Table S2 of Markevich et al. 
    But we assume distributive random phosphatase mechanism.

    First and second order rate constants are in s^{-1} and nM^{-1}s^{-1}
    respectively.
    """
    Parameter('kf_mkp', 2.9e-3)  # = h_{-6} + h_{-9}
    Parameter('kf_mkp_p', 1e-2)  # = h_{-3} + h_{7}
    Parameter('kf_mkp_pp', 4.5e-2)  # = h_1
    Parameter('kr_mkp', 1.4e-1)  # = h_9 which is also used
    #    in the reaction for the original h_6
    Parameter('kr_mkp_p', 1)  # = h_{3} = h_{-4} = h_{-7} = h_{12}
    Parameter('kr_mkp_pp', 1)  # = h_{-1}
    Parameter('kc_mkp', 5e-1)  # = h_5 which is also used
    #    in the reaction for the original h_8
    Parameter('kc_mkp_p', 9.2e-2)  # = h_2
    alias_model_components()

    Rule('MKP_bind_ERK_uu', MKP(b=None) + ERK(b=None, T='u', Y='u') <>\
                            MKP(b=1) % ERK(b=1, T='u', Y='u'), kf_mkp,
                            kr_mkp)
    Rule('MKP_bind_ERK_pT', MKP(b=None) + ERK(b=None, T='p', Y='u') <>\
                            MKP(b=1) % ERK(b=1, T='p', Y='u'), kf_mkp_p,
                            kr_mkp_p)
    Rule('MKP_bind_ERK_pY', MKP(b=None) + ERK(b=None, T='u', Y='p') <>\
                            MKP(b=1) % ERK(b=1, T='u', Y='p'), kf_mkp_p,
                            kr_mkp_p)
    Rule('MKP_bind_ERK_pp', MKP(b=None) + ERK(b=None, T='p', Y='p') <>\
                            MKP(b=1) % ERK(b=1, T='p', Y='p'),
                            kf_mkp_pp, kr_mkp_pp)

    Rule('MKP_dephos_ERK_ppT', MKP(b=1) % ERK(b=1, T='p', Y='p') >>\
                               MKP(b=None) + ERK(b=None, T='u', Y='p'),
                               kc_mkp_p)
    Rule('MKP_dephos_ERK_ppY', MKP(b=1) % ERK(b=1, T='p', Y='p') >>\
                               MKP(b=None) + ERK(b=None, T='p', Y='u'),
                               kc_mkp_p)
    Rule('MKP_dephos_ERK_pT', MKP(b=1) % ERK(b=1, T='p', Y='u') >>\
                              MKP(b=None) + ERK(b=None, T='u', Y='u'),
                              kc_mkp)
    Rule('MKP_dephos_ERK_pY', MKP(b=1) % ERK(b=1, T='u', Y='p') >>\
                              MKP(b=None) + ERK(b=None, T='u', Y='u'),
                              kc_mkp)
예제 #39
0
def chen_febs_direct(do_pore_assembly=True, do_pore_transport=False):
    """The "direct" model drawn from [Chen2007febs]_.

    Model features (see the source code):

    * Activation of Bax by an activator (tBid) in a one-step, hit-and-run
      manner; Bax activation is reversible.
    * Bcl-2 can bind tBid, but not Bax.

    Parameters
    ----------
    do_pore_assembly : True (default) or False
        As for :py:func:`chen_biophys_j`.
    do_pore_transport : True or False (default)
        As for :py:func:`chen_biophys_j`.
    """

    # Initial conditions
    Parameter('Bcl2_0', 30e-9 * N_A * V)  # Bcl2
    Parameter('Bax_0', 60e-9 * N_A * V)  # InBax

    alias_model_components()

    Initial(Bax(bf=None, s1=None, s2=None, state='C'), Bax_0)
    Initial(Bcl2(bf=None), Bcl2_0)

    # One-step "kiss-and-run" activation of Bax by tBid
    catalyze_one_step_reversible(Bid(state='T', bf=None),
                                 Bax(bf=None, **inactive_monomer),
                                 Bax(bf=None, **active_monomer),
                                 [1e6 / (N_A * V), 1e-3])

    # Bcl2 binds tBid and Bad (a sensitizer) but not Bax
    bind_table([[Bcl2], [Bid(state='T'), (1e5 / (N_A * V), 1e-3)],
                [Bad(state='M'), (1e5 / (N_A * V), 1e-3)]])

    if do_pore_assembly:
        # Four Bax monomers cooperatively bind to form a tetramer
        assemble_pore_spontaneous(Bax(state='A', bf=None),
                                  [4 * 1e6 / (N_A * V), 1e-3])

    if do_pore_transport:
        # Release Cytochrome C and Smac:
        shen_pore_transport(pore_size=4)
예제 #40
0
def erk_dimerize_phos():
    Parameter('kf_erk', 1)
    Parameter('kr_erk', 1e-5)
    alias_model_components()
    # These 3 rules cover all the combinations for any phosphorylated form
    # of ERK to dimerize. Only unphosphorylated form should not be able to
    # dimerize.
    Rule(
        'ERK_bind_ERK1',
        ERK(b=None, Y='p') + ERK(b=None, Y='p') <>
        ERK(b=1, Y='p') % ERK(b=1, Y='p'), kf_erk, kr_erk)
    Rule(
        'ERK_bind_ERK2',
        ERK(b=None, T='p', Y='u') + ERK(b=None, T='p', Y='u') <>
        ERK(b=1, T='p', Y='u') % ERK(b=1, T='p', Y='u'), kf_erk, kr_erk)
    Rule(
        'ERK_bind_ERK3',
        ERK(b=None, Y='p') + ERK(b=None, T='p', Y='u') <>
        ERK(b=1, Y='p') % ERK(b=1, T='p', Y='u'), kf_erk, kr_erk)
예제 #41
0
def erk_nuclear_events(fra1=True, elk1=False):
    """Activity of ERK in the nucleus."""

    alias_model_components()
    # ERK:PP can translocate to the nucleus and activate ELK-1 by phosphorylating S383 and S389.
    equilibrate(ERK(st='PP', loc='C', b=None), ERK(st='PP', loc='N', b=None),
                par['ERKPP_to_nucleus'])

    if elk1 == True:
        catalyze_state(ERK(st='PP', loc='N'), 'b', ELK1(), 'b', 'S383', 'U',
                       'P', (par['ERKPP_phos_ELK1']))

    if fra1 == True:
        catalyze_state(ERK(st='PP', loc='N'), 'b', FRA1(), 'b', 'st', 'U', 'P',
                       (par['ERKPP_phos_FRA1']))

        degrade(FRA1(b=None, st='U'), par['FRA1_base_degrade'])

        degrade(FRA1(b=None, st='P'), par['FRA1_phos_degrade'])
예제 #42
0
def apaf1_to_parp_monomers():
    """ Declares CytochromeC, Smac, Apaf-1, the Apoptosome, Caspases 3, 6, 9,
    XIAP and PARP.

    The package variable 'bf' specifies the name of the site to be used
    for all binding reactions.

    The 'state' site denotes various localization and/or activity states of a
    Monomer, with 'C' denoting cytoplasmic localization and 'M' mitochondrial
    localization.
    """

    # Apaf-1 and Apoptosome
    Monomer('Apaf', ['bf', 'state'], {'state': ['I', 'A']})  # Apaf-1

    # Apoptosome (activated Apaf-1 + caspase 9)
    Monomer('Apop', ['bf'])

    # Csp 3, states: pro, active, ubiquitinated
    Monomer('C3', ['bf', 'state'], {'state': ['pro', 'A', 'ub']})

    # Caspase 6, states: pro-, Active
    Monomer('C6', ['bf', 'state'], {'state': ['pro', 'A']})

    # Caspase 9
    Monomer('C9', ['bf'])

    # PARP, states: Uncleaved, Cleaved
    Monomer('PARP', ['bf', 'state'], {'state': ['U', 'C']})

    # X-linked Inhibitor of Apoptosis Protein
    Monomer('XIAP', ['bf'])

    alias_model_components()

    # == Annotations
    Annotation(Apaf, 'http://identifiers.org/uniprot/O14727')
    Annotation(Apop, 'http://identifiers.org/obo.go/GO:0043293')
    Annotation(C3, 'http://identifiers.org/uniprot/P42574')
    Annotation(C6, 'http://identifiers.org/uniprot/P55212')
    Annotation(C9, 'http://identifiers.org/uniprot/P55211')
    Annotation(PARP, 'http://identifiers.org/uniprot/P09874')
    Annotation(XIAP, 'http://identifiers.org/uniprot/P98170')
예제 #43
0
def SecondaryComplex_to_Bid_initials():
    """Defines the interactoins from TRADD RIP1 and FADD to generation of secondary
        complexes and truncation of Bid as per ANRM 1.0.
        
        Uses FADD, proC8, C8, flip_L, flip_S, TRADD, RIP1, RIP3 and Bid, and their
        associated parameters to generate rules that describe the FADD recruitment,
        proC8 and c-flip recruitment to the secondary complex, activation of caspase
        truncation of RIP1 and RIP3 and phosphorylation of Bid. This model assumes
        that one copy of proC8 binds FADD before c-flip. Among other things...
        
        This model converts proC8:proC8 to C8 (active caspase 8 dimer)
        This model also produces Secondary complex, FADD:proC8:c-Flip.
        """
    Parameter('RIP3_0', 2.0e4)  # molecules per cell
    Parameter('BidK_0', 5.0e3)  # molecules per cell

    alias_model_components()
    Initial(RIP3(bRHIM=None, state='unmod'), RIP3_0)  # RIP3
    Initial(BidK(bf=None), BidK_0)
예제 #44
0
def albeck_11e(do_pore_transport=True):
    """Model incorporating mitochondrial transport and pore "insertion."

    Features:
        - Bid activates Bax
        - Active Bax translocates to the mitochondria
        - All reactions on the mitochondria have increased association rates
        - Mitochondrial Bax dimerizes; Bax dimers dimerize to form tetramers
        - Bcl2 binds/inhibits Bax monomers, dimers, and tetramers
        - Bax tetramers bind to mitochondrial "sites" and become active pores
        - Active pores bind to and transport Smac to the cytosol
    """
    # Build off of the previous model
    albeck_11d(do_pore_transport=False)

    # Add the "Mito" species, with states "Inactive" and "Active".
    Monomer('Mito', ['bf', 'state'], {'state': ['I', 'A']})
    alias_model_components()
    Initial(Mito(state='I', bf=None), Parameter('Mito_0', 5e5))

    v = 0.07
    rate_scaling_factor = 1. / v

    # Add activation of mitochondrial pore sites by Bax4
    pore_bind(Bax(state='M'), 's1', 's2', 'bf', 4, Mito(state='I'), 'bf',
              [KF * rate_scaling_factor, KR])
    Rule(
        'Mito_activation',
        MatchOnce(
            Bax(state='M', bf=5, s1=1, s2=4) %
            Bax(state='M', bf=None, s1=2, s2=1) %
            Bax(state='M', bf=None, s1=3, s2=2) %
            Bax(state='M', bf=None, s1=4, s2=3) % Mito(state='I', bf=5)) >>
        Mito(state='A', bf=None), Parameter('Mito_activation_kc', KC))

    if do_pore_transport:
        Initial(Smac(state='M', bf=None), Parameter('Smac_0', 1e6))
        Initial(CytoC(state='M', bf=None), Parameter('CytoC_0', 1e6))
        catalyze(Mito(state='A'), Smac(state='M'), Smac(state='C'),
                 [rate_scaling_factor * 2 * KF, KR, 10])
        catalyze(Mito(state='A'), CytoC(state='M'), CytoC(state='C'),
                 [rate_scaling_factor * 2 * KF, KR, 10])
예제 #45
0
def Shp2_catalysis():
    "v707-v720"
    " Shp2 binds phoshphoryated Gab1 and dephosphorylates it in a  2-step reaction "
    
    # Initial amount
    # ==============
    Parameter('Shp2_0', 1e+6)       # c463
    # Rate constant
    # ==============
    Parameter('k107', 3.33e-5)   # k107
    Parameter('kd107',0.1)       # kd107
    Parameter('kd108', 5)           # kd108

    alias_model_components()
    
    # Initial conditions
    # ==============
    Initial(Shp2(gab1=None), Shp2_0)

    catalyze_state(Shp2(), 'gab1', Gab1(erk=None, pi3k=None), 'shp2', 'state', 'p', 'up', (k107, kd107, kd108))
예제 #46
0
def remove_rule(model, name, verbose=False, return_old_rule=False):
    alias_model_components(model)

    # find the rule to delete
    lst = []
    for idx, rule in enumerate(model.rules._map.keys()):
        if rule != name:
            lst.append(model.rules[idx])
        else:
            oldRule = model.rules[idx]

    # remove all rules from model and add all except the rule to delete
    model.rules = ComponentSet()
    for rule in lst:
        model.rules.add(rule)

    if return_old_rule:
        return model, lst, oldRule
    else:
        return model
예제 #47
0
def TNFR1_to_ComplexII_monomers():
    """ Declares TNFa, TNFR1, TRADD, CompI, RIP1, A20, CYLD, NEMO and NFkB.
        Upon activation, TNFR1 gets endocytosed and post translationally modified After Complex I
        has released TRADD and RIP1 it possibly gets recycled. This is represented by giving TNFR1
        two states: norm and spent. TRADD has two states. CompI has two states. RIP1 has three states:
        Ub, PO4 and inactive. RIP1 binds FADD, Complex I, Bid-P and RIP3 (see SecondaryComplex_Bid).
        A20, CYLD and NEMO catalyze transformations of CompI and RIP1, maybe be represented in the rates.
        """

    Monomer('TNFa', ['blig'])
    Monomer('TNFR1', ['blig', 'bDD', 'state'], {'state': ['norm', 'spent']})
    Monomer('TRADD', ['bDD1', 'bDD2', 'state'],
            {'state': ['active', 'inactive']})
    Monomer('CompI', ['bDD', 'state'],
            {'state': ['unmod', 'mod']
             })  #Neglecting RIP1:proC8 binding.. for simplicity.
    Monomer('RIP1', ['bDD', 'bRHIM', 'bPARP', 'state'],
            {'state': ['unmod', 'ub', 'po4', 'trunc', 'deub']})
    Monomer('NFkB', ['bf'])
    alias_model_components()
예제 #48
0
def RIP1_Hypothesis_2():
    """Deubiquitinated RIP1, released from Complex I, can bind FADD and initiate apoptosis and necrosis (the literature). Yet, there is nothing explicitely stated in the literature to distinguish deubiquitinated from unmodifed RIP1. Uniprot reports a binding reaction between RIP1 and FADD. If RIP1-unmod =! RIP1-deub (i.e. RIP1 Hypothesis 2), then a RIP1-deub-FADD binding interaction could facilitate the apoptotic/necrotic signaling that occurs downstream of TNFR1 without creating a state that is """

    Parameter('RIP1_0',
              12044)  # molecules per cell (arbitrarily assigned) 12044
    alias_model_components()
    Initial(RIP1(bDD=None, bRHIM=None, bPARP=None, state='unmod'),
            RIP1_0)  # RIP1
    # =============================
    # Complex I - RIP1 Modification
    # -----------------------------
    #   CompI + RIP1 <> CompI:RIP1 >> [active]CompI:RIP1-Ub
    #   [active]CompI:RIP1-Ub >> [active]CompI:RIP1-deub
    #   [active]CompI:RIP1-deub <> [active]CompI + RIP1-deub
    #   [active]CompI:RIP1-deub >> [active]CompI
    # -----------------------------

    # Complex I recruits RIP1
    bind(CompI(bDD=None, state='unmod'), 'bDD',
         RIP1(bDD=None, bRHIM=None, state='unmod'), 'bDD', [1e-6, 1e-3])
    Rule(
        'CompI_Ub_1',
        CompI(bDD=ANY, state='unmod') %
        RIP1(bDD=ANY, bRHIM=None, state='unmod') >>
        CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='ub'),
        Parameter('k3', 1))

    # De-ubiquitination and degradation or release of RIP1 from complex I
    Rule(
        'CompI_deUb',
        CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='ub') >>
        CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='deub'),
        Parameter('k6', 1e-3))

    Rule(
        'RIP1_deg',
        CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='deub')
        >> CompI(bDD=None, state='mod'), Parameter('k7', 1))

    bind(CompI(bDD=None, state='mod'), 'bDD',
         RIP1(bDD=None, bRHIM=None, state='deub'), 'bDD', [1e-10, 1])
예제 #49
0
def chen_febs_indirect(do_pore_assembly=True, do_pore_transport=False):
    """The "indirect" model drawn from [Chen2007febs]_.

    Model features (see the source code):

    * There is no activation of Bax by tBid. Bax starts out constitutively
      "active" in that in its initial state, it is able to form oligomers.
    * Bcl-2 can bind tBid and Bax.

    Parameters
    ----------
    do_pore_assembly : True (default) or False
        As for :py:func:`chen_biophys_j`.
    do_pore_transport : True or False (default)
        As for :py:func:`chen_biophys_j`.
    """

    Parameter('Bcl2_0'  , 30e-9 * N_A * V) # Mitochondrial Bcl2
    Parameter('Bax_0'   , 60e-9 * N_A * V) # Bax

    alias_model_components()

    Initial(Bax(bf=None, s1=None, s2=None, state='A'), Bax_0)
    Initial(Bcl2(bf=None), Bcl2_0)

    # (Note: No activation of Bax by tBid, so Bax is in the active state
    # by default)

    # Bcl2 binds tBid and Bax:
    bind_table([[                                     Bcl2],
                [Bid(state='T'),       (1e5/(N_A*V), 1e-3)],
                [Bax(active_monomer),  (1e5/(N_A*V), 1e-3)]])

    if do_pore_assembly:
        # Four "inactive" Bax monomers cooperatively bind to form a tetramer:
        assemble_pore_spontaneous(Bax(state='A', bf=None),
                                  [4*1e6/(N_A*V), 1e-3])

    if do_pore_transport:
        # Release Cytochrome C and Smac:
        shen_pore_transport(pore_size=4)
예제 #50
0
def TNFa_to_ComplexI_Monomers():
    
    """ Declares TNFa, TNFR1, TRADD, RIP1, TRAF2, IAP, NKS (NFkB signaling complex),
    NFkB, CYLD and FADD. Binding sites are named after (when known) subdomains that
    facilitate binding. Otherwise the binding site will reflect what it binds with.
        
    The 'state' site denotes various localization and/or activity states of a
    Monomer, with 'C' denoting cytoplasmic localization and 'M' mitochondrial
    localization.
    """
    Monomer('TNFa'  ,   ['brec'])           #TNFa
    Monomer('TNFR1' ,   ['blig', 'bDD'])    #TNFR1
    Monomer('TRADD' ,   ['bDD1', 'bDD2'])   #TRADD
    Monomer('RIP1'  ,   ['bDD', 'btraf', 'bRHIM', 'bMLKL', 'state'], {'state':['unmod', 'ub', 'po4', 'trunc']})   #RIP1
    Monomer('TRAF'  ,   ['brip', 'bciap', 'zfinger'])   #TRAF2
    Monomer('cIAP'  ,   ['btraf'])          #cIAP 1 and 2
    Monomer('NSC'   ,   ['bnfkb'])          #Recruitement of LUBAC commits complex I to the NFkB activation pathway. This pathway is approximated by a single activation step which is carried out by a NFkB signaling complex (NSC). 
    Monomer('NFkB'  ,   ['bnsc','state'], {'state':['I', 'A']})       #NFkB
    Monomer('CYLD'  ,   ['btraf', 'state'], {'state':['U','T']})  #CYLD
    Monomer('FADD', ['bDD', 'bDED1','bDED2'])    #FADD
    alias_model_components()
예제 #51
0
def rec_initial():
    # Initial concentrations of ligands, receptor monomers, and ATP taken from Chen et al.
    Parameter('EGF_0', 5e-9)
    Parameter('HRG_0', 0)
    Parameter('erbb1_0', 1.08e6)
    Parameter('erbb2_0', 4.62e5)
    Parameter('erbb3_0', 6.23e3)
    Parameter('erbb4_0', 7.94e2)
    Parameter('ATP_0', 1.2e9)
    Parameter('DEP_0', 7e4)

    alias_model_components()

    Initial(EGF(b=None), EGF_0)
    Initial(HRG(b=None), HRG_0)
    Initial(erbb(bl=None, bd=None, b=None, ty='1', st='U', loc='C'), erbb1_0)
    Initial(erbb(bl=None, bd=None, b=None, ty='2', st='U', loc='C'), erbb2_0)
    Initial(erbb(bl=None, bd=None, b=None, ty='3', st='U', loc='C'), erbb3_0)
    Initial(erbb(bl=None, bd=None, b=None, ty='4', st='U', loc='C'), erbb4_0)
    Initial(ATP(b=None), ATP_0)
    Initial(DEP(b=None), DEP_0)
예제 #52
0
def erk_activate_mkp():
    Monomer('MKP_act', ['b'])
    Parameter('kc_erk_act_mkp', 1)
    Parameter('kc_mkp_act', 1)
    Parameter('kc_mkp_deact', 1)
    alias_model_components()

    Rule('ERK_release_act_MKP', MKP(b=1) % ERK(b=1, T='p', Y='p') >>\
                                MKP_act(b=None) + ERK(b=None, T='p', Y='p'),
                                kc_erk_act_mkp)

    Rule('MKP_act_bind_ERK_uu', MKP_act(b=None) + ERK(b=None, T='u', Y='u') <>\
                            MKP_act(b=1) % ERK(b=1, T='u', Y='u'), kf_mkp,
                            kr_mkp)
    Rule('MKP_act_bind_ERK_pT', MKP_act(b=None) + ERK(b=None, T='p', Y='u') <>\
                            MKP_act(b=1) % ERK(b=1, T='p', Y='u'), kf_mkp_p,
                            kr_mkp_p)
    Rule('MKP_act_bind_ERK_pY', MKP_act(b=None) + ERK(b=None, T='u', Y='p') <>\
                            MKP_act(b=1) % ERK(b=1, T='u', Y='p'), kf_mkp_p,
                            kr_mkp_p)
    Rule('MKP_act_bind_ERK_pp', MKP_act(b=None) + ERK(b=None, T='p', Y='p') <>\
                            MKP_act(b=1) % ERK(b=1, T='p', Y='p'), kf_mkp_pp,
                            kr_mkp_pp)

    Rule('MKP_act_dephos_ERK_ppT', MKP_act(b=1) % ERK(b=1, T='p', Y='p') >>\
                                MKP_act(b=None) + ERK(b=None, T='u', Y='p'),
                                kc_mkp_act)
    Rule('MKP_act_dephos_ERK_ppY', MKP_act(b=1) % ERK(b=1, T='p', Y='p') >>\
                                MKP_act(b=None) + ERK(b=None, T='p', Y='u'),
                                kc_mkp_act)
    Rule('MKP_act_dephos_ERK_pT', MKP_act(b=1) % ERK(b=1, T='p', Y='u') >>\
                                MKP(b=None) + ERK(b=None, T='u', Y='u'),
                                kc_mkp_act)
    Rule('MKP_act_dephos_ERK_pY', MKP_act(b=1) % ERK(b=1, T='u', Y='p') >>\
                                MKP(b=None) + ERK(b=None, T='u', Y='u'),
                                kc_mkp_act)

    Rule('MKP_deact', MKP_act(b=None) >> MKP(b=None), kc_mkp_deact)
    Observable('MKP_act_', MKP_act())
예제 #53
0
def Initials_Fas_to_DISC():
    Parameter('FasL_0',
              6000)  # 6000 corresponds to 100ng/ml Fas (J Immunol 2005)
    Parameter('Fas_0', 4817)  # 4817receptors per cell (J Immunol 2005)
    Parameter('FADD_0', 8030)  # 8300 molecules per cell (J Immunol 2005)
    Parameter('flip_L_0', 39022)  # 39022 molecules per cell (J Immunol 2005)
    Parameter('flip_S_0',
              39022)  # molecules per cell assummed both isoforms w/conc.
    Parameter('proC8_0',
              16057)  # procaspase 8 molecules per cell 16057 (J Immunol 2005)
    Parameter('C8_0', 0)  # active caspase 8 dimers per cell.
    Parameter('Bar_0', 1.0e3)  # Bar molecules per cell. (Hela Cells)
    alias_model_components()

    Initial(FasL(blig=None), FasL_0)  #Fas Ligand
    Initial(Fas(blig=None, bDD=None), Fas_0)  #Fas Receptor (CD95)
    Initial(FADD(bDD=None, bDED1=None, bDED2=None), FADD_0)  #FADD
    Initial(flip_L(bDED=None), flip_L_0)  #c-Flip[L]
    Initial(flip_S(bDED=None), flip_S_0)  #c-Flip[S]
    Initial(proC8(bDED=None), proC8_0)  #procaspase 8
    Initial(C8(bf=None, state='A'), C8_0)  #caspase 8
    Initial(Bar(bC8=None), Bar_0)  #bifunctional apoptosis regulator
예제 #54
0
def Pase_9t_catalysis():
    "v770-v783"
    "Pase_9t binds and dephoshhorylates Gab1~PP to Gab1~P in a 2 step catalysis"
    
    # Initial amount
    # ==============
    Parameter('Pase9t_0', 0)        # c521 // zero ic
    # Rate constant
    # ==============
    Parameter('k117', 8.33e-8)     # k117
    Parameter('kd117', 0.1)        # kd117
    Parameter('kd118', 0.03)          # k118

    alias_model_components()
    
    # Initial conditions
    # ==============
    Initial(Pase_9t(gab1=None), Pase9t_0)
    
    # Rules
    # =====
    catalyze_state(Pase_9t(),'gab1', Gab1(), 'pase', 'state', 'pp', 'p', (k117, kd117, kd118))
예제 #55
0
def TNFa_to_ComplexI_Initials():
    Parameter('TNFa_0'  ,  600) # 6000 corresponds to 100ng/ml TNFa
    Parameter('TNFR1_0' ,  4800) # 4800 receptors per cell
    Parameter('TRADD_0' ,  9000) # molecules per cell (arbitrarily assigned) 9000
    Parameter('RIP1_0'  , 12044) # molecules per cell (arbitrarily assigned) 12044
    Parameter('TRAF_0'  ,  9000) # molecules per cell (arbitrarily assigned) 9000
    Parameter('cIAP_0'  ,  9000) # molecules per cell (arbitrarily assigned) 9000
    Parameter('NSC_0'   ,     0) # complexes per cell
    Parameter('NFkB_0'    , 50000) # molecules per cell (arbitrarily assigned) 50000
    Parameter('CYLD_0'  ,  9000) # molecules per cell
    Parameter('FADD_0'  ,   8030) # 8300 molecules per cell (J Immunol 2005)
    alias_model_components()
    
    Initial(TNFa(brec=None), TNFa_0)       
    Initial(TNFR1(blig=None, bDD=None), TNFR1_0)
    Initial(TRADD(bDD1=None, bDD2=None), TRADD_0)
    Initial(RIP1(bDD=None, btraf=None, bRHIM = None, bMLKL = None, state = 'unmod'), RIP1_0)
    Initial(TRAF(brip=None, bciap=None, zfinger=None), TRAF_0)
    Initial(cIAP(btraf=None), cIAP_0)
    Initial(NSC(bnfkb=None), NSC_0)
    Initial(NFkB(bnsc=None, state = 'I'), NFkB_0)
    Initial(CYLD(btraf=None, state = 'U'),CYLD_0)
    Initial(FADD(bDD=None, bDED1=None, bDED2=None), FADD_0)
예제 #56
0
def direct(do_pore_transport=True):
    """Anti-apoptotics prevent BH3-onlies from activating Bax and Bak.

    Bax and Bak require activation to be able to form pores.
    The anti-apoptotics don't inhibit activated Bax and Bak; their only role
    is to bind BH3-onlies.
    """

    alias_model_components()
    declare_initial_conditions()

    translocate_tBid_Bax_BclxL()

    tBid_activates_Bax_and_Bak()

    # Anti-apoptotics bind activator tBid
    # Doug Green's "MODE 1" inhibition
    tBid_binds_all_anti_apoptotics()

    sensitizers_bind_anti_apoptotics()

    # Bax and Bak form pores by sequential addition
    lopez_pore_formation(do_pore_transport=do_pore_transport)
예제 #57
0
def NFkB_cFlip_interaction():
    """Several papers mention NFkB mediated expression of c-Flip as an important mediator of apoptosis and necrosis."""
    Parameter('Flip_degradase_0', 0)
    alias_model_components()

    Initial(Flip_degradase(bf=None), Flip_degradase_0)

    Rule('NFkB_cFlipL',
         NFkB() >> NFkB() + flip_L(bDED=None), Parameter('NFkB_FlipL', 1e-2))
    Rule('NFkB_cFlipS',
         NFkB() >> NFkB() + flip_S(bDED=None), Parameter('NFkB_FlipS', 1e-2))

    Rule('NFkB_degradase',
         NFkB() >> NFkB() + Flip_degradase(bf=None),
         Parameter('Deg_flip', 1e-6))
    Rule(
        'Deg_cFlipL',
        Flip_degradase(bf=None) + flip_L(bDED=None) >> Flip_degradase(bf=None),
        Parameter('deg_FlipL', 5e-6))
    Rule(
        'Deg_cFlipS',
        Flip_degradase(bf=None) + flip_S(bDED=None) >> Flip_degradase(bf=None),
        Parameter('deg_FlipS', 5e-6))
예제 #58
0
def ComplexII_Hypothesis_1():

    # ==============================================================
    # Initializataion of Complex II
    # --------------------------------------------------------------
    #   FADD + TRADD[active] <-> FADD:TRADD[active]
    #   FADD + RIP1 <-> FADD:RIP1
    #   TRADD + RIP1 <-> TRADD:RIP1
    # --------------------------------------------------------------

    # -------------Assembling Complex II-----------------
    Parameter('Ka_RIP1_FADD',
              1e-7)  # Biochemica et Biophysica Acta 1834(2013) 292-300
    Parameter('Kd_RIP1_FADD',
              1e-8)  # Biochemica et Biophysica Acta 1834(2013) 292-300
    alias_model_components()

    bind(FADD(bDD=None, bDED1=None, bDED2=None), 'bDD',
         TRADD(bDD1=None, state='active'), 'bDD1', [1e-6, 1e-3])
    bind(FADD(bDD=None), 'bDD', RIP1(bDD=None, bRHIM=None, state='unmod'),
         'bDD', [Ka_RIP1_FADD, Kd_RIP1_FADD])
    bind(TRADD(bDD2=None, state='active'), 'bDD2',
         RIP1(bDD=None, bRHIM=None, state='unmod'), 'bDD', [1e-6, 1e-3])
예제 #59
0
def cui_direct2(do_pore_transport=False):
    """The "direct 2" model drawn from [Cui2008]_.

    Builds on the "direct 1" model from [Cui2008]_, implemented
    in :py:func:`cui_direct1` (see source code).

    Parameters
    ----------
    do_pore_transport : True or False (default)
        As for :py:func:`chen_biophys_j`.
    """
    alias_model_components()

    # Build on the "direct 1" model...
    cui_direct1(do_pore_transport=do_pore_transport)

    # By adding simultaneous auto-activation and dimerization of Bax
    Rule('Bax_autoactivation_dimerization',
        Bax(state='A', bf=None, s1=None, s2=None) +
        Bax(state='C', bf=None, s1=None, s2=None) >>
        Bax(state='A', bf=None, s1=1, s2=None) %
        Bax(state='A', bf=None, s1=None, s2=1),
        Parameter('Bax_autoactivation_dimerization_k', 2e5/(N_A*V)))
예제 #60
0
def RIP1_Hypothesis_1():
    """Deubiquitinated RIP1, released from Complex I, can bind FADD and initiate apoptosis and necrosis (the literature). Yet, there is nothing explicitely stated in the literature to distinguish deubiquitinated from unmodifed RIP1. If RIP1-unmod = RIP1-deub (i.e. RIP1 Hypothesis 1), then unstimulated cell will undergo apoptosis. There needs to be a starting point that is not RIP1-unmod. Papers show cIAP expression inhibits apoptosis by ubiquitinating RIP1. If we let the initial state of the cell be primarily or ALL RIP1-ub, then we can have a cell that reponses to pro-apoptotic stimuli as demonstrated in literature."""
    Parameter('RIP1_0',
              12044)  # molecules per cell (arbitrarily assigned) 12044
    alias_model_components()
    Initial(RIP1(bDD=None, bRHIM=None, bPARP=None, state='ub'), RIP1_0)  # RIP1

    # =============================
    # Complex I - RIP1 Modification
    # -----------------------------
    #   CompI + RIP1-ub <> CompI:RIP1-ub >> [active]CompI:RIP1-Ub
    #   [active]CompI:RIP1-Ub >> [active]CompI:RIP1
    #   [active]CompI:RIP1-Ub <> [active]CompI + RIP1
    #   [active]CompI:RIP1-Ub >> [active]CompI
    # -----------------------------

    # Complex I recruits RIP1
    bind(CompI(bDD=None, state='unmod'), 'bDD',
         RIP1(bDD=None, bRHIM=None, state='ub'), 'bDD', [1e-6, 1e-3])
    Rule(
        'CompI_Ub_2',
        CompI(bDD=ANY, state='unmod') % RIP1(bDD=ANY, bRHIM=None, state='ub')
        >> CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='ub'),
        Parameter('k3', 1))

    # De-ubiquitination and degradation or release of RIP1 from complex I
    Rule(
        'CompI_deUb',
        CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='ub') >>
        CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='unmod'),
        Parameter('k6', 1e-3))
    bind(CompI(bDD=None, state='mod'), 'bDD',
         RIP1(bDD=None, bRHIM=None, state='unmod'), 'bDD', [1e-10, 1])
    Rule(
        'RIP1_deg',
        CompI(bDD=ANY, state='mod') % RIP1(bDD=ANY, bRHIM=None, state='ub') >>
        CompI(bDD=None, state='mod'), Parameter('k7', 1))