biocrnpyler.mechanisms.Facilitated_Transport_MM
- class biocrnpyler.mechanisms.Facilitated_Transport_MM(name='facilitated_membrane_protein_transport', mechanism_type='transport', **kwargs)[source]
Bases:
MechanismFacilitated diffusion mechanism with Michaelis-Menten kinetics.
A ‘transport’ mechanism that models facilitated diffusion of substrates through membrane carrier proteins. Unlike simple channels, carriers undergo conformational changes to transport substrates across membranes. The mechanism follows Michaelis-Menten kinetics with explicit substrate and product binding steps.
The reaction follows the schema:
\[ {\text{Sub}} + {\text{MC}} \rightleftharpoons {\text{Sub}}\mathord{:}{\text{MC}} \rightarrow {\text{Prod}}\mathord{:}{\text{MC}} \rightarrow {\text{Prod}} + {\text{MC}} \]where MC is the membrane carrier protein.- Parameters:
name (
str, default'facilitated_membrane_protein_transport') – Name identifier for this mechanism instance.mechanism_type (
str, default'transport') – Type classification of this mechanism.
- Attributes:
name (
str) – Name of the mechanism instance.mechanism_type (
str) – Type classification (‘transport’).
See also
Simple_TransportPassive transport through channels.
Primary_Active_Transport_MMEnergy-dependent active transport.
MichaelisMentenEnzyme mechanism with similar kinetics.
MechanismBase class for all mechanisms.
Notes
This mechanism models facilitated diffusion by carrier proteins that alternate between substrate-bound and product-bound conformations. The carrier binds substrate on one side of the membrane, undergoes a conformational change to transport it across, releases it as product, and returns to the original conformation.
Key characteristics:
Does not require ATP or other energy sources
Transport is driven by concentration gradients
Carrier proteins alternate between conformational states
Follows Michaelis-Menten saturation kinetics
Common examples include:
GLUT transporters for glucose
Amino acid carriers
Nucleoside transporters
Urea transporters
The mechanism uses a GeneralPropensity with a Heaviside function for the initial binding step to enforce directionality based on concentration gradients.
Required parameters for this mechanism:
‘kb_subMC’ : Forward binding rate for substrate to membrane carrier
‘ku_subMC’ : Unbinding rate for substrate from carrier
‘k_trnspMC’ : Conformational change rate (transport step)
‘ku_prodMC’ : Unbinding rate for product from carrier
Examples
Model glucose transport through a GLUT transporter:
>>> glc_in = bcp.Species('glucose', compartment='cytoplasm') >>> glc_out = bcp.Species('glucose', compartment='external') >>> carrier = bcp.MembraneChannel( ... integral_membrane_protein='GlucoseTransporter', ... substrate=glc_out, ... external_compartment='external', ... internal_compartment='cytoplasm', ... direction='Importer' ... ) >>> mechanism = bcp.Facilitated_Transport_MM() >>> mixture = bcp.Mixture( ... components=[carrier], ... mechanisms={'transport': mechanism}, ... parameters={ ... 'kb_subMC': 1.0, 'ku_subMC': 0.5, ... 'k_trnspMC': 0.8, 'ku_prodMC': 0.5 ... } ... ) >>> mixture.compile_crn()
Methods
Generate reactions for facilitated transport.
Generate species for facilitated transport.
- update_reactions(membrane_carrier, substrate, product, complex_dict=None, component=None, part_id=None, **kwargs)[source]
Generate reactions for facilitated transport.
Creates four reactions representing the complete transport cycle: substrate binding, substrate unbinding, conformational change (transport), and product release.
- Parameters:
membrane_carrier (
Species) – The membrane carrier protein facilitating transport.substrate (
Species) – The substrate species being transported.product (
Species) – The product species after transport.complex_dict (
dict, optional) – Pre-defined dictionary of complex species. If None, complexes are automatically created using the same logic as in update_species.component (
Component) – Component containing parameter values. Required for parameter lookup.part_id (
str) – Identifier for parameter lookup in the component’s parameter database. Required for parameter lookup.**kwargs – Additional keyword arguments (unused).
- Returns:
List of four reactions: [substrate_binding, substrate_unbinding, transport_step, product_release].
- Return type:
listofReaction- Raises:
AttributeError – If component or part_id is None (required for parameter lookup).
Notes
The reaction scheme follows this pathway:
MC + Sub \(\rightleftharpoons\) MC:Sub (GeneralPropensity with Heaviside function using ‘kb_subMC’)
MC:Sub \(\rightarrow\) MC + Sub (irreversible, rate: ‘ku_subMC’)
MC:Sub \(\rightarrow\) MC:Prod (conformational change, rate: ‘k_trnspMC’)
MC:Prod \(\rightarrow\) MC + Prod (irreversible, rate: ‘ku_prodMC’)
The initial binding step uses a GeneralPropensity with a Heaviside function to enforce concentration gradient-driven directionality. The Heaviside function ensures transport only occurs when substrate concentration exceeds product concentration.
- update_species(membrane_carrier, substrate, product, complex_dict=None, **kwargs)[source]
Generate species for facilitated transport.
Creates species for the membrane carrier, substrate, product, and the two intermediate complexes formed during the transport cycle.
- Parameters:
membrane_carrier (
Species) – The membrane carrier protein that facilitates transport.substrate (
Species) – The substrate species being transported (typically intracellular side).product (
Species) – The product species after transport (typically extracellular side). Usually the same molecular species as substrate but in a different compartment.complex_dict (
dict, optional) – Pre-defined dictionary of complex species with keys ‘sub:MC’ and ‘prod:MC’. If None, complexes are automatically created.**kwargs – Additional keyword arguments (unused).
- Returns:
List containing [membrane_carrier, substrate, product, complex_array] where complex_array is a list of two Complex species: [substrate:carrier, product:carrier].
- Return type:
list
Notes
The method creates two complex species representing intermediates in the transport cycle:
sub:MC : substrate:membrane_carrier complex
prod:MC : product:membrane_carrier complex