Giter Club home page Giter Club logo

q6's Introduction

Q6

Version control of the molecular dynamics code called Q, version 6, via github.

Q is a set of Molecular Dynamics (MD) tools tailored to the following specific kinds of free energy calculations:

  1. Free Energy Perturbation (FEP)
  2. Empirical Valence Bond (EVB)
  3. Linear Interaction Energies (LIE)
  4. Quantum Classical Path (QCP)

© Copyright 2017 Johan Åqvist, John Marelius, Shina Caroline Lynn Kamerlin and Paul Bauer. DOI

Developed by: The Department of Cell and Molecular Biology Uppsala University, Uppsala, Sweden https://www.icm.uu.se/cbbi/aqvist-lab/ [email protected], [email protected]

Installation

The current makefiles make it relatively easy to compile the code in a linux or mac OSX environment.

You have to make sure first that gfortran is installed and if you want to compile the MPI version you also have to make sure that openMPI is installed.

If you're using gfortran make sure that you have version 4.8 or later. This applies both to compilation in mac and linux. To make sure that you have version 4.8 or later use:

gfortran --version

Right before issuing the "make" command.

To install in a linux environment you have to move to the src/ folder where the source code and the makefile are located at. To get information on how to use the makefile just type make in your terminal:

unset SSH_ASKPASS
git clone https://www.github.com/qusers/Q6.git
cd Q6/src
make

Following the instructions for compilation using the gfortran compiler and the non-mpi version of the code would then take the form:

make all COMP=gcc

Or for MPI compilation (after loading a proper MPI compiler library):

make mpi COMP=gcc

To compile in Mac OSX 10.9.2 you can use native gfortran binaries which you can download from (https://gcc.gnu.org/wiki/GFortranBinaries#MacOS) or you can also compile using the GCC (Gnu Compiler Collection) distributions available to fink, macports or homebrew. In order to compile in a MAC you should call the fink environment first. Usually with:

source /sw/bin/init.sh

alternatively, you can install homebrew and use (confirmed for Mac OSX 10.10):

brew install gcc

Then you proceed as in linux

git clone https://www.github.com/qusers/Q6.git
cd Q6/src
make all COMP=osx

This will take care of redirecting the binaries and object files to standard bin and obj folders.

After this you have to add the program to your system path by modifying your shell initiation script, that is, if your shell is bash, you can add the following lines to your .bashrc file using a text editor:

SOFT=/Users/johndoe/software
export QDIR=$SOFT/Q6
export PATH=$QDIR/bin:$PATH  

Where $SOFT will be the place where your software folder is located at, e.g. /Users/johndoe/software

Once the Q6 binaries are declared in your path you should be able to call all Q6 binaries from your terminal. To test that the path to your compiled Q binaries has been correctly assigned you can issue the following commands in the terminal:

source .bashrc
echo $path | grep Q6

/Users/johndoe/software/Q6

Qprep6

Build and version information

Build number 6.0.X
Build date   20XXXXXX
Built:       
      by     johndoe
      on     localhost
      git id 961bca2e036ca56218d1cca7a134472fd7e3cc86
      with   GNU Fortran Debian 6.4.0-1 6.4.0 20XXXXXX
Qprep version 6.0.X , git id=961bca2e036ca56218d1cca7a134472fd7e3cc86 initialising
Current date 20XX-XX-XX and time XX:XX:XX

Welcome in Qprep modification date 20XXXXXX

 Q6, Copyright © 2017 Johan Åqvist, John Marelius, Shina Caroline Lynn Kamerlin and Paul Bauer
 Q6 comes with ABSOLUTELY NO WARRANTY.  This is free software, and you are welcome
 to redistribute it under certain conditions. For details, add the --help flag.

Qprep> 

Disclaimer

As this software was made in part by people employed by Georgia Tech University we must also clarify: “The software is provided “as is.” Neither the Georgia Institute of Technology nor any of its units or its employees, nor the software developers of Q6 or any other person affiliated with the creation, implementation, and upkeep of the software’s code base, knowledge base, and servers (collectively, the “Entities”) shall be held liable for your use of the platform or any data that you enter. The Entities do not warrant or make any representations of any kind or nature with respect to the System, and the Entities do not assume or have any responsibility or liability for any claims, damages, or losses resulting from your use of the platform. None of the Entities shall have any liability to you for use charges related to any device that you use to access the platform or use and receive the platform, including, without limitation, charges for Internet data packages and Personal Computers. THE ENTITIES DISCLAIM ALL WARRANTIES WITH REGARD TO THE SERVICE,INCLUDING WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE TO THE FULLEST EXTENT ALLOWED BY LAW.”

q6's People

Contributors

acmnpv avatar barrozoah avatar esguerra avatar florianvdent avatar jakabrklanje avatar kamerlin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

q6's Issues

Qprep6 fortran error when averaging dcds to pdb

Using qprep6 on triolith to average a dcd into a pdb. Log file gives error ">>>>> ERROR: invalid coordinate array size." and a long fortran error beginning:

"*** glibc detected *** /home/x_davbl/qsource/Q6/bin/Qprep6: double free or corruption (!prev): 0x00000000023077f0 ***"

It does produce an output pdb, but I can't say if it's correct or not.
qprep6_error.zip

Segfault crash on Q6 in mutiring systems

Description of problem

Q6 crashes when provided with the following input files
files.zip.

Said input file is an EVP/FEP calculation, based on a multiring sugar system.

Steps to reproduce

run "Qdyn6 eq1.inp" on a standard Q6 installation. The Q instillation can be replicated with the following singularity container.
quontainer.txt

Known information

According to Valgrind debugging the crash is due to an illegal access on bondene.f90:530 when accessing an array defined at qatom.f90:465. Given that this array is defined as being sized as nqat across and is being accessed as nqbonds it is highly likely that the program fails when nqat > nqbonds which occurs in multiringed systems.

New release?

Hej @ all!

Just a food for thought, should we release a new version of Q6 with the few bug fixes we had around May or June this year?
Should just be a bump to the minor version number, to make sure the bug fixes are used by people?

Happy for your feedback!

qprep charge groups ambivalent indexing shows no error

I made a topology in qprep using a library that had charge groups containing two H43's and no H42's, e.g. when making charge groups, I accidentally labelled H42 as H43 while also naming H43 as H43. Qprep made that topology with no errors. One should, of course, be more careful. Still, it might be useful if qprep noticed the charge groups made no sense.

strange behavior of LRF

in two different systems, late installations of Q6 (since September 2023 at least) are creating memory problems (segmentation fault). The problem has been tracked with the debug compilation and we have identified that it is the LRF calculation which produces the errors. Before going into more detail, is that an identified issue by the developers?

Qdyn6 stuck when using polarisation restraints

Hi guys,

I recently decided to switch from Q5 to version 6 and compiled it using intel 17.0 and intel mpi 2017. Everything works fine except that Qdyn6 gets stuck whenever it reaches the printed "Nonbonded pair list generation" section. This happens whenever solvent polarisation restraints are turned on.

Any idea if there is something to fix somewhere in the code? I compiled it exactly the same way as David did, on the same supercomputer cluster. But I am probably using a version that has been slightly updated on GitHub. I will let you know if I figure that out. PS: I tired that on several systems that worked well with Q5.

Cheers!

Pierre

qdyn6 gives incorrect error message

Running qdyn6 without a fep files gives the error that the [atoms] section is missing from the fep file. It should say that it doesn't have a fep file at all.

Boundary solvation issue with Qprep6?

Hi,

I noticed another related issue and asked David about it. It turns out that he had the same problem.

When using Q6 to solvate my system (runs for a small compound in water), it adds waters around the sphere edge (a bit beyond too). This was already the case with Q5 but did not cause any problem. However, I end up with Shake failure issues with Qdyn6, unless I clean up all waters outside the sphere edge and change the "solvent radii" accordingly in the topology (or just increasing the "solvent radii" value seems to fix it in most cases). Maybe this could help fix another bug.

Cheers!

Pierre

Mpi crushed in Q6 intel- Rackham cluster

I compiled Q on Rackham (intel) and with mpi it shows error unknown option -Nmpi. But even with that it finish. When I submit job it finish imidietly with this kind of error:[r101:2335] *** An error occurred in MPI_Allreduce
[r101:2335] *** reported by process [1808072705,0]
[r101:2335] *** on communicator MPI_COMM_WORLD
[r101:2335] *** MPI_ERR_OP: invalid reduce operation
[r101:2335] *** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort,
[r101:2335] ***    and potentially your MPI job)

I tried different versions of intel and with intelmpi or openmpi. Everytime crash with similar error. When I run the same job on different cluster and local with Qdyn6 it works without problem.

Any idea how to solve it?

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.