Jump to content
Geochemist's Workbench Support Forum

Brian Farrell

Admin
  • Posts

    1,060
  • Joined

  • Last visited

  • Days Won

    11

Everything posted by Brian Farrell

  1. Hi Anastasia, Thanks for sending your thermo dataset. If you look at the Results pane, you should see the list of Loaded species, minerals, gases, etc. This list is controlled by the components in the Basis pane, the temperature range of the run, and the list of suppresses species. At 25 C, I believe 46 aqueous species were loaded, but at 26 C only 28. Since your Basis is the same, and you're not suppressing anything, the only difference is that some species are not being loaded because there is no thermo data outside 25 C. The "extrapolate" option can be useful here for troubleshooting because it ensures that you will consider the same species in your runs at various temperatures. In your case, using the extrapolate option does not make your model converge at 25 C. In fact, it makes the model fail at T>25 C as well. This gives me an indication that some of the species or minerals that were being considered in the 25 C run, but not the others, were the source of the problem. To check this, I can make a list of all possible species that can form at 25 C (46 species), and those which form at T>25 C (28 species). The subset which are loaded at 25 C only can be suppressed (not considered/ loaded), and the model rerun, to see whether a solutions can be found. By suppressing these species, the model will converge at 25 C and higher. You typically don't want to suppress species for no good reason, however, so you might unsuppress species one at a time to find out which one(s) cause the model to fail. After doing this, it looks like Fe(CO3)2-- is the culprit. With your knowledge of your system, or of the custom thermo dataset, perhaps you will be able to determine why this is the case. Is the equilibrium constant for the reaction specified in the thermo dataset (Fe(CO3)2-- + 2 H+ = Fe++ + 2 HCO3-) correct? You might consider whether Fe(CO3)2-- is likely to be important in your system, or whether it can safely be ignored (suppressed). Hope this helps, Brian
  2. Hi, There are a couple ways to do this. In GSS, you can add multiple samples, each with a different temperature and solution mass (to specify the mixing ratios). Then just find the Analysis tab near the top and select "Mix Samples". Choose which samples you would like to mix and GWB will calculate the temperature of the mixture. If you're mixing two fluids in React, you'll need to define one fluid in the Basis pane and another in the Reactants pane. To define the Reactants fluid, you might enter its composition in the Basis pane, then run your model and "pickup" the results as Reactants. The Basis pane will now be free so that you can define your second fluid. Once the fluids in the Basis pane (the initial system) and the Reactants pane are set, go to the bottom of the Basis pane and fine the "+" button next to temperature. Set a temperature for the initial system (the fluid in the Basis pane) and the reactant fluid. As the reactant fluid is added into the initial fluid, React will calculate the temperature of the mixture using the mass and temperature of each fluid. React will use the heat capacity values you specify for a general "fluid" and "mineral". You might look into Sections 3.4 and 3.9 of the GWB Reaction Modeling Guide, or find the keywords "cpw" and "cpr" in the GWB Reference Manual. Chapter 14 of the Geochemical and Biogeochemical Reaction Modeling text will also be helpful here. Hope this helps, Brian Farrell Aqueous Solutions LLC
  3. Dear GWB Users, Please join us August 24-25 in Florence, Italy for a workshop on reactive transport modeling using the GWB. Then stay on in Florence for the Goldschmidt 2013 conference. Regards, Brian Farrell Aqueous Solutions LLC
  4. Hi Anastasia, Sorry for the delay in response. I have been out of the office the past couple weeks conducting training. If the model converges at 26 C but not 25 C the problem is likely not due to changes in the stability of certain minerals or species, but rather from differences in what minerals and species are loaded at the different temperatures. For example, if data is available at 25 C for a particular species, but not at 60 C, then it will be considered in runs at 25 C exactly but not in runs anywhere between 25 and 60 C. You might try using the extrapolate function to test whether this fixes your problem (type "extrapolate on" in the command pane). Without your custom dataset, however, I can't test this myself. Take a look at this and if it still fails to run perhaps you could post your thermo dataset or send it to support@gwb.com. Hope this helps, Brian Farrell Aqueous Solutions LLC
  5. Hi Carolyn, Not exactly sure what type of data you're plotting but in any case this shouldn't be too hard. Once you run your model in React and plot up the results in Gtplot, you can import scatter data from GSS into Gtplot. From Gtplot, go to File - Open - Scatter data and select your GSS spreadsheet which contains the data you would like to plot. If you go to the Tutorials page on our website you'll find a quick walk-through of this process. Find the "Using GWB" section and click on "How do I import scatter data"? You can also learn more about GSS and Gtplot by going to the GWB User's Guides. Sections 3.6.5 and 8.3 in the GWB Essentials Guide, for example, should be useful. Hope this helps, Brian Farrell Aqueous Solutions LLC
  6. Hi tco, Apologies for the delay in response as I've been out of the office the past two weeks conducting training. Yes, as you've discovered, using GSS to store your data and then launching a Piper diagram in Gtplot is the way to go. Regards, Brian Farrell Aqueous Solutions
  7. Dear GWB users, We are pleased to announce our latest maintenance release, GWB 9.0.3. 9.0.3 features Windows 8 support, an extended polynomial for virial coefficients in the H-M-W activity model, spherical coordinates in X1t, and heterogeneous and transient thermal properties in X1t and X2t, among other improvements. Update from 9.0 through 9.0.2 at no charge to ensure you have all the newest features and bug fixes. Regards, Brian Farrell Aqueous Solutions LLC
  8. Hi, I think that particular example refers to a saved .rea file. You might find that storing data in a GSS file as well could be useful. You can launch SpecE8 or React from GSS, for example, or if you have GWB 9 you can use drag-and-drop to move a sample from a GSS spreadsheet into the Basis pane of React. Hope this helps, Brian
  9. Hi Michal, I think you should be able to set up something like this. One thing to try would be to set the oxygen fugacity of the inlet (to be in equilibrium with the atmosphere, or whatever buffer you are using). That way, the inlet will always have the same amount of oxygen, but the oxygen in the rest of the domain (the Initial system) will be affected by reaction (with pyrite, perhaps) and transport (advection and diffusion into the domain). Hope this helps, Brian Farrell Aqueous Solutions LLC
  10. Hi DL, Could you please post the thermo dataset you are using, so that I can take a closer look? Thanks, Brian
  11. Hi DL, To make this run converge at your pH of interest (12.66), I swapped out Al+++ (dominant Al phase at low pH) for Al(OH)4- (dominant Al phase at high pH). Since your concentration units are mg/kg, you should be sure to adjust your value to reflect the different molecular weights of Al+++ and Al(OH)4-. Hope this helps, Brian
  12. Hi DL, It look like your problem is solving for the equilibrium state of the Initial system (before the TcO2© is even added). You should set the mass of solvent water as a free constraint (the default option) rather than a bulk constraint. This ensures all 1 kg of H2O at the beginning of the run is water, not distributed among the various aqueous species and minerals that are present. You should take a look at section 7.2 of the GWB Essentials Guide for more on free constraints. Since you set an Eh of -.4 at pH 12.3, you might want to swap out TcO4- for a more reduced form, such as Tc+++. This isn't too critical in this case, but it does make the initial portion of the path a little smoother, and it's a good thing to keep in mind when troubleshooting your runs. A simple Eh-pH diagram of TcO2 should help explain to you what I mean. You might even consider plotting the reaction trace on the Eh-pH diagram. Hope this helps, Brian
  13. Hello, I think your problem arises from the 0 values for concentration that you specify in the Initial system. If these indeed are supposed to be 0 in the real world, they should be replaced with negligibly small values in your thermodynamic model. You should take a look at some of the examples in the Reactive Transport Modeling Guide. For example, in 3.9: Pb contamination, clean water flushes a Pb contaminated aquifer, but even the clean water has an exceedingly small but nonzero value for Pb concentration. Hope this helps, Brian Farrell Aqueous Solutions LLC
  14. Hi DL, In order to make your original script run, not only do you need to add Na+ to the Basis, but you must tell GWB to use it as the charge balancing ion, instead of Cl-. To do so, use the command "balance on Na+". I think that should solve your problem. To model dissolution of a mineral with time, you need to set a kinetic rate law. Since you want the 2 g of quartz in your system at the beginning, you should swap it into the Basis in place of SiO2(aq) and set its mass to 2 free g. Using the rate law and the current chemical composition, React will calculate how much quartz precipitates or dissolves at each step. To see how solubility changes with pH, again swap quartz into the Basis pane, set the initial pH, then move to the Reactants pane and specify a target value for a sliding pH path. The mineral solubility example I mentioned earlier demonstrates this. Hope this helps, Brian
  15. Hi Godfrey, I took a look at your dataset and it works with Act2. Perhaps you didn't include all of the components necessary to form Ettringite? These are the basis species in the reaction for Ettringite that you added to the dataset: H2O, SO4--, Al+++, H+, and Ca++. Since you mentioned you're interested in aluminum and sulfate containing minerals, perhaps you forgot to include Ca++ (either as an axis or under the "in the presence of" field). Hope this helps, Brian
  16. Hi Godfrey, It looks like you forgot the attachment. Regards, Brian
  17. Hello, Regarding the charge balance issue, there are a couple fixes. Since you're at high pH, there will be more OH- than H+ in solution. Additionally, some of the silica will be present as neutral SiO2(aq) and some will be H3SiO4-, so you'll actually have an excess of negative charge. Cl- is the default charge balancing ion, but you are free to use any other ion. Balancing on a cation, Na+ for example, makes your model converge. Another option is to simply turn charge balance off, as is sometimes done when making speciation diagrams across a range of pH values. Now that your model runs, you can take a look at the results. You'll find that the quartz quickly reaches saturation and ceases to dissolve, and that the concentration of all silica species remains constant after this. You should note that the time you specify here doesn't mean much, since you haven't specified a kinetic rate law by which quartz precipitates or dissolves. Making the run last 7 days simply specifies that the 2 g of quartz be added in even increments up to 7 days, but the time could change without affecting your results. Another way to create solubility diagrams is to set the fluid in equilibrium with your mineral, quartz here, at a certain pH, then using a sliding pH path to see how the solubility of the mineral changes with pH. If you look at the diagrams page of our website, you can scroll down to the React section and choose the "Mineral solubility" example. Click on the React icon to launch a precalculated model of mineral solubility. You might try experimenting with this model to start, and adjust it as you see fit. Hope this helps, Brian Farrell Aqueous Solutions
  18. Hello Godfrey, Without seeing your thermo dataset I can't say for sure, but I imagine the problem is in the way you've balanced the reaction. The Basis species (and Redox species) are the building blocks used to form all other aqueous species, minerals and gases. It looks like you're using OH- as one of the species that react to form ettringite, but this is most likely not one of the Basis species in your thermo dataset. I think if you use H2O and H+ instead you'll be fine. If that doesn't fix your problem you can post your thermo dataset here and I'd be happy to take a look. Regards, Brian Farrell Aqueous Solutions LLC
  19. Hi, If you enter the composition of your fluid in the Basis pane, you can go to File - Save as... fluid1.rea (or use the command save fluid1.rea) to save the fluid into your current working directory. The next time you open React (as long as you're in the same working directory) you can go to File - Open - Read Script... (or command read fluid1.rea) to bring your saved fluid into the Basis pane. You might save two fluids ahead of time this way, then read them in to mix them together. An example (Section 3.9 of the Reaction Modeling Guide) demonstrates how you can read a fluid, solve for its chemical speciation, pick up the fluid and move it to the Reactants pane, then read the other fluid into the Basis pane so that you can mix the two together. From the command pane, this looks like: read fluid1.rea go pickup reactants = fluid read fluid2.rea reactants times 10 go React equilibrates fluid 1 and takes the fluid's bulk composition as a reactant. The program then equilibrates fluid2 and reacts about 10 kg of fluid 1 (assuming initial solvent mass of 1kg) into the second fluid over the course of the reaction path. Please let me know if that's not what you mean. Perhaps you want to save the fluid as a sample in a GSS spreadsheet? Regards, Brian Farrell Aqueous Solutions LLC
  20. Hi Suma, It looks like you took the reaction for CN- from thermo.com.v8.r6+.dat and added it to thermo.dat. The problem is that the two databases differ in their choice of basis species for the nitrogen component. thermo.com.v8.r6+.dat uses NH3(aq), but thermo.dat uses NO3-. If you want to add CN- to thermo.dat, you'll need to write the reaction in terms of NO3-. Add the first two reactions together to get the third, which is what you want. CN- + 2 H2O + .5 O2(aq) = HCO3- + NH3(aq) (Log K at 25 °C = 56.0505) NH3(aq) + 2 O2(aq) = NO3- + H+ + H2O (Log K at 25 °C = 62.1001) CN- + H2O + 2.5 O2(aq) = NO3- + HCO3- + H+ (Log K at 25 °C = 118.1506) You can quickly accomplish this using Rxn with thermo.com.v8.r6+.dat. Just write the reaction for CN-, swapping NO3- in for NH3(aq). By going to Run - Block - Append, then Run - Go, Rxn will copy to the clipboard the reaction and thermo data in a block of text that you can paste directly into thermo.dat. One more thing, be sure to update the redox couples counter from 48 to 49. Hope this helps, Brian Farrell Aqueous Solutions LLC
  21. Hi Oleh, If you post your two modified thermo datasets, your script, and some sort of plot or explanation of the old and new results I'd be happy to take a look. Regards, Brian Farrell Aqueous Solutions LLC
  22. Hello Oleh, This isn't a limit of the GWB programs, but simply a reflection of the thermodynamic data most commonly used by geochemists. thermo.com.v8.r6+.dat has an entry for the native mineral Fe, so you can create a redox-pH diagram accounting for metallic iron (be sure to turn water limits off). To consider kinetics of redox reactions involving Fe(0), however, you'll need to do a little work editing the thermo data. Basically, you'll have to create a new, fictitious redox species, Fe(aq), to add to the thermo data. Then you'll add a mineral Fe(s) to the minerals section, balanced in terms of Fe(aq). Since thermo.com.v8.r6+ has data for Fe(s), this may be a good place to start editing. A relevant example (redox kinetics involving native sulfur) that you can follow is given in Craig Bethke's Geochemical and Biogeochemical Reaction Modeling text in section 17.5 (Redox kinetics), p. 254. Of course, different forms of iron will likely have different thermodynamic properties, so you'll need to find the appropriate data for your application. Hope this helps, Brian Farrell Aqueous Solutions LLC PS I moved your post from the archive of old posts to the top of the front page to make it more visible.
  23. Hi Suma, Thanks for sending your dataset and script. Act2 is using thermo.dat, the default thermodynamic dataset. You need to tell Act2 (and the other GWB programs) when you want it to use an alternative dataset. Besides that, your script looks fine. There are several ways to do this. Using the GUI, go to File - Open - Thermo Data... and select your dataset (mythermo.dat). If you have the folder with your thermo data open (or the thermo data saved to your desktop) you can just drag (assuming you have GWB 9) the icon for the thermo dataset into Act2. From the command line, use a command like data = "C:\Users\Suma\mythermo.dat" You'll want to make sure your dataset is a .dat file, and not a .txt file. When you name it, make sure the "All Files" option is selected, rather than Text Documents (*.txt). Hope this helps, Brian
  24. Hi Suma, It sounds like you've followed the necessary steps in Act2, perhaps the error is in the way you added Enargite to the thermo data. Please send your themo dataset to support@gwb.com. To create a script (whether you used the GUI or the command line), just go to File - Save As... to create a .ac2 file. Once this is done you can just double-click the file to open up your saved run. Regards, Brian
  25. Hi Suma, Could you attach the thermo dataset you're using and your Act2 script? Thanks, Brian
×
×
  • Create New...