Skip to content

seoklab/galign

Repository files navigation

G-align

Introduction

This is a fast and accurate shape alignment tool for ligand screening, utilizing genetic algorithm and Nelder-Mead minimization algorithm.

Usage

Program options

usage: galign <QUERY> [<TEMPL>] [options...]

Positional arguments:
  <QUERY>                         mol2 file contating the query structure(s).
  [<TEMPL>]                       mol2 file contating the template structure(s)
                                  (optional).

Optional arguments:
  -h [ --help ]                   print this help message and quit.
  -v [ --version ]                print version.
  -q [ --quiet ]                  quiet mode; do not print additional
                                  informations.
  -l [ --flexible ]               enable flexible align.
  -H [ --hydrogen ]               load the hydrogen atom(s) in the mol2 file.
  -s [ --structures ] [=arg(=-)]  output the aligned sturctures to this file.
                                  If no path is provided with this option, or
                                  if the provided path is '-', then the
                                  sturctures will be printed to stdout.
  -f [ --format ] arg             output format, must be pdb or mol2 (ignores
                                  case). Set based on the extension of the
                                  output file if not provided. Default to PDB
                                  for standard output, or unknown extensions.
  -b [ --begin ] arg (=1)         beginning index of the atoms in target(s).
  -k [ --topk ] arg (=1)          maximum top-k conformers to output.
  --no-scores                     do not include the scores in the output PDB
                                  file at the REMARKS section, or in comment
                                  for mol2 file.
                                  Has no effect if --structures option is not
                                  provided.
  --pool-size arg (=10)           set the size of the pool for genetic
                                  algorithm.
  --sample-size arg (=30)         set the size of the sample for genetic
                                  algorithm.
  --rigid-max-conf arg (=4)       set the max conformers for initial rigid
                                  align. Takes effect only when --flexible is
                                  provided.
  --rigid-min-rmsd arg (=3)       set the minimum rmsd value for rigid align.
                                  Takes effect only when topk, or
                                  rigid-max-conf (only for flexible alignment)
                                  is larger than 1.
  -n [ --nproc ] arg (=1)         max threads to use.
                                  Note that the output could have different
                                  ordering than the original input file.

Installation

CMake is introduced for easier installation. Currently, only clang and gcc with c++17 support on linux are supported. We recommend using clang as compiler, as it will produce faster binaries.

cmake [ -DCMAKE_INSTALL_PREFIX=<PATH_TO_GALIGN_HOME> ] -S . -B build
cmake --build build [ -j `nproc` ]
cmake --build build --target install/strip

Dependencies

  • CMake: For easier compilation, configuration and installation.
  • Eigen: For faster linear algebra and more convenient matrix/vector/array manipulations.
  • Boost::program_options: For easier command line parsing.

There is also one dependency that will built with the source:

  • abseil-cpp: For string manipulation, synchronization, random number generation, etc. The abseil library is recommended to be compiled with the source at the same time, so this project includes the abseil repository as a submodule.

License and Disclaimer

G-align is distributed under the GNU Affero General Public License v3.0 (AGPL-3.0-only).

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, version 3 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program in a file named LICENSE; if not, see https://www.gnu.org/licenses/.

This project also includes some code from the TM-align project, which is distributed under MIT-style license. Please refer to the NOTICE file for more details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors