Development of Software Package for Determining Protein Titration Properties Final Presentation Winter 2010 By Kaila Bennett, Amitoj Chopra, Jesse Johnson, Enrico Sagullo Background Electrostatic interactions are very important for the function of proteins which include: Binding Enzymatic catalysis Conformational transitions Electrostatic Interaction Stability Ionizable amino acids Electrostatic interactions Salt Bridges Dipole-Dipole Columbic interaction Facilitate interactions with aqueous environments Mediate polar contributions biological processes Depicts electrostatic potential (isopotential contour) red represents the negative, and the blue represent the positive Background Partial charge Functions of proteins such as catalysis are dependent on protonation state of ionizable amino acid residues pKa for a single amino acid is 50% protonation pKa values are environment dependent The environment may cause shifts in pKa pKa values are important for understanding many biological processes 1.0 0.8 0.6 0.4 0.2 0.0 -0.2 -0.4 -0.6 -0.8 -1.0 VCP E108 VCP E120 SPICE K108 SPICE K120 0 2 4 6 pH 8 10 12 14 Binding Catalysis Asp102 of Chymotrypsin – hydrogen bond with His57 – increases pKa His57 can accepts proton from Ser195 – activates serine protease for cleavage of substrate pKa shift important for each chemical reaction in catalytic mechanism Necessary to donate and abstract protons from neighboring groups Without pKa shift of His57, catalysis would not be possible! Salt Bridge pKa shifts also effect intermolecular salt bridges Salt bridges are short range, Columbic interactions that occur between two ionizable amino acid residues From S.Fischer et al, Proteins 2009 Conformation Change Another important biological process that is dependent on pKa of the environment is transition states of proteins Conformational switch -5 -3 -1 1 3 5 7 9 11 13 15 17 19 21 23 25 0 h: helix -0.1 c: coil Tyr67 Tyr100 Tyr115 Tyr177 Asp68 Asp76 Asp144 Asp160 Glu162 Glu173 -0.2 Partial charge Gh-c(neutral) neutral -0.3 -0.4 -0.5 -0.6 -0.7 -0.8 -0.9 -1 pH G h,ion (pH) ionized G c,ion (pH) + –+ – – +–+– ++– ++ – –– – + Gh-c(pH) + His121 His119 Catalytic site His108 His132 His137 Figure: Morikis et al, Protein Sci 2001 Background Linearized Poisson-Boltzmann Equation (LPBE) 4e 2 (r ) (r ) 0 (r ) (r ) (r ) 0 k BT 2 4e 2 I (r ) 0k BT 2 ε: κ: I: q: φ: I F z (r r ) i 1 1 M 2 0 zi ni 2 i 1 Electrostatic Free Energies 1 2 f d i i ε low ε surface κ surface Dielectric coefficient Ion accessibility function Ionic strength Charge Electrostatic potential Gelectro ε high q, , , κ=0 κ≠0 Solvent Charges Partial Charges (Electric dipoles) Background Charges Courtesy of C. Kieslich Background pKa calculation by the use of thermodynamic cycle Thermodynamic cycle has four proposed states: 1-Neutral to charge of bound 2-Bound charge to amino acid 3-Neutral to charge free 4-Bound neutral to amino acid This method also allows for calculation free energy values Ultimately allowing for the elucidation of intrinsic pKa values and titration curves Polymer AH 1 4 AH Polymer 2 3 A- A- Background G Free G protein G neutral G ch arg e G n c G ch arg e G neutral ka e G protein RT protein Pk a Figure: Courtesy of Morikis et al G protein log( ka ) 2.303RT G protein 2.303RT free Pk a G free 2.303RT 2.303RT(Pka free Pkaprotein) G n c Pka protein Pka Adapted from lecture notes of Bioengineering 135 free G n c 2.303RT Background PDB PQR APBS These modifications include: Adding a limited number of missing heavy atoms Placing polar hydrogen's Optimizing the protein for favorable hydrogen bonding Removing unfavorable van der Waals clashes (when two atoms try to occupy the same space) Assigning charge ( partial or whole) and van der Waals radii parameters from a variety of force fields Rationale Developing a software package that not only incorporates APBS to calculate free energies but also calculate protein titration characteristics, will help ultimately aid to elucidate proteins stability, catalysis, salt bridges, binding Figure: Test case protein 1LY2 Experimental Procedure (So Far) Make Two PDB files neutral and charged Two PDB’s are made to be incorporated into free energy calculations One neutral PDB that contains all the amino acids in their neutral forms One Charged PDB that contains all the amino acids in their charged forms PDB to PQR Generate four states of TC Call of APBS Calculate intrinsic pKa Take cleaned PDB file and covert file to a PQR file to make compatible with APBS software Charged and Neutral PQR’s are combined and trimed to make the four states of the Thermodynamic Cycle Newly converted PQR were taken for energy calculations using APBS software Each ΔG value is used to calculate the pKa of its corresponding residue Obtain PDB to PQR converter Each ionizable amino acid are placed within the neutral to leave one charged and the rest neutral to make the first state Make four PQR files to correlate to the four states in the Thermodynamic Cycle The ΔG values are first divided by thermo energy then subtracted by the model pKa Use python to call the converter from R The charged and neutral amino acids by themselves correspond to two of the states Develop a template input file which will be edited through scripts to make a specific input file System call from R to convert file The last state is the neutral PQR by itself Template was read in, edited and then written into a new input file Use system call with new input file to calculate free energies using APBS Experimental Parameters Ionic strength Dielectric solvent (εlow) Dielectric Solute (εhigh) Temp 150.0 mM 80.0 20.0 298.15 K Box Size (Å) X Y Z fglen 100 100 100 cglen 100 100 100 Grid size 129 129 129 Results (PDB2PQR) Code (General) : $ python pdb2pqr.py [options] --ff={forcefield} {path} {output-path} Using PARSE to give van der Waal radii and atomic charge Forcefield Path Where the file is located Output_path Where the PQR file are to be generated Figure: Protein 1LY2 Code used in program: system("python /Users/senior_design/pdb2pqr-1.5/pdb2pqr.py -ff parse 1LY2.pdb 1LY2.pqr") Results ( Neutral and Charge) Neu_Char_pdb <- function(pdb) { x <- pdb x$atom[atom.select(x, resid = "ASP" )$atom,4]<-sub("ASP", "ASH", x$atom[atom.select(x, resid = "ASP" )$atom,4]) x$atom[atom.select(x, resid = "GLU" )$atom,4]<-sub("GLU", "GLH", x$atom[atom.select(x, resid = "GLU" )$atom,4]) x$atom[atom.select(x, resid = "LYS" )$atom,4]<-sub("LYS", "LYN", x$atom[atom.select(x, resid = "LYS" )$atom,4]) x$atom[atom.select(x, resid = "ARG" )$atom,4]<-sub("ARG", "AR0", x$atom[atom.select(x, resid = "ARG" )$atom,4]) write.pdb(pdb = x,file = "1ly2_neutral” The newly generated PDB’s will be incorporated into the calculation of free energies Generates the neutral and charged PDB’s Results (Call APBS Script) con <- file("apbs_template.in", "r") Reads in our input in_file <- readLines(con) template close(con) bdp_file <- “1LY2_noGLU35.pqr" bp_file <- “1LY2_GLU35.pqr" Four PQR files which fdp_file <- "GLU35_no.pqr" correspond to each state of TC fp_file <- "GLU35.pqr" length <- 100 width <- 100 height <- 100 in_file[2] <- paste(" mol pqr ",bdp_file, sep = "") in_file[3] <- paste(" mol pqr ",bp_file, sep = "") in_file[4] <- paste(" mol pqr ",fdp_file, sep = "“) in_file[5] <- paste(" mol pqr ",fp_file, sep = "") Writes a new in_file[11] <- paste(" cglen ",length,width,height, sep = " ") input file with our in_file[12] <- paste(" fglen ",length,width,height, sep = " ") in_file[34] <- paste(" cglen ",length,width,height, sep = " ") specific in_file[35] <- paste(" fglen ",length,width,height, sep = " ") parameters in_file[57] <- paste(" cglen ",length,width,height, sep = " ") in_file[58] <- paste(" fglen ",length,width,height, sep = " ") in_file[80] <- paste(" cglen ",length,width,height, sep = " ") in_file[81] <- paste(" fglen ",length,width,height, sep = " ") con <- file("infile.in","w") writeLines(in_file,con,sep = "\n") close(con) System call to APBS to TC <- system(paste( "/apbs-1.2-mac-univ/bin/apbs", "infile.in",">", use new input file and "outfile.txt", sep = " ")) calculate free energies Results (Free Energy Calc.) k <- ( as.numeric(neutral_pqr$atom[1,"resno"]) ) end_of_seq <- length(seq.pdb(neutral_pqr) ) - 1 seq <-our_seq(LY2, end_of_seq) AAdf <- NULL for ( { Indexing i in seq ) For loop to run through if ( i == "R" | i == "K" | i == "H" | i == "C" | i == "Y" sequence one amino | i == "D" | i == "E" ) acid at a time { Before <- trim.pdb( neutral_pqr, atom.select(neutral_pqr, resno = 1:( k - 1 ) ) ) Free_protonated <- trim.pdb( charged_pqr,atom.select (charged_pqr, resno = k ) ) After <- trim.pdb( neutral_pqr, atom.select (neutral_pqr, resno = (k+1): end_of_seq ) ) Free_deprotonated <- trim.pdb( neutral_pqr, atom.select(neutral_pqr, resno = k)) write.pqr(Free_protonated, file = "Free_protonated.pqr") Before_FP <- cat_pdb( Before, Free_protonated ) Total <- cat_pdb(Before_FP, After) write.pqr(Total, file = "Bound_Protonated.pqr") write.pqr(Free_deprotonated, file = "Free_deprotonated.pqr") Calls APBS for bp <- read.pqr("Bound_Protonated.pqr") every ionizable bdp <- read.pqr("1ly2_neutral.pqr") fp <- read.pqr("Free_protonated.pqr") amino acid to fdp <- read.pqr("Free_deprotonated.pqr") calculate specific delta_G <- call_apbs(in_file) AAdf <- rbind(AAdf, c("Resid"=i,"Resno" = k+1,"delta_G"=delta_G)) ΔG values } k <- k + 1 } Results (Intrinsic pKa) Protein 1LY2 Residue Average ΔG (kJ/mole) Average pKa Arginine -50.21 20.79 Aspartic Acid -50.29 12.71 Cystine -50.30 17.09 Glutamic Acid -48.86 12.86 Histidine -47.94 14.28 Lysine -50.29 19.31 Tyrosine -46.51 18.24 Progress Tracker (Winter) 1/2/10 1/12/10 1/22/10 2/1/10 2/11/10 2/21/10 3/3/10 3/13/10 Learn R Conversion of PDB to PQR Function to call APBS from R Calculations of Free Energies Duration (days) Retrieving of Charged/Neutral from PDB Calculate Intrinsic pKa Combination of all Scripts Reduce Run Time on Scripts Future work 3/29/10 4/8/10 4/18/10 4/28/10 5/8/10 5/18/10 5/28/10 6/7/10 Calculate Apparent pKa by using Intrinsic pKa Clustering or Monte Carlo Generate Titration Curves Thermodynamic Stability of Protein User Friendly Graphical Interface Duration (days) Discussion Developed and refined scripts that took in PDB files and converted them to neutral and charged PQR files Developed and refined scripts that took neutral and charged PQR files and generated files that corresponds to the four states of the thermodynamic cycle Intergrated all codes to run sequentially to calculate free energies and pKa Successful in taking protein 1LY2 PDB file and calculating intrinsic pKa for all ionizable amino acids of 1LY2 Acknowledgments Dr. Dimitrios Morikis Chris Kieslich Ronald Gorham Dr. Jerome Schultz Gokul Upadhyayula Hong Xu Dr. Thomas Girke References Trylska, Joanna. "View Continuum Molecular Electrostatics, Salt Effects, and Continuum Molecular Electrostatics, Salt Effects, and Counterion Binding—A Review of the Poisson– Boltzmann Counterion Binding—A Review." Wiley InterScience 28.2 (2007). Antosiewicz, Jan M. "Protonation Free Energy Levels in Complex Molecular Systems." Wiley InterScience 89.4 (2007). Gilson, Micheal K. "INTRODUCTION TO CONTINUUM ELECTROSTATICS, WITH MOLECULAR APPLICATIONS." Editorial. 13 Jan. 2006. Morikis, Dimitrios. "Molecular thermodynamics for charged biomacromolecules." Fluid Phase Equilibria (2006). Nielsen, Jens. "Analyzing Enzymatic pH Activity Profiles and Protein Titration Curves Using Structure-Based pKa Calculations and Titration Curve Fitting." Methods in Enzymology. Questions? Our group would like to mention that no computers were injured in the making of the software package