Skip to main content

DNA Curvature Analysis

Project description

Dnacurve is a Python library and console script to calculate the global 3D structure of a B-DNA molecule from its nucleotide sequence according to the dinucleotide wedge model. Local bending angles and macroscopic curvature are calculated at each nucleotide.

For command line usage run python -m dnacurve --help

Author:

Christoph Gohlke

Version:

2018.10.18

Requirements

Revisions

2018.8.15

Move modules into dnacurve package.

2018.5.29

Add option to start web interface from console. Use matplotlib OOP interface.

2018.5.25

Add functions to return PDB and CSV results as string.

2018.2.6

Style and doctest fixes.

2014.6.16

DNAse I Consensus model.

2013.11.21

Overlapping chunks iterator.

2013.11.17

Limit maximum sequence length to 510 nucleotides. Read simple Fasta sequence files. Save positive coordinates to PDB files. Fix sequence display for matplotlib 1.3.

2005.x.x

Initial release.

Notes

The API is not stable yet and is expected to change between revisions.

The algorithms, plots, and PDB format are not meant to be used with very long sequences. By default sequences are truncated to 510 nucleotides, which can be overridden by the user.

The generated PDB files can be visualized interactively using UCSF Chimera.

References

  1. Bending and curvature calculations in B-DNA. Goodsell DS, Dickerson RE. Nucleic Acids Res 22, 5497-503, 1994. See also http://mgl.scripps.edu/people/goodsell/research/bend/

  2. Curved DNA without A-A: experimental estimation of all 16 DNA wedge angles. Bolshoy A et al. Proc Natl Acad Sci USA 88, 2312-6, 1991.

  3. A comparison of six DNA bending models. Tan RK and Harvey SC. J Biomol Struct Dyn 5, 497-512, 1987.

  4. Curved DNA: design, synthesis, and circularization. Ulanovsky L et al. Proc Natl Acad Sci USA 83, 862-6, 1986.

  5. The ten helical twist angles of B-DNA. Kabsch W, Sander C, and Trifonov EN. Nucleic Acids Res 10, 1097-1104, 1982.

  6. Rod models of DNA: sequence-dependent anisotropic elastic modelling of local bending phenomena. Munteanu MG et al. Trends Biochem Sci 23(9), 341-7, 1998.

Examples

>>> from dnacurve import CurvedDNA
>>> result = CurvedDNA('ATGCAAATTG'*5, 'trifonov', name='Example')
>>> result.curvature[:, 18:22]
array([[ 0.58061616,  0.58163338,  0.58277938,  0.583783  ],
       [ 0.08029914,  0.11292516,  0.07675816,  0.03166286],
       [ 0.57923902,  0.57580064,  0.57367815,  0.57349872]])
>>> result.save_csv('_test.csv')
>>> result.save_pdb('_test.pdb')
>>> result.plot('_test.png', dpi=160)

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

dnacurve-2018.10.18.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

dnacurve-2018.10.18-py2.py3-none-any.whl (23.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file dnacurve-2018.10.18.tar.gz.

File metadata

  • Download URL: dnacurve-2018.10.18.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.27.0 CPython/3.6.6

File hashes

Hashes for dnacurve-2018.10.18.tar.gz
Algorithm Hash digest
SHA256 b8910408e8221b6ba1643e5f117811b4220de8c08aeeac42248dd87d3476b340
MD5 46e7236a0cb8a3e633730f68be1c5b08
BLAKE2b-256 806300b30e00433d20e5e48697dd271d7e114e2418fd63b211f7036da4ce1d68

See more details on using hashes here.

File details

Details for the file dnacurve-2018.10.18-py2.py3-none-any.whl.

File metadata

  • Download URL: dnacurve-2018.10.18-py2.py3-none-any.whl
  • Upload date:
  • Size: 23.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.27.0 CPython/3.6.6

File hashes

Hashes for dnacurve-2018.10.18-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 4809aab5967265ef1c1a14e5fddee10b315f1a9ce1a6e9f6cf514ceb4bc525ff
MD5 75e1a26565a6fcaaf1c30723fa6f64b9
BLAKE2b-256 ae36ffc9e71c145e3e5ff5fa6d8ca067969e8df4a7762a3291364820aa65d43f

See more details on using hashes here.

Supported by

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