Poisson–Boltzmann profile for an ion channel
Practical: Poisson–Boltzmann profile for an ion channel
In this practical, we will take the transmembrane domain of an ion channel, the nicotinic acetylcholine receptor, and perform a Poisson–Boltzmann profile along its pore, to see what electrostatic environment a cation encounters when it passes through the pore.
The theory is explained in this presentation: Electrostatics and pKa calculations. For more tutorials about APBS, see the APBS wiki and the CCPB workshop tutorials there. For pKa calculations (not covered here), see Jens Nielsen’s pKa tutorial.
This practical is designed as a group activity with several computers in a GNU/Linux environment. However, it is possible to carry it out as an individual exercise, and the software required may also be available on other operating systems and computing platforms.
Understanding the structure 
Download the entry 1OED (transmembrane domain of the nicotinic acetylcholine receptor) from the Protein Data Bank and save it as a file 1OED.pdb. Using a molecular visualization tool such as VMD, look at the structural model contained therein. Convince yourself of the following structural features:
- There are five monomers, forming a pentamer with a central pore.
- The pore goes along the z-axis, and has the coordinates of (65 Å, 65 Å, z), where z is something between 30 Å and 120 Å.
For this, try identifying some of the atoms around the pore-forming helices by going into the graphics window, press 0, and clicking on the atoms. In the VMD console window their coordinates should show. To rigorously identify a point in the pore, pick one corresponding atom in each helix and take the average of the coordinates.
Parallel processing: pick your sample point 
Dividing up the work amongst the group, make sure each of the suggested points will be sampled. One can also try to increase the resolution of sampling by inserting more points inbetween, or extend out into the bulk solvent.
Suggested sample points (in ångström):
65.000 65.000 30.000 65.000 65.000 40.000 65.000 65.000 50.000 65.000 65.000 60.000 65.000 65.000 70.000 65.000 65.000 80.000 65.000 65.000 90.000 65.000 65.000 100.000 65.000 65.000 110.000 65.000 65.000 120.000
Now each of us has some work to do. Each of us will calculate at a sample point, doing three calculations: protein-only, ion-only (at the point), and the protein–ion complex (with the ion at the point).
Add charge and radius information to the protein 
Using one of the PDB2PQR web servers, add charge and radius information to the PDB entry 1OED. It will take a while for the web server to generate the results: be patient and pay attention to the informative messages. (Alternatively, install PDB2PQR locally and use that.) This should give you the file 1OED.pqr. The suffix ‘pqr’ stands for ‘protein coordinates, charge, and radius’. If you look at the file, you will notice two extra columns after the coordinates, one with the (partial) charges of the atoms, and the next with the radii.
Preparing the ion 
Make a file called ion.pqr and put one line in it, something like:
ATOM 20000 Na+ ION 10000 65.000 65.000 65.000 +1.00 1.6800
This is a very small ‘pqr’ file containing only one line, describing the sodium ion at the specified coordinates. The spacing of the line matters a little bit, so please copy-and-paste into the file rather than retyping it. On the other hand, the parser in APBS is resaonably tolerant, so don’t worry too much.... Change this coordinate to that of the sample point you were assigned to calculate at. Make sure the columns conform to that in the other ‘pqr’ file containing the protein.
Preparing the protein–ion complex 
Now we prepare the ‘pqr’ file for the protein–ion complex. To do this, run the following command in your Linux terminal:
cat 1OED.pqr ion.pqr > complex.pqr
(cat for ‘concatenate’). This concatenates the files for the protein and the ion, giving that for the protein–ion complex. Check the resulting file complex.pqr. Remove any stray blank lines.
Input file for APBS 
Look at the following content of an input file for the APBS program. Create a file with such content and name it nAChR.in.
read mol pqr 1OED.pqr mol pqr ion.pqr mol pqr complex.pqr end elec name protein mg-auto mol 1 dime 97 97 97 cglen 100.000000 100.000000 105.000000 fglen 10 10 10 cgcent mol 3 fgcent mol 2 # NaCl ionic strength in mol/l ion 1 0.15 0.95 # sodium ions ion -1 0.15 1.81 # chloride ions lpbe bcfl mdh pdie 2.0 # protein and faux-lipid sdie 78.5 # Eisenberg and Crothers Phys. Chem. book 1979 srfm smol chgm spl2 srad 1.4 swin 0.3 sdens 10.0 temp 300 # gamma 0.105 # Uncomment for old versions of APBS -- deprecated for APBS 1.0.0 calcenergy total calcforce no end elec name ion mg-auto mol 2 dime 97 97 97 cglen 100.000000 100.000000 105.000000 fglen 10 10 10 cgcent mol 3 fgcent mol 2 # NaCl ionic strength in mol/l ion 1 0.15 0.95 # sodium ions ion -1 0.15 1.81 # chloride ions lpbe bcfl mdh pdie 2.0 # protein and faux-lipid sdie 78.5 # Eisenberg and Crothers Phys. Chem. book 1979 srfm smol chgm spl2 srad 1.4 swin 0.3 sdens 10.0 temp 300 # gamma 0.105 # Uncomment for old versions of APBS -- deprecated for APBS 1.0.0 calcenergy total calcforce no end elec name cpx mg-auto mol 3 dime 97 97 97 cglen 100.000000 100.000000 105.000000 fglen 10 10 10 cgcent mol 3 fgcent mol 2 # NaCl ionic strength in mol/l ion 1 0.15 0.95 # sodium ions ion -1 0.15 1.81 # chloride ions lpbe bcfl mdh pdie 2.0 # protein and faux-lipid sdie 78.5 # Eisenberg and Crothers Phys. Chem. book 1979 srfm smol chgm spl2 srad 1.4 swin 0.3 sdens 10.0 temp 300 # gamma 0.105 # Uncomment for old versions of APBS -- deprecated for APBS 1.0.0 calcenergy total calcforce no end print energy cpx - ion - protein end quit
Notice that there are several sections:
The first, flanked by read and end, reads in the three ‘pqr’ files we have just prepared.
Then there are three sections flanked by elec and end, looking much the same, but the mol statement reads in a different molecule each time. The detailed description of the parameters can be found in the APBS user guide. Can you find where the grid dimensions and lengths are specified? The mobile ion concentrations? The dielectric coefficients?
Finally, we calculate the energy changes in the print statement (ΔEPB = Ecomplex − Eion − Eprotein), and quit.
Calculation and analysis 
To run APBS, do
apbs --output-file=nAChR.out nAChR.in
This writes out our results to a file called nAChR.out so we can refer to it later. This calculation took about 20 min on my Intel® Xeon™ 1.7 GHz computer.
Look into the output file nAChR.out. Towards the bottom, you will see something like:
print energy 3 - 2 - 1 localEnergy 2.158304339453E+01 kJ/mol globalEnergy 2.158304339453E+01 kJ/mol
Take a note of this energy value for your sample point.
Using a piece of grid paper, plot the Poisson–Boltzmann electrostatic energy profile along the pore (z-axis).
Programs required 
- APBS 0.5.1 (or a later version) from http://apbs.sourceforge.net/ (This needs to be installed on the GNU/Linux machine for the practical.)
- PDB2PQR 1.2.1 (or a later version) from http://pdb2pqr.sourceforge.net/ (This is optional, an alternative to the PDB2PQR web servers.)
If you use this method in your scientific publication, please consider citing at least these three papers:
- Oliver Beckstein, Kaihsu Tai, Mark S. P. Sansom (2004) Not ions alone: barriers to ion permeation in nanopores and channels. J. Am. Chem. Soc. 126:14694–14695
- N. A. Baker, D. Sept, S. Joseph, M. J. Holst, J. A. McCammon (2001) Electrostatics of nanosystems: application to microtubules and the ribosome. Proc. Natl. Acad. Sci. USA 98:10037–10041
- T. J. Dolinsky, J. E. Nielsen, J. A. McCammon, N. A. Baker. (2004) PDB2PQR: an automated pipeline for the setup, execution, and analysis of Poisson-Boltzmann electrostatics calculations. Nucleic Acids Research 32:W665–W667