US-align Universal Structure Alignment

repository·master·Indexed 41 days ago

https://github.com/pylelab/usalign

A tool for the universal structure alignment of monomeric and complex proteins as well as nucleic acids. It supports multiple alignment algorithms, including TM-align, fTM-align, and MMalign, and is compatible with PDB, PDBx/mmCIF, and AlphaFold CIF formats.

Tokens
483
Snippets
3
Records
3
Agent score
2%

What's inside US-align

  1. Install US-align via package managers

    master

    You can install US-align using Homebrew or Conda. Note that these packages may not always contain the most recent version of the software.

    • Homebrew (MacOS x86_64/arm64, Linux x86_64): Use brew install brewsci/bio/usalign.
    • Conda (Linux x86_64/aarch64, MacOS x86_64/arm64): Use conda install -c bioconda usalign.
    # Homebrew
    brew install brewsci/bio/usalign
    
    # Conda
    conda install -c bioconda usalign
  2. Run US-align for structure alignment

    master

    To perform a basic alignment between two structures, provide the file paths as arguments. US-align supports various formats including PDB, PDBx/mmCIF, and AlphaFold CIF.

    To see a brief instruction set, run the program without arguments. To see the full list of available options, use the -h flag.

    # Basic alignment usage
    ./USalign structure1.pdb structure2.pdb
    
    # View help
    ./USalign -h
  3. Install US-align via compilation

    master

    You can compile US-align from source on Linux, Mac OS, or Windows (via WSL2). The program requires g++ version 4.8.5 or later, clang++ version 12.0.5 or later, or mingw-w64 version 9.3 or later.

    Linux/WSL2: Use make or compile directly with g++ using the -static flag for a static executable.

    Mac OS: Do not use the -static flag, as Mac OS does not support building static executables.

    Note on compressed files: On Linux and Mac OS, US-align can read .gz compressed files if the gunzip command is available in your environment. Native Windows builds (without WSL2) cannot parse .gz files due to lack of POSIX support.

    # Using make
    make
    
    # Or direct compilation on Linux
    g++ -static -O3 -ffast-math -lm -o USalign USalign.cpp