src.domains.motif_production_space module#

make_motif_production_dct(alphabet: list, motiflength: int, maximum_ligation_window_length: int) dict[source]#

Creates a motif production dictionary. For the production channel id, see morsaik.domains._production_channel_id The main concept behind the productions is that the hybridization and the ligation kinetics are only characterized by the hybridization sites and maximally one further nucleotide of a dangling strand. Thus, the motif productions are specified by a ligation window that captures the exact hybridization and this potentially dangling end. In the keys, we iterate over all possible ligation windows with different length. The maximum length can be set optionally, else it is the motiflength, which is also the maximum maximum_ligation_window_length, one can set. For the maximum_ligation_window_length, also fully occupied strands are tracked, for ligation_window_lengths that are smaller than the maximum_ligation_window_length, those are not tracked, since they are considered by larger ligation windows.

class MotifProductionSpace(dct, alphabet=None, motiflength=None, maximum_ligation_window_length=None, units='bits', _callingfrommake=False)[source]#

Bases: MotifSpace

Domain of Motif Productions, like motif production rate constants, ligations projected onto motif space.

__init__(dct, alphabet=None, motiflength=None, maximum_ligation_window_length=None, units='bits', _callingfrommake=False)[source]#
static make(alphabet: list, motiflength: int, maximum_ligation_window_length: int) object[source]#

Creates a MultiDomain object from a dictionary of names and domains

Parameters:

inp (MultiDomain or dict{name: DomainTuple}) – The already built MultiDomain or a dictionary of DomainTuples

Return type:

A MultiDomain with the input Domains as domains

property alphabet#
property number_of_letters#
property maximum_ligation_window_length#
property motiflength#