biocrnpyler.mechanisms.Energy_Transcription_MM
- class biocrnpyler.mechanisms.Energy_Transcription_MM(rnap: Species, fuels: List[Species], wastes: List[Species], name='energy_transcription_mm', **kwargs)[source]
Bases:
MechanismMichaelis-Menten transcription with explicit energy consumption.
A ‘transcription’ mechanism that models transcription with explicit consumption of energy sources (fuel species like NTPs) and production of waste products. This mechanism couples RNAP-DNA binding with length-dependent fuel consumption to model realistic transcription energetics.
The reaction follows the schema:
\[\begin{split} & {\text{G}} + {\text{RNAP}} \rightleftharpoons {\text{G}}\mathord{:}{\text{RNAP}} \\ & {\text{Fuel}} + {\text{G}}\mathord{:}{\text{RNAP}} \rightarrow {\text{G}} + {\text{RNAP}} + {\text{T}} \\ & {\text{Fuel}} + {\text{G}}\mathord{:}{\text{RNAP}} \rightarrow {\text{G}}\mathord{:}{\text{RNAP}} + {\text{wastes}} \end{split}\]Transcription occurs at rate ‘ktx’ / L (length-dependent), while fuel consumption occurs at rate ‘ktx’, resulting in L times more fuel consumption than transcripts produced.
- Parameters:
rnap (
Species) – RNA polymerase species that catalyzes transcription.fuels (
listofSpecies) – List of fuel species (e.g., NTPs) consumed during transcription.wastes (
listofSpecies) – List of waste species (e.g., pyrophosphate) produced during transcription.name (
str, default'energy_transcription_mm') – Name identifier for this mechanism instance.
- Attributes:
See also
Transcription_MMMM transcription without explicit energy.
MichaelisMentenCopyBase class for MM copy mechanisms.
MechanismBase class for all mechanisms.
Notes
This mechanism provides a more realistic model of transcription by explicitly tracking energy consumption. Key features:
Length-dependent transcription rate (‘ktx’ / L)
Explicit fuel (NTP) consumption
Waste product generation
RNAP-DNA binding dynamics
The length parameter L represents the gene length in appropriate units, and the mechanism automatically scales fuel consumption to match the energetic requirements of synthesizing an mRNA of length L.
Common applications include:
Detailed TX-TL models with explicit resources
Models of transcriptional burden and resource depletion
Systems where NTP availability affects gene expression
Required parameters for this mechanism:
‘ktx’ : Base transcription rate constant
‘kb’ : Forward binding rate for RNAP to DNA
‘ku’ : Reverse unbinding rate for RNAP from DNA
‘length’ : Gene length (for length-dependent transcription)
Examples
Model transcription with explicit NTP consumption:
>>> gene = bcp.DNAassembly( ... name='constitutive_promoter', ... promoter='pconst', rbs='RBS_medium', protein='GFP') >>> rnap = bcp.Species('RNAP') >>> ntp = bcp.Species('NTP') >>> ppi = bcp.Species('PPi') >>> mechanism = bcp.Energy_Transcription_MM( ... rnap=rnap, ... fuels=[ntp], ... wastes=[ppi] ... ) >>> mixture = bcp.Mixture( ... components=[gene], ... mechanisms={ ... 'transcription': mechanism, ... 'translation': bcp.SimpleTranslation() ... }, ... parameters={'ktx': 0.05, 'kb': 1.0, 'ku': 0.1, 'length': 1000}, ... parameter_file='mixtures/pure_parameters.tsv' ... ) >>> mixture.compile_crn()
Methods
Generate reactions for energy-consuming transcription.
Generate species for energy-consuming transcription.
- update_reactions(dna, component, part_id=None, complex=None, transcript=None, protein=None, **kwargs)[source]
Generate reactions for energy-consuming transcription.
Creates three reactions modeling transcription with explicit fuel consumption and waste production: RNAP-DNA binding, length-dependent transcription, and fuel consumption.
- Parameters:
dna (
Species) – The DNA species (gene) being transcribed.component (
Component) – Component containing parameter values. Required for parameter lookup.part_id (
str, optional) – Identifier for parameter lookup. If None, defaults to component.name.complex (
Complex, optional) – Pre-specified DNA:RNAP complex species (unused, complex is created internally).transcript (
Species, optional) – The mRNA transcript species produced.protein (
Species, optional) – Protein species (unused, accepted for API consistency).**kwargs – Additional keyword arguments (unused).
- Returns:
List of three reactions:
RNAP-DNA binding (rates: ‘kb’, ‘ku’)
Transcription with fuel (rate: ‘ktx’ / ‘length’)
Fuel consumption producing wastes (rate: ‘ktx’)
- Return type:
listofReaction
Notes
The reactions model transcription energetics:
DNA + RNAP \(\rightleftharpoons\) DNA:RNAP (rates: ‘kb’ and ‘ku’)
Fuel + DNA:RNAP \(\rightarrow\) Fuel + DNA + RNAP + mRNA (rate: ‘ktx’ / L)
Fuel + DNA:RNAP \(\rightarrow\) DNA:RNAP + wastes (rate: ‘ktx’)
The length-dependent transcription rate (‘ktx’ / L) ensures that L times more fuel is consumed than transcripts produced, reflecting the energetic cost of synthesizing a transcript of length L.
- update_species(dna, transcript=None, protein=None, **kwargs)[source]
Generate species for energy-consuming transcription.
Creates species involved in transcription with explicit energy consumption including DNA, RNAP, the DNA:RNAP complex, transcript, and fuel species.
- Parameters:
- Returns:
List containing [dna, rnap, transcript, fuels…, dna:rnap complex].
- Return type:
listofSpecies