biocrnpyler.mechanisms.SimpleTranscription

class biocrnpyler.mechanisms.SimpleTranscription(name='simple_transcription', mechanism_type='transcription')[source]

Bases: Mechanism

Simple catalytic transcription mechanism.

A ‘transcription’ mechanism that models transcription as a single catalytic reaction where DNA directly produces mRNA without explicitly modeling RNA polymerase binding and unbinding. This simplified mechanism is appropriate when polymerase dynamics are fast compared to other processes.

The reaction follows the schema:

\[{\text{G}} \rightarrow {\text{G}} + {\text{T}} \]

where G is the gene (DNA) and T is the transcript (mRNA).

Parameters:
  • name (str, default 'simple_transcription') – Name identifier for this mechanism instance.

  • mechanism_type (str, default 'transcription') – Type classification of this mechanism.

Attributes:
  • name (str) – Name of the mechanism instance.

  • mechanism_type (str) – Type classification (‘transcription’).

See also

Transcription_MM

Explicit Michaelis-Menten transcription.

OneStepGeneExpression

Combined transcription-translation.

Mechanism

Base class for all mechanisms.

Notes

This mechanism is appropriate for modeling scenarios where:

  • RNA polymerase dynamics are fast and at quasi-steady-state

  • The focus is on transcript-level regulation

  • Computational efficiency is prioritized

The catalytic abstraction treats the DNA as a template that is not consumed in the reaction. In mixtures without explicit transcription (e.g., expression mixtures), this mechanism can combine with translation rates to produce protein directly.

Common applications include:

  • Basic transcription models

  • Models where RNAP is not limiting

  • Constitutive or weakly regulated promoters

Required parameters for this mechanism:

  • ‘ktx’ : Transcription rate constant

  • ‘ktl’ : Translation rate constant (when used in expression mixtures without explicit transcripts)

Examples

Model constitutive transcription:

>>> gene = bcp.DNAassembly(
...     name='constitutive_GFP',
...     promoter='pconst', protein='GFP')
>>> tx_mechanism = bcp.SimpleTranscription()
>>> mixture = bcp.Mixture(
...     components=[gene],
...     mechanisms={
...         'transcription': tx_mechanism,
...     },
...     parameters={'ktx': 0.05}
... )
>>> mixture.compile_crn()

Methods

update_reactions

Generate reactions for simple transcription.

update_species

Generate species for simple transcription.

update_reactions(dna, component=None, ktx=None, part_id=None, transcript=None, protein=None, **kwargs)[source]

Generate reactions for simple transcription.

Creates a single mass-action reaction representing transcription from DNA to mRNA. In expression mixtures without explicit transcription, combines transcription and translation rates to produce protein directly.

Parameters:
  • dna (Species) – The DNA species (gene) that produces the transcript.

  • component (Component, optional) – Component containing parameter values. Required if ktx is not provided directly.

  • ktx (Parameter or float, optional) – Transcription rate constant. If None, retrieved from component parameters.

  • part_id (str, optional) – Identifier for parameter lookup in the component’s parameter database.

  • transcript (Species, optional) – The mRNA transcript species produced. If None and protein is not None, produces protein directly.

  • protein (Species, optional) – Protein species for expression mixtures without explicit transcription.

  • **kwargs – Additional keyword arguments (unused).

Returns:

List containing a single mass-action reaction for transcription.

Return type:

list of Reaction

Raises:

ValueError – If component is None and ktx is not provided.

Notes

The reaction has two possible forms:

  1. With transcript: DNA \(\rightarrow\) DNA + mRNA (rate: ‘ktx’)

  2. Without transcript: DNA \(\rightarrow\) DNA + Protein (rate: ‘ktx’ * ‘ktl’)

The second form is used in expression mixtures that skip explicit transcript modeling.

update_species(dna, transcript=None, protein=None, **kwargs)[source]

Generate species for simple transcription.

Returns the DNA and transcript species (and optionally protein) involved in the transcription reaction.

Parameters:
  • dna (Species) – The DNA species (gene) that produces the transcript.

  • transcript (Species, optional) – The mRNA transcript species produced. If None, only DNA is returned.

  • protein (Species, optional) – Protein species (included for API consistency with expression mixtures).

  • **kwargs – Additional keyword arguments (unused).

Returns:

List containing DNA and any non-None transcript/protein species.

Return type:

list of Species