Coder Social home page Coder Social logo

e-osipov / sire Goto Github PK

View Code? Open in Web Editor NEW

This project forked from michellab/sire

0.0 0.0 0.0 174.15 MB

Sire Molecular Simulations Framework

Home Page: http://siremol.org

License: GNU General Public License v2.0

Python 4.33% Batchfile 0.01% Shell 0.13% CMake 0.94% Perl 0.03% HTML 0.01% C++ 94.40% C 0.13% Fortran 0.01% Dockerfile 0.01%

sire's Introduction

https://dev.azure.com/michellab/Sire/_apis/build/status/michellab.Sire?branchName=devel

About

Sire is a free, open source, multiscale molecular simulation framework, written to allow computational modellers to quickly prototype and develop new algorithms for molecular simulation and molecular design. Sire is written as a collection of libraries, each of which contains self-contained and robust C++/Python building blocks. These building blocks are vectorised and thread-aware and can be streamed (saved/loaded) to and from a version-controlled and tagged binary format, thereby allowing them to be combined together easily to build custom multi-processor molecular simulation applications.

For more information about how to use Sire, and about application built with Sire, please visit the Sire website.

Installation

The easiest way to install Sire is using our conda channel:

conda install -c conda-forge -c omnia -c michellab sire

To install the latest development version you can use:

conda install -c conda-forge -c omnia -c michellab/label/dev sire

Unless you add the required channels to your Conda configuration, then you'll need to add them when updating, e.g., for the development package:

conda update -c conda-forge -c omnia -c michellab/label/dev sire

Note that on OS X you will need to run Python scripts with the sire_python interpreter. This is due to an issue with the default Python interpreter that is installed via Conda. (This applies to all installation methods.)

There are also many pre-built binary packages, which are available for Linux, Mac OS X and Windows, which are quick and easy to install.

However, as you are here, it is likely you want to download the latest, greatest version of the code, which you will need to compile. To compile Sire, you need a working C++ compiler with at least C++ 2014 support (gcc >= 5 or clang >= 3.7), cmake (version 3.0.0 or above), a Git client to download the source, and a working internet connection (needed by the Sire compilation scripts to download additional dependencies).

The easy install option is:

git clone [email protected]:michellab/Sire.git
cd Sire
./compile_sire.sh

A small word of warning, the compilation can easily take over an hour!

The above will download and install a new miniconda python installation, into which Sire will be compiled and deployed (together with its dependencies). This is by far the easiest way to compile and install Sire, and is the route we strongly recommend. If you have any problems with compiling and installing Sire, then please get in touch using the links below.

If you want to install Sire into an existing miniconda or Anaconda Python installation, please follow the instructions in build/INSTALL_INTO_ANACONDA.rst.

Docker images

If you don't want to build or install, you can also run Sire via one of our docker images. The easy way to run the latest development image of Sire is via:

docker run -it siremol/sire-devel:latest

This will download the latest Sire development container, and will run it, giving you a bash prompt inside the container.

OpenMM compatibility

Some Sire functionality requires OpenMM. Although a bundled version is provided as part of the installation, this may not be appropriate for your GPU drivers. To automatically detect and install a suitable version of OpenMM, simply run the following command post-install:

optimise_openmm

(Note that, depending on your installation method, optimise_openmm may be located in $HOME/sire.app/bin.)

Alternatively, to manually install a particular version of OpenMM you can use a specific Conda label, e.g.:

conda install -c omnia/label/cuda90 openmm

If you have compiled Sire against a custom OpenMM installation, then you'll need to set the OPENMM_PLUGIN_DIR environment variable to point to the correct plugin location. By default this variable is set to the plugin directory of the bundled OpenMM package.

Support and Development

Bugs, Comments, Questions

For bug reports/sugguestions/complains please file an issue on GitHub. or contact the developers via the google user group: https://groups.google.com/forum/#!forum/sire-users

Developers guide

Please visit the website for information on how to develop applications using Sire.

Azure Pipelines -- Autobuild feature

Since Sire is quite large, a build can take quite long and might not be neccessary if a commit is only fixing a couple of typos. Simply add the line ***NO_CI*** to your commit message and Azure Pipelines will not invoke an autobuild.

Note that every time you commit to devel, it will trigger a build of Sire, full testing, construction of a package and upload to siremol.org (so that it can be downloaded as the latest version of sire_devel_latest_linux.run). Please think twice before committing directly to devel. You should ideally be working in a feature branch, and only commit to devel once you are happy the code works on your branch. Use ***NO_CI*** until you are happy that you want to trigger a full build, test and deployment. This full pipeline will take several hours to complete.

Have fun :-)

sire's People

Contributors

chryswoods avatar jmichel80 avatar lohedges avatar ppxasjsm avatar ptosco avatar sofiabariami avatar steboss avatar

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.