Coder Social home page Coder Social logo

patrickfuchs / buildh Goto Github PK

View Code? Open in Web Editor NEW
14.0 5.0 6.0 28.12 MB

:computer: Build hydrogen atoms from united-atom molecular dynamics of lipids and calculate the order parameters.

Home Page: https://buildh.readthedocs.io/

License: BSD 3-Clause "New" or "Revised" License

Python 90.70% Makefile 0.58% TeX 8.72%
python lipids order-parameters united-atom molecular-dynamics-simulation

buildh's Introduction

buildH

DOI DOI SWH License: BSD Binder Code CI Status Doc CI Status Documentation Status Powered by MDAnalysis buildH version on PyPI Anaconda-Server Badge

buildH_logo

Build hydrogen atoms from united-atom molecular dynamics of lipids and calculate the order parameters

Features

buildH can :

  • Reconstruct hydrogens from a united-atom structure file (pdb, gro) or trajectory (e.g. xtc).
  • Calculate the order parameters based on the reconstructed hydrogens.
  • Write new structure trajectory files with the reconstructed hydrogens.

buildH works in two modes :

  1. A slow mode when an output trajectory (in xtc format) is requested by the user. In this case, the whole trajectory including newly built hydrogens are written to this trajectory.
  2. A fast mode without any output trajectory.

In both modes, the order parameters are calculated. All calculations are accelerated with Numba. As a CPU cost indication, running buildH on a trajectory of 2500 frames with 128 POPC (without trajectory output) takes ~ 7' on a single core Xeon @ 3.60GHz.

Requirements

Python >= 3.6 is mandatory for running buildH.

buildH is written in Python 3 and needs the modules numpy, pandas, MDAnalysis and Numba.

Installation

Pip

A simple installation with pip will do the trick:

python3 -m pip install buildh

All dependencies (modules) will be installed automatically by pip.

Conda

buildH is also available through the Bioconda channel:

conda install buildh -c bioconda -c conda-forge

More details on installation here.

For installing a development version, see here.

Running buildH

Once installed, a simple invocation of the buildH command will run the program ($ represents the Unix prompt):

$ buildH
usage: buildH [-h] -c COORD [-t TRAJ] -l LIPID [-lt LIPID_TOPOLOGY [LIPID_TOPOLOGY ...]] -d DEFOP
              [-opx OPDBXTC] [-o OUT] [-b BEGIN] [-e END] [-pi PICKLE] [-igch3]
buildH: error: the following arguments are required: -c/--coord, -l/--lipid, -d/--defop

The minimal command for running buildH can resemble this:

$ buildH -c start_128popc.pdb -t popc0-25ns_dt1000.xtc -l Berger_POPC -d Berger_POPC.def

The different arguments mean the following: -c start_128popc.pdb is a pdb file with 128 POPC molecules, -t popc0-25ns_dt1000.xtc is a trajectory with 25 frames, -l Berger_POPC indicates the united-atom force field and the type of lipid to be analyzed, -d Berger_POPC.def indicates what C-H are considered for H building and order parameter calculation (the structure and trajectory files can be found here). The def file can be found here. The final order parameters averaged over the trajectory will be written to the default output name OP_buildH.out

Other detailed examples and Jupyter Notebooks can be found in the documentation at Read the Docs.

Important: sometimes, when performing MD, some molecules are split over periodic boundary conditions (PBC). buildH takes as input whole structures (pdb, gro, xtc, etc.). If broken molecules are supplied, it will most likely generate nonsense results. So it is up to the user to take care of making molecules whole before running buildH (e.g. by using a tool like trjconv in GROMACS with flag -pbc mol).

Invoking buildH with the -h flag will display some help to the screen and tell which lipids are supported.

$ buildH -h
usage: buildH [-h] [-v] -c COORD [-t TRAJ] -l LIPID [-lt LIPID_TOPOLOGY [LIPID_TOPOLOGY ...]] -d
              DEFOP [-opx OPDBXTC] [-o OUT] [-b BEGIN] [-e END] [-igch3]
[...]
The list of supported lipids (-l option) are: Berger_CHOL, Berger_DOPC, Berger_DPPC, Berger_POP, Berger_POPC, Berger_PLA, Berger_POPE, Berger_POPS, CHARMM36UA_DPPC, CHARMM36UA_DPUC, CHARMM36_POPC, GROMOS53A6L_DPPC, GROMOSCKP_POPC, GROMOSCKP_POPS. More documentation can be found at https://buildh.readthedocs.io.

Documentation

The full documentation is available at Read the Docs.

Contributors

  • Hubert Santuz
  • Amélie Bâcle
  • Pierre Poulain
  • Patrick Fuchs

License

buildH is licensed under the BSD License.

Contributing

If you want to report a bug, request a feature, or propose an improvement use the GitHub issue system.

Please, see also the CONTRIBUTING file.

Note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. See the CODE_OF_CONDUCT file.

Citing buildH

If you use buildH for your research, please cite :

Santuz et al., (2021). buildH: Build hydrogen atoms from united-atom molecular dynamics of lipids and calculate the order parameters. Journal of Open Source Software, 6(65), 3521, https://doi.org/10.21105/joss.03521

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.