Monoprotic and Diprotic Acid Binding Curve Analysis

Abstract

An experimental monoprotic and diprotic acid titration data was converted into a fraction bound graph. These graphs were then analyzed with NSL2 fit to find their respective KD values and then they were then compared to experimental KD values. The experimental pka of a monoprotic acid was 7.02, while a diprotic acid’s Ka1 and Ka2 was 1.80 and 4.52 respectively. The computed KD value for the fraction bound of a monoprotic acid was 1.124e-07, while the computed value for KD1 and KD2 for a diprotic was 6.135e-02 and 2.522e-05 respectively.

Introduction

The purpose of this experiment is to compare nls2 analysis in R from their corresponding binding curves to actual experimental data for monoprotic and diprotic acid titration. The researchers want to see how obtained Ka1 for a monoprotic acid and Ka1 and Ka2 values for a diprotic acid compare to computed values in R.

Before the discovery and development of titration in chemistry, there were several key works that lead to this analytical technique. First was the increased understanding in acid-base reactions by early chemist such as Johannes Nicolaus Bronsted and Thomas Martin Lowry, who showed the properties and behaviors of acids and bases. They independently demonstrated that acids are substances that donate protons (H+ ions) in aqueous solutions, while bases are substances that accept protons or donate hydroxide ions in aqueous solutions.The second was the advancement of quantitative analysis, which is concerned with determining the amount of a substance present in a sample. Before this analysis, chemical analysis was primarily qualitative, focusing on identifying substances based on their properties rather than quantifying their amounts. However in the late 18th and early 19th centuries, scientist such as Joseph louis Gay-Lussac and Claude-Louis Berthollet laid the ground work for key contributions important in titration such as stoichiometry and volumetric analysis. The third important ground work was the introduction of indicator dyes. These dyes allowed the detection of the endpoint of acid-base reactions, allowing chemist to visually identify the completion of a titration. The main indicators used in this experiment was phenolphthalein for the monoprotic titration and bromocresol green in diprotic titration. Phenolphthalein is initially colorless, but when the pH reaches 8.3, it becomes a pink color. This is useful because an acid-base titration of a weak acid and a strong base has an end point of a pH greater than 7. Bromocresol green on the other hand has a pH range for color change between 3.8-5.4, where the color changes from yellow to blue. This is good for diprotic acids because as the titration reaches Ka1 range there will be a different color from when it reaches Ka2. Fourth and finally was the work on equivalence point by Fritz Haber and Wilhelm Klemens Karl Schwabe. This contribution allowed scientist to know when the amount of reactants and products are stoichiometrically equivalent. This paved the way for the determination of unknown concentrations.

Explaining Monoprotic Titration Analysis with Titration Curve

The end point for the researcher’s experiment with a monoprotic acid was 20.80 ml of NaOH added to the solution. This was determined by determining the steepest change in the ratio between the pH and the volume or simply the first derivative. Since the volume at the equivalence point is 20.80 ml, this means that at the half-equivalence point, the volume is 10.40 ml. Based on the graph, the corresponding pH at 10.40 ml volume of NaOH added is 7.02. This means that the pKa is 7.02. This is because for a monoprotic acid, at the half-equivalence point the pH = pKa. This is because the concentrations of the acid and base are equal, so when using the Henderson-Hasselbalch equation, the log of the ratio between acid and base is 0, thus pH = pKa.

#importing data from excel

Mydata <- read.csv("DataforR.csv")

Mydata
##    Volume..ml.   pH
## 1          0.0 5.57
## 2          1.0 5.85
## 3          2.0 5.97
## 4          3.0 6.08
## 5          4.0 6.37
## 6          5.0 6.42
## 7          6.0 6.55
## 8          7.0 6.63
## 9          8.0 6.73
## 10         9.0 6.80
## 11        10.0 6.97
## 12        11.0 7.02
## 13        12.0 7.07
## 14        13.0 7.20
## 15        14.0 7.30
## 16        15.0 7.31
## 17        16.0 7.46
## 18        17.0 7.65
## 19        18.0 7.79
## 20        19.0 7.84
## 21        20.0 8.10
## 22        20.2 8.31
#Concentration of standardized NaOH Base
CB <- 0.0994

CB
## [1] 0.0994
#Volume of initial
Vini <- 25.00

#Volume of NaOH need to reach endpoint
Vend <- 20.8

#vector for volume
Volume <- Mydata$Volume..ml.

Volume
##  [1]  0.0  1.0  2.0  3.0  4.0  5.0  6.0  7.0  8.0  9.0 10.0 11.0 12.0 13.0 14.0
## [16] 15.0 16.0 17.0 18.0 19.0 20.0 20.2
Vadd <- Volume

Vadd
##  [1]  0.0  1.0  2.0  3.0  4.0  5.0  6.0  7.0  8.0  9.0 10.0 11.0 12.0 13.0 14.0
## [16] 15.0 16.0 17.0 18.0 19.0 20.0 20.2
#vector for pH

pH <- Mydata$pH

pH
##  [1] 5.57 5.85 5.97 6.08 6.37 6.42 6.55 6.63 6.73 6.80 6.97 7.02 7.07 7.20 7.30
## [16] 7.31 7.46 7.65 7.79 7.84 8.10 8.31
#[H+] amount

H <- 10^-(pH)

H
##  [1] 2.691535e-06 1.412538e-06 1.071519e-06 8.317638e-07 4.265795e-07
##  [6] 3.801894e-07 2.818383e-07 2.344229e-07 1.862087e-07 1.584893e-07
## [11] 1.071519e-07 9.549926e-08 8.511380e-08 6.309573e-08 5.011872e-08
## [16] 4.897788e-08 3.467369e-08 2.238721e-08 1.621810e-08 1.445440e-08
## [21] 7.943282e-09 4.897788e-09
#Titration curve plot

plot(Volume, pH, main = "Titration Curve for Trial 1", xlab = "Volume of NaOH", ylab = "pH")

How the Data Was Transformed to a Binding Curve Using Equations

The equation for fraction bound for a monoprotic acid is \(FB= 1-\frac {CB*Vadd+[H+]*(Vini+Vadd)}{CB*Vend}\). To understand how this equation is derive, we have to understand what fraction bound is. Fraction bound represents the fraction of ligand-bound receptors over the total number of receptors. In this case ligand-bound receptors is the complex between the H+ ions and the free OH- ions in the reaction, while the total number of receptors represents the total amount of free OH- ions in the solution. Firstly, the 1 is used to represent 100% fraction bound. It is a 1 also because it is monoprotic, highlighting how monoprotic acids donate 1 H+ ion. Secondly, the first half of the numerator CB * Vadd represents the absolute total potential of free OH- ions. It is absolute total, because the equation assumes Vadd or the total volume of NaOH added. This is even beyond the equivalence point. This is different than Vend discussed later for the denominator. The second half of the numerator [H+] * (Vini+Vadd) Represents the amount of free H+ ions there is in the solution. So, since these two halves are added together in the equation, this means the total percentage of H+ ions that reacted with the OH- ions or simply the complex. Lastly, the denominator in this equation (CB * Vend) is the total potential of free OH- ions in the solution. This is different than the absolute total because Vend is a cut off that assumes that all of the acid and base has reacted with each other, where as Vadd continues to add more NaOH even when all of the acid has reacted with the base, so there is still technically free OH- in the solution.

#fraction bound

Fb <- 1-(CB*Vadd + H*(Vini+Vadd))/(CB*Vend)

Fb
##  [1] 0.99996745 0.95190531 0.90383216 0.85575797 0.80768632 0.75960987
##  [7] 0.71153424 0.66345791 0.61538164 0.56730509 0.51922896 0.47115218
## [13] 0.42307540 0.37499884 0.32692213 0.27884521 0.23076854 0.18269185
## [19] 0.13461505 0.08653815 0.03846137 0.02884605
#Fraction bound plot

plot(pH,Fb, main = "Fraction bound of Monoprotic", xlab="pH", ylab="Fraction bound")

#nonlinear regression fit

library(nls2)
## Loading required package: proto
fit <- nls2(Fb ~ H/(KD+H), start=c(KD=0.0001))

summary(fit)
## 
## Formula: Fb ~ H/(KD + H)
## 
## Parameters:
##     Estimate Std. Error t value Pr(>|t|)    
## KD 1.124e-07  2.680e-09   41.95   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.01985 on 21 degrees of freedom
## 
## Number of iterations to convergence: 9 
## Achieved convergence tolerance: 8.316e-07
lines(pH,predict(fit), col="red")

Equation for NSL2 to Determine K1 for Monoprotic Acid

\(Fit= \frac {H}{H+KD}\)

Pros and Cons of Traditional Titration Analysis Compared to a Binding Curve Analysis

Traditional Titration Curve

Pros:

1.) Easy to see and understand how the pH changes as the acid interacts with the base.

2.) Can immediately see the point where all the acid and base have reacted with each other at the equivalence point.

Cons:

1.) Can’t immediately discern pKa without understand Henderson-Hasselbalch equation. This gets harder as it becomes a titration curve of a diprotic acid.

2.) Doesn’t give a good picture on the KD value as you don’t know how well the acid reacts with the base.

Binding Curve

Pros:

1.) Can immediately discern the pKa of the reaction by looking at 0.5 on the fraction bound axis.

2.) Can use a program like R and analyze it with NLS2 to determine KD, which explains the binding affinity of the reaction.

Cons:

1.) Hard to understand what happens in the reaction without understanding fraction bound.

2.) Can’t gauge equivalence point in the reaction, so it would be impossible to create a fraction bound graph first before a titration curve has been done.

3.) No values for NaOH is depicted in the graph, so it’s harder to draw a general picture of how the reaction went.

Reading Diprotic Data

#Diprotic excel data

diproticdata <- read.csv("diproticdata2.csv")

diproticdata
##    Volume.of.NaOH..mL.   pH
## 1                6.329 2.76
## 2                6.529 2.88
## 3                6.729 3.00
## 4                6.929 3.10
## 5                7.129 3.23
## 6                7.329 3.33
## 7                7.529 3.42
## 8                7.729 3.51
## 9                7.929 3.60
## 10               8.129 3.68
## 11               8.329 3.74
## 12               8.529 3.80
## 13               8.729 3.89
## 14               8.929 3.96
## 15               9.129 4.03
## 16               9.329 4.09
## 17               9.529 4.16
## 18               9.730 4.23
## 19               9.930 4.30
## 20              10.130 4.38
## 21              10.330 4.43
## 22              10.530 4.51
## 23              10.730 4.58
## 24              10.930 4.68
## 25              11.130 4.77
## 26              11.330 4.87
## 27              11.530 4.98
## 28              11.730 5.10
## 29              11.930 5.25
## 30              12.130 5.42
## 31              12.330 5.62
## 32              12.530 5.89
## 33              12.668 5.96
## 34              12.868 6.34
## 35              12.936 6.39
## 36              13.107 6.49
## 37              13.307 6.65
## 38              13.507 6.85
## 39              13.707 7.15
## 40              13.812 7.38
## 41              13.887 7.68
## 42              13.914 7.78
## 43              13.981 7.88
## 44              14.148 8.47
## 45              14.173 8.85
#diprotic volume vector

diproticvolume <- diproticdata$Volume.of.NaOH..mL.

diproticvolume
##  [1]  6.329  6.529  6.729  6.929  7.129  7.329  7.529  7.729  7.929  8.129
## [11]  8.329  8.529  8.729  8.929  9.129  9.329  9.529  9.730  9.930 10.130
## [21] 10.330 10.530 10.730 10.930 11.130 11.330 11.530 11.730 11.930 12.130
## [31] 12.330 12.530 12.668 12.868 12.936 13.107 13.307 13.507 13.707 13.812
## [41] 13.887 13.914 13.981 14.148 14.173
#diprotic ph vector

diproticph <- diproticdata$pH

diproticph
##  [1] 2.76 2.88 3.00 3.10 3.23 3.33 3.42 3.51 3.60 3.68 3.74 3.80 3.89 3.96 4.03
## [16] 4.09 4.16 4.23 4.30 4.38 4.43 4.51 4.58 4.68 4.77 4.87 4.98 5.10 5.25 5.42
## [31] 5.62 5.89 5.96 6.34 6.39 6.49 6.65 6.85 7.15 7.38 7.68 7.78 7.88 8.47 8.85
#diprotic H+

diH <- 10^(-diproticph)

diH
##  [1] 1.737801e-03 1.318257e-03 1.000000e-03 7.943282e-04 5.888437e-04
##  [6] 4.677351e-04 3.801894e-04 3.090295e-04 2.511886e-04 2.089296e-04
## [11] 1.819701e-04 1.584893e-04 1.288250e-04 1.096478e-04 9.332543e-05
## [16] 8.128305e-05 6.918310e-05 5.888437e-05 5.011872e-05 4.168694e-05
## [21] 3.715352e-05 3.090295e-05 2.630268e-05 2.089296e-05 1.698244e-05
## [26] 1.348963e-05 1.047129e-05 7.943282e-06 5.623413e-06 3.801894e-06
## [31] 2.398833e-06 1.288250e-06 1.096478e-06 4.570882e-07 4.073803e-07
## [36] 3.235937e-07 2.238721e-07 1.412538e-07 7.079458e-08 4.168694e-08
## [41] 2.089296e-08 1.659587e-08 1.318257e-08 3.388442e-09 1.412538e-09
#volume added

diVE <-  7.13

#initial volume of unknown acid

diVI <- 25.00

#The concentration of base NaOH

diCB <- 0.10

#volume added

diVA <- diproticvolume

diVA
##  [1]  6.329  6.529  6.729  6.929  7.129  7.329  7.529  7.729  7.929  8.129
## [11]  8.329  8.529  8.729  8.929  9.129  9.329  9.529  9.730  9.930 10.130
## [21] 10.330 10.530 10.730 10.930 11.130 11.330 11.530 11.730 11.930 12.130
## [31] 12.330 12.530 12.668 12.868 12.936 13.107 13.307 13.507 13.707 13.812
## [41] 13.887 13.914 13.981 14.148 14.173
#plot of diprotic Titration Curve

plot(diVA,diproticph, main="Titration Curve for Diprotic Acid", xlab="Volume of NaOH", ylab="pH")

Transforming Diprotic Data

The equation for the fraction bound of a diprotic acid is \(Fractionbound= 2-\frac {Vadd*CB+[H+]*(Vini+Vadd)}{Vend*CB}\). The reasoning for the forumulation of this equation is pretty much similar to the formula for the fraction bound of a monoprotic acid. However, there is one slight difference; You subtract the ratio between the complex and the free OH- ions by 2 instead of 1. This is because it is a diprotic acid and there are two H+ ions that are donated instead of one. Besides that, the reasoning is the same. If we understand the base formula of fraction bound, where you divide the ligand-receptor complex over the free receptor, the fraction bound is essentially substituting those ideas with the same, but in terms of acid-base. The numerator is the amount of acid that has reacted with the base while the denominator is the total potential of OH- ions in the solution.

#fraction bound for diprotic

difb <- (2-(diVA*diCB+diH*(diVI+diVA))/(diVE * diCB))

difb
##  [1] 1.03598378 1.02599815 1.01174053 0.99261977 0.97360595 0.95088161
##  [7] 0.92669400 0.90180333 0.87633746 0.85018004 0.82333116 0.79633382
## [13] 0.76964216 0.74246811 0.71516816 0.68767130 0.66018398 0.63247538
## [19] 0.60483780 0.57718869 0.54935114 0.52160171 0.49377308 0.46598782
## [25] 0.43812963 0.41025234 0.38235271 0.35442951 0.32649695 0.29853974
## [31] 0.27056164 0.24256894 0.22322398 0.19520714 0.18567257 0.16169379
## [37] 0.13364856 0.10560247 0.07755576 0.06283083 0.05231303 0.04852644
## [43] 0.03912971 0.01570809 0.01220189
#fraction bound plot

plot(diproticph, difb, main="Fraction bound of Diprotic", xlab="pH", ylab="Fraction bound", xlim=c(2.82,9))

#nls2 fit for diprotic

library(nls2)

difit <- nls2(difb ~ (diH/KD1+(2*diH^2)/(KD1*KD2))/(1+diH/KD1+diH^2/(KD1*KD2)), start=c(KD1=0.000001,KD2=0.0001))

difit
## Nonlinear regression model
##   model: difb ~ (diH/KD1 + (2 * diH^2)/(KD1 * KD2))/(1 + diH/KD1 + diH^2/(KD1 *     KD2))
##    data: parent.frame()
##       KD1       KD2 
## 2.522e-05 6.135e-02 
##  residual sum-of-squares: 0.3586
## 
## Number of iterations to convergence: 11 
## Achieved convergence tolerance: 9.306e-06
summary(difit)
## 
## Formula: difb ~ (diH/KD1 + (2 * diH^2)/(KD1 * KD2))/(1 + diH/KD1 + diH^2/(KD1 * 
##     KD2))
## 
## Parameters:
##      Estimate Std. Error t value Pr(>|t|)    
## KD1 2.522e-05  2.577e-06   9.785 1.66e-12 ***
## KD2 6.135e-02  1.334e-01   0.460    0.648    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.09132 on 43 degrees of freedom
## 
## Number of iterations to convergence: 11 
## Achieved convergence tolerance: 9.306e-06
lines(diproticph,predict(difit),col="red")

Comparing Kas From Two Different Methods

The experimental Ka for the monoprotic acid was 7.02, while the Ka1 and Ka2 of the diprotic was 1.80 and 4.52 respectively. If you use the formula \(Ka= \frac {1}{KD}\) and you swap the equation around so it is KD = 1/Ka you can convert the Kas to KD. So, after the transformation, the monoprotic’s KD would be 0.142, and the diprotic’s KD1 and KD2 would be 0.555 and 0.207 respectively. The fraction bound computed NSL2’s KD for the monoprotic was 1.124e-07 and for the KD1 and KD2 of the diprotic it was 6.135e-02 and 2.522e-05 respectively. These numbers are drastically different. This is peculiar for the monoprotic because the NSL2 fit well. Also, if you look at 0.5 on the fraction bound the pKa would be around 7.00, which is similar to the experimental data which is 7.02. For the diprotic it is less peculiar. The NLS2 fit wasn’t very good. The researcher tried to fix the fit by changing the ending volume or Vend, but that wasn’t enough to get a fit that covered most of the points. Also, the fraction bound wasn’t what the researcher expected. On a standard diprotic binding curve, the initial pH would be around 2, but the researcher’s was around 1. It looked very similar to a standard monoprotic binding curve. The researcher was confused because the diprotic titration curve looked standard, but still the fraction bound came out incorrect. This included removing the some initial points and some end points of the titration curve when transforming it into a binding curve.

A Potential Future Study

A potential future study could relate to the environment. Acid-base titration plays a significant role in studying ocean acidification, where seawater absorbs CO2 from the atmosphere. A future study can measure changes in seawater alkalinity and carbon absorbtion using titration methods and understanding binding affinity of the CO2 to seawater. This study would be important because ocean water acidification affects a plethora of marine organisms. This is extremely prevalent now, because coral reefs are dying in huge numbers and this potential study could help reveal more about why it is happening.