This script calculates the different layers (Surface, Boundery, Core) of a protein then opens Pymol to highlight them.
This script does the following:
- Calculates the different layers (Surface, Boundery, Core) of a protein by calculating each amino acid's SASA (solvent-accessible surface area).
- It then uses this information to write up Pymol commands that colour these different layers in Pymol.
- It then puts these commands into a temporary (temp) file which is used to open Pymol and execute these commands, this strange setup is done because this script runs in python 3 and the educational Pymol runs python 2 and will not execute all biology related python 2 modules.
- Pymol will open showing the protein in cartoon structure and each layer highlighted in a different colour.
- Once Pymol is exited the temp file is deleted.
These commands allow the user to colour different parts (default: Core=Red, Boundery=Magenta, Surface=Green) of a protein and better visualise it in order to take better decisions on refining it.
This script was written to run on GNU/Linux using python 3, it was not tested in Windows or MacOS. This script will mostly be useful to refine proteins after a Rosetta FFL (Fold From Loop) computation, but can still be used to refine any protein. Contact the author at sari.sabban@gmail.com for any questions regarding this script.
To use follow these steps:
- Install DSSP in linux by running the following command in terminal (sudo apt-get install dssp).
- Install PyMOL by running the following command in terminal (sudo apt-get install pymol).
- Install biopython by running the following command in terminal (python3 -m pip install biopython) you need pip to be installed, if you do not have it you can install it in linux by running the following command in terminal (sudo apt-get install python3-pip).
- Install numpy (python3 -m pip install numpy).
- The .pdb file must be in the same directory as this script.
- Run by navigating to working directory then typing this in the command line:
python3 ProtLayers.py FINENAME.pdb
- If you want to apply the code to multiple structures use the ProtLayers_code.py script which will print on the terminal the Pymol code, after which you can copy/paste into the Pymol terminal. That way the layers for multiple structures will be highlighted.
- Refere to the paper by (Koga et.al., 2012 - PMID: 23135467) Methods section's Sequence Design Protocol for more explanation on protein refinement and each layer's SASA parameters.
- Refere to the paper by (Correia et.al., 2014 - PMID: 24499818) for details about the Rosetta Fold From Loop (FFL) protocol.
- Refere to this webpage for how to use BioPython.
- Refere to the references (Cock et.al., 2009 - PMID: 19304878) and (Hamelryck and Manderick, 2003 - PMID: 14630660) regarding the applications used here from biopython.
- Refere to the references (Kabsch W. and Sander C., 1983 - PMID: 6667333) regading DSSP.
- Refere to the reference (Tien et.al., 2013 - PMID: 24278298) regarding Wilke SASA parameters.