Skip to content

Monte Carlo simulation of 11nm DNA fibre digestion by MNase

Notifications You must be signed in to change notification settings

awakenedhaki/mnase-simulation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Micrococcal Nuclease Simulation

This repository contains a Python-based simulation that models the action of Micrococcal Nuclease (MNase) on DNA 11nm fibres. The core components of the simulation include:

  • Fibre Class: Represents the 11nm DNA fibre structure, including nucleosomes and linker DNA segments.

  • MNase Class: Simulates the stochastic cleavage action of MNase on DNA fibres, randomly selecting nucleosomes and linkers for enzymatic digestion.

  • Main Simulation Logic: Orchestrates the simulation over a series of time steps, continuously updating the state of the DNA fibres based on MNase action.

Key Features:

  • Stochastic Modelling: Utilizes Monte Carlo methods to realistically simulate the random nature of enzymatic cleavage on DNA.

  • Object-Oriented Approach: Employs classes to effectively represent complex biological entities and their interactions.

  • Statistical Analysis: The output, consisting of the lengths of DNA fibres post-MNase treatment, is suitable for further statistical analysis to understand the distribution and average effects of the nuclease.

Objectives

  • Initialize git repository
  • Create boilerplate files
    • README.md
    • .gitignore
    • main.py
    • model/__init__.py
  • Define classes
    • Fibre (data structure)
      • Define attributes: n_nuclesomes, left_linker, right_linker
      • Implement constructor (__init__ method)
      • Implement method to determine number of nucleotides in Fibre
    • MNase (namespace)
      • Implement method to select a random nucleosome index
      • Implement method to select either the left or right linker to cleave
      • Implement method to cleave the fibre
  • Implement Visualization
    • Install matplotlib
    • Define a function to visualize distribution of fibre lengths as a histogram
    • Define a function to visualize fibre length over time

About

Monte Carlo simulation of 11nm DNA fibre digestion by MNase

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages