ecoli.processes.transcript_elongation

Transcript Elongation

This process models nucleotide polymerization into RNA molecules by RNA polymerases. Polymerization occurs across all polymerases simultaneously and resources are allocated to maximize the progress of all polymerases up to the limit of the expected polymerase elongation rate and available nucleotides. The termination of RNA elongation occurs once a RNA polymerase has reached the end of the annotated gene.

class ecoli.processes.transcript_elongation.TranscriptElongation(parameters=None)[source]

Bases: PartitionedProcess

Transcript Elongation PartitionedProcess

defaults:
  • max_time_step (float) : ???

  • rnaPolymeraseElongationRateDict (dict): Array with elongation rate

    set points for different media environments.

  • rnaIds (array[str]) : array of names for each TU

  • rnaLengths (array[int])array of lengths for each TU

    (in nucleotides?)

  • rnaSequences (2D array[int])Array with the nucleotide sequences

    of each TU. This is in the form of a 2D array where each row is a TU, and each column is a position in the TU’s sequence. Nucleotides are stored as an index {0, 1, 2, 3}, and the row is padded with -1’s on the right to indicate where the sequence ends.

  • ntWeights (array[float]): Array of nucleotide weights

  • endWeight (array[float]): ???,

  • replichore_lengths (array[int]): lengths of replichores

    (in nucleotides?),

  • is_mRNA (array[bool]): Mask for mRNAs

  • ppi (str): ID of PPI

  • inactive_RNAP (str): ID of inactive RNAP

  • ntp_ids list[str]: IDs of ntp’s (A, C, G, U)

  • variable_elongation (bool): Whether to use variable elongation.

    False by default.

  • make_elongation_rates: Function to make elongation rates, of the

    form: lambda random, rates, timestep, variable: rates

calculate_request(timestep, states)[source]
defaults: Dict[str, Any]
{   'attenuated_rna_indices': array([], dtype=int64),
    'cell_density': 1100.0 [g/L],
    'charged_trnas': [],
    'emit_unique': False,
    'endWeight': array([], dtype=float64),
    'fragmentBases': [],
    'get_attenuation_stop_probabilities': <function get_attenuation_stop_probabilities at 0x7fc270e55620>,
    'inactive_RNAP': '',
    'is_mRNA': array([], dtype=float64),
    'location_lookup': {},
    'make_elongation_rates': <function make_elongation_rates at 0x7fc270e55440>,
    'max_time_step': 0.0,
    'n_avogadro': 6.02214076e+23 [1/mol],
    'n_fragment_bases': 0,
    'ntWeights': array([], dtype=float64),
    'ntp_ids': [],
    'polymerized_ntps': [],
    'ppi': '',
    'recycle_stalled_elongation': False,
    'replichore_lengths': array([], dtype=float64),
    'rnaIds': [],
    'rnaLengths': array([], dtype=float64),
    'rnaPolymeraseElongationRateDict': {},
    'rnaSequences': array([], shape=(1, 0), dtype=float64),
    'seed': 0,
    'submass_indices': {},
    'time_step': 1,
    'trna_attenuation': False,
    'variable_elongation': False}
evolve_state(timestep, states)[source]
isTimeStepShortEnough(inputTimeStep, timeStepSafetyFraction)[source]
name = 'ecoli-transcript-elongation'
ports_schema()[source]
topology
{   'RNAs': ('unique', 'RNA'),
    'active_RNAPs': ('unique', 'active_RNAP'),
    'bulk': ('bulk',),
    'bulk_total': ('bulk',),
    'environment': ('environment',),
    'listeners': ('listeners',),
    'timestep': ('timestep',)}
ecoli.processes.transcript_elongation.assertions(config, actual_update)[source]
ecoli.processes.transcript_elongation.format_data(data, bulk_ids, rna_dtypes, rnap_dtypes, submass_dtypes)[source]
ecoli.processes.transcript_elongation.get_attenuation_stop_probabilities(trna_conc)[source]
ecoli.processes.transcript_elongation.get_mapping_arrays(x, y)[source]

Returns the array of indexes of each element of array x in array y, and vice versa. Assumes that the elements of x and y are unique, and set(x) == set(y).

ecoli.processes.transcript_elongation.make_elongation_rates(random, rates, timestep, variable)[source]
ecoli.processes.transcript_elongation.plots(actual_update, filename='transcript_elongation_toymodel.png')[source]