TreePack (Side Chain Assignment via Tree Decomposition)

(Version 1.2)

TreePack is a side-chain prediction program based on tree-decomposition of a protein backbone structure. TreePack can run as a standalone application on Linux.  You can download the whole TreePack package by clicking TreePack.Debian.tar.gz and use it for any purposes. TreePack is only tested on a Debian Linux machine with Intel CPU. It should be able to run on other Linux machines. I will also try my best to compile TreePack on other platforms and make TreePack an Open Source project.

TreePack runs much faster than SCWRL 3.0 on large proteins or those proteins with heavy potential atomic clashes. Although TreePack runs more efficiently, it does not lose any prediction accuracy compared to SCWRL 3.0.  SCWRL 3.0 failed to terminate within 10 hours on these real-world instances: hard1, hard2, and hard3. Instead, TreePack can solve them very quickly. For the detailed performance comparison, please refer to my TreePack paper.


The tree-decomposition algorithm used in TreePack has been implemented into Dunbrack’s new SCWRL4 program.

Usage: ./SCATD –i input_pdb_file [–o out_pdb_file] [-a td | ip] [-f fields]

            -i: the input PDB file, here are two examples:   example1.pdb and example2.pdb

            -o: the output PDB file, here are two examples: example1.out and example2.out

            -a: side-chain modeling algorithm option, td = tree-decomposition, ip = integer programming. If there are many potential atomic clashes, then you can try the ip option, which might speed up a lot.

            -f: by this option, you can specify some positions for which you want to do side-chain modeling.  The grammar of this option is something like “-f 0-5, 10-11, 13, 15-17”. Please note that in TreePack the starting position of residues along the primary sequence is 0 rather than 1.


TreePack also has other options which are not recommended to a general user.

More test data are available at NativeTestData.tar.gz and NonNativeTestData.tar.gz.


Format of the input PDB file:

In the input file, each residue should contain the coordinates of five atoms N, CA, C, O and CB. If you specify coordinates for more than six atoms for one residue, then the side-chain coordinates of this residue won’t be predicted. This feature enables TreePack to easily do side-chain modeling for nonnative backbones derived from homology modeling. Usually in homology modeling, the side-chain coordinates of one conserved position are copied from the template.


Please cite the following papers:


[1] Jinbo Xu. Rapid side-chain prediction via tree decomposition. RECOMB 2005. Boston, USA. May 14-18, 2005.

[2] Jinbo Xu and Bonnie Berger. Fast and accurate algorithms for protein side-chain packing. The Journal of the ACM, Volume 53, Issue 4 (July 2006), pp. 533-557.