Skip to main content

A package for biomolecular analysis, modelling and design

Project description

ISAMBARD

Intelligent System for Analysis, Model Building And Rational Design.

CircleCI Python Version MIT licensed

ISAMBARD is a Python-based framework for structural analysis and rational design of biomolecules, with a particular focus on parametric modelling of proteins. It is developed and maintained by members of the Woolfson group, University of Bristol.

Citing ISAMBARD

Any publication arising from use of the ISAMBARD software package should cite the following reference:

Wood CW et al (2017) ISAMBARD: an open-source computational environment for biomolecular analysis, modelling and design. Bioinformatics, 33, 3043-50

Installation

ISAMBARD can be installed straight from PyPI using pip:

pip install isambard

Or if you want to try an experimental build (you'll need a C compiler), download from GitHub either by downloading the zipped file or cloning, then navigate to the ISAMBARD folder and type:

pip install .

External Programs

If you want to add side chains to your designs, you need to have Scwrl4 installed and available on your system path.

Upgrading to ISAMBARD 2

If you were already using ISAMBARD prior to the 2.0.0 release, here's a handy guide on the differences between version 1 and 2.

Quick Start

Note
If you're not sure what parametric modelling of proteins is, have a play with CCBuilder 2.0.

Let's build a coiled-coil dimer with typical parameters:

import isambard.specifications as specifications
import isambard.modelling as modelling
import isambard.optimisation

my_dimer = specifications.CoiledCoil.from_parameters(2, 28, 5, 225, 283)
dimer_sequences = [
    'EIAALKQEIAALKKENAALKWEIAALKQ',
    'EIAALKQEIAALKKENAALKWEIAALKQ'
]
my_dimer = modelling.pack_side_chains_scwrl(my_dimer, dimer_sequences)
print(my_dimer.pdb)
# OUT:
# HEADER ISAMBARD Model                                                                  
# ATOM      1  N   GLU A   1      -5.364  -1.566  -0.689  1.00  0.00           N  
# ATOM      2  CA  GLU A   1      -4.483  -2.220   0.308  1.00  0.00           C  
# ATOM      3  C   GLU A   1      -3.886  -1.143   1.216  1.00  0.00           C  
# ATOM      4  O   GLU A   1      -3.740  -1.337   2.425  1.00  0.00           O  
# ATOM      5  CB  GLU A   1      -3.389  -3.028  -0.392  1.00  0.00           C  
# ...

Don't know what your parameters might be? Let's optimise them then!

import budeff
import isambard.optimisation.evo_optimizers as ev_opts
from isambard.optimisation.evo_optimizers import Parameter

specification = specifications.CoiledCoil.from_parameters
sequences = [
    'EIAALKQEIAALKKENAALKWEIAALKQ',
    'EIAALKQEIAALKKENAALKWEIAALKQ'
]
parameters = [
    Parameter.static('Oligomeric State', 2),
    Parameter.static('Helix Length', 28),
    Parameter.dynamic('Radius', 5.0, 1.0),
    Parameter.dynamic('Pitch', 200, 60),
    Parameter.dynamic('PhiCA', 283, 27),  # 283 is equivalent a g position
]

def get_buff_total_energy(ampal_object):
    return budeff.get_internal_energy(ampal_object).total_energy

opt_ga = ev_opts.GA(specification, sequences, parameters, get_buff_total_energy)
opt_ga.run_opt(100, 5, cores=8)
# OUT:
# gen	evals	avg     	std    	min     	max     
# 0  	61   	-820.401	42.0119	-908.875	-750.001
# 1  	59   	-859.86 	31.4194	-950.15 	-807.265
# 2  	60   	-887.028	23.8683	-951.153	-847.346
# 3  	70   	-907.257	15.9615	-952.863	-882.028
# 4  	81   	-922.522	14.6206	-972.335	-903.444
# Evaluated 431 models in total in 0:00:29.523487
# Best fitness is (-972.3348571854714,)
# Best parameters are [2, 28, 4.678360526981807, 151.35365923229745, 277.2061538048508]
optimized_model = opt_ga.best_model

This quick example of parametric modelling with ISAMBARD, the next thing to do is take a look at the docs from tutorials on the tools available, or just take a look through the code base and hack around. Feel free to contact us through email or the issues if you get stuck.

Release Notes

v2.3.1

  • Fixes a minor bug in the DSSP output parsing code

v2.3.0

  • Introduces functionality to calculate the packing density (measured as the atomic contact number) of all non-hydrogen atoms in a Polymer / Assembly object.

v2.2.0

  • Adds pacc module for parametric analysis of coiled coils.

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

ISAMBARD-2.3.1.tar.gz (370.0 kB view details)

Uploaded Source

File details

Details for the file ISAMBARD-2.3.1.tar.gz.

File metadata

  • Download URL: ISAMBARD-2.3.1.tar.gz
  • Upload date:
  • Size: 370.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.6

File hashes

Hashes for ISAMBARD-2.3.1.tar.gz
Algorithm Hash digest
SHA256 5c6a79c4085e577c2924df34301f095b52a7cd6a3a1a8422978d4787b26d715c
MD5 928fac6a96291ef239b1891ddbac5f5e
BLAKE2b-256 6d5d36e0369e6e7bdb1061074aff44dab96caf1e1809a289f41156a0a34bce49

See more details on using hashes here.

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