by kaila bennett, amitoj chopra, jesse johnson, enrico sagullo
DESCRIPTION
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 - PowerPoint PPT PresentationTRANSCRIPT
Development of Software Package for Determining
Protein Titration Properties
Final Presentation Winter 2010
By
Kaila Bennett, Amitoj Chopra, Jesse Johnson, Enrico Sagullo
BackgroundElectrostatic interactions are very important for the function of proteins which include:
BindingEnzymatic catalysisConformational transitionsElectrostatic Interaction Stability
Ionizable amino acidsElectrostatic interactions
Salt BridgesDipole-DipoleColumbic interaction
Facilitate interactions with aqueous environmentsMediate polar contributions biological processes
Depicts electrostatic potential (isopotential contour) red represents the negative, and the blue represent the positive
BackgroundFunctions of proteins such as catalysis are dependent on protonation state of ionizable amino acid residues pKa for a single amino acid is 50% protonationpKa values are environment dependentThe environment may cause shifts in pKa
pKa values are important for understanding many biological processes
0 2 4 6 8 10 12 14-1.0
-0.8
-0.6
-0.4
-0.2
0.0
0.2
0.4
0.6
0.8
1.0
Pa
rtia
l ch
arg
e
pH
VCP E108 VCP E120 SPICE K108 SPICE K120
Binding
Catalysis
Asp102 of Chymotrypsin – hydrogen bond with His57 – increases pKa
His57 can accepts proton from Ser195 – activates serine protease for cleavage of substratepKa shift important for each chemical reaction in catalytic mechanism
Necessary to donate and abstract protons from neighboring groupsWithout pKa shift of His57, catalysis would not be possible!
Salt BridgepKa 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
+ –
+–+
–
–
+–+–––++
–+
++–
G (neutra l)h-c
G (pH)h-c
G (pH)h,ion G (pH)c,ion
h: helix c: co il
neutra l
ionized
-1
-0.9
-0.8
-0.7
-0.6
-0.5
-0.4
-0.3
-0.2
-0.1
0
-5 -3 -1 1 3 5 7 9 11 13 15 17 19 21 23 25
pH
Par
tial
ch
arg
e
Tyr67
Tyr100
Tyr115
Tyr177
Asp68
Asp76
Asp144
Asp160
Glu162
Glu173
His108 His132
His137
His119
His121
Catalytic site His108 His132
His137
His119
His121
Catalytic site
Figure: Morikis et al, Protein Sci 2001
Background
∑=
−=+∇⋅∇−F
iii
B
rrzTk
errrrr
10
22
0 )(4
)()()()()( δε
πϕκεεϕε
Tk
Ier
Bεεκ
0
22 4
)( =
ε: Dielectric coefficientκ: Ion accessibility functionI: Ionic strengthq: Charge φ: Electrostatic potential
Background Charges
Solvent Charges
Partial Charges (Electric dipoles)
=
=M
iii nzI
1
02
2
1
( )ϕκε ,,,q
ε high
ε lowε surface
κ surfaceκ = 0
κ ≠ 0
Linearized Poisson-Boltzmann Equation (LPBE)
Electrostatic Free Energies
€
Gelectro =1
2ρ fϕdΩΩ
∫
Courtesy of C. Kieslich
BackgroundpKa calculation by the use of thermodynamic cycleThermodynamic cycle has four proposed states:
1-Neutral to charge of bound2-Bound charge to amino acid3-Neutral to charge free4-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
PolymerAH
A-
PolymerA-
AH
1
4 2
3
Background
€
GFree − ΔG protein = ΔGneutral − ΔGch arg e
€
Gn−c = ΔGch arg e − ΔGneutral
€
ka = eΔG protein
RT →→
€
−log(ka ) =ΔG protein
2.303RT
€
Pka
protein =ΔG protein
2.303RT
€
Pka
free =ΔG free
2.303RT
€
2.303RT(Pka free − Pkaprotein ) = ΔGn−c
€
Pkaprotein = Pka free +ΔGn−c
2.303RT
Adapted from lecture notes of Bioengineering 135
Figure: Courtesy of Morikis et al
Background
These modifications include:Adding a limited number of missing heavy atomsPlacing polar hydrogen'sOptimizing 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
RationaleDeveloping 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)
Experimental Parameters
Results (PDB2PQR)Code (General) : $ python pdb2pqr.py [options] --ff={forcefield} {path} {output-path}
Forcefield
Path
Output_path
Code used in program:system("python /Users/senior_design/pdb2pqr-1.5/pdb2pqr.py --ff parse 1LY2.pdb 1LY2.pqr")
Using PARSE to give van der Waal radii and
atomic charge
Where the file is located
Where the PQR file are to be generated
Figure: Protein 1LY2
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”
Generates the neutral and charged PDB’s
The newly generated PDB’s will be incorporated into the calculation of free energies
Results (Call APBS Script)con <- file("apbs_template.in", "r")in_file <- readLines(con)close(con)bdp_file <- “1LY2_noGLU35.pqr"bp_file <- “1LY2_GLU35.pqr"fdp_file <- "GLU35_no.pqr"fp_file <- "GLU35.pqr"length <- 100width <- 100height <- 100in_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 = "")in_file[11] <- paste(" cglen ",length,width,height, sep = " ")in_file[12] <- paste(" fglen ",length,width,height, sep = " ")in_file[34] <- paste(" cglen ",length,width,height, sep = " ")in_file[35] <- paste(" fglen ",length,width,height, sep = " ")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)TC <- system(paste( "/apbs-1.2-mac-univ/bin/apbs", "infile.in",">", "outfile.txt", sep = " "))
Reads in our input template
Reads in our input template
Four PQR files which correspond to each state of TC
Four PQR files which correspond to each state of TC
Writes a new input file with our specific parameters
System call to APBS to use new input file and calculate free energies
System call to APBS to use new input file and calculate free energies
Results (Free Energy Calc.)
IndexingIndexing
For loop to run through sequence
one amino acid at a time
For loop to run through sequence
one amino acid at a time
k <- ( as.numeric(neutral_pqr$atom[1,"resno"]) )end_of_seq <- length(seq.pdb(neutral_pqr) ) - 1seq <-our_seq(LY2, end_of_seq)AAdf <- NULL
for ( i in seq ){
if ( i == "R" | i == "K" | i == "H" | i == "C" | i == "Y" | i == "D" | i == "E" )
{ 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") bp <- read.pqr("Bound_Protonated.pqr") bdp <- read.pqr("1ly2_neutral.pqr") fp <- read.pqr("Free_protonated.pqr") fdp <- read.pqr("Free_deprotonated.pqr") delta_G <- call_apbs(in_file) AAdf <- rbind(AAdf, c("Resid"=i,"Resno" = k+1,"delta_G"=delta_G))
}
k <- k + 1
}
Calls APBS for every ionizable amino acid to
calculate specific ΔG values
Calls APBS for every ionizable amino acid to
calculate specific ΔG values
Results (Intrinsic pKa)
Progress Tracker (Winter)
Future work
Discussion Developed and refined scripts that took in PDB files and converted them to neutral and charged PQR filesDeveloped and refined scripts that took neutral and charged PQR files and generated files that corresponds to the four states of the thermodynamic cycleIntergrated 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
AcknowledgmentsDr. Dimitrios MorikisChris KieslichRonald GorhamDr. Jerome SchultzGokul UpadhyayulaHong XuDr. Thomas Girke
ReferencesTrylska, 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