Skip to main content

A package for simulating molecules on a lattice.

Project description

LatticePy

A python package for MCMC simulations of folding and phase separation in biomolecules on a lattice. LatticePy currently supports the simulation of amino acids and protein polymers on a lattice with any given number of units.

Installation

Stable Release

Run the following command in bash (Not on PyPi yet) :

pip3 install LatticePy

Developers Release

Run the following command in bash:

pip3 install git+https://github.com/sohitmiglani/LatticePy#egg=LatticePy

Tutorial

- Import the package and initialize the lattice. You can customize the bounds of the lattice, the compactness energy, the beta (1/Temperature), and the lattice type.

from LatticePy import lattice
mylattice = lattice(bound=50, E_c=1.5, beta=0, lattice_type='simple_cubic')

- Add your polymer

  • By a list of polarities
polymer = [-1, -1, -1, 1, 1, -1, -1, 1, -1, -1, -1, -1, 1, -1, 1, 1, 1, -1, 1, -1, 1, -1, 1, 1, 1, -1, -1]
mylattice.add_polymer(polymer, n_polymers=1, placement='straight') # to add it in a straight line
mylattice.add_polymer(polymer, n_polymers=1, placement='randomly') # to add it in a random fashion which may cause knots
  • By sequence
sequence = 'MTKSHSEEVIVPEFNSSAKELPRPLAEKCPSIIKKFISAYDAKPDFVARSPGRVNLIGEH'
mylattice.add_protein(sequence, type='straight', n_polymers=1)

- Simulate your polymers with annealing

Change the parameters as you see fit

mylattice.simulate(n_mcmc=200000, 
                   interval=1000, 
                   record_intervals = True, 
                   anneal=True, 
                   beta_lower_bound=0, 
                   beta_upper_bound=2, 
                   beta_interval=0.05)

- Visualize the energy variation over all the MCMC steps

mylattice.energy_variation_graph()

- Visualize in an interactive 3-D lattice

mylattice.visualize()

You can see the interactive 3-D lattice for this run here.

- Get important statistics

mylattice.native_contacts

20

mylattice.energy

-58.7

mylattice.non_covalent_hydrophobic_contacts

9

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

LatticePy-0.1.4.tar.gz (9.7 kB view hashes)

Uploaded Source

Built Distribution

LatticePy-0.1.4-py3-none-any.whl (10.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page