Jump to content
Geochemist's Workbench Support Forum

Jia Wang

  • Content Count

  • Joined

  • Last visited

  • Days Won


Jia Wang last won the day on February 29

Jia Wang had the most liked content!

Community Reputation

2 Neutral


About Jia Wang

  • Rank
    Advanced Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Hello Alex, I took a quick look at your script and noticed that you have set a really high rate constant for kinetic calcite relative to all the other minerals in your system. To investigate error, I shortened the run time on your simulation to 1 day and looked at mineral dissolution rates during the simulation. Because of the high rate constant for calcite, you have high reaction rates adjacent to zero rates, in a moving front as the model progresses. To see this, plot the x-position on the x-axis and dissolution rate of calcite on the y-axis. Since the rate constant for calcite is many orders of magnitude higher than other minerals, it might be better to consider calcite using the equilibrium approach. If you want to continue using a kinetic rate law for calcite precipitation/dissolution, you should reconsider the rate constant that you are using. I also noticed that you have set a nucleus density for tridymite, kaolinite, and illite. This is only necessary if the mineral you are setting up a kinetic rate law for does not exist in the system. In your case, you do not need them. Hope this helps, Jia Wang
  2. Hello Helge, If you had decoupled NpO2+ and set it as a basis species entry with no other oxidation states for your model, then you can use the command "report concentration original fluid" to get the total concentration of that component in the fluid. If you are running a redox equilibrium model, where NpO2+ species concentration is calculated, then you would need to retrieve the concentrations of aqueous species with the desired oxidation state (e.g. Np(V)) and sum them in python. Hope this helps, Jia Wang
  3. Hi Polly, I took a quick look at the PhreeqC approach to modeling surface complexation and it seems like the debye lengths input is used in the Donnan approach to calculate the composition of the diffuse layer. GWB does not use the Donnan approach. The program automatically assigns composition to the diffused layer. The surface complexation model ensures that reactions in the surface datasets are honored in the calculation. For any given calculation, you can fix the surface potential in a two layer model in a calculation. If you do that with a surface potential value retrieved from the PhreeqC model, then you might get similar results from both models. Though, I would not recommend doing that as other inputs required between the two models may vary. I would recommend running a full two layer model without setting a constant potential. Best regards, Jia Wang
  4. Hi Spencer, The bar chart expresses the bulk composition of the fluid in electrical equivalents and does not account for speciation. You can use SpecE8 to calculate the distribution of mass for each component and plot these results in an XY plot as electrical equivalents. The calculated results can be exported and be plotted externally. Please also note that the axis on the bar chart does not represent ionic strength of the fluid. If you want to check if mass balance is honored, you should use molality as the unit. If you add up the concentration of individual species, you will arrive at the bulk composition of that component. Best regards, Jia Wang
  5. Hello Alex, The GWB does not currently include a model for solid solutions. Olivine is a solid solution series with two endmembers, forsterite and fayalite, which are both included in thermo.tdat. You can however add intermediate members with discrete composition to the database if you like. You would need to include the equilibrium constants associated with the mineral reaction. Please don’t post multiple topics about the same question. We hope you enjoy using the GWB. Best regards, Jia Wang
  6. Hello Jen, You can run GWB on a Mac by using a Windows emulator such as Parallels. Another option is to set up dual boot configuration using a program such as Boot Camp. You can find more information here. Best regards, Jia Wang
  7. Hello Jason, I took a quick look at your input files and here are a few suggestions. For alkalinity concentration, you should use meq_acid/l for the unit and not meq/l for HCO3-. This will change your calculation by quite a bit. I also noticed in the basis pane that 1 free kg of H2O is designated but your problem describes a 100 ml sample with a density of 1.01 g/cm3. I would suggest setting the amount of free solvent at 0.1 kg so your calculation is performed at or very close to your sample volume. Another suggestion is to change the value of "reactant times" in the Reactants pane to something like 0.0001. It looks like you created a 10 kg solution of your 36% HCl acid. You won't need to titrate all of it if you are only expecting to see the change you want with a small amount added. Reactants times factors the total amount of your reactant that you are adding to your fluid. You can also turn off precipitation in your React simulation by going to Config --> Option and uncheck precipitation. Unless you are expecting minerals to precipitate during your titration, it might be worth considering turning it off so that mineral precipitation is not a factor in your calculation. I think with these changes, you will get much closer to the field measured volume and mass of HCl added. You can view your result in Gtplot by choosing your x-axis variable as "mass reacted total" under the variable type "Reactant properties" and your y-axis variable as the pH under the variable type "Chemical parameters". For more information on plot configuration, please see section 6.2 XY Plot configuration in the Reaction Modeling User guide. Hope this helps, Jia Wang
  8. Hello Spencer, Like I said above, the concentration you enter for Fe++ in the GSS spreadsheet is considered as Fe++ when you are plotting from GSS. So that's why I suggested you adding Fe++ and Fe+++ separately. I don't think the graph is showing twice the ionic strength. If you add the individual species of that component, then you should arrive at the same concentration as shown in the plot. For example, if you summed all the sulfate species concentration and covert to meq/kg, then you should get the same value as seen plotted from the GSS spreadsheet. There should be a section below in your SpecE8 output file that shows you the total component concentration for that species (e.g. SO4--). The bar graph type plot does not plot individual species concentration, only component concentration. You can however retrieve each aqueous species concentration in units of eq/kg and make the plot separately in excel or python. To retrieve those values, you can plot your SpecE8 calculation results in Gtplot (in your SpecE8 window go to Results and click on plot results). An XY plot should pop up, if not, you can go to Plot on the menu bar up to and select XY plot. Double click on the center of the plot to bring up the plot configuration. You can configure one of the axis to show the variable type "species concentrations" and change the units to meq/kg (or eq/kg). Click ok or apply. Then go to the Edit --> copy as --> spreadsheet and paste your result into excel to view. You can manipulate this numerical result externally to plot as you wish. Hope this helps, Jia
  9. Hello Spencer, Glad to hear that you are getting closer. The concentration you enter for the basis species represents the total component composition (e.g. Fe++, Fe+++, FeSO4+, FeCl+). In a bar graph, the concentration displayed assumes the concentration reflects the oxidation state of the analyte you have chosen, in this case Fe++. I think you might want to add in Fe+++ and represent the concentration for that analyte separately and select "free" unit for Fe++ and Fe+++. You can show all ions in the bar plot by unchecking "Common ions" in the parameters for Bar Chart dialog. Please see section 8.1 Plots type for an example. Hope this helps, Jia
  10. Hello Lisa, Is your computer connected to the internet at the time of activation? You would need to have an internet connection to activate via the activation code. Alternatively, if your computer does not connect online, please follow the instruction here for offline activation. Hope this helps, Jia Wang
  11. Jia Wang


    Hello Cali, Unfortunately, I can not run your script without your custom thermo dataset. Would you mind posting your custom dataset so someone can take a closer look? My apologies for missing your post earlier. The GWB staff doesn't receive notifications when a new thread is posted in the archive. In the future, please post on the front page of the forum. Best, Jia Wang
  12. Hello Jason, I took a quick look at your input files and noticed a couple of issues with the set up. In the Reactant pane, you have set up reaction pathway for HCl to be titrated into your system. As it is, React titrates in HCl until the it reaches 36 wt% of your fluid and not titrating an acid of 36 wt% of HCl. You would need to create the 36 wt% acid you want to use before setting it as a reactant. To do so, set up the basis pane with 1 kg of H2O and enter H+ and Cl- as a basis species and enter the concentration corresponding to the acid. Select Run -> Go and have React speciate this fluid. You can up the pickup feature and use the resulting fluid composition as your reactant (Run -> Pick up -> Reactant -> Fluid). Throughout the simulation, your reactant is titrated linearly into your fluid. You can scale down the amount of reactant titrated into your system in the reactant times box (e.g. 0.01). After picking up the results, return to the basis pane and enter the basis species and concentrations for the basis species as given by the geochemical fluid analysis. I noticed that you are using the alkalinity measurement directly as the component concentration for the carbonate species. In React, alkalinity units accepted are in terms of CaCO3 or in equivalents of acids (Chapter 6.1 Units in the GWB Command User Guide). You would want to convert your alkalinity units from your geochemical analyses to either one of the accepted units above. To convert to units of meq_acid/l, you would divide the alkalinity reported as mg/l as HCO3- by the molar mass of HCO3-. My apologies for the late response. This part of the forum was set up as an archive for older posts, so I don't receive notifications when people add new topics there. If you post to the font page, though, notifications to the GWB staff will be sent out. Hope this helps, Jia Wang
  13. Hello Spencer, You can certainly calculate the redox species speciation given the proper constraints (e.g. the Eh or O2(aq) concentration) and total component concentration. GSS can use SpecE8 to calculate values for your spreadsheet, including species concentration. To do so, go to "+ analyte" and select "Calculate with SpecE8". Then select species concentration for variable type. In your example, you would select Fe+++ and Fe++. The species concentration calculated should be added to your spreadsheet once you hit apply at the bottom of the analyte dialog. Not that that the order of the analytes in the data sheet is important. In its calculations, SpecE8 will use the first constraint it finds for a particular basis component. For example, if both Eh and O2(aq) are present, SpecE8 will use whichever is first in the data sheet. You can easily change the order of the analytes by dragging, or hide analytes you don’t want used in the calculations. For more information, please refer to section 3.2.5 Calculating analytes in the GWB Essentials User Guide. Hope this helps, Jia Wang
  14. Hello Alex, X1t is set up so that you set the flow from the inlet to the outlet across the nodes that make up the domain. You can set up the domain as if it is a vertical column since the flow direction is arbitrary in X1t. Hope this helps, Jia Wang
  15. Hello Matt, Glad to hear it helped! I hope you enjoy using the software. Best, Jia Wang
  • Create New...