ecoli.processes.chromosome_structure
Chromosome Structure
Resolve collisions between molecules and replication forks on the chromosome.
Remove and replicate promoters and motifs that are traversed by replisomes.
Reset the boundaries and linking numbers of chromosomal segments.
- class ecoli.processes.chromosome_structure.ChromosomeStructure(parameters=None)[source]
Bases:
Step
Chromosome Structure Process
- _compute_new_segment_attributes(old_boundary_molecule_indexes, old_boundary_coordinates, old_linking_numbers, new_molecule_indexes, new_molecule_coordinates, spans_oriC, spans_terC)[source]
Calculates the updated attributes of chromosomal segments belonging to a specific chromosomal domain, given the previous and current coordinates of molecules bound to the chromosome.
- Parameters:
old_boundary_molecule_indexes (ndarray[Any, dtype[int64]]) – (N, 2) array of unique indexes of molecules that formed the boundaries of each chromosomal segment in the previous timestep.
old_boundary_coordinates (ndarray[Any, dtype[int64]]) – (N, 2) array of chromosomal coordinates of molecules that formed the boundaries of each chromosomal segment in the previous timestep.
old_linking_numbers (ndarray[Any, dtype[int64]]) – (N,) array of linking numbers of each chromosomal segment in the previous timestep.
new_molecule_indexes (ndarray[Any, dtype[int64]]) – (N,) array of unique indexes of all molecules bound to the domain at the current timestep.
new_molecule_coordinates (ndarray[Any, dtype[int64]]) – (N,) array of chromosomal coordinates of all molecules bound to the domain at the current timestep.
spans_oriC (bool) – True if the domain spans the origin.
spans_terC (bool) – True if the domain spans the terminus.
- Returns:
Dictionary of the following format:
{ 'boundary_molecule_indexes': (M, 2) array of unique indexes of molecules that form the boundaries of new chromosomal segments, 'boundary_coordinates': (M, 2) array of chromosomal coordinates of molecules that form the boundaries of new chromosomal segments, 'linking_numbers': (M,) array of linking numbers of new chromosomal segments }
- Return type:
-
defaults: Dict[str, Any]
{ 'RNA_sequences': [], 'active_tfs': [], 'amino_acids': [], 'calculate_superhelical_densities': False, 'emit_unique': False, 'fragmentBases': [], 'inactive_RNAPs': [], 'n_TFs': 1, 'n_TUs': 1, 'n_amino_acids': 1, 'n_fragment_bases': 1, 'no_child_place_holder': -1, 'ppi': 'ppi', 'protein_sequences': [], 'relaxed_DNA_base_pairs_per_turn': 1, 'replichore_lengths': [0, 0], 'ribosome_30S_subunit': '30S', 'ribosome_50S_subunit': '50S', 'seed': 0, 'terC_index': 1, 'water': 'water'}
- name = 'ecoli-chromosome-structure'
-
topology
{ 'DnaA_boxes': ('unique', 'DnaA_box'), 'RNAs': ('unique', 'RNA'), 'active_RNAPs': ('unique', 'active_RNAP'), 'active_replisomes': ('unique', 'active_replisome'), 'active_ribosome': ('unique', 'active_ribosome'), 'bulk': ('bulk',), 'chromosome_domains': ('unique', 'chromosome_domain'), 'full_chromosomes': ('unique', 'full_chromosome'), 'genes': ('unique', 'gene'), 'global_time': ('global_time',), 'listeners': ('listeners',), 'next_update_time': ('next_update_time', 'chromosome_structure'), 'oriCs': ('unique', 'oriC'), 'promoters': ('unique', 'promoter'), 'timestep': ('timestep',)}
- update_condition(timestep, states)[source]
See
update_condition()
.