About ExSSO

ExSSO is a fast and efficient software for predicting structures of symmetric transmembrane oligomers. It applies an exhaustive search guided by ambiguous inter-protomer NOEs to find the proper structures of the symmetric oligomer. The user should provide the predetermined protomer structure, inter-protomer NOE restraints and the number of protomers. Then, ExSSO will calculate representative structures with RMSD less than 1.5 Å compared with given NOE distance restraints. These structures can be further refined using the standard MD/SA programs. [Download: Linux MacOS]

Input Files & Format

ExSSO requires at least two input files: the protomer structure file and the inter-protomer restraint file (the membrane constraint file or other new implemented constraint files are optional). The protomer structure file contains the atomic coordinates of the protomer in standard PDB format.
Examples for PDB file are available below:
human Fas HIV-1 gp41 influenza M2 MCU channel pore
The inter-protomer NOE restraints have the following format:
(AA ResNum1 and ATOM AtomName1) (AA ResNum2 and ATOM AtomName2)
where ResNum is the residue number in the protomer structure and AtomName must be HN, HA, HB, HG, HD, HE, HZ or HH.
Examples for NOE restraints are available below:
human Fas HIV-1 gp41 influenza M2 MCU channel pore
The membrane restraint has the following format:
(AA ResNum1 and ResNum2) (AA ResNum3 and ResNum4) Distance Uncertainty
where ResNum1 and ResNum2 represent the location of one membrane boundary, ResNum3 and ResNum4 represent the location of the other membrane boundary, Distance is the estimated thickness of lipid bilayer, and Uncertainty is the error. An example for membrane restraint is available at: HIV-1 gp41

How to Use ExSSO

Unpack the ExSSO package to the directory called ExSSO, then change directory
$ cd ExSSO/script
1. Open configure.py and set parameters including protein name ($proName), home directory of ExSSO ($homeDir), file path of the protomer structure, file path of NOE restraints and the number of protomers, users can also change default parameters, then run this script
$ python configure.py
A file called param will be created in $homeDir/$proName/, which contains all parameters of ExSSO.
2. To check the format of protomer structure file and restraint file, run the following script
$ python check_format.py -p $homeDir/$proName/param -t pdb
for checking the PDB file only
$ python check_format.py -p $homeDir/$proName/param -t noe
for checking the NOE restraint file only
$ python check_format.py -p $homeDir/$proName/param -t mem
for checking the membrane restraint file only
$ python check_format.py -p $homeDir/$proName/param -t all
for checking all prerequisite input files
3. To search conformations, run the following script
$ python exhaustive_search.py -p $homeDir/$proName/param
Representative conformations are stored in $homeDir/$proName/$proName.cs
4. To generate the final structures of symmetric oligomer, which can be fed into Xplor-NIH for further refinement, run the following script
$ python get_structure.py -p $homeDir/$proName/param
All cluster center structures ($proName_*.pdb) can be found in $homeDir/$proName/. The structures are sorted from the best to the worst.


Contact: james_chou@hms.harvard.edu or hbshen@sjtu.edu.cn

Last update: 11/15/2017