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 Mauricio, It took me a while, but I thing I figured out your problem. There are various conventions for modeling bidendate surface complexation reactions. For a helpful review, please see "Mass action expressions for bidendate adsorption in surface complexation modeling: theory and practice" by Wang and Giammar, 2013. As far as I can tell, the CHESS program and FITEQL (by default) use "model 1", in which the molar or molal concentration of surfaces complexes are carried in the mass action equation (see Table 2 in the reference). This convention is problematic in certain ways, as explained in the text. Starting with release 9, the GWB apps use "model 3", in which the mole faction of surface sites is carried in the mass action equation. Section 4.4 Practical Suggestions for SCM Practitioners provides some guidance for converting data collected under "model 1" to a form for use with "model 3" (equation 26). When I did this, I found a log K of 7.945 for the bidentate complexation reaction seemed to match up with the curves in Figure 3a pretty well. As for combining the updated bidentate model with the ion exchange model for H+ (but not Cu++), I don't observe a visual difference either. I think this is okay, though. Comparing Figure 3a with Figure 5a in the paper, I can't observe a difference between those two. And in the text, the authors state "...The goodness-of-fit for this model is not statistically different from the 1-site bidentate model...". Hope this helps, Brian
  2. Hi John, I tried to run the model as is. I think one problem is that the Al2O3 mineral that’s swapped into the basis is really unstable at the specified pH conditions. I also can’t understand why the Quartz and Al2O3 are both swapped into the basis and set as simple reactants. I’ve attached my interpretation of the model that is discussed in the paper. It runs fine, but I’m not getting the same answers as the paper, so obviously my interpretation isn’t quite right either. There are a few details that I’m pretty confident in, though. I think they are using the water chemistry data from Sample 1. The reported analysis is an average from several sampling periods, but in their modeling they state they use pH and Eh values from the second sampling period, which are 4.44 and 450 mV, respectively. They specify the concentration of nitrate (NO3-) as nitrogen (N). In other words, the mass of the oxygens is not counted. You can set concentrations as elemental equivalents in React by clicking the pulldown next to the unit for NO3- and selecting “as -> N”. I think all redox coupling reactions should be enabled here (specifically between Fe++ and Fe+++) so that Magnetite can form in response to the specified Eh. They listed the stability of Kaolinite, Quartz, Magnetite, and Al2O3. The values for Magnetite and Al2O3 were slightly different from those in the thermo dataset, so I modified the 25 C values from the Config -> Alter log Ks dialog. The original model was done in PHREEQC, which by default does not allow supersaturated minerals to precipitate. You can replicate this by going to Config -> Suppress, changing the “list” pulldown from “All” to “Minerals”, then hitting “suppress all”. Then, unsuppress the minerals they reported (Kaolinite, Quartz, Magnetite, and potentially Al2O3). The paper calls the mineral reactants, so instead of swapping them into the Basis, I set them as simple reactants on the Reactants pane. I needed to set a nonzero but trivial amount of H4SiO4 and Al+++ in the Basis pane. Hope this helps, Brian teat-modified.rea
  3. Hi John, Thanks for the additional information. I read through the section of the paper entitled “Geochemical simulation in the granitic aquifer”. It’s really not clear from the paper how the model was constructed. It’s especially difficult to check because they only report the end-point values for a few parameters like Eh and pH. I would recommend writing to the corresponding author to ask for a more detailed explanation of the model, along with an input file for the PHREEQC calculations. Perhaps with this information we can help your client get the model up and running. Regards, Brian Farrell Aqueous Solutions LLC
  4. Hi John, Can you please explain the conceptual model for this input file? What type of process are you trying to simulate? What is the extent (size or volume) of the system? I'm especially curious about the Al2O3 and Quartz constraints in the Basis. Also, are the constraints for Fe++ and Fe+++ real (both are the same value)? Thanks, Brian Farrell Aqueous Solutions LLC
  5. Hi Mauricio, I think your surface dataset looks okay. It's possible that your thermo dataset is slightly different from the one used in the original calculations, but I'm not sure how important that is in this case. The paper lists several Cu++ species, including carbonate complexes, that are accounted for in the calculation, but I'm not sure your dataset includes them all. Furthermore, the paper lists a specific Cu++ species, CuOH+, with a log K of formation of -7.29. The dissociation reaction for that species is listed in your thermo dataset with a log K of 7.497. You might try using the "alter" command to set its value to 7.29. If you track down the carbonate complexes, you might consider adding a CO2 buffer to your calculation, but I think the paper mentioned those complexes weren't too important in this calculation, so you might not worry about it. I think the most important factor is that the "sorbate include" setting has not been applied. In the experiments, the Cu concentration refers to the total amount of Cu in solution and sorbed to the surfaces. In the GWB's default state, the Cu concentration you set on the Basis pane refers only to that in solution (think of sampling water from a well). You can use the "sorbate include" option from the Config -> Iteration dialog to specify that the Cu concentration set on the Basis pane includes sorbed as well as dissolved mass. When I do that, and disable charge balancing and delete the Cl- basis entry, I get results that look very much like those in Figure 2. For more information, please see React's "sorbate" command in the GWB Command Reference/ Reference Manual. Hope this helps, Brian Farrell Aqueous Solutions LLC
  6. Dear GWB users, We are pleased to announce our latest maintenance release, GWB 12.0.1. The 12.0.1 update addresses an issue in which the installer may fail under certain Windows configurations. It also better places tick marks in Phase2 diagrams and relabels some variables in the data Phase2 passes to P2plot, for clarity. Update from 12.0 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
  7. Dear GWB users, We are pleased to announce the release of GWB12, our most anticipated release ever! Generate phase diagrams and “true” activity diagrams, calculate fractionation of any stable isotope, set partial pressures, model isotope transport, and much, much more! Visit our GWB12 page to learn more. If you’re running an annual license or pre-ordered GWB12, get started by going to the Upgrade pane of the GWB Dashboard, clicking “Download”, then running the installer. Haven’t ordered yet? Check out our new, low pricing on flexible subscription plans—from 3 months to 3 years! Contact us today for a formal quote or to place your order. We hope to hear from you soon. Sincerely, Brian Farrell Aqueous Solutions LLC
  8. Hi Michaela, Thanks for explaining your situation. I've reset your license, so you're all set to activate on your new computer now. I hope you enjoy using the software. Regards, Brian Farrell Aqueous Solutions LLC
  9. Hi Danielle, Reactions in the GWB's thermo datasets are written as destruction reactions (i.e., a mineral breaks down to basis species instead of basis species forming a mineral). You supply the log K for the reaction as it's written. Hope this helps, Brian Farrell Aqueous Solutions LLC
  10. Hi Danielle, Reactions in the GWB's thermo datasets are written as destruction reactions (i.e., a mineral breaks down to basis species instead of basis species forming a mineral). You supply the log K for the reaction as it's written. Hope this helps, Brian Farrell Aqueous Solutions LLC
  11. Hi Brian, If using React, turn precipitation off to prevent supersaturated minerals from forming and changing the composition of the fluid that you set. Or, just use SpecE8, which doesn’t precipitate mass. You say total DIC should be 1950 umol/kg, and that it should be composed of 1795 umol/kg free HCO3- + 135 umol/kg free CO3-- + 20 umol/kg free CO2. If that’s the case, your input for the HCO3- component needs to be 1950 umol/kg, not 1795 umol/kg, or you need to set 1795 umol/kg free HCO3-. Are HCO3-, CO3--, and CO2(aq) the only carbon species accounted for in your reference example? If so, you may need to suppress various other carbon species, such as NaHCO3, MgHCO3+, etc. Or, are you only reporting the concentration of those three? In general, to get consistent results your entire set of species considered, their reactions, and their log Ks, should be consistent. You can view the thermo dataset currently loaded into a program by going to File -> View and selecting the “.tdat” file. You can also make the program include in its text output file all considered reactions and log Ks by going to Config – Output and filling the “reactions loaded” checkbox with a square. And you can alter the log Ks used for any reaction interactively within the program. I’m a little surprised that your reference shows more CO3-- than CO2(aq) in the fluid, considering the pH is closer to the equivalence point for CO2/HCO3- than for HCO3-/CO3--. For more information, please see the suppress, alter, print, and precip (React only) commands in the SpecE8 or React chapters of the GWB Reference Manual. Hope this helps, Brian
  12. Hello, In your example, you have 0.001 mg/l AsH3 as As. This is equivalent to 0.00104 mg/l AsH3 as itself - this is the value the program carries internally. When you load another dataset, you can convert to another arsenic species using the known elemental mass (as As), Since you chose, AsO4---, you'll see the converted value is 0.001 mg/l AsO4--- as As. The units (mg/l as As) happen to be the same, but the fact that the actual amount of As is preserved is what we really care about by selecting the "convert by elemental equivalent" option. If your original units were as the species itself (AsH3), the conversion that takes place would be more apparent, but either way they are correct. If you uncheck the "convert by elemental equivalent" option, the program will simply copy the value it carries internally (0.00104 mg/l to the new spreadsheet entry, AsO4--- in this case. The units may be listed "as As", but if you convert them to "as AsO4---", you'll see 0.00104, which reflects a simple copy from the original internal value, not a conversion. For a simpler example, let's look at nitrogen species. In thermo.com/v8.R6+.tdat, NH3(aq) is a basis species. 10 mg/l NH3(aq) is equivalent to 8.224 mg/l NH3 as N. Whether the unit is as the species itself or as the elemental equivalent, if you load thermo_minteq.tdat, substitute NH4+, and convert the concentration, you'll end up with 10.59 mg/l NH4+, or 8.224 mg/l NH4+ as N. These are all equivalent to the original data. If you unchecked the "convert by elemental equivalent" option, you'd end up with 7.765 mg/l NH4+ as N, or 10 mg/l NH4+. Neither of these are equivalent to the original input, because the value of 10 stored internally was simply copied, not converted. BTW, AsH3 has As present in the -3 oxidation state. AsO4---, by contrast, has As present in the +5 state. When using the substitute option, you generally want to pick the equivalent species. I've compared the different oxidation states of As basis and redox species, which are available in GSS, in three thermo datasets below. thermo.tdat Basis: As(OH)4- (+3) Redox: AsH3(aq) (-3) Redox: AsO4--- (+5) thermo.com.v8.R6+: Basis: H2AsO4- (+5) Redox: AsH3(aq) (-3) Redox: H2AsO3- (+3) thermo_minteq: Basis: AsO4--- (+5) Redox: H3AsO3 (+3) Unfortunately, there is no -3 equivalent in thermo_minteq.tdat. Perhaps your original data should be in terms of As(+3) or As(+5), which are likely more common that As (-3)? When presented with multiple oxidation states in GSS, a good strategy is to pick the redox species if you know that your analysis is specifically for that oxidation state, but otherwise use the basis species. Hope this helps, Brian Farrell Aqueous Solutions LLC
  13. Hi Karen, I'm sorry I didn't notice this post until now. This part of the forum was set up as an archive of older posts, so I don't receive notifications when people add new topics there. It should really be locked. If you post to the font page, though, notifications to the GWB staff will be sent out. Anyway, I'm glad to hear that you're all set. Regards, Brian Farrell Aqueous Solutions LLC
  14. Hi Brian, I'm sorry I didn't notice this post right away. Typically users post new topics to the front page of the forum instead of the archive. By default, most basis entries are treated as "bulk" constraints. The HCO3- concentration of 2 mmol/kg that you set refers to the total carbon in the system. In other words, the sum of the concentration of CO2(aq), HCO3-, CO3--, NaHCO3, etc. will add up to 2 mmol/kg. If you instead set it as a "free" constraint (by selecting the option from the units pulldown next to HCO3- ) you specify that the concentration of the HCO3- ion itself is 2 mmol/kg. The total mass of carbon will be larger in this case because other species, such as CO2 and CO3--, will be present in equilibrium with the HCO3-, honoring the mass action equations and log Ks included in the thermo dataset. An additional wrinkle in the complication is how to account for carbon species in different oxidation states. By default, species like CH4 and CH3COO- are set to be in equilibrium with HCO3-. If you set a value for the oxidation state of the system, some of the mass in the HCO3- component will be used to form species like CH4 and CH3COO-. By decoupling the different redox pairs involving carbon, you can set up your calculation so that your HCO3- component includes only inorganic carbon species. For more information, please see section 2.4 Redox couples and 7.3 Redox disequilibrium in the GWB Essentials Guide. The units in the text output file cannot be changed, but when you plot your results in Gtplot you can choose from a variety of units. Please let us know if you're still having trouble. I'd be happy to take a look at en example if you'd like. Regards, Brian Farrell Aqueous Solutions LLC
  15. Glad to hear you're all set. I hope you enjoy using the software.
  16. Hello, Did you plot a Piper diagram recently? And then close the plot? Gtplot saves your most recent configuration in a ".gtc" file upon closing a plot. When you reopen Gtplot, it will use the same plot type, line colors thicknesses, axes variables, and so on from your last session, although the data being plotted will be different if it's coming from a different plot file. If you normally use the XY plot, then each time you close a plot the configuration will be saved with the XY plot settings, and upon opening a new instance it will use the XY plot setting. If at some point you made a Piper diagram and closed the plot, the configuration would be saved with the Piper setting. Can you go to the Plot menu of Gtplot and select XY plot? Or does that not work? Thanks, Brian Farrell Aqueous Solutions LLC
  17. Getting "fnpActSvcInstallWin failed with code=1007" error after 11.0.8 update? Try running GWB dashboard "as administrator". Right-click GWB11 icon on desktop or Start menu & select "Run as administrator".
  18. Hello, I’m writing to let you know about our latest maintenance release, GWB 11.0.8. The release fixes the issue you encountered with the pickup command. Existing installations should automatically update to this release within the next three days, unless auto-update is disabled. In that case, you can update your installation from the Help pulldown on any GWB app. I hope you enjoy using the software. Regards, Brian Farrell Aqueous Solutions LLC
  19. Hello, I’m writing to let you know about our latest maintenance release, GWB 11.0.8. The release fixes the issue you encountered with saving heterogeneous mineral masses. Existing installations should automatically update to this release within the next three days, unless auto-update is disabled. In that case, you can update your installation from the Help pulldown on any GWB app. I hope you enjoy using the software. Regards, Brian Farrell Aqueous Solutions LLC
  20. Dear GWB users, We are pleased to announce our latest maintenance release, GWB 11.0.8. The 11.0.8 update is a wrap-up of known issues in the GWB. The release also lays the groundwork for upgrading to GWB12, notably the ability to borrow a copy of the software to use in the field or wherever Internet access to the license server might be problematic. Update from 11.0 - 11.0.7 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 Support tab of the GWB dashboard. Regards, Brian Farrell Aqueous Solutions
  21. Hello, Thank you for supplying this script. There is nothing wrong with your file. Instead, we traced an issue to a linear algebra module that diagonalizes a matrix needed to set up basis swaps. The method the module uses is considered reliable, but not guaranteed. This is, in fact, the first time we’ve seen it fail. I’ve forwarded the script to our development team and I hope to have a solution in the not-too-distant future. In the meantime, you can pick up the results by hand. You’ll want to use the current basis, rather than the original basis, from the end of your reaction path. First, go to Config -> Output and set the 3-way checkbox labeled “basis composition” to the “filled” state. You may wish to do the same for the original basis composition, for comparison. Run the model, then click “View Results” on the Results pane to open up the printed text file. Go to the end of the file to find the last step (Xi = 1), then scroll down to the section labeled “Basis components”. You’ll use the values for total moles to constrain the chemical system in a new instance of React (be sure to use the same thermo dataset, temperature, and suppressed minerals as in the original calculation). You’ll obviously need to make some basis swaps (e.g. AlO2- for Al+++, CO2(aq) for HCO3-, Chrysotile for H+, etc.). Make sure you use mol units throughout (except H2O, which must be converted to kg) and that you’re using “bulk” constraints rather than “free” constraints. You should be able to reproduce the final state of your calculation without too much effort. We appreciate your patience as we work towards fixing this problem. Regards, Brian Farrell Aqueous Solutions LLC
  22. Hello, The free GWB Student Edition includes GSS, Rxn, Act2, Tact, SpecE8, Gtplot, and TEdit, but not React, X1t, X2t, or Xtplot. You need to purchase a license of GWB Professional to access all of the GWB programs. As a student, you are likely eligible for a 20% academic discount. An Annual license has the lowest initial cost. Please contact sales@gwb.com if you would like to receive a formal quote or if you would like to try a demo of the Professional package. Regards, Brian Farrell Aqueous Solutions LLC
  23. Hi Jin, Yes, when you swap a mineral into the basis you are setting the fluid to be in equilibrium with it. If you're working with an incomplete water analysis (or a low quality analysis) then you can get misleading results when using charge balancing. I would compare the simulation assuming equilibrium with Dolomite with a second simulation in which you set HCO3- as the charge balancing ion. Hope this helps, Brian
  24. Hi, Does the text output file from a simpler simulation open without issue? Is it set to be written? You can check this on the Config -> Output dialog. If you delete the plot output file (.gtp) then you'll need to rerun the simulation to produce another plot file. Can you please attach your React script so that I can take a look? Thanks, Brian Farrell Aqueous Solutions LLC
  25. Hello, As I recall, you have a licensed version of GWB Standard, which includes the React app. This allows you to perform many calculations and analyses not possible with the free Student Edition software. First of all, are you calculating reaction path simulations or are you interested only in equilibrium state. If you're only interested in equilibrium state (what you can calculate with SpecE8), then instead of running a series of discrete simulations at different temperatures, you can set up a simple polythermal path ("sliding temperature") to scan over a range of temperatures. As for water/rock ratio, the best strategy depends on how exactly you define the ratio, but one simple idea is to add your mineral(s) as simple reactants (a "titration path"). As the reaction path proceeds, you react more and more mineral mass into a body of water, thus considering a range of water/rock ratios. Again, whether or not this is appropriate depends on how you exactly you define water/rock ratio. Second, are you aware of React's pickup feature? With the pickup feature, you use the results of one calculation as the starting point for another. For more information, please see 3.9, Picking up the results of a run, in the GWB Reaction Modeling Guide. Finally, if you're already setting up a multitude of reaction path calculations, you might wish to programmatically run and retrieve results from GWB calculations. There are a few ways to do this in the GWB. They're described in the GWB Reference Manual in chapters entitled Report Command, Control Scripts, and the Plug-In Feature. Hope this helps, Brian Farrell Aqueous Solutions LLC
×
×
  • Create New...