Giter VIP home page Giter VIP logo

specs's Introduction

SPECS

SPECS is a side-chain-orientation-included protein model-native similarity metric for improved evaluation of protein structural models. SPECS stands for Superposition-based Protein Embedded CA SC score. It combines side-chain orientation and global distance based measures in an integrated framework using the united-residue model of polypeptide conformation for computing model-native similarity. SPECS captures both global and local quality aspects when evaluating structural similarity and is sensitive to minute variations in side-chain, thereby being a robust evaluation metric covering a wide range of modeling scenarios and various aspects of structural similarity. SPECS has the value in (0,1], where 1 indicates a perfect match between two structures.

If you find SPECS useful, please cite our PLOS ONE paper.

Requirement

  1. Linux system: SPECS was tested on 64-bit Linux system
  2. GCC compiler

Installation

You can run SPECS from SPECS web-server. However, for large-scale benchmarking, we strongly recommend that you install and run SPECS locally. SPECS is a standalone application. To install, you just need to download and compile as follows:

$ git clone https://github.com/Bhattacharya-Lab/SPECS.git
$ cd SPECS/src
$ g++ -o SPECS SPECS.cpp

Usage

To run SPECS, type

$ ./SPECS -h

You should see the following output:

**********************************************************************
*                            SPECS                                   *
*          Superposition-based Protein Embedded CA SC score          *
* Range of SPECS:                                                    *
*     0.0 <= SPECS <= 1.0, higher scores indicate better similarity  *
* For comments, please email to [email protected]             *
**********************************************************************

Usage: ./SPECS -m model -n native
   -m model  : model pdb file
   -n native : native pdb file
   -h help   : this message

Example command to run SPECS

$ ./SPECS -m ../example/model.pdb -n ../example/native.pdb

Output

SPECS provides instantaneous output and computes other structural similarity metrics. For ease of parsing, the output format of SPECS has been kept similar to the currently popular TM-score program. Upon running the above example command, you should see following output:

**********************************************************************
*                           SPECS-SCORE                              *
*          Superposition-based Protein Embedded CA SC score          *
* Range of SPECS:                                                    *
*     0.0 <= SPECS <= 1.0, higher scores indicate better similarity  *
* For comments, please email to [email protected]             *
**********************************************************************

Structure1: ../example/model.pdb Length = 72
Structure2: ../example/native.pdb Length = 72
Number of residues in common = 72
RMSD of common residues = 3.323

SPECS-score  = 0.3704 (dCA = 0.4722 rSC = 0.3823 angl = 0.1597 ang2 = 0.3903 tors = 0.1417)
TM-score     = 0.6443 (d0 = 2.97)
MaxSub-score = 0.6197 (d0 = 3.50)
GDT-TS-score = 0.6840 %(d<1) = 0.3611 %(d<2) = 0.5556 %(d<4) = 0.8333 %(d<8) = 0.9861
GDT-HA-score = 0.4722 %(d<0.5) = 0.1389 %(d<1) = 0.3611 %(d<2) = 0.5556 %(d<4) = 0.8333

-------- rotation matrix to rotate Chain-1 to Chain-2 ------
i             t(i)                u(i,1)               u(i,2)               u(i,3)
1       -23.6888008118         0.7470999956         0.6341999769         0.1993000060
2        12.4891996384        -0.0847999975        -0.2064999938         0.9747999907
3        45.8860015869         0.6593000293        -0.7451000214        -0.1005000025

Superposition in the TM-score: Length(d<5.0) = 62 RMSD = 2.26
(':' denotes the residue pairs of distance < 5.0 Amstrong)
RLALSDAHFRRICQLIYQRAGIVLADHKRDMVYNRLVRRLRALGLDDFGRYLSMLEANQNSAEWQAFINALT
::::::::::::::::::::::    :::::::::::::::::::::::::::::::::     :::: :::
RLALSDAHFRRICQLIYQRAGIVLADHKRDMVYNRLVRRLRALGLDDFGRYLSMLEANQNSAEWQAFINALT
123456789012345678901234567890123456789012345678901234567890123456789012

specs's People

Contributors

mzsau avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

specs's Issues

Error! Invalid Amino Acid HIE

I'm incorporating the SPECS analysis code into a open-source pipeline to evaluate folded protein structures obtained from molecular dynamics simulations. I'm using the AmberTools20 tleap and sander packages, which specifies various residue names for histidine associated with its various protonation states. SPECS doesn't like the resnames HIE and HIP. Can these be added to the list of protein residues?

Segmentation fault (core dumped)

It gives segmentation fault, I went through the code it fails on loading pdbs, specifically while reading the line.
Could you verify it?
I used gcc 9.3.

Error compiling SPECS.cpp file

I followed the instructions from the Readme file and ran the following command:

g++ -o SPECS SPECS.cpp
However, I am getting the following error,

SPECS.cpp: In function β€˜long double u3b(long double*, long double ()[3000], long double ()[3000], int, int, long double, long double ()[4], long double, int)’:
SPECS.cpp:1932:1: warning: control reaches end of non-void function [-Wreturn-type]
1932 | }
| ^

What could be the reason for this? I am trying to use it on a 64 bit Ubuntu machine.

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.