MoBioTools A simple yet versatile toolkit to automatically setup quantum mechanics/molecular mechanics

Overview

MoBioTools

A simple yet versatile toolkit to automatically setup quantum mechanics/molecular mechanics (QM/MM) calculations for ensembles of geometries generated from molecular dynamics trajectories.

Installation Requirements

A python installation with version >= 3.6 is required. Most Linux-based systems have a default python3 installation, otherwise one can use, e.g.: Anaconda (https://www.anaconda.com/products/individual), which includes more than 150 data analysis python libraries, or miniconda (https://docs.conda.io/en/latest/miniconda.html) which is a pocket version of anaconda that includes exclusively python. In either case, new libraries can be installed using the

conda

command.

Numpy: It comes with the anaconda distribution. Otherwise it can be installed via:

conda install numpy
pip install numpy

Cpptraj and pytraj:

If you have an Amber or an AmberTools installation, they should already be present in your $AMBERHOME amber installation directory. Otherwise, cpptraj needs to be installed first. To install pytraj, please visit https://amber-md.github.io/pytraj/latest/installation.html#install. To install cpptraj and pytraj from scratch, visit https://amber-md.github.io/pytraj/latest/installation.html#from-source-code-hard-way-expert-only.

Installation

Get the MoBioTools source

git clone [email protected]:mobiochem/MoBioTools.git

then, go to the MoBioTools directory

cd MoBioTools

set manually the environment variables in the config.sh script, then source it

source ./config.sh

and finally, carry out the installation itself

python3 setup.py install

Usage

The tools consist of two scripts with different functionalities:

  1. The input generator (main_qminputs.py, -h option to visualize the arguments it takes), which is compatible with the Gaussian, NWChem and (Open)Molcas quantum mechanics (QM) programs, takes an MD trajectory in amber format and generates an input file for all the snapshots selected by the user. The program takes two input files as arguments:
  • A main input file (-i option) on which the user defines the names of the trajectory file, the topology file, the desired QM program, the QM region to consider among others.

  • A template file, on which the specifics of the QM calulation are defined.

Some examples are provided on the examples/inputs folder.

cd examples/inputs

For example, in the case of a NWChem calculation, copy the trajectory and the topology files on the examples/inputs folder

cp GUA-O2-S5.* nwchem_input/.

cd nwchem_input

then execute the main_qminputs.py script as follows:

main_qminputs.py -i nwchem.main.in -t nwchem.tpl.inp
  1. The program to automaticall correct the active space of a set of CASSCF calculations an ensemble of geometries (pyoverlaps.py, -h option to visualize the arguments it takes).
You might also like...
Framework To Ease Operating with Quantum Computers

QType Framework To Ease Operating with Quantum Computers Concept # define an array of 15 cubits:

Artificial intelligence based on 5-dimensional quantum selection

Deep Thought An artificial intelligence based on 5-dimensional quantum selection. Algorithm The payload Make an random bit array (e.g. 1101...) Conver

Yet another Python Implementation of the Elo rating system.

Python Implementation - Elo Rating System Yet another Python Implementation of the Elo rating system (how innovative am I right?). Only supports 1vs1

Yet another basic python package.

ironmelts A basic python package. Easy to use. Minimum requirements. Installing Linux python3 -m pip install -U ironmelts macOS python3 -m pip install

Yet another Airflow plugin using CLI command as RESTful api, supports Airflow v2.X.
Yet another Airflow plugin using CLI command as RESTful api, supports Airflow v2.X.

中文版文档 Airflow Extended API Plugin Airflow Extended API, which export airflow CLI command as REST-ful API to extend the ability of airflow official API

A simple script written using symbolic python that takes as input a desired metric and automatically calculates and outputs the Christoffel Pseudo-Tensor, Riemann Curvature Tensor, Ricci Tensor, Scalar Curvature and the Kretschmann Scalar

A simple script written using symbolic python that takes as input a desired metric and automatically calculates and outputs the Christoffel Pseudo-Tensor, Riemann Curvature Tensor, Ricci Tensor, Scalar Curvature and the Kretschmann Scalar

AutoMetamon: Simple program to play Metamon automatically

AutoMetamon: Simple program to play Metamon automatically

A script to automatically update bot status at GitHub as well as in Telegram channel.

A simple & short repository to show your bot's status in your GitHub README.md file as well as in you channel.

Quick script for automatically extracting syscall numbers for an OS

Syscalls-Extractor Quick script for automatically extracting syscall numbers for an OS $ python3 .\syscalls-extractor.py --help usage: syscalls-extrac

Comments
  • Bugfix

    Bugfix

    Output: Normal termination, remove gibberish A Topìsimo!

    Bug Report #################### DONE #################### Gaussian %chk #############################################

    #################### DONE #################### (Bugfix: Define one mainobj and one tplobj for each geometry iterated)

    range Issue: range of geometries arr0 = self._xyz[:, atm.indices]

    Range works when no bsse is used #############################################

    Output: switch mon1 and mon2 on the screen

    #################### DONE #################### Gaussian: No &basis &end for no gen; Parse gen on route

    generate a different namespace for %basis when using gen (gaussian) Remove directly the %basis from gaussian (?) #############################################

    NWChem

    #################### DONE #################### Solvent mask includes ions #############################################

    #################### DONE #################### bsse Molcas: Again closest funct. not working #############################################

    #################### DONE #################### solvmask needs to be initialized #############################################

    #################### DONE #################### chargers: xyz instead of dat #############################################

    opened by mobiochem 0
Owner
MoBioChem
The research group of Dr. Juanjo Nogueira at the Autonomous University of Madrid.
MoBioChem
Cirq is a Python library for writing, manipulating, and optimizing quantum circuits and running them against quantum computers and simulators

Cirq is a Python library for writing, manipulating, and optimizing quantum circuits and running them against quantum computers and simulators. Install

quantumlib 3.6k Jan 7, 2023
ThnoolBox - A thneed is a multi-use versatile object

ThnoolBox Have you ever wanted a collection of bodged desktop apps that are Lorax themed ? No ? Sucks to suck I guess Apps & their downsides CalculaTh

pocoyo 1 Jan 21, 2022
Sabe is a python framework written for easy web server setup.

Sabe is a python framework written for easy web server setup. Sabe, kolay web sunucusu kurulumu için yazılmış bir python çerçevesidir. Öğrenmesi kola

null 2 Jan 1, 2022
📽 Streamlit application powered by a PyScaffold project setup

streamlit-demo Streamlit application powered by a PyScaffold project setup. Work in progress: The idea of this repo is to demonstrate how to package a

PyScaffold 2 Oct 10, 2022
SpaCy3Urdu: run command to setup assets(dataset from UD)

Project setup run command to setup assets(dataset from UD) spacy project assets It uses project.yml file and download the data from UD GitHub reposito

Muhammad Irfan 1 Dec 14, 2021
Python project setup, updater, and launcher

Launcher Python project setup, updater, and launcher Purpose: Increase project productivity and provide features easily. Once installed as a git submo

DAAV, LLC 1 Jan 7, 2022
Python project setup, updater, and launcher

pyLaunch Python project setup, updater, and launcher Purpose: Increase project productivity and provide features easily. Once installed as a git submo

DAAV, LLC 1 Jan 7, 2022
Pattern Matching for Python 3.7+ in a simple, yet powerful, extensible manner.

Awesome Pattern Matching (apm) for Python pip install awesome-pattern-matching Simple Powerful Extensible Composable Functional Python 3.7+, PyPy3.7+

Julian Fleischer 97 Nov 3, 2022
Simple yet flexible natural sorting in Python.

natsort Simple yet flexible natural sorting in Python. Source Code: https://github.com/SethMMorton/natsort Downloads: https://pypi.org/project/natsort

Seth Morton 712 Dec 23, 2022
qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

qecsim qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

null 44 Dec 20, 2022