Source code for src.get.strand_length_distribution

from ..read.strand_length_distribution import strand_length_distribution as read_strand_length_distribution
from ..utils.manage_strand_reactor_files import _create_typical_strand_trajectory_section_dirpath
from .alphabet import alphabet as get_alphabet
from os.path import exists

[docs] def strand_length_distribution( strand_trajectory_id : str, param_file_no : int = 0, ) -> dict: alphabet = get_alphabet(strand_trajectory_id) current_filepath = lambda srn, sn : _create_typical_strand_trajectory_section_dirpath( strand_trajectory_id, param_file_no=param_file_no, simulations_run_no=srn, simulations_no = sn ) + 'length_distribution.txt' simulations_run_no = 0 simulations_no = 0 filepath_lists = [] while exists(current_filepath(simulations_run_no,simulations_no)): filepaths = [] while exists(current_filepath(simulations_run_no, simulations_no)): filepaths += [current_filepath(simulations_run_no, simulations_no),] simulations_no += 1 filepath_lists = filepath_lists + [filepaths,] simulations_run_no += 1 simulations_no = 0 return [read_strand_length_distribution( filepaths, alphabet ) for filepaths in filepath_lists]