Weak Acid
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
WHAT IS IT?
This model demonstrates the differences in the calculation of pH when evaluating a weak acid in solution. It is best viewed as the second model in the ACID-BASE package.
HOW IT WORKS
Unlike a strong acid, a weak acid has a very low Ka (or acid dissociation constant). Consequently, very little of the acid is dissociated into hydronium ions and conjugate base as seen in the following reaction.
H-A + H2O <———(1%)———> H3O+ + A-
Because so little hydronium ion is present, the pH of the solution cannot be calculated directly from the initial concentration of acid. Though the equation for calculating the pH is identical to that for a strong base,
pH = - log [H3O+]
we must first calculate the amount of hydronium ion present in the solution. This amount is dependent on the Ka of the acid. Each acid has a unique Ka, which indicates the probability that an acid molecule will react with a water molecule to form a hydronium ion and an anion. The anion in such a reaction is known as the conjugate base of the original acid. Though the term conjugate base may seem strange, it makes sense if you look at the chemical equation above. There A- is the conjugate base of H-A because it can take a proton from the hydronium ion to generate the original acid.
This model models the composition of a weakly acidic solution and allows the user to observe how altering the species in solution affects the pH. In the model, the dissociation constant Ka, is much higher than the real Ka for an acid. In fact, the model uses the following formula to convert he real-world Ka into a simulated Ka for the model:
Ka for MODEL = 11 - pKa (pKa = - log (real-world Ka)
HOW TO USE IT
Decide how much acid should be present at the start of the simulation with the VOL-ACID slider and press SETUP. Turtles will distribute randomly across the world. BLUE turtles represent water molecules, GREEN turtles represent hydronium ions, YELLOW turtles are acid molecules, and finally ORANGE turtles are conjugate base molecules. A set amount of water molecules is added each time to the solution. In this model we are using the Ka of acetic, which means that approximately 1% of the original acid molecules are dissociated into 1 conjugate base molecule and 1 hydronium molecule.
Press GO. The turtles will move randomly across the world and the pH of the solution will by plotted over time on the pH Curve and displayed in the pH monitor.
Observe the effect of adding RED base molecules to the solution by setting the volume of base with the VOL-BASE (mL) slider and pressing ADD-BASE.
At any time while go is depressed, RECORD-PH can be pressed to plot the pH versus the amount of base added on the Titration Curve.
THINGS TO NOTICE
Observe how the pH curve changes over time with the addition of base. How is this curve different from that seen in the strong acid model? Plot a titration curve and compare it with a strong acid.
Does the value of VOL-BASE affect the titration curve in any way? Is this different from the relationship between strong acids and strong bases?
Why are the base molecules not reacting with the water molecules? Does it matter?
THINGS TO TRY
Notice that the pH of the solution seems to be an average rather than a constant. Can you explain this?
Start the model with various amounts of acid. How does this affect the titration curve? Is there any difference in the endpoint of the reaction?
Keep adding base until the pH rises to about 10. Notice the breeds of turtles present. How does the pH depend on the molecules present?
Notice that in our models acid molecules react with base molecules based on the value of Ka. Make a slider so that you can alter this value. Observe how the system changes with regard to this variable. Is your pH between 0-14?
Note that we have established a constant for Ka in the procedures window. You must remove that constant when you replace it with a slider of the same name.
EXTENDING THE MODEL
Notice that the code requires hydroxide molecules to first react with hydronium molecules on a patch before they react with acid molecules. This is because hydroxide and hydronium react much more rapidly than hydroxide does with a weak acid. Reverse the code and observe the effect on the system.
Alter the code so that base turtles only react with hydronium molecules. What effect is observed? What additional changes do you need to make so that the pH continues to rise with the addition of base?
Increase the dissociation percentage so that more hydronium ions are generated at setup. What does this do to the pH? Can you predict what the Ka of a strong acid might be?
Try using the various pKa values listed below to determine the endpoint of each weak acid.
weak acid | Ka | pKa | Ka for model |
---|---|---|---|
HCN | 1.26 x 10-9 | 9.1 | 1.9 |
HOAc | 1.8 x 10-5 | 4.8 | 6.2 |
H2CO3 | 3.16 x 10-7 | 6.5 | 4.5 |
HCO2H | 2.0 x 10-4 | 3.7 | 7.3 |
NETLOGO FEATURES
Notice the large number of breeds used in this model. Because of the complex interactions between molecules in a weakly acidic solution, it is necessary to separate turtles according to their identity. This allows each breed of turtle to follow unique instructions, which allows the model to simulate the complexity of molecular interactions.
CREDITS AND REFERENCES
Thanks to Mike Stieff for his work on this model.
HOW TO CITE
If you mention this model in a publication, we ask that you include these citations for the model itself and for the NetLogo software:
- Stieff, M. and Wilensky, U. (2001). NetLogo Weak Acid model. http://ccl.northwestern.edu/netlogo/models/WeakAcid. Center for Connected Learning and Computer-Based Modeling, Northwestern Institute on Complex Systems, Northwestern University, Evanston, IL.
- Wilensky, U. (1999). NetLogo. http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern Institute on Complex Systems, Northwestern University, Evanston, IL.
COPYRIGHT AND LICENSE
Copyright 2001 Uri Wilensky.
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Commercial licenses are also available. To inquire about commercial licenses, please contact Uri Wilensky at uri@northwestern.edu.
This model was created as part of the projects: PARTICIPATORY SIMULATIONS: NETWORK-BASED DESIGN FOR SYSTEMS LEARNING IN CLASSROOMS and/or INTEGRATED SIMULATION AND MODELING ENVIRONMENT. The project gratefully acknowledges the support of the National Science Foundation (REPP & ROLE programs) -- grant numbers REC #9814682 and REC-0126227.
Comments and Questions
breed [waters water] ;; water molecules breed [hydroniums hydronium] ;; hydronium ions (green) breed [hydroxides hydroxide] ;; base molecules (red) breed [acids acid] ;; parent acid molecules (yellow) breed [conj-bases conj-base] ;; conjugate base molecules of parent acid (orange) globals [ pH Ka ;; variable for acid reactions base-added ;; use to keep track of how much total base has been added ] to setup clear-all set-default-shape waters "molecule2" set-default-shape hydroniums "molecule3" set-default-shape hydroxides "molecule1" set-default-shape acids "molecule2" set-default-shape conj-bases "molecule1" set Ka 1.9 create-acids vol-acid ;; adds parent acid molecules [ set color yellow ] ask acids [ if random-float 100.0 < Ka ;; creates initial dissociated acid [ hatch-hydroniums 1 [ set color green fd 3 ] set breed conj-bases ;; parent turtle turns into a conj-base set color orange ] ] create-waters (100 - count hydroniums) [ set color blue ] ask turtles ;; randomize position and heading of turtles [ setxy random-xcor random-ycor ] set base-added 0 calculate-pH reset-ticks plot-pH end to go ask hydroxides [ react-hydroxide-hydronium ] ask hydroxides [ react-hydroxide-acid ] ask acids [ react-acid ] ask hydroniums [ react-hydronium ] ;; move turtles randomly around the world ask turtles [ fd 1 rt random 10 lt random 10 ] tick calculate-pH plot-pH end ;; adds base molecules to the solution to add-base create-hydroxides vol-base [ fd 1 set color red ] set base-added base-added + vol-base end ;; hydroxide procedure to react-hydroxide-hydronium let partner one-of hydroniums-here ;; tells hydroxide to recognize hydronium if partner != nobody ;; if you are a hydroxide molecule and you encounter a hydronium [ ;; then turn yourself and the hydronium into water molecules set breed waters set color blue ask partner [ set breed waters set color blue ] ] end ;; hydroxide procedure to react-hydroxide-acid if random-float 100.0 < Ka ;; react with acid molecules according to the acid strength [ let partner one-of acids-here if partner != nobody ;; if you are a hydroxide molecule and you encounter an acid molecule ;; then turn the hydroxide into a conjugate base molecule ;; and turn yourself into a water molecule [ set breed waters set color blue ask partner [ set breed conj-bases set color orange ] ] ] end ;; acid procedure to react-acid if random-float 100.0 < Ka ;; acid molecules may dissociate to hydronium depending on their Ka [ let partner one-of waters-here if partner != nobody ;; if you are an acid molecule and you encounter a water molecule ;; then turn the water molecule into a hydronium molecule ;; and turn yourself into a conjugate base molecule [ set breed conj-bases set color orange ask partner [ set breed hydroniums set color green ] ] ] end ;; hydronium procedure to react-hydronium if random-float 100.0 < Ka ;; hydronium molecules may recombine with conjugate base to form acid [ let partner one-of conj-bases-here if partner != nobody ;; if you are a hydronium molecule and you encounter a conjugate base molecule ;; then turn the conjugate base molecule into an acid molecule ;; and turn yourself into a water molecule [ set breed waters set color blue ask partner [ set breed acids set color yellow ] ] ] end ;; calculates the pH from the amount of the various ions in solution; ;; note that for simplicity the calculations don't take the true molar ;; concentration of water into account, but instead use an arbitrarily ;; chosen factor of 1000 to produce numbers lying in a reasonable range to calculate-pH let volume count turtles let concH (count hydroniums / volume) let concOH (count hydroxides / volume) ifelse (concH = concOH) [ set pH 7 ] [ ifelse (concH > concOH) [ set pH (- log (concH / 1000) 10) ] [ let pOH (- log (concOH / 1000) 10) set pH 14 - pOH ] ] end ;; plotting procedures to plot-pH set-current-plot "pH Curve" plot pH end to record-pH set-current-plot "Titration Curve" plotxy base-added pH end ; Copyright 2001 Uri Wilensky. ; See Info tab for full copyright and license.
There are 10 versions of this model.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Weak Acid.png | preview | Preview for 'Weak Acid' | over 12 years ago, by Uri Wilensky | Download |
This model does not have any ancestors.
This model does not have any descendants.