This work examines the monoprotic and diprotic titration curves of several acids using 0.1M NaOH as the base. The titration curves for both acids and the corresponding fraction bound curves are the primary components of this study. The titration curve plots the acid’s pH against volume. Its pH values vs. fraction bound are shown on the fraction bound curve. One equivalency point, where the graph appears vertical, is shown by the monoprotic curve. For every steep section of the graph, there are two equivalency points represented by the diprotic curve. This stands for that reaction’s Ka1 and Ka2.
Titration is used to determine the concentration of a solution, and there are various methods of titration. There are two types of titration: manual titration, which determines the end point (the point at which the reaction between the titrant and the analyte is complete) by observing color change, and potentiometric titration, which involves a more complex approach to determining the endpoint as well as the equivalent point. Titration allows you to determine whether an acid is monoprotic or diprotic. In this lab, we will use manula and potentiometric titration to identify unknown diprotic and monoprotic chemicals by estimating their equivalence points and Ka values from the titration curve.The goal of this paper is to use Rcode to convert monoprotic and diprotic acid titration curves to binding curves. We may utilize the binding curve to calculate the Ka values and compare them to those obtained through laboratory experiments.
A monoprotic acid is an acid capable of giving one proton, also known as the hydrogen atom. When a base is introduced to a monoprotic acid solution, the acid molecules undergo deprotanation, which can produce a pH shift in the solution. The pH of the solution can help us determine the pKa value of the acid, as the pH at which half of the acid molecules are deprotanated yields the value. The equivalency point, also known as the endpoint, is the moment at which all acid molecules have been deprotanated. The equivalency point may be determined since it is the point at which the pH increase is most pronounced.The equivalence point, where the mole of the added base equals the mole of the acid, can be used in the equation \(concentration= \frac{mole}{volume}\) to calculate the concentration of the unknown solution. The pKa value can also be calculated using the equivalence point by dividing the base necessary to reach the equivalence point by two and obtaining the pH of the equivalence point.
Mydata <- read.csv("Book2.csv")
Mydata
## pH Vol
## 1 3.022 0.01
## 2 3.367 2.00
## 3 3.602 3.50
## 4 3.810 5.00
## 5 3.957 6.50
## 6 4.115 7.50
## 7 4.191 8.50
## 8 4.325 9.50
## 9 4.401 10.50
## 10 4.482 11.50
## 11 4.556 12.50
## 12 4.622 13.50
## 13 4.817 14.50
## 14 4.820 15.50
## 15 4.950 15.80
## 16 4.984 16.10
## 17 5.219 16.40
## 18 5.253 16.70
## 19 5.347 17.00
## 20 5.405 17.30
## 21 5.438 17.60
## 22 5.516 17.90
## 23 5.600 18.20
## 24 5.615 18.50
## 25 5.623 18.80
## 26 5.802 19.10
## 27 5.890 19.50
## 28 5.990 20.00
## 29 6.302 20.20
## 30 10.216 20.40
## 31 10.484 20.60
## 32 10.627 20.80
## 33 10.704 21.20
## 34 10.818 21.40
## 35 10.900 21.60
## 36 10.939 22.00
## 37 10.945 22.20
## 38 11.048 22.50
## 39 11.095 22.80
## 40 11.201 23.80
## 41 11.304 25.00
## 42 11.415 27.00
## 43 11.525 29.00
## 44 11.574 31.00
## 45 11.650 33.00
## 46 11.708 35.00
## 47 11.750 37.00
## 48 11.794 39.00
## 49 11.824 41.00
## 50 11.852 43.00
## 51 11.881 45.00
## 52 11.906 47.00
## 53 11.932 49.00
## 54 11.953 50.00
pH <- Mydata$pH
Vol <- Mydata$Vol
length(Vol)
## [1] 54
length(pH)
## [1] 54
Vol
## [1] 0.01 2.00 3.50 5.00 6.50 7.50 8.50 9.50 10.50 11.50 12.50 13.50
## [13] 14.50 15.50 15.80 16.10 16.40 16.70 17.00 17.30 17.60 17.90 18.20 18.50
## [25] 18.80 19.10 19.50 20.00 20.20 20.40 20.60 20.80 21.20 21.40 21.60 22.00
## [37] 22.20 22.50 22.80 23.80 25.00 27.00 29.00 31.00 33.00 35.00 37.00 39.00
## [49] 41.00 43.00 45.00 47.00 49.00 50.00
pH
## [1] 3.022 3.367 3.602 3.810 3.957 4.115 4.191 4.325 4.401 4.482
## [11] 4.556 4.622 4.817 4.820 4.950 4.984 5.219 5.253 5.347 5.405
## [21] 5.438 5.516 5.600 5.615 5.623 5.802 5.890 5.990 6.302 10.216
## [31] 10.484 10.627 10.704 10.818 10.900 10.939 10.945 11.048 11.095 11.201
## [41] 11.304 11.415 11.525 11.574 11.650 11.708 11.750 11.794 11.824 11.852
## [51] 11.881 11.906 11.932 11.953
plot(Vol,pH,main = "Vol of NaoH vs. pH of Solution",xlab = "Vol", ylab = "pH")
H <- 10^-(pH)
H
## [1] 9.506048e-04 4.295364e-04 2.500345e-04 1.548817e-04 1.104079e-04
## [6] 7.673615e-05 6.441693e-05 4.731513e-05 3.971915e-05 3.296097e-05
## [11] 2.779713e-05 2.387811e-05 1.524053e-05 1.513561e-05 1.122018e-05
## [16] 1.037528e-05 6.039486e-06 5.584702e-06 4.497799e-06 3.935501e-06
## [21] 3.647539e-06 3.047895e-06 2.511886e-06 2.426610e-06 2.382319e-06
## [26] 1.577611e-06 1.288250e-06 1.023293e-06 4.988845e-07 6.081350e-11
## [31] 3.280953e-11 2.360478e-11 1.976970e-11 1.520548e-11 1.258925e-11
## [36] 1.150800e-11 1.135011e-11 8.953648e-12 8.035261e-12 6.295062e-12
## [41] 4.965923e-12 3.845918e-12 2.985383e-12 2.666859e-12 2.238721e-12
## [46] 1.958845e-12 1.778279e-12 1.606941e-12 1.499685e-12 1.406048e-12
## [51] 1.315225e-12 1.241652e-12 1.169499e-12 1.114295e-12
CB <- 0.01 #Base Concentration
Vadd <- Vol #Base added during titration
Vini <- 25.0
Vend <- 20.5
# fraction bound for each data point
Fb <- 1 - (CB * Vadd + H * (Vini + Vadd)) / (CB * Vend)
Fb
## [1] 0.883538410 0.845865934 0.794507394 0.733431952 0.665961719
## [6] 0.621980854 0.574839185 0.528622576 0.480926683 0.433155730
## [11] 0.385159061 0.336978989 0.289746337 0.240912233 0.227035202
## [16] 0.212554028 0.198780318 0.184229844 0.169810207 0.155285504
## [21] 0.140705438 0.126191441 0.111665788 0.097046061 0.082417826
## [26] 0.067953304 0.048500843 0.024165619 0.014524148 0.004878035
## [31] -0.004878056 -0.014634152 -0.034146346 -0.043902442 -0.053658539
## [36] -0.073170734 -0.082926832 -0.097560978 -0.112195124 -0.160975611
## [41] -0.219512196 -0.317073172 -0.414634147 -0.512195123 -0.609756098
## [46] -0.707317074 -0.804878049 -0.902439025 -1.000000000 -1.097560976
## [51] -1.195121952 -1.292682927 -1.390243903 -1.439024391
plot(pH,Fb)
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 4.292e-05 2.513e-05 1.708 0.0935 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.4827 on 53 degrees of freedom
##
## Number of iterations to convergence: 5
## Achieved convergence tolerance: 6.825e-06
lines(pH,predict(fit), col="Blue")
Monoprotic and diprotic acids act similarly, with one exception: monoprotic acids donate one proton, whereas diprotic acids can donate two. Because monoprotic and diprotic acids contribute different numbers of protons, their titration curves change as well. Because diprotic acids supply two protons, the titration curve shows two equivalence points because the donation occurs in two steps rather than all at once. The KD1 and KD2 values were found using the software n1s2. The Fb code for both monoprotic and diprotic bounding curves is displayed in the code. For every pH level, it also made use of the H values. The linear line of best fit was produced by entering this into the fit function. The KD1 and KD2 values that were produced were 9.652e-08 and 7.665e-03. These numbers closely matched the Ka values found in the initial lab report. The values of Ka1 were 7.59e-03 and Ka2 were 1.91e-07. Its mild acidity is supported by the low Ka values, and more acid dissociates at increasing acid addition volumes, resulting in its second Ka at the second equivalency point.The Henderson-Hassel-Balch equation, which reads, \(pH = Pka + log \frac {[A-]}{HA}\), supports this increase in dissociation, which in turn indicates an increase in pH and Pka. The original lab report’s pka values were also used to calculate Ka.
library(readxl)
Titration_Data <- read.csv("NEW.CSV")
Volume<- Titration_Data$VolumeD
pH <- Titration_Data$pHD
plot(Volume, pH, main = "Diprotic Acid Titration Curve", xlab = "Volume of NaOH (mL)", ylab = "pH",pch = 20, col = "turquoise")
#Proton Concentration
H <- 10^(-pH)
#Base Concentration
BC <- 0.1
#Initial Acid Volume
Vini <- 25
#Estimated Volume of Base Needed to reach Endpoint
Vend <- 13.5/2 # we need to use first endpoint
#Amount of Volume Added
Vadd <- Volume
#Fraction Bound
FB <- 2 - ((BC * Vadd) + H * (Vini + Vadd)) / (BC * Vend)
x <- BC*Vadd
x
## [1] 0.0000 0.0005 0.0010 0.0023 0.0054 0.0132 0.0328 0.0528 0.0728 0.0928
## [11] 0.1128 0.1328 0.1528 0.1728 0.1928 0.2128 0.2328 0.2528 0.2728 0.2928
## [21] 0.3129 0.3329 0.3529 0.3729 0.3929 0.4129 0.4329 0.4529 0.4729 0.4929
## [31] 0.5129 0.5329 0.5529 0.5729 0.5929 0.6129 0.6329 0.6529 0.6729 0.6929
## [41] 0.7129 0.7329 0.7529 0.7729 0.7929 0.8129 0.8329 0.8529 0.8729 0.8929
## [51] 0.9129 0.9329 0.9529 0.9730 0.9930 1.0130 1.0330 1.0530 1.0730 1.0930
## [61] 1.1130 1.1330 1.1530 1.1730 1.1930 1.2103 1.2232 1.2345 1.2479 1.2627
## [71] 1.2827 1.2979 1.3108 1.3162 1.3297 1.3317 1.3322 1.3331 1.3352 1.3362
## [81] 1.3387 1.3392 1.3405 1.3436 1.3442 1.3454 1.3485
y <- BC*Vend
y
## [1] 0.675
FB
## [1] 1.371020869 1.370154333 1.354631130 1.352370516 1.346979823 1.333416142
## [7] 1.299333046 1.264554377 1.244853145 1.210191683 1.205116234 1.185080475
## [13] 1.178788847 1.158316904 1.163689074 1.142597554 1.145423501 1.135171328
## [19] 1.113221342 1.122883094 1.110011725 1.106015037 1.109070811 1.101602846
## [25] 1.092816435 1.096538948 1.090753855 1.088631223 1.083694303 1.080635579
## [31] 1.074311335 1.068431527 1.061926738 1.053929723 1.042002308 1.028340768
## [37] 1.011479162 0.992058354 0.970590956 0.946881487 0.922095131 0.896013121
## [43] 0.868635016 0.841608422 0.813897317 0.785682854 0.757293589 0.728751071
## [49] 0.700074197 0.671279541 0.642381635 0.613393222 0.584232984 0.554876006
## [55] 0.525623801 0.496264414 0.466882749 0.437537981 0.408163742 0.378808090
## [61] 0.349418473 0.320032838 0.290612068 0.261185369 0.231725480 0.206270964
## [67] 0.187274271 0.170661405 0.150908924 0.129072600 0.099534466 0.077077974
## [73] 0.058014957 0.050032163 0.030060774 0.027104286 0.026366949 0.025034878
## [79] 0.021924711 0.020443584 0.016740198 0.015999641 0.014073826 0.009481306
## [85] 0.008592465 0.006814720 0.002222150
plot(pH,FB, main = "Binding Curve",xlab = "pH",ylab = "Fraction Bound",pch=20,col="YELLOW")
library(nls2)
fit <- nls2(FB ~ ( ( (H/KD1) + ((2*H^2)/(KD1*KD2)) ) / ( 1 + (H/KD1) + (H^2/(KD1*KD2)) ) ),
start=c(KD1=0.001,KD2=0.00005))
summary(fit)
##
## Formula: FB ~ (((H/KD1) + ((2 * H^2)/(KD1 * KD2)))/(1 + (H/KD1) + (H^2/(KD1 *
## KD2))))
##
## Parameters:
## Estimate Std. Error t value Pr(>|t|)
## KD1 5.551e-05 2.092e-06 26.54 <2e-16 ***
## KD2 4.940e-02 2.256e-03 21.90 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.04068 on 85 degrees of freedom
##
## Number of iterations to convergence: 12
## Achieved convergence tolerance: 1.349e-06
lines(pH,predict(fit),col="LIGHT GREEN")
The data set in which it illustrates the binding affinity of the acid. The graph shows that as the pH increases the fraction binding of the acid decreases. The Ka1 and Ka2 values were obtained through the nls2 function in which Ka1=6.710e-02 and Ka2=5.16e-05.In the lab report, we determined through a series of equations that Ka1=0.00871 whereas Ka2=5.49e-05 which is approximate to what the nls2 function provided.
#Initial Acid Volume
Vini <- 25
#Estimated Volume of Base Needed to reach Endpoint
Vend <- 13.5/2 # we need to use first endpoint
#Amount of Volume Added
Vadd <- Volume
#Fraction Bound
FB <- 2 - ((BC * Vadd) + H * (Vini + Vadd)) / (BC * Vend)
x <- BC*Vadd
x
## [1] 0.0000 0.0005 0.0010 0.0023 0.0054 0.0132 0.0328 0.0528 0.0728 0.0928
## [11] 0.1128 0.1328 0.1528 0.1728 0.1928 0.2128 0.2328 0.2528 0.2728 0.2928
## [21] 0.3129 0.3329 0.3529 0.3729 0.3929 0.4129 0.4329 0.4529 0.4729 0.4929
## [31] 0.5129 0.5329 0.5529 0.5729 0.5929 0.6129 0.6329 0.6529 0.6729 0.6929
## [41] 0.7129 0.7329 0.7529 0.7729 0.7929 0.8129 0.8329 0.8529 0.8729 0.8929
## [51] 0.9129 0.9329 0.9529 0.9730 0.9930 1.0130 1.0330 1.0530 1.0730 1.0930
## [61] 1.1130 1.1330 1.1530 1.1730 1.1930 1.2103 1.2232 1.2345 1.2479 1.2627
## [71] 1.2827 1.2979 1.3108 1.3162 1.3297 1.3317 1.3322 1.3331 1.3352 1.3362
## [81] 1.3387 1.3392 1.3405 1.3436 1.3442 1.3454 1.3485
y <- BC*Vend
y
## [1] 0.675
FB
## [1] 1.371020869 1.370154333 1.354631130 1.352370516 1.346979823 1.333416142
## [7] 1.299333046 1.264554377 1.244853145 1.210191683 1.205116234 1.185080475
## [13] 1.178788847 1.158316904 1.163689074 1.142597554 1.145423501 1.135171328
## [19] 1.113221342 1.122883094 1.110011725 1.106015037 1.109070811 1.101602846
## [25] 1.092816435 1.096538948 1.090753855 1.088631223 1.083694303 1.080635579
## [31] 1.074311335 1.068431527 1.061926738 1.053929723 1.042002308 1.028340768
## [37] 1.011479162 0.992058354 0.970590956 0.946881487 0.922095131 0.896013121
## [43] 0.868635016 0.841608422 0.813897317 0.785682854 0.757293589 0.728751071
## [49] 0.700074197 0.671279541 0.642381635 0.613393222 0.584232984 0.554876006
## [55] 0.525623801 0.496264414 0.466882749 0.437537981 0.408163742 0.378808090
## [61] 0.349418473 0.320032838 0.290612068 0.261185369 0.231725480 0.206270964
## [67] 0.187274271 0.170661405 0.150908924 0.129072600 0.099534466 0.077077974
## [73] 0.058014957 0.050032163 0.030060774 0.027104286 0.026366949 0.025034878
## [79] 0.021924711 0.020443584 0.016740198 0.015999641 0.014073826 0.009481306
## [85] 0.008592465 0.006814720 0.002222150
plot(pH,FB, main = "Binding Curve",xlab = "pH",ylab = "Fraction Bound",pch=20,col="YELLOW")
library(nls2)
fit <- nls2(FB ~ ( ( (H/KD1) + ((2*H^2)/(KD1*KD2)) ) / ( 1 + (H/KD1) + (H^2/(KD1*KD2)) ) ),
start=c(KD1=0.001,KD2=0.00005))
summary(fit)
##
## Formula: FB ~ (((H/KD1) + ((2 * H^2)/(KD1 * KD2)))/(1 + (H/KD1) + (H^2/(KD1 *
## KD2))))
##
## Parameters:
## Estimate Std. Error t value Pr(>|t|)
## KD1 5.551e-05 2.092e-06 26.54 <2e-16 ***
## KD2 4.940e-02 2.256e-03 21.90 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.04068 on 85 degrees of freedom
##
## Number of iterations to convergence: 12
## Achieved convergence tolerance: 1.349e-06
lines(pH,predict(fit),col="LIGHT GREEN")
##Further thoughts After carrying out this experiment and comparing the findings of the Ka values produced using rcode to the Ka values obtained using the experimental method described in the lab report, it is clear that the values were extremely close to each other, indicating a little mistake in the experiment. Some errors can be attributed to the nls2 coding. When obtaining the Ka1 and Ka2 values, the original equation \(fraction bound= \frac{(\frac{H}{Ka1}+\frac{(2*H^2)}{(Ka1*Ka2)})}{(\frac{1+H}{Ka1}+\frac{H^2}{(Ka1*Ka2)})}\) would have given us values that would not have made sense. The reason for this is that the Ka1 value should be bigger than the Ka2 value since the first Ka1 value is when the deprotanation is easy; however, using this equation would have made the Ka1 value considerably.In the future, it would be fascinating to utilize this coding tool to evaluate the binding curves of proteins or anything other than acids and bases.
Binding analysis isn’t limited to acid-base processes. It can be used to deal with enzyme and protein interactions. This is really beneficial in the medical field.
Binding curve graphs provide a visual representation of how molecules interact.
Cons of Binding Analysis:
To precisely determine your data, you will need to use much more complex procedures. A greater understanding of analytical chemistry is required.
Interpreting the generated data can be tricky, and it may be necessary to experiment with various parameters used to generate graphs and functions.