----------------------------------- Biggest obstacle: trouble with HCO3, CO2, Acid-Base, Protons ------------------------------------------------------------ > Most water analysis I have give 1. pH 2. Hydrogencarbonate 3. CO2 Hydrogencarbonate (bicarbonate) is probably the same as alkalinity, reported as bicarbonate. CO2 could be one of two things: (1) the total inorganic carbon (measured by acidifying a sample and measuring CO2 in the sample) or (2) a calculated CO2(aq) by using pH and bicarbonate. If the number is of the same order as bicarbonate, then it is probably (1), if it is much smaller, then it is probably (2). > I don't have O(0) - what is that and how can I switch it off (if I exclude it, PHREEQC will stop working). I'm also a fool about "pe", I've silently dropped it - is this OK? O(0) is dissolved oxygen, which you probably don't need. pe of the solution composition becomes important only for iron and manganese (and other redox elements for which analyses of individual redox states are not available). Redox in general will have some effect if you have nitrate and ammonium in your analyses, otherwise you can probably ignore redox processes. > Further, I suppose 2. to be a synonym for Bicarbonate or HCO3- and the correct input for PHREEQC to be: > Alkalinity 1897.0 as HCO3 > for example. Is this correct? -From what you have written, I think that is correct. > Further, I've verified using a spreadsheet, that in nearly all of my 150+ waters, the molarity of HCO3- printed on the bottle fills almost exactly the "charge gap", calculated from all other printed species. That is reasonable. > What remains most mysterious to me is what exactly "CO2" on the bottle means and how and when it is measured: > E.g. is it measured before additional (in excess to the natural contained) CO2 is pressed into the water, and when gets pH measured and so on. > I'm asking this, because of the inconsistent numbers I'll describe next. > At this stage, I assumed that "CO2" means the same as what you call "total inorganic dissolved carbon". > I further assumed, this is given to PHREEQC as C 2320.0 > for e.g. (is this correct for the wateq4f database ?). I would guess it should be "C 2320 as CO2". > Now, if I give measured pH, HCO3 and CO2 for the GENOVEVA water, PHREEQC will drop the given pH and recalculate it, right? Yes. > On page 152, the user guide states: "Alkalinity or total carbon or both may be specified in solution input. If both alkalinity and total carbon are specified, the pH is adjusted to attain the specified alkalinity." > PHREEQC calculates 6.896, which is quite far away from the measured pH of 6.1 in the water analysis. I'm lost again. If you use the "as CO2", the effect should be to increase the total C (in molality), alkalinity is the same, so pH will decrease (maybe below 6.1). The calculation of pH is fairly sensitive to the alkalinity and total carbon. In general, I would use the measured pH and alkalinity, provided the pH was measured at the time of sampling, not after it had time to lose CO2 to the atmosphere. > Is it because pH is measured before CO2 is pressed in? CO2 will be lost and pH will tend to rise as CO2 equilibrates with the atmosphere (log PCO2 -3.5). Note that alkalinity does not change with loss of CO2 unless a carbonate mineral precipitates. > Perhaps, let me state were I'd like to arrive finally: Acid-Base status of a mineral water ------------------------------------ > This is one out of 6 biofactors I consider. It should capture the protons made available to the human organism by consumption of the water, e.g. > protons (mequ/l) := (free HCO^3-) - 2 * (free SO_4^2-) This does not make much sense to me from a geochemical point of view, in the absence of the cations. Seems like you are really getting at the proton availability or maybe the acidity (base neutralizing capacity) of the water. > This is bicarbonate will alkalize the organism, whereas sulfate will do the opposite. The full set of biofactors is 1. Bioavailable Calcium 2. Bioavailable Magnesium 3. Ratio of bioavailable Calcium-to-Magnesium 4. Acid-Base status 5. Salt Equivalent 6. Osmolarity http://www.brainthat.com/zope/minerals Modification to Example ----------------------- 1. I removed "pe" from the input params, as I - don't understand its meaning - only have "measured pH" (if pe is s.th. like pH) pe will be 4.0 by default. 2. I removed Fe, Mn, Si, N(5), N(-3) from the input params, as these are only seldom available on the printed bottle label in germany (of course these are available with the detailed "official" analysis, but you would have to request this analysis from every single spring, that is over 800 in germany - the association of springs has all, but I suppose political issues hinder them to just make all data public) OK. 3. I'd like to add "H2SiO3" (silicat acid?), but input param "Si" seems to be "SiO2" In the US, Si is usually reported "as SiO2". The predominant species up to high pH is H4SiO4 (add a water to your species). If H2SiO3 is indeed how it is reported, the enter "Si xx as H2SiO3". Salt Equivalent --------------- > One biofactor I'm interested in is the NaCl which might become active by increasing blood pressure. (it is not correct to take Na+ alone as blood pressure inc. .. only Na+ in presence of Cl- seems to inc. blood pres.) > Consequently, I'd like to have something like a "salt equivalent" for every water. I tought about calculating this as: > Salt Equiv := min( free Na+, free Cl- ) * MolWeight( NaCl ) > Are there concerns doing so from a chemical stand? Many waters have molalities of Na and Cl that are nearly equal. I don't see too much problem in using your suggestion as a factor. For Na > Cl, what you have is reasonable. For Cl > Na, the source is probably still NaCl, but with exchange of Na for Ca and Mg in clays. I/O with stdin/out/err ---------------------- > After reading through the user guide, is it correct that currently there is no support for reading simulations from STDIN and writing output to STDOUT, logs to STDERR instead of files? That is correct. > If this is so, It'll be nice to have some switch to get this behaviour in future some version, as I suppose this would make integration into other apps somewhat easier (more secure if you like). But its just a minor wrinkle: I'll call PHREEQC from Python by spawning a child process, writing simulations to a /tmp/xxx file before and reading/parsing results from /tmp/yyy afterwards. You are the first person to ask for such a feature. You can probably hack the program without too much effort, but it would probably be better to write a script. I probably won't change anything, Most people want a GUI that leads them by the hand. David David Parkhurst (dlpark@xxxxxxxx) U.S. Geological Survey Box 25046, MS 413 Denver Federal Center Denver, CO 80225
Please note that some U.S. Geological Survey (USGS) information accessed through this page may be preliminary in nature and presented prior to final review and approval by the Director of the USGS. This information is provided with the understanding that it is not guaranteed to be correct or complete and conclusions drawn from such information are the sole responsibility of the user.
Any use of trade, product, or firm names in this publication is for descriptive purposes only and does not imply endorsement by the U.S. Government.
The URL of this page is:
Last modified: $Date: 2005-09-13 21:04:21 -0600 (Tue, 13 Sep 2005) $
Visitor number 3555 since Jan 22, 1998.