biocrnpyler.components.combinatorial_conformation
Classes
|
A class to represent a PolymerConformation (made of one unique OrderedPolymerSpecies) with many internal Complexes which can bind and unbind in many different ways. |
|
A combinatorial conformaiton with an additional set of states "expressing_states" which can transcribe/express rna/protein products. |
- class biocrnpyler.components.combinatorial_conformation.CombinatorialConformation(final_states, initial_states=None, intermediate_states=None, excluded_states=None, state_part_ids=None, name=None, **keywords)[source]
A class to represent a PolymerConformation (made of one unique OrderedPolymerSpecies) with many internal Complexes which can bind and unbind in many different ways.
Binding reactions will be generated to form all PolymerConformations in final_states from all the PolymerConformations in initial_states. There must be a single, unique, OrderedPolymerSpecies in all the conformations. Intermediate states restricts the binding reactions to first form PolymerConformations in this list. At a high level this generates the following reactions:
intial_states <-[Combinatorial Binding]-> final_states
- if intermediate_states are given:
intial_states <-[Combinatorial Binding]-> intermediate_states <-[Combinatorial Binding]->final_states
Unlike CombinatorialComplex where Species are added individual, in CombinatorialConformation, groups of Species are added in single steps to produce the appropriate Complexes.
- Parameters:
final_states – one or more PolymerConformations.
initial_states – a list of initial PolymerConformations which can bind/unbind to become the final_state
intermediate_states – a list of intermediate PolymerConformations formed when converting initial_states to final_states. If None, all possible intermediate PolymerConformations are enumerated.
excluded_states – a list of intermediate PolymerConformations which will not be formed during enumeration. if None: no intermediates will be excluded.
state_part_ids – a dictionary {PolymerConformation : str} used to generate shorter part-ids for this conformation
- add_mechanism(mechanism: Mechanism, mech_type=None, overwrite=False, optional_mechanism=False)[source]
adds a mechanism of type mech_type to the Component Mechanism dictionary.
- Parameters:
mechanism
mech_type
overwrite – toggles whether the mechanism is added overwriting any mechanism with the same key.
optional_mechanism – toggles whether an error is thrown if a Mechanism is added that conflicts with an exising Mechanism
- Returns:
- add_mechanisms(mechanisms: Mechanism | GlobalMechanism, overwrite=False, optional_mechanism=False)[source]
This function adds a list or dictionary of mechanisms to the mixture.
- Parameters:
mechanisms – Can take both GlobalMechanisms and Mechanisms
overwrite – toggles whether the mechanism is added overwriting any mechanism with the same key.
optional_mechanism – toggles whether an error is thrown if a Mechanism is added that conflicts with an exising Mechanism
- Returns:
- property compartment
The compartment of the Component.
- Returns:
Compartment
- enumerate_components(**keywords) List[source]
this is for component enumeration. Usually you will return a list of components that are copies of existing ones (first list) and new components (second list). For example, A DNA_construct makes a list of copies of its parts as the first output, and a list of RNA_constructs as the second output. An RNA_construct will make a list of copies of its parts as the first output, and a list of Protein components as its second output (if it makes any proteins)
- get_mechanism(mechanism_type, optional_mechanism=False)[source]
Searches the Component for a Mechanism of the correct type.
If the Component does not have the mechanism, searches the Components’ Mixture for the Mechanism.
- Parameters:
mechanism_type
optional_mechanism – toggles whether an error is thrown if no mechanism is found
- Returns:
- get_parameter(param_name: str, part_id=None, mechanism=None, return_numerical=False, return_none=False, check_mixture=True) Parameter | Real[source]
Get a parameter from different objects that hold parameters.
- Hierarchy:
tries to find the Parameter in Component.parameter_database
tries to find the parameter in Component.mixture.parameter_database
- Parameters:
param_name
part_id
mechanism
return_numerical – numerical value or the parameter object is returned
return_none – returns None instead of throwing an error if a parameter isn’t found
check_mixture – toggle whether or not to check the Component’s Mixture as well
- Returns:
Parameter object or a Real number
- set_mixture(mixture) None[source]
Set the mixture the Component is in.
- Parameters:
mixture
- Returns:
None
- classmethod set_species(species: Species | str, material_type=None, compartment=None, attributes=None) Species[source]
Helper function that allows species to be set from strings, species, or Components
- Parameters:
species – Species, str, Component
material_type
compartment
attributes
- Returns:
Species
- class biocrnpyler.components.combinatorial_conformation.CombinatorialConformationPromoter(promoter_states, promoter_location, promoter_states_on=True, activating_complexes=None, inactivating_complexes=None, name='CombinatorialConformationPromoter', **keywords)[source]
A combinatorial conformaiton with an additional set of states “expressing_states” which can transcribe/express rna/protein products. This class merges Promoter and CombinatorialConformation.
- param promoter_states:
one or more PolymerConformations which are used by the promoter class
- param promoter_states_on:
True/False if True all promoter_states are transcribable. If False all states except promoter_states are transcribable
- param promoter_location:
the index of the monomer in the PolymerConformation which represents the promoter
- param final_states:
one or more PolymerConformations.
- param initial_states:
a list of initial PolymerConformations which can bind/unbind to become the final_state
- param intermediate_states:
a list of intermediate PolymerConformations formed when converting initial_states to final_states. If None, all possible intermediate PolymerConformations are enumerated.
- param excluded_states:
a list of intermediate PolymerConformations which will not be formed during enumeration. if None: no intermediates will be excluded.
- param state_part_ids:
a dictionary {PolymerConformation : str} used to generate shorter part-ids for this conformation
- param activating_complexes:
a list of ComplexSpecies which activate PolymerConformations allowing them to be transcribed.
- param inactivating_complexes:
a list of ComplexSpecies which innactive the PolymerConformation, preventing transcription.
Binding reactions will be generated to form all PolymerConformations in final_states from all the PolymerConformations in initial_states. There must be a single, unique, OrderedPolymerSpecies in all the conformations. Intermediate states restricts the binding reactions to first form PolymerConformations in this list. At a high level this generates the following reactions:
intial_states <-[Combinatorial Binding]-> final_states
- if intermediate_states are given:
intial_states <-[Combinatorial Binding]-> intermediate_states <-[Combinatorial Binding]->final_states
Unlike CombinatorialComplex where Species are added individual, in CombinatorialConformation, groups of Species are added in single steps to produce the appropriate Complexes.
- Parameters:
final_states – one or more PolymerConformations.
initial_states – a list of initial PolymerConformations which can bind/unbind to become the final_state
intermediate_states – a list of intermediate PolymerConformations formed when converting initial_states to final_states. If None, all possible intermediate PolymerConformations are enumerated.
excluded_states – a list of intermediate PolymerConformations which will not be formed during enumeration. if None: no intermediates will be excluded.
state_part_ids – a dictionary {PolymerConformation : str} used to generate shorter part-ids for this conformation
- add_mechanism(mechanism: Mechanism, mech_type=None, overwrite=False, optional_mechanism=False)[source]
adds a mechanism of type mech_type to the Component Mechanism dictionary.
- Parameters:
mechanism
mech_type
overwrite – toggles whether the mechanism is added overwriting any mechanism with the same key.
optional_mechanism – toggles whether an error is thrown if a Mechanism is added that conflicts with an exising Mechanism
- Returns:
- add_mechanisms(mechanisms: Mechanism | GlobalMechanism, overwrite=False, optional_mechanism=False)[source]
This function adds a list or dictionary of mechanisms to the mixture.
- Parameters:
mechanisms – Can take both GlobalMechanisms and Mechanisms
overwrite – toggles whether the mechanism is added overwriting any mechanism with the same key.
optional_mechanism – toggles whether an error is thrown if a Mechanism is added that conflicts with an exising Mechanism
- Returns:
- property compartment
The compartment of the Component.
- Returns:
Compartment
- enumerate_components(**keywords) List[source]
this is for component enumeration. Usually you will return a list of components that are copies of existing ones (first list) and new components (second list). For example, A DNA_construct makes a list of copies of its parts as the first output, and a list of RNA_constructs as the second output. An RNA_construct will make a list of copies of its parts as the first output, and a list of Protein components as its second output (if it makes any proteins)
- classmethod from_promoter(name, assembly, transcript, protein)[source]
Helper function to initialize a promoter instance from another promoter or str.
- Parameters:
name – either string or an other promoter instance
assembly
transcript
protein
- Returns:
Promoter instance
- get_mechanism(mechanism_type, optional_mechanism=False)[source]
Searches the Component for a Mechanism of the correct type.
If the Component does not have the mechanism, searches the Components’ Mixture for the Mechanism.
- Parameters:
mechanism_type
optional_mechanism – toggles whether an error is thrown if no mechanism is found
- Returns:
- get_orphan()[source]
returns a copy of this monomer, except with no parent. But it still has a position and direction
- get_parameter(param_name: str, part_id=None, mechanism=None, return_numerical=False, return_none=False, check_mixture=True) Parameter | Real[source]
Get a parameter from different objects that hold parameters.
- Hierarchy:
tries to find the Parameter in Component.parameter_database
tries to find the parameter in Component.mixture.parameter_database
- Parameters:
param_name
part_id
mechanism
return_numerical – numerical value or the parameter object is returned
return_none – returns None instead of throwing an error if a parameter isn’t found
check_mixture – toggle whether or not to check the Component’s Mixture as well
- Returns:
Parameter object or a Real number
- set_mixture(mixture) None[source]
Set the mixture the Component is in.
- Parameters:
mixture
- Returns:
None
- classmethod set_species(species: Species | str, material_type=None, compartment=None, attributes=None) Species[source]
Helper function that allows species to be set from strings, species, or Components
- Parameters:
species – Species, str, Component
material_type
compartment
attributes
- Returns:
Species
- update_component(internal_species=None, **keywords)[source]
returns a copy of this component, except with the proper fields updated