This is a rewrite of DSSP, now offering full mmCIF support. The difference with previous releases of DSSP is that it now writes out an annotated mmCIF file by default, storing the secondary structure information in the _struct_conf category.
Another new feature in this version of DSSP is that it now defines Poly-Proline helices as well.
The DSSP program was designed by Wolfgang Kabsch and Chris Sander to standardize secondary structure assignment. DSSP is a database of secondary structure assignments (and much more) for all protein entries in the Protein Data Bank (PDB). DSSP is also the program that calculates DSSP entries from PDB entries.
DSSP does not predict secondary structure.
A good, modern compiler is needed to build the mkdssp program since it uses many new C++20 features.
The new makefile for dssp will take care of downloading and building all requirements automatically. So in theory, building is as simple as:
git clone https://github.com/PDB-REDO/dssp.git cd dssp cmake -S . -B build cmake --build build cmake --install buildSince version 4.5.2 it is possible to build a Python module to directy work with DSSP info inside your Python scripts. To build and install the Python module use the following commands instead:
git clone https://github.com/PDB-REDO/dssp.git cd dssp cmake -S . -B build -DBUILD_PYTHON_MODULE=ON cmake --build build sudo cmake --install buildAfter that you can use dssp in a python script, like this:
from mkdssp import dssp import os import gzip file_path = os.path.join("..", "test", "1cbs.cif.gz") with gzip.open(file_path, "rt") as f: file_content = f.read() dssp = dssp(file_content) print("residues: ", dssp.statistics.residues) for res in dssp: print(res.asym_id, res.seq_id, res.compound_id, res.type)See manual page for more info. Or even better, see the DSSP website.