Next: get.protein
Up: CHNOSZ examples
Previous: protein
ionize> ## Don't show:
ionize> data(thermo)
thermo: loaded 1997 aqueous, 3089 total species to thermo$obigt
thermo: loaded 5264 proteins to thermo$ECO
thermo: loaded 6717 proteins to thermo$SGD
thermo: loaded 4155 localizations and 3570 abundances to thermo$yeastgfp
ionize> ## End Don't show
ionize> ### Direct Interaction with 'ionize'
ionize>
ionize> ## Charge of LYSC_CHICK as a function of pH and T
ionize> # After Fig. 10 of Dick et al., 2006
ionize> basis(c("CO2","H2O","NH3","H2S","O2","H+"),rep(999,6))
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 999 aq
H2O 0 2 0 1 0 0 1 999 liq
NH3 0 3 1 0 0 0 68 999 aq
H2S 0 2 0 0 1 0 70 999 aq
O2 0 0 0 2 0 0 2852 999 gas
H+ 0 1 0 0 0 1 3 999 aq
ionize> species("LYSC_CHICK")
protein: found LYSC_CHICK (C613H959N193O185S10, 129 residues)
ionize> # add the ionizable groups
ionize> ionize()
[1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
ionize> # get the affinities and charges (along equal temperature increments)
ionize> T <- c(25,150,6); pH <- c(0,14,50)
ionize> x <- affinity(pH=pH,T=T)
energy.args: pressure is Psat
energy.args: variable 1 is pH at 50 increments from 0 to 14
energy.args: variable 2 is T at 6 increments from 298.15 to 423.15
affinity: loading ionizable protein groups
subcrt: 24 species at 6 values of T and P (wet)
ionize> z <- ionize(x$values,x$values)
ionize> # plot charges at the temperatures we're interested in
ionize> plot(z[[1]][1,],x=seq(0,14,length.out=50),type="l",xlab="pH",
ionize+ ylab="net charge (Z)") # 25 deg C
ionize> lines(z[[1]][4,],x=seq(0,14,length.out=50),col="red") # 100 deg C
ionize> lines(z[[1]][6,],x=seq(0,14,length.out=50),col="orange") # 150 deg C
ionize> text(x=c(12,10,9),y=c(-15,-16,-18),labels=paste("T=",c(25,100,150),sep=""))
ionize> # if cysteine is oxidized (to cystine disulfide bonds) it may not ionize.
ionize> # suppress its ionization by upping energy of the ionized group
ionize> mod.obigt("[Cys-]",G=999999)
mod.obigt: updating [Cys-] aq (1655).
ionize> x <- affinity(pH=pH,T=25)
affinity: temperature is 25 C
energy.args: pressure is Psat
energy.args: variable 1 is pH at 50 increments from 0 to 14
affinity: loading ionizable protein groups
subcrt: 24 species at 298.15 K and 1 bar (wet)
ionize> z <- ionize(x$values,x$values)
ionize> lines(z[[1]][1,],x=seq(0,14,length.out=50),lty=2)
ionize> text(x=12,y=-7,"T=25, oxidized")
ionize> # add experimental points
ionize> points(thermo$expt$RT71$pH,thermo$expt$RT71$Z)
ionize> title(main=paste("Ionization of unfolded LYSC_CHICK\n",
ionize+ "Experimental points at 25 degC from Roxby and Tanford, 1971"),
ionize+ cex.main=0.9)
ionize> # forget our changes to thermo$obigt for next examples
ionize> data(thermo)
thermo: loaded 1997 aqueous, 3089 total species to thermo$obigt
thermo: loaded 5264 proteins to thermo$ECO
thermo: loaded 6717 proteins to thermo$SGD
thermo: loaded 4155 localizations and 3570 abundances to thermo$yeastgfp
ionize> ## Heat capacity of LYSC_CHICK as a function of T
ionize> basis("CHNOS+"); species("LYSC_CHICK")
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 -3 aq
H2O 0 2 0 1 0 0 1 0 liq
NH3 0 3 1 0 0 0 68 -4 aq
H2S 0 2 0 0 1 0 70 -7 aq
O2 0 0 0 2 0 0 2852 -80 gas
H+ 0 1 0 0 0 1 3 -7 aq
protein: found LYSC_CHICK (C613H959N193O185S10, 129 residues)
ionize> pH <- c(5,9,3); T <- c(0,100,25)
ionize> T.values <- seq(T[1],T[2],length.out=T[3])
ionize> # add the ionizable groups
ionize> ionize()
[1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
ionize> a <- affinity(pH=pH,T=T)
energy.args: pressure is Psat
energy.args: variable 1 is pH at 3 increments from 5 to 9
energy.args: variable 2 is T at 25 increments from 273.15 to 373.15
affinity: loading ionizable protein groups
subcrt: 24 species at 25 values of T and P (wet)
ionize> # values for non-ionized protein
ionize> c <- affinity(pH=pH,T=T,property="Cp.species")
energy.args: pressure is Psat
energy.args: variable 1 is pH at 3 increments from 5 to 9
energy.args: variable 2 is T at 25 increments from 273.15 to 373.15
subcrt: 24 species at 25 values of T and P (wet)
ionize> plot(T.values,c$values[[1]][,1],
ionize+ xlab=axis.label("T"),ylab=axis.label("Cp"),
ionize+ ylim=c(5000,8000),type="l",mgp=c(2.2,0.2,0))
ionize> # values for ionized protein
ionize> cp <- ionize(a$values,c$values)
ionize> for(i in 1:3) {
ionize+ lines(seq(T[1],T[2],length.out=T[3]),cp[[1]][,i],lty=2)
ionize+ text(80,cp[[1]][,i][21],paste("pH=",pH[i],sep=""))
ionize+ }
ionize> # Makhatadze and Privalov's group contributions
ionize> T.MP <- c(5,25,50,75,100,125)
ionize> points(T.MP,convert(MP90.cp(T.MP,"LYSC_CHICK"),"cal"))
ionize> # Privalov and Makhatadze's experimental values
ionize> e <- thermo$expt$PM90
ionize> e <- e[e$protein=="LYSC_CHICK",]
ionize> points(e$T,convert(e$Cp,"cal"),pch=16)
ionize> title(main=paste("Calc\"d heat capacity of LYSC_CHICK:",
ionize+ "non/ionized(solid/dashed);\n",
ionize+ "Makhatadze+Privalov 1990 (open, calc; filled, expt)"),
ionize+ cex.main=0.9)
ionize> ### Metastability calculations using 'ionize'
ionize>
ionize> ## Eh-pH diagrams for intra/extracellular proteins
ionize> organism <- c("PYRFU","ECOLI","YEAST")
ionize> intracellular <- c("AMPM","AMPM","AMPM1")
ionize> extracellular <- c("O08452","AMY1","PST1")
ionize> basis("CHNOSe") # for Eh we need electrons
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 -3 aq
H2O 0 2 0 1 0 0 1 0 liq
NH3 0 3 1 0 0 0 68 -4 aq
H2S 0 2 0 0 1 0 70 -7 aq
e- 0 0 0 0 0 -1 2 -7 aq
H+ 0 1 0 0 0 1 3 -7 aq
ionize> mycol <- c("red","green","blue")
ionize> for(i in 1:3) {
ionize+ species(delete=TRUE)
ionize+ species(c(intracellular[i],extracellular[i]),organism[i])
ionize+ if(i == 1) add <- FALSE else add <- TRUE
ionize+ t <- affinity(pH=c(0,14),Eh=c(-1,0))
ionize+ diagram(t,add=add,color=NULL,names=species()$name,
ionize+ col=mycol[i],col.names=mycol[i])
ionize+ }
protein: found AMPM_PYRFU (C1490H2408N390O423S9, 295 residues)
protein: found O08452_PYRFU (C2338H3307N573O649S9, 434 residues)
affinity: temperature is 25 C
energy.args: pressure is Psat
energy.args: variable 1 is pH at 128 increments from 0 to 14
energy.args: variable 2 is Eh at 128 increments from -1 to 0
affinity: loading ionizable protein groups
subcrt: 25 species at 298.15 K and 1 bar (wet)
diagram: immobile component is protein backbone group
diagram: conservation coefficients are 295 434
diagram: using residue equivalents
protein: found AMPM_ECOLI (C1291H2079N353O392S16, 264 residues)
protein: found AMY1_ECOLI (C3316H4962N900O995S19, 659 residues)
affinity: temperature is 25 C
energy.args: pressure is Psat
energy.args: variable 1 is pH at 128 increments from 0 to 14
energy.args: variable 2 is Eh at 128 increments from -1 to 0
affinity: loading ionizable protein groups
subcrt: 25 species at 298.15 K and 1 bar (wet)
diagram: immobile component is protein backbone group
diagram: conservation coefficients are 264 659
diagram: using residue equivalents
protein: found AMPM1_YEAST (C1870H2926N518O565S21, 377 residues)
protein: found PST1_YEAST (C1789H2923N489O620S4, 400 residues)
affinity: temperature is 25 C
energy.args: pressure is Psat
energy.args: variable 1 is pH at 128 increments from 0 to 14
energy.args: variable 2 is Eh at 128 increments from -1 to 0
affinity: loading ionizable protein groups
subcrt: 25 species at 298.15 K and 1 bar (wet)
diagram: immobile component is protein backbone group
diagram: conservation coefficients are 377 400
diagram: using residue equivalents
ionize> title(main=paste("Intracellular (AMPM) and extracellular proteins\n",
ionize+ describe(thermo$basis[1:4,])))
ionize> ## Buffer + ionization: Metastablilities of
ionize> ## thiol peroxidases from model bactera
ionize> ## (ECOLI, BACSU mesophile; AQUAE thermophile,
ionize> ## THIDA acidophile, BACHD alkaliphile)
ionize> basis("CHNOS+")
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 -3 aq
H2O 0 2 0 1 0 0 1 0 liq
NH3 0 3 1 0 0 0 68 -4 aq
H2S 0 2 0 0 1 0 70 -7 aq
O2 0 0 0 2 0 0 2852 -80 gas
H+ 0 1 0 0 0 1 3 -7 aq
ionize> organisms <- c("ECOLI","AQUAE","BACSU","BACHD","THIDA")
ionize> species("TPX",organisms)
protein: found TPX_ECOLI (C789H1260N210O245S3, 167 residues)
protein: found TPX_AQUAE (C830H1353N213O252S7, 169 residues)
protein: found TPX_BACSU (C805H1276N212O252S4, 166 residues)
protein: found TPX_BACHD (C794H1270N212O251S4, 166 residues)
protein: found TPX_THIDA (C762H1239N197O230S6, 163 residues)
ionize> # create a buffer with our proteins in it
ionize> mod.buffer("TPX",paste("TPX",organisms,sep="_"))
mod.buffer: added TPX.
ionize> # set up the buffered activities
ionize> basis(c("CO2","H2O","NH3","O2"),"TPX")
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 TPX aq
H2O 0 2 0 1 0 0 1 TPX liq
NH3 0 3 1 0 0 0 68 TPX aq
H2S 0 2 0 0 1 0 70 -7 aq
O2 0 0 0 2 0 0 2852 TPX gas
H+ 0 1 0 0 0 1 3 -7 aq
ionize> t <- affinity(return.buffer=TRUE,T=50)
affinity: temperature is 50 C
energy.args: pressure is Psat
affinity: loading buffer species
affinity: loading ionizable protein groups
subcrt: 28 species at 323.15 K and 1 bar (wet)
buffer: ( TPX ) for activity of CO2 H2O NH3 O2 (active), PBB (conserved).
ionize> basis(c("CO2","H2O","NH3","O2"),as.numeric(t[1:4]))
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 -29.2184054642911 aq
H2O 0 2 0 1 0 0 1 -21.9555747357632 liq
NH3 0 3 1 0 0 0 68 23.7999632531769 aq
H2S 0 2 0 0 1 0 70 -7 aq
O2 0 0 0 2 0 0 2852 -99.6336589708723 gas
H+ 0 1 0 0 0 1 3 -7 aq
ionize> t <- affinity(pH=c(0,14,200),T=c(25,80,200))
energy.args: pressure is Psat
energy.args: variable 1 is pH at 200 increments from 0 to 14
energy.args: variable 2 is T at 200 increments from 298.15 to 353.15
affinity: loading ionizable protein groups
subcrt: 28 species at 200 values of T and P (wet)
ionize> diagram(t,color=NULL)
diagram: immobile component is protein backbone group
diagram: conservation coefficients are 167 169 166 166 163
diagram: using residue equivalents
ionize> title(main=paste("Thiol peroxidases from bacteria\n",
ionize+ describe(thermo$basis[-6,],T=NULL)),cex.main=0.9)
ionize> ## Buffer + ionization: Metastable assemblage
ionize> ## for E. coli sigma factors on a T-pH diagram
ionize> # (sigma factors 24, 32, 38, 54, 70, i.e.
ionize> # RpoE, RpoH, RpoS, RpoN, RpoD)
ionize> proteins <- c("RPOE","RP32","RPOS","RP54","RPOD")
ionize> basis("CHNOS+")
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 -3 aq
H2O 0 2 0 1 0 0 1 0 liq
NH3 0 3 1 0 0 0 68 -4 aq
H2S 0 2 0 0 1 0 70 -7 aq
O2 0 0 0 2 0 0 2852 -80 gas
H+ 0 1 0 0 0 1 3 -7 aq
ionize> basis("pH",7.4)
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 -3.0 aq
H2O 0 2 0 1 0 0 1 0.0 liq
NH3 0 3 1 0 0 0 68 -4.0 aq
H2S 0 2 0 0 1 0 70 -7.0 aq
O2 0 0 0 2 0 0 2852 -80.0 gas
H+ 0 1 0 0 0 1 3 -7.4 aq
ionize> # define and set the buffer
ionize> change("_sigma",paste(proteins,"ECOLI",sep="_"))
mod.buffer: added sigma.
ionize> basis(c("CO2","NH3","H2S","O2"),"sigma")
protein: found RPOE_ECOLI (C960H1541N271O291S5, 191 residues)
protein: found RP32_ECOLI (C1423H2264N414O434S11, 284 residues)
protein: found RPOS_ECOLI (C1661H2691N483O524S5, 330 residues)
protein: found RP54_ECOLI (C2365H3791N649O766S13, 477 residues)
protein: found RPOD_ECOLI (C3042H4912N856O993S28, 613 residues)
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 sigma aq
H2O 0 2 0 1 0 0 1 0 liq
NH3 0 3 1 0 0 0 68 sigma aq
H2S 0 2 0 0 1 0 70 sigma aq
O2 0 0 0 2 0 0 2852 sigma gas
H+ 0 1 0 0 0 1 3 -7.4 aq
ionize> logact <- affinity(return.buffer=TRUE,T=25)
affinity: temperature is 25 C
energy.args: pressure is Psat
affinity: loading buffer species
affinity: loading ionizable protein groups
subcrt: 28 species at 298.15 K and 1 bar (wet)
buffer: ( sigma ) for activity of CO2 NH3 H2S O2 (active), PBB (conserved).
ionize> # Set the activities of the basis species to constants
ionize> # corresponding to the buffer, and diagram the relative
ionize> # stabilities as a function of T and pH
ionize> basis(c("CO2","NH3","H2S","O2"),as.numeric(logact))
C H N O S Z ispecies logact state
CO2 1 0 0 2 0 0 69 -15.5818000547233 aq
H2O 0 2 0 1 0 0 1 0 liq
NH3 0 3 1 0 0 0 68 1.98958524716816 aq
H2S 0 2 0 0 1 0 70 -30.6016890686327 aq
O2 0 0 0 2 0 0 2852 -81.3868680814187 gas
H+ 0 1 0 0 0 1 3 -7.4 aq
ionize> species(paste(proteins,"ECOLI",sep="_"))
ionize> a <- affinity(pH=c(5,10),T=c(10,40))
energy.args: pressure is Psat
energy.args: variable 1 is pH at 128 increments from 5 to 10
energy.args: variable 2 is T at 128 increments from 283.15 to 313.15
affinity: loading ionizable protein groups
subcrt: 28 species at 128 values of T and P (wet)
ionize> diagram(a,balance="PBB",residue=FALSE)
diagram: immobile component is protein backbone group
diagram: conservation coefficients are 191 284 330 477 613
ionize> title(main=paste("Sigma factors in E. coli\n",
ionize+ describe(thermo$basis[-6,],T=NULL)),cex.main=0.95)
Next: get.protein
Up: CHNOSZ examples
Previous: protein