barnaba

Analyse Nucleic Acids Structure and Simulations with baRNAba

https://github.com/srnas/barnaba

Science Score: 33.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: biorxiv.org
  • Committers with academic emails
    1 of 12 committers (8.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.9%) to scientific vocabulary

Keywords

modeling molecular-dynamics python rna rna-folding rna-structure
Last synced: 6 months ago · JSON representation

Repository

Analyse Nucleic Acids Structure and Simulations with baRNAba

Basic Info
  • Host: GitHub
  • Owner: srnas
  • License: gpl-3.0
  • Language: Jupyter Notebook
  • Default Branch: master
  • Homepage:
  • Size: 42.1 MB
Statistics
  • Stars: 45
  • Watchers: 10
  • Forks: 16
  • Open Issues: 17
  • Releases: 0
Topics
modeling molecular-dynamics python rna rna-folding rna-structure
Created over 11 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License

README.rst

.. image:: https://github.com/srnas/barnaba/workflows/CI/badge.svg
    :target: https://github.com/srnas/barnaba/actions?query=workflow%3ACI
.. image:: https://badge.fury.io/py/barnaba.svg
    :target: https://badge.fury.io/py/barnaba
.. image:: https://img.shields.io/conda/v/conda-forge/barnaba
    :target: https://anaconda.org/conda-forge/barnaba
.. image:: https://repology.org/badge/version-for-repo/macports/python:barnaba.svg
    :target: https://repology.org/metapackage/python:barnaba
.. image:: https://codecov.io/gh/srnas/barnaba/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/srnas/barnaba


Introduction
============

Barnaba is a tool for analyzing RNA three-dimensional structures and simulations. Barnaba uses MDtraj to read/write topology and trajectory files, as such it supports several formats including pdb, xtc, trr, dcd, binpos, netcdf, mdcrd, prmtop, and more.  
Barnaba has been developed by Sandro Bottaro with the crucial help of Giovanni Bussi, Giovanni Pinamonti, Sabine Rei{\ss}er and Wouter Boomsma.   

This is what you can do with Barnaba:  

1. Calculate eRMSD [1]
2. Calculate RMSD after optimal alignment  
3. Search for single/double stranded RNA motifs in the PDB database or in simulations [1]  
4. Annotate PDB structures and trajectories with the Leontis-Westhof classification
5. Produce dynamic secondary structure figures in SVG format
6. Cluster nucleic acids structures using the eRMSD as a metric distance
7. Calculate elastic network models for nucleic acids and nucleic acids/protein complexes [2]
8. Calculate backbone and pucker torsion angles in a PDB structure or trajectory
9. Back-calculate 3J scalar couplings from PDB structure or trajectory
10. Score three-dimensional structures using eSCORE [1]

For bugs, questions or comments contact Sandro at sandro dot bottaro (guesswhat) gmail dot com

If you use Barnaba in your work,  please cite the following paper::

	@article{bottaro2019barnaba,
  		title={Barnaba: software for analysis of nucleic acid structures and trajectories},
  		author={Bottaro, Sandro and Bussi, Giovanni and Pinamonti, Giovanni and Rei{\ss}er, Sabine and Boomsma, Wouter and Lindorff-Larsen, Kresten},
  		journal={RNA},
  		volume={25},
  		number={2},
  		pages={219--231},
		year={2019},
  		publisher={Cold Spring Harbor Lab}
	}

The manuscript is also available on biorXiv here: 
https://www.biorxiv.org/content/10.1101/345678v3




Requirements
-------------
Barnaba requires:
   - Python >= 3.6
   - Numpy
   - Scipy
   - Mdtraj 1.9
   - future
     
Barnaba requires mdtraj (http://mdtraj.org/) for manipulating structures and trajectories. 
To perform cluster analysis, scikit-learn is required too.

Required packages can be installed using `pip`, e.g.:

    pip install mdtraj

Installation
-------------

You can obtain the latest tagged version of barnaba using pip:

    pip install barnaba

If you prefer to manage your dependencies with conda you can use:

    conda -c conda-forge install barnaba

On MacOS, you can install the same tagged version using the python distributed with MacPorts:

    sudo port install py36-barnaba

Just replace 36 with the python version that you prefer to use.
  
Alternatively, you can find the most recent version of barnaba on Github:

    git clone git://github.com/srnas/barnaba.git

then move to the barnaba directory and run the command

    pip install -e .

Usage
------------
Barnaba can be either used as a Python library or as a commandline tool.
A number of Notebook examples can be found in the examples_ directory.
The notebooks for conducting the analyses and producing the figures in the manuscript can be found in the folder manuscript_figures_ .

Alternatively, the command-line interface can be found in the bin directory. Here's a minimal how-to

0.  minimal help:
    barnaba --help  
  
1. Calculate the ERMSD between structures  

   barnaba ERMSD --ref ../test/data/sample1.pdb --pdb ../test/data/sample2.pdb
  
   trajectories can be provided as well, by specifying a topology file  

   barnaba ERMSD --ref ../test/data/sample1.pdb --top ../test/data/sample1.pdb --trj ../test/data/samples.xtc  

   other accepted options are shown in a function-specific help  

   barnaba ERMSD --help
  
2. Calculate the RMSD between structures  
  
   barnaba RMSD --ref ../test/data/sample1.pdb --pdb ../test/data/sample2.pdb --dump
   
3. Find single stranded motif  
  
   barnaba SS_MOTIF --query ../test/data/GNRA.pdb --pdb ../test/data/1S72.pdb   
   
4. Find double stranded motif. l1 and l2 are the lengths of the two strands
  
   barnaba DS_MOTIF --query ../test/data/SARCIN.pdb --pdb ../test/data/1S72.pdb --l1 8 --l2 7  
 
5. Annotate structures/trajectories according to the Leontis/Westhof classification.
   
   barnaba ANNOTATE --pdb ../test/data/SARCIN.pdb  

6. Produce dynamic secondary-structure figures. It requires as input the files .pairing	and .stacking produced with the	ANNOTATE command.

   barnaba SEC_STRUCTURE --ann outfile.ANNOTATE.stacking.out outfile.ANNOTATE.pairing.out

7. Calculate backbone/sugar/pseudorotation angles
    
   barnaba TORSION --pdb ../test/data/GNRA.pdb --backbone --sugar --pucker 
 

8. Calculate J-couplings 

   barnaba JCOUPLING --pdb ../test/data/sample1.pdb 

9. Calculate elastic network models for RNA and predict SHAPE reactivity. NB: only works with PDB.
   
   barnaba ENM --pdb ../test/data/GNRA.pdb --shape

10. Calculate relative positions between bases R_ij  ang G vectors for pairs within ellipsoidal cutoff  

   barnaba DUMP --pdb ../test/data/GNRA.pdb --dumpG --dumpR  

11. Extract fragments from structures with a given sequence. NB: only works with PDB.  

    barnaba SNIPPET --pdb ../test/data/1S72.pdb  --seq NNGNRANN
 
12. Calculate ESCORE  
    
   barnaba ESCORE --ff ../test/data/1S72.pdb --pdb ../test/data/sample1.pdb


References
------------

[1] Bottaro, Sandro, Francesco Di Palma, and Giovanni Bussi.  
    "The role of nucleobase interactions in RNA structure and dynamics."  
    Nucleic acids research 42.21 (2014): 13306-13314.  

[2] Pinamonti, Giovanni, et al.  
   "Elastic network models for RNA: a comparative assessment with molecular dynamics and SHAPE experiments."  
   Nucleic acids research 43.15 (2015): 7260-7269.

.. _examples: https://github.com/srnas/barnaba/tree/master/examples
.. _manuscript_figures: https://github.com/srnas/barnaba/tree/master/manuscript_figures

Owner

  • Name: Small RNAs in silico
  • Login: srnas
  • Kind: organization

GitHub Events

Total
  • Watch event: 7
  • Fork event: 1
Last Year
  • Watch event: 7
  • Fork event: 1

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 374
  • Total Committers: 12
  • Avg Commits per committer: 31.167
  • Development Distribution Score (DDS): 0.422
Past Year
  • Commits: 27
  • Committers: 3
  • Avg Commits per committer: 9.0
  • Development Distribution Score (DDS): 0.148
Top Committers
Name Email Commits
sbottaro s****o@s****t 216
Giovanni Bussi g****i@g****m 64
giopina g****8@g****m 36
Sabine Reisser s****r@g****m 29
Wouter Boomsma w****a@g****m 8
giopina g****a@s****t 6
Sabine Reisser s****r@s****t 5
Sandro s****o@b****k 4
kt k****r@g****m 3
Christian Clauss c****s@m****m 1
Sandro Bottaro s****o@g****t 1
Sandro Bottaro s****o@r****t 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 29
  • Total pull requests: 34
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 29 days
  • Total issue authors: 14
  • Total pull request authors: 7
  • Average comments per issue: 1.55
  • Average comments per pull request: 1.0
  • Merged pull requests: 25
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • sbottaro (5)
  • GiovanniBussi (5)
  • sreisser (3)
  • giopina (3)
  • mandar5335 (2)
  • cgoliver (2)
  • LarrySMelidis (1)
  • theoboury (1)
  • ghost (1)
  • Ompal12 (1)
  • niz-ka (1)
  • zhanghaomiao (1)
  • kntkb (1)
  • vas2201 (1)
Pull Request Authors
  • GiovanniBussi (18)
  • giopina (8)
  • cclauss (4)
  • ollyfutur (2)
  • sreisser (2)
  • lgtm-com[bot] (1)
  • kntkb (1)
Top Labels
Issue Labels
feature request (2)
Pull Request Labels

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 63 last-month
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 1
    (may contain duplicates)
  • Total versions: 8
  • Total maintainers: 3
pypi.org: barnaba

analyze nucleic acid 3D structures and MD trajectories

  • Versions: 6
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 63 Last month
Rankings
Dependent packages count: 7.4%
Forks count: 9.6%
Stargazers count: 11.4%
Average: 16.1%
Dependent repos count: 22.2%
Downloads: 30.1%
Maintainers (3)
Last synced: 6 months ago
conda-forge.org: barnaba

Barnaba is a tool for analyzing RNA three-dimensional structures and simulations. Barnaba uses MDtraj to read/write topology and trajectory files, as such it supports several formats including pdb, xtc, trr, dcd, binpos, netcdf, mdcrd, prmtop, and more. Barnaba has been developed by Sandro Bottaro with the crucial help of Giovanni Bussi, Giovanni Pinamonti, Sabine Rei{\ss}er and Wouter Boomsma.

  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 34.0%
Forks count: 38.1%
Average: 41.6%
Stargazers count: 43.0%
Dependent packages count: 51.2%
Last synced: 6 months ago

Dependencies

setup.py pypi
  • future *
  • mdtraj *
  • numpy *
  • scipy *
  • sklearn *