ecoli.processes.listeners.mass_listener

Mass Listener

Represents the total cellular mass.

class ecoli.processes.listeners.mass_listener.MassListener(parameters=None)[source]

Bases: Step

defaults: Dict[str, Any]
{   'bulk_ids': [],
    'bulk_masses': array([[0., 0., 0., 0., 0., 0., 0., 0., 0.]]),
    'cellDensity': 1100.0,
    'compartment_abbrev_to_index': {},
    'compartment_id_to_index': {},
    'compartment_indices': {   'cytosol': [],
                               'extracellular': [],
                               'flagellum': [],
                               'inner_membrane': [],
                               'membrane': [],
                               'outer_membrane': [],
                               'periplasm': [],
                               'pilus': [],
                               'projection': []},
    'emit_unique': False,
    'match_wcecoli': False,
    'n_avogadro': 6.0221409e+23,
    'submass_to_idx': {   'DNA': 8,
                          'mRNA': 2,
                          'metabolite': 6,
                          'miscRNA': 3,
                          'nonspecific_RNA': 4,
                          'protein': 5,
                          'rRNA': 0,
                          'tRNA': 1,
                          'water': 7},
    'time_step': 1.0,
    'unique_ids': [],
    'unique_masses': array([[0., 0., 0., 0., 0., 0., 0., 0., 0.]])}
name = 'ecoli-mass-listener'
next_update(timestep, states)[source]
ports_schema()[source]
topology
{   'bulk': ('bulk',),
    'global_time': ('global_time',),
    'listeners': ('listeners',),
    'timestep': ('timestep',),
    'unique': ('unique',)}
update_condition(timestep, states)[source]
class ecoli.processes.listeners.mass_listener.PostDivisionMassListener(parameters=None)[source]

Bases: MassListener

Normally, the mass listener updates after all other processes and steps have run. However, after division, the mass must be updated immediately so other processes have access to the accurate mass of their daughter cell. This process ensures that the mass seen by other processes following division is accurate.

name = 'post-division-mass-listener'
update_condition(timestep, states)[source]