Jump to content
Geochemist's Workbench Support Forum

Brian Farrell

Admin
  • Posts

    1,055
  • Joined

  • Last visited

  • Days Won

    11

Everything posted by Brian Farrell

  1. Hi Coralie, Thanks for changing the thermo dataset. I think part of the problem is that one or more of the minerals swapped into the basis of the Initial pane are not in equilibrium with the fluid. I think a good strategy would be to focus on setting up the starting point for your model, using SpecE8 or React, then moving onto a transport once that’s working. The Initial pane (or Basis pane in SpecE8 and React) is where you specify your initial equilibrium system. If a mineral is present in the field but not in equilibrium with the fluid, it shouldn’t be swapped into the basis. It could be left out, to start, or it could be set as a reactant on the Reactants pane. Try working on the initial system in this way (you can use the Run > Go Initial option in React) to try to find a plausible equilibrium assemblage. If you have more data about the porewater chemistry, you could try calculating the saturation indices of the various minerals observed in the field. Hope this helps, Brian
  2. Hi Frank, The biggest problem is that you’re missing values for Bdot and the water activity coefficient terms in the Tables section of your thermo dataset. You’ll probably also want to set real values for the ion size parameter for the basis and aqueous species, since 500 is currently being used. For more information, please see the Thermo Datasets chapter of the GWB Reference Manual. Regards, Brian Farrell Aqueous Solutions LLC
  3. Hello, To simulate the continuous addition of ions into the fluid, you should use simple reactants. On the Reactants pane, click add > Simple > Aqueous… > H+. You’ll see a line that includes “React H+ + 0.0 mmol”. Click the “+” button to set a heterogeneous value for the rate of H+ addition. You might use the node-by-node editor or an equation to set the rate of H+ addition at the node containing the anode, and a rate of 0 everywhere else. The procedure is just like setting the spike in initial Pb concentration in the Diffusion tutorial. For more information, please see 3.1 Titration paths in the GWB Reaction Modeling Guide and the Heterogeneity Appendix to the GWB Reactive Transport Modeling Guide. Regards, Brian Farrell Aqueous Solutions LLC
  4. Hi Coralie, Do the minerals swapped into the Initial system represent the complete mineralogy of the basalt? Are they all in equilibrium with the initial porewater? Usually you include minerals in equilibrium with the porewater in the Initial pane. Minerals that are present but not in equilibrium can be set with kinetic rate laws on the Reactants pane. Then the infiltrating boundary fluids can react with those equilibrium and kinetic minerals. Adding the oxide components of the rock as simple reactants, as you've done, is much less common. And if you're just duplicating the composition of rocks in the Initial pane, you probably don't need to do it. I'm not sure what you mean with the ??? for minerals. I don't see that in your script anywhere. If you'd like to work on this script a little more and have someone take another look, please attach your custom thermo dataset as well. Regards, Brian Farrell Aqueous Solutions LLC
  5. Glad to hear you're up and running now. Cheers, Brian
  6. Can you copy a single cell's value from Excel into a single cell in GSS?
  7. Hi, We looked into this with a different spreadsheet program on a Mac laptop and didn't encounter any issues pasting into GSS. When attempting to paste into GSS, are you selecting a cell first? Can you check whether copy and paste works in general between your Mac and Parallels Virtual Machine? Just try copying some text from your Mac side to a text editor on the Windows side, like Notepad or WordPad. You might need to change a Parallels setting. Where you set options, click "More Options" and then "Share Mac clipboard". Hope this helps, Brian Farrell Aqueous Solutions LLC
  8. You're welcome. We don't keep track of all the publications using the GWB, but you'll probably find something with a Google Scholar search of GWB. You might also find some helpful tips in the GWB Reaction Modeling Guide, which can be accessed from the Help menu of any app. Section 3.3 Flush model and 3.9 Pickup up the results of a run (specifically to pick up an equilibrated fluid to use as a reactant) should be useful. Regards, Brian
  9. Hello, Please don't make duplicate posts. The question has been answered here: Regards, Brian Farrell Aqueous Solutions LLC
  10. Hello, You might want to use React to simulate the dedolomitization process. There's a very similar example in section 19.4 Dolomitization of a limestone in Craig Bethke's Geochemical and Biogeochemical Reaction Modeling text. In your case, you'd react a Ca-SO4 water into a section of porous medium initially containing the dolomite and its pore fluid. The flush configuration is used in this example to follow the reference frame of the porous media as water flows in, mixes and reacts, and is displaced. Hope this helps, Brian Farrell Aqueous Solutions LLC
  11. Hi Sam, When you let X2t calculate the groundwater flow field, the top and bottom boundaries are closed to flow. You can alternatively import the flow field from another program. In this case, you set up a table of the fluid discharge from node to node along x, and another for flow along y. X2t reads the tables and uses the values they contain to set the flow field. In this case, fluid may enter or leave the domain across any of the boundaries, not just the left and right sides, and you can specify unique fluids for each boundary. For more information, please see sections 2.14 Groundwater flow, 4.3 Calculating the flow field, and 4.4 Importing the flow field in the GWB Reactive Transport Modeling Guide. Hope this helps, Brian Farrell Aqueous Solutions LLC
  12. Hi, I don't believe you can do that. If your fluid is dilute, the water activity might be 1 in either case, though. And if you're setting pH, that leaves a unique Fe++ activity at a given temperature (just make sure the stability of the minerals is the same in each database). You could use Rxn to figure that activity, and if you specify ionic strength you can solve for the Fe++ concentration. Hope this helps, Brian Farrell Aqueous Solutions LLC
  13. Hi John, I just have a little bit to add to the discussion, for when you get around to the ion exchange reactions. Ion exchange models aren’t tied to specific minerals the way a two-layer surface complexation dataset is. Instead, you set the exchange capacity of the surface in X1t directly (in units like meq) or you set it per gram of minerals (in units like meq/g rock). In the latter case, the total mineral mass is the sum of equilibrium, kinetic, and inert minerals in the system. If you’re only interested in the surface properties of biotite, it might not be necessary to explicitly include Biotite in your calculation, so long as you specify the correct surface reactions and exchange capacity. You can only specify one basis surface species per ion exchange dataset, so you’ll need to create three separate surface datasets, one for each site (e.g. planar, intermediate, and frayed-edge). Then, you’d load each surface dataset into X1t and specify the exchange capacity for each, based on their percentage of the total exchange capacity. Each surface dataset will need a unique type (e.g. Biotite planar, Biotite intermediate, and Biotite frayed-edge) and unique species names (e.g. >X:Na, >XInt:Na, and >XFES:Na). Finally, you should be sure to set the selectivity coefficient as a linear value, not a log value. The value is converted to log format internally. For more information, please see 2.5.4 Ion Exchange and 7.6.2 Ion Exchange in the GWB Essentials Guide, as well as the example dataset IonEx.sdat included in the Gtdata folder. Hope this helps, Brian Farrell Aqueous Solutions LLC
  14. Hi Sam, You can download a fresh copy of the dataset from GWB.com/thermo.php or you can reinstall the software. In the future, it's a good idea to save any modified dataset with a unique filename. Regards, Brian Farrell Aqueous Solutions LLC
  15. Hi Andy, There is currently no way to plot the logarithm of an arbitrary variable in the XY plots. To work around this (besides making user-defined analytes), you can copy the values from GSS or your plot into Excel (taking the logs as necessary) and plot the data there. I can discuss this idea with the development team for consideration in a future release, but we can’t make any promises about implementation. Regards, Brian Farrell Aqueous Solutions LLC
  16. Dear GWB users, We are pleased to announce our latest maintenance release, GWB 12.0.4. The 12.0.4 update features improvements to plotting apps and to TEdit; corrected default behavior of temperature range settings for the heat source feature; improved scroll wheel behavior; better GUI support for Asian locales; and prevents Xtplot and P2plot from placing contour labels not fully within the plot range. Update from 12.0.0 - 12.0.3 at no charge to ensure you have all the newest features and bug fixes. Existing installations should automatically update to this release, unless auto-update is disabled. In that case, users should update their installations from the Help menu of any GWB app. Regards, Brian Farrell Aqueous Solutions
  17. Hi Sebastian, Looking only at Figure 1, the decrease in concentration could be explained by dissolution. Another possibility is dilution, due to the addition of seawater. I suggest you compare your plot of minerals in mmol/kg solution units with a second using absolute mmol units. Plot as well the mass of solution as a function of reaction progress or temperature. You might find that as the solution mass increases, the mineral is being diluted, but doesn’t necessarily dissolve. That’s the case for a few of the sulfide minerals in the black smokers example in Craig Bethke’s Geochemical and Biogeochemical Reaction Modeling text. The concentration of dissolved components will also reflect both reaction and dilution. Are these kinetic minerals? The mineral saturation (Q/K) should be at 1 wherever equilibrium minerals exist. If they’re kinetic minerals, however, they won’t necessarily remain in equilibrium with the fluid, even if present. You can actually plot the dissolution rate (positive rate indicates dissolution, negative rate indicates precipitation) for kinetic minerals. Just look in the Reactant properties variable type. Hope this helps, Brian Farrell Aqueous Solutions LLC
  18. Hi Zsófia, You can certainly set a constraint for the HCO3- component (which includes dissolved species such as CO2(aq), HCO3-, CO3--, NaHCO3, CaHCO3+, etc.) along with the CO2(g), as long as you swap the basis properly. It’s common to swap CO2(g) for H+, for example, so that the CO2 fugacity or partial pressure controls pH. As an example, please see section 7.2 Equilibrium models in the GWB Essentials Guide. As for your specific sample, I encourage you to double-check the units of the free CO2(g), as well as what exact analysis was done. Partial pressure would have units like bars or atms, not mg/l, so I'd be cautious. Regards, Brian
  19. Hi Clark, The distribution coefficient was originally just an observation geochemists made. At some point, it was used in a predictive sense in hydrologic models that care only about the total concentration of a component (Kd approach in the strict sense), and later in geochemical models which account for speciation (the activity Kd approach). The Kd that React reports is simply the observation. You could have a model with any number of sorbing surfaces (Kd, Freundlich, Langmuir, ion-exchange, two layer), and the reported Kd reflects the net effect of all those surfaces under the conditions of the model. To use the reported Kd (units of l/kg) in a predictive sense in the GWB, it would need to be converted from a “true Kd” to the “activity Kd” (units of mol/g) when you create a surface dataset. It’s important when reporting the Kd to ensure that the mineral mass of the system is completely defined. The mineral mass can be composed of individual minerals as well as inert volume. Then, when you set up your X1t model, you should be sure to define mineral mass consistently. If you don’t, the Kd won’t be applicable to your system. For more information, please see 6.49 inert and 6.53 Kd in the GWB Command Reference. Hope this helps, Brian
  20. Hi Zsófia, The default carbon-bearing basis entry in your thermo dataset is likely HCO3- or CO3--. You would start by adding that entry to the basis. If your analysis is for dissolved carbon expressed as CO2, you would choose the "as CO2" option in the HCO3- units pulldown. For example, mg/kg HCO3- as CO2. If your analysis is for CO2 partial pressure or fugacity, you would swap CO2(g) into the basis in place of the HCO3- and set that value directly. For more information, please see 7.1 Example calculation in the GWB Essentials Guide and 6.1 <unit> in the GWB Command Reference. Hop this helps, Brian Farrell Aqueous Solutions LLC
  21. Hi, In a traditional diagram like this, with Zn++ as the main species, adding Na+ to the “in the presence of” section does nothing. Neither does swapping NaOH in for the Na+. I don’t understand why you’ve swapped HCl(aq) in for the Cl-, either. If it’s just a salt solution you’re dealing with, just add the Cl- directly. HCl(aq) is much less stable than Cl- under the conditions of the diagram, so assuming HCl(aq) is present at the activity you specified is like assuming Cl- is present at a much, much larger activity. Whether you have Cl- in solution or not, metallic zinc is not thermodynamically stable within the area denoted by the water stability limits. Hope this helps, Brian Farrell Aqueous Solutions LLC
  22. Hi Brynn, I’m not too familiar with PHREEQC, but it looks like your PHREEQC input is conceptually different from your GWB input. In PHREEQC you’re defining an initial fluid composition (the SOLUTION block) with a pH of 8.43 and .001 mg/l dissolved Ca++ and F-. The minerals aren’t actually present here, though. As far as I can tell, EQUILIBRIUM_PHASES is used to dissolve enough calcite and fluorite into the solution you’ve already defined to achieve equilibrium with those minerals. There are thus two blocks of output, because you’ve set up a reaction path model. One pre-dissolution (note the pH and concentrations of calcium and fluoride equal your constraints), and one post-dissolution (note the pH has changed to 8.069 and the F- concentration to ~11 mg/kg). In the GWB, you can find the equilibrium state of a water-rock system directly. You swap minerals into the basis to set them as part of the initial equilibrium system. Since you’re limited thermodynamically to one constraint per basis entry, you set mineral masses (arbitrary here) in place of dissolved calcium and fluoride concentrations. The GWB will find the equilibrium system that honors your initial conditions. In SpecE8 (or React with precipitation disabled), you’ll notice one block of output that satisfies your specified system exactly. You can certainly set up the same type of titration in GWB that PHREEQC appears to be doing. You’d use React instead of SpecE8, since this is a reaction path. Your basis would have Ca++ and F- set to the dissolved concentrations used in PHREEQC. Then, you’d add calcite and fluorite as simple reactants. When both minerals dissolve and reach equilibrium with your fluid, your results should match what you get in PHREEQC. The way you described the problem (a water sample of known composition in equilibrium with fluorite and calcite), the swap procedure in GWB seems closer to what you’re after. It honors the fluid composition you’ve specified. Determining the composition of a known fluid after reaction with fluorite and calcite seems like a different process. By the way, since CO3—is the master species in your PHREEQC dataset (and the basis species in the equivalent GWB dataset), I don’t think it is necessary to swap HCO3- into the basis in place of CO3-- Your results won’t be affected too much, but I thought the concentration in mg/l you specify in PHREEQC assumes CO3--‘s mole weight. Hope this helps, Brian Farrell Aqueous Solutions LLC
  23. Hi, I think you’re trying to distill too many complicated processes into a single two-dimensional diagram. They can be quite useful to help you understand certain aspects of a system’s chemistry, but you need to set up some reaction path and reactive transport models to answer most of the questions you’re asking. To see the effects of CaS5 addition on pH and oxidation state, as well as the fate of Cd and other constituents of your fluid, you’ll probably want to use React to titrate Ca++ and S5-- into your contaminated fluid. For more information, please see 3.1 Titration paths in the GWB Reaction Modeling Guide. You could do something similar to vary sulfide concentrations to see when CdS precipitates or remains undersaturated. You could probably use a titration path or a sliding activity path to vary the amount of sulfide in the system, and you might want to buffer certain aspects of the chemistry in this case to keep things simple. A simple log activity of sulfide vs. pH diagram for Cd++ could also help here. To see the spatial zone of influence of the CaS5 amendment, you’ll probably want to set up a reactive transport model. A 1D radial model, for example, with flow diverging from the injection point would help you understand how far the amendment travels, how much it is attenuated by dilution or reaction at any point, and how much Cd remains in solution at any point. As for your redox-pH diagram, Act2 simply reproduces the algorithm you would learn in a geochemistry or aquatic chemistry class to make diagrams by hand. The diagrams work in terms of species activity; they assume species on opposite sides of a reaction line have equal activity along those lines. Species with different charges, then, would have different activity coefficients, which implies that concentration changes along the diagram. A large number of other simplifications go into those types of diagrams, and I don’t think they handle complexing species the way you expect. For a simpler problem it might be ok to take values from SpecE8, as you’ve done, but most of your complexing species in Act2 have little to no effect on the Cd++, and they certainly don’t interact with each other. Computing power and software have improved quite a bit over the years, so more realistic calculations can be used now. Phase2 draws diagrams that look somewhat similar to Act2 in many cases, but the calculation is a complete solution to the equations describing the distribution of mass, just like in SpecE8 and React. You constrain a fluid in terms of concentration, rather than activity. Then you set up simple paths, like in React, to adjust the chemistry. In the staging path, you might slide Eh while holding pH constant to define the left edge of the plot. Then, you trace a series of scanning paths originating from intermediate points along the left edge. For the scanning paths, you might slide pH while holding Eh constant at each of its original values. In this way, mass balance is conserved throughout the diagram. All components in the fluid can interact with each other. And since the calculation is for a fluid as a whole, there’s no “main species” – you can display the predominant form of any basis entry or element. A predominant species is the one that accounts for the most mass of an element or basis species. When constructing diagrams of this sort, though, you should typically work in more restricted Eh and pH conditions. It’s not particularly useful to know conditions far outside the stability limits of water or at extreme pH values. A few other notes: Elemental equivalent units: The mg/l Pb++ as Pb doesn’t hurt anything, but it’s not necessary since the Pb++ ion and the element Pb have the same mole weight. The option is useful for polyatomic species, like the sulfate oxyanion, when the instrument measures the mass of only part of the molecule. If NO3-concentration is determined by actually measuring the amount of nitrogen, for example, you’d use mg/l NO3- as N. For more information, please see 7.1 Example calculation in the GWB Essentials Guide. Free vs. bulk constraints: When setting the concentration of the O2(aq) component with a DO measurement, you almost always want to use the “free” constraint option. For more information, please see 7.2 Equilibrium models in the GWB Essentials Guide. How do you conceptualize redox chemistry in your diagram? Should all redox coupling reactions remain in equilibrium? For example, should ferric iron react to form ferrous iron under reducing conditions, or should it remain stable as ferric iron throughout the calculation, while ferrous iron is ignored? For more information, please see 2.4 Redox couples and 7.3 Redox disequilibrium in the GWB Essentials Guide. If you continue to use Act2, you might want to look into making a mosaic diagram. That way you can account, in a limited way, for the speciation of complexing ligands over the redox and/or pH conditions of your diagram. For more information, please see 5.3 Mosaic diagrams in the GWB Essentials Guide. Hope this helps, Brian Farrell Aqueous Solutions LLC
  24. Hi John, You can’t set zero values for entries in the basis (other than pH, pe, or Eh, since those are logarithmic values). A mineral, for example, can’t have 0 values for concentration or mass. Doing so makes it impossible to solve for the distribution of mass. You can, however, set trivial non-zero concentrations. The initial fluid in this case would still be in equilibrium with the mineral throughout the domain. If the system isn’t in equilibrium with a particular mineral everywhere in the domain, it can be set as a kinetic reactant on the Reactants pane. Hope this helps, Brian Farrell Aqueous Solutions LLC
  25. Hi Zsófia, Thermo_ymp.R2.tdat uses the hmw formalism of the Pitzer equations, just like thermo_hmw.tdat and thermo_phrqpitz.tdat. Thermo_ymp.R2.tdat has some provision for working at elevated temperatures, and is designed to work at high ionic strength, so it could potentially work well for your application. Before using it, though, I recommend that you study the documentation to ensure you're working within the valid range of temperature and ionic strength. Please see 2.3 Thermodynamic datasets in the GWB Essentials Guide, as well as references cited in the dataset, for more information. For future reference, please post new topics to the front page of the forum. The archive is for older posts. It's easy to miss new questions that are added there. Hope this helps, Brian Farrell Aqueous Solutions LLC
×
×
  • Create New...