Jump to content
Geochemist's Workbench Support Forum

Jia Wang

  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by Jia Wang

  1. Hello, Thank you for providing your GSS file and additional information regarding your operating system. I was able to open your file and create plots successfully in Gtplot. If the issue arose after the installation of Community over the Student Edition, the cause might be an incomplete or incorrect install. Can you try rerunning the Community installer again and see if the issue persists? Please make sure that all GWB apps are closed before rerunning the installer. The software may install incorrectly if existing applications are open when files are being written over. Hope this helps, Jia
  2. Hello Kevin, The GWB calculates pe with the Nernst equation. For more details please refer to the Geochemical and Biogeochemical textbook, section 3.3.8 the pe and Eh. The Eh constraint sets the oxidation state of your system for all redox reactions unless the reaction is decoupled. If you want to see an example of this, please see section 7.3 Redox Disequilibrium in the GWB Essentials guide. A pH is required for constraining the reaction e- + H+ + .25 O2(aq) = .5 H2O in your system. It's hard to diagnose the issue with your input file without seeing it. Is the Results pane reporting an error when you trigger the calculation? We can take a closer look if you attach a copy of the input file that's not producing results according to your expectations. Hope this helps, Jia Wang Aqueous Solutions LLC
  3. Hello, I am not exactly sure what's causing your Gtplot issue, but I can try to help. Gtplot will try to load the last configuration file (a file with extension .gtc) opened. Some times, the configuration file might cause issues when Gtplot is opening new plotting files (e.g .gtp) or when opening a plot from GSS. Can you try moving your GSS file to a new folder (perhaps an empty folder on your Desktop perhaps) and then open the spreadsheet and launch a plot? You can also try the same thing with a SpecE8 or React output file (files with extensions .gtp). If this helped, please send us a copy of your .gtc file that was causing the issue and we can investigate further. If removing the suggestion above did not help, can you provide more details regarding the issue. Were you able to open Gtplot before? Did plotting failed after a certain point? Was there an error message when you try to plot a file? What type of machine and operating system are you running the software on? Can you send us your GSS file or an input and its corresponding output file so we can troubleshoot further? Hope this helps, Jia Wang Aqueous Solutions LLC
  4. Hello, Thank you for the additional information. There's no direct command that would turn off error dialog messages atrun time. When you are running your input scripts, are you picking up results from a previous simulation or starting a brand new set of commands? It would help to diagnose possible issues that's leading to the error being reported at read in time if you can provide an input script that we can use to reproduce the error. Also, I just want to let you know that control scripts (using the TCL scripting language), while can perform batch runs, may not be the best scripting option for running more complex inputs. For more complex scripting, you might be interested in using the Plug-in feature instead, which allows you to call GWB application(s) to perform calculations within another program. For more information and example using the Plug-in feature, please refer to chapter 7 of the GWB Reference Manual. Best regards, Jia
  5. Hello, There are a few ways to go about setting up a batch run in the GWB. Which method are you using? Are you using the Control script, Remote Control, or Plug-in feature? Best, Jia Wang Aqueous Solutions LLC
  6. Hello Polly, Thank you for the new input file. Here are a few suggestions to help you get started. I think the main issue here is that adding calcite as a simple mineral doesn't really represent your system. Simple reactants are typically used in titration pathways. If you are designating a portion of your initial domain with calcite, you would need to swap it into the basis instead of reacting a quantity in as a simple mineral. You can see an example of this in section 3.6 Rainwater infiltering a quartz aquifer of the Reactive Transport Modeling User Guide. Also note that the component chosen for charge balancing ion is generally the species with the most abundant concentration for which the greatest analytic uncertainty exists. Cl- is generally chosen because it typically exists in fairly high concentration in natural waters and unless specified, commercial labs report a Cl- concentration through charge balancing. In your case, your fluid in the basis pane has a really low Cl- concentration, so it might make more sense to pick one of the components with a much higher concentration as your charge balancing species. You should also check that the log Ks in your database match the one that are used in thermo.tdat. With regards to the dataset, there are several entries that are missing some important information, resulting in TEdit in GWB 2021 to crash when opening the file. Cs2U2O7 is missing Log K. H4SiO4(aq) does not have any species in reaction. I also noted that you have several silica basis species which is very unusual. Typically, a database is put together such that there is only one basis species for that element and other aqueous species of the same redox state should be written with a reaction using the basis and/or other species. To fix your dataset so that Tedit can open it, I suggest locating the entries ( Cs2U2O7, H4SiO4(aq) ) mentioned above and correct them in a text editor (e.g. Notepad). Hope this helps, Jia Wang Aqueous Solutions LLC
  7. Hello, The rate constant chosen is to demonstrate the process in the exercise. You should use a rate constant that describes the conditions of your system. The default option in the GWB is to provide a rate constant. Alternative, you can provide the activation energy and pre-exponential factor for the program to calculate the rate constant using the Arrhenius equation. The advantage to the latter method is that it can account for temperature variation while the first does not. Please take a look at chapter 4.1 GWB Reaction Modeling User Guide for more information. Yes, you can use other minerals. Fe(OH)3ppd is used as a catalyst surface and it's relatively inert in this example, precipitation/dissolution doesn't interfere with the reaction of interest. The surface area is determined by the user, typically through some estimation or lab measurement of sample. This specific surface area was used as an example for demonstration. The redox species MnO2(aq) is a fictive species added so that the simulation can account for redox disequilibrium between Mn(IV) and other Mn species. A log K (e.g. -9) is set so that a small amount of MnO2(aq) would be present when in equilibrium with pyrolusite. Note that this simulation is only interested in Mn aqueous species and Mn-minerals don't really matter. If you're not interested in including MnO2(aq) in your work, you can also consider the example for Autocatalytic oxidation of manganese in the Geochemical and Biogeochemical Modeling textbook. This example shows the promotion of Mn2+ oxidation as manganese precipitates. The thermo dataset is adjusted differently since Mn(IV) is not of interest. Hope this helps, Jia Wang Aqueous Solutions LLC
  8. Hello Christine, I am sorry to hear that didn't work. We looked into this further and it looks like the issue is with this Anaconda Python distribution. Here is a discussion forum regarding dll paths not working properly in Anaconda: https://github.com/ContinuumIO/anaconda-issues/issues/12475. Unfortunately, the fix mentioned in the discussion thread did not solve the issue in our testing. Here are a couple of suggestions: 1. Try an installation of python from python.org and use the Plug-in feature with that instead. If this works, you can contact Anaconda's support to see what is available for fixing it or if their next update comes out will a fix for it. Our testing shows the solution in my above post works with normal python. 2. Try downgrading to an earlier version of Anaconda (3.7.x or before). Best regards, Jia
  9. Hello Christine, Our technical team has looked into this a bit further and the error is likely due to the changes in newer versions of Python (3.8 and later). To have Python search for the dll properly a couple of additional lines of code are needed and I have provided it for your below. Try replacing import sys sys.path.append('c:/Program Files (x86)/Gwb/src') from GWBplugin import * with import sys sys.path.append('c:\program files\gwb\src') import os os.add_dll_directory('c:\program files\gwb') from GWBplugin import * Please let us know if this resolved the issue for you. Best, Jia
  10. Hello Mariah, I am glad to hear you enjoyed the workshop! With regards to your upgrade, newer GWB installation should replace the existing version on your machine and not install a separate version, so that doesn't sound like an issue. The option to configure sorbing surfaces is under File -> Open -> Sorbing Surfaces... in GWB 12. This option was moved to the Config tab in the later versions of the GWB. Hope this helps, Jia Wang Aqueous Solutions LLC
  11. Hello Carol, I am glad to hear that you have the merged dataset working now! Hope the rest of your project goes well. Best, Jia
  12. Hello Christine, Thanks for the additional information. I think a good place to start is to check whether your GWB installation is 64-bit or 32-bit. Since you are using a 64-bit version of Python, you would want to do the same for GWB. To check, launch any GWB app and go to "Help" -> About App and a pop up should present the information needed. If you have the 32-bit version installed, you should be able to rerun the GWB installer and select the 64-bit version in the first step. When you have the 64-bit version installed, try appending the 'src' folder of the GWB installation to sys.path in Python again. Double check the location of your src folder and make sure the path is correct. The path in your original post indicate that the src folder is in Program files (x86), which is where 32-bit applications automatically install in Windows. For more information and example on this, please refer to the Python subsection in the Plug-in Feature of the GWB Reference Manual. Hope this helps, Jia
  13. Hello Mingfei, Thanks for reporting this issue. The GWB is currently tested for Intel based systems and may not be compatible with ARM based systems. We are working on resolving this issue with the newer ARM based model computers. Best regards, Jia Wang Aqueous Solutions LLC
  14. Hello Mauricio, Kinetic isotope fractionation is pretty common with evaporation problems. The software won't be able to model kinetic isotope fractionation. If this is the main driver responsible for the change you are expecting, it won't be account for in an equilibrium only model. Best, Jia
  15. Hello Christine, Can you double check that the path was added correctly to your PYTHONPATH environment variables? You should be able to navigate to it from your computer's Control Panel. If the path was added correctly, it would help us troubleshoot if you can provide the version of python you're using and the platform that it was built for -32bit or 64bit. I see that you're appending the path to the x86 folder, which means that you have the 32-bit version of the GWB installed. If you are using a 32-bit version of the GWB, you should also be using a 32bit version of python as well. Best regards, Jia Wang Aqueous Solutions LLC
  16. Hello Carol, It looks like you are successful with the dataset conversion. With regards to the polynomial conversion, the PhreeqC importer in Tedit will convert the polynomial coefficients for you. There's no need to manually perform the conversion. You can always check the conversion by hand to confirm that the coefficients are correct if you like though. I took a quick glance at the input you attached and didn't spot any issues with the formatting of the dataset. I think chabazite overlaps between Cemdata and Zeolite20, so you might consider deleting or commenting out (using # in front of each line) one of the reactions as EMPA's website suggested. Just a couple more notes regarding the dataset that might be helpful. If you would like to include the reference information regarding the dataset (i.e. the text before the Solution_master_species section in your PhreeqC file) you can add that in the Headers pane in the Preamble section in the new GWB tdat file. That information will not be preserved when the dataset is converted. I would also point out that thermo_cemdata.tdat on the GWB thermo page includes the mineral type labels as well as factors for evaluating gas coefficients in the GWB for some gasses, added in after the conversion from PhreeqC. If want to add this information in your thermodynamic dataset, you can copy the new zeolite reactions JANT-ZEO-CEMDATA.tdat to thermo_cemdata.tdat or alternatively, manually edit the entries in your newly converted dataset. If you are choosing the first, you would need to delete the duplicated zeolite mineral reactions in thermo_cemdata.tdat. Hope this helps, Jia
  17. Hello Carol, PhreeqC uses a different polynomial expansion to account for Log K temperature dependence than that of GWB. The expansion is: and you can find this in PhreeqC's user manual here. GWB polynomial coefficients were converted from coefficients A1-A6 in PhreeqC's analytic expression as follows: a= log10 K(298.15 K) = A1 + A2*Tr + A3/Tr + A4*log10(Tr) + A5/Tr^2 + A6*Tr^2 b= A2 c= A6 d= A3 e= A5 f= A4/ln(10) where Tr is 298.15 Kelvins. You can refer to section 9.3 Importing PhreeqC datasets in the GWB Essentials User Guide for more details. You can plug conversion into the GWB polynomial to check that you attain the same polynomial as the PhreeqC expansion. When I open the txt file from your original post, I see: HEU(Ca)-1 Ca1.07(Al2.14Si6.86)O18(H2O)4.4 = 2.14AlO2- + 1.07Ca+2 + 6.86SiO2 + 4.4H2O -Vm 317.88 -analytical_expression 35.4187 0 -12625.9 -13.52071059 0 0 0 -log_K -40.392857 Maybe your file was altered accidentally? On the same webpage of the PhreeqC manual states: "The chemical formula for the defined phase must be the first chemical formula on the left-hand side of the equation." You can down the attached file again to see the original text. I opened the file in Notepad. Hope this helps, Jia
  18. Hello Carol, Thank you for alerting us and the community to these new databases. You can most certainly use TEdit to convert a PhreeqC dataset to GWB format. However, the text file you attached only contains mineral reactions formatted with compatibility to be read in by PhreeqC. If you open a PhreeqC dataset, you will see that there are additional sections defining elements and aqueous species that are missing in your text file to make this a complete dataset that can be used for geochemical calculations. TEdit uses this information as part of the conversion. According to EMPA's website, the zeolite20 database shares the same SOLUTION_MASTER_SPECIES and SOLUTION_SPECIES sections as the Cemdata database. An easy approach to building a valid dataset that contains the reactions from zeolite20 is to take the two sections mentioned above from Cemdata (formatted for PhreeqC) and adding it to your text file to create a valid PhreeqC dataset. You can download a PhreeqC formatted Cemdata dataset from EMPA's website. You would also need to add a line "PHASES" above your mineral reactions as it is done in PhreeqC datasets to signal the beginning of mineral and gas reactions. If you wish to include mineral reactions from the original Cemdata dataset, you can simply copy and paste them into your text file under the PHASES section too. The website notes that certain zeolites in Cemdata18 overlap with data in zeolite20, so you should avoid duplicating reactions in your dataset. When your dataset is ready, you can convert it to GWB format by dragging and dropping the text file in TEdit. You can refer to section 9.3 Importing PhreeqC datasets in the GWB Essentials User Guide for more details regarding the converter. If you have issues converting a PhreeqC dataset after you have added the sections mentioned above, please attach your file so we can take a closer look. Please note that the GWB uses the polynomial log K = a + b*(Tk-Tr) + c*(Tk^2-Tr^2)* + d*(1/Tk - 1/Tr) + e*(1/Tk^2 - 1/Tr^2) + f*ln(Tk/Tr) for temperature expansions. I believe PhreeqC uses a different polynomial for Log K temperature dependence. You can find this equation in PhreeqC's user guide. The header section of thermo_CEMDATA.tdat shows the equations used to converted from coefficients A1-A6 (from PhreeqC's polynomial) to coefficients a-f used in GWB. For more information on how GWB datasets are formatted, please refer to section 3. Thermo datasets in the GWB Reference Manual. Hope this helps, Jia Wang Aqueous Solutions LLC
  19. Hello, Be default, the output text file displays species at greater than 10^-8 Molal. To include all aqueous species concentration, including those <10^-8 Molal, you can change the setting in the Output dialog. In the React window, go to Config -> Output... -> click on the checkbox for aqueous species until it is filled in with a black square mark. Alternatively, you can also change the setting by entering the command 'print species long' in the Command tab. You will need to rerun the calculation to update the output file. For more information on output print options, please see section 6.74 print, in the GWB Command Reference. Hope this helps, Jia Wang Aqueous Solutions LLC
  20. Hello Mauricio, Thanks for attaching your file and explanation. Here are a couple of ideas/suggestions. It's important to note that the software only accounts for equilibrium fractionation effects on isotopic speciation. If your isotopes are affected by kinetic processes, then the simulation won't account for that. If the kinetic effect is large, then this will certainly affect the results. Also note that as fluid is removed from your system, the ionic strength increases, especially at the end of your simulation. The thermo.tdat dataset uses the the Bdot activity model to calculate species activity coefficients and is rather limited to systems' with low or moderate ionic strengths. The seawater evaporation example (chapter 3.2 Flow through model in the GWB Reaction Modeling User Guide) uses the HMW dataset, which utilizes the Pitzer activity model for calculating species activity coefficient and generally more accurate in a wider range of ionic strength than the Bdot. Another suggestion is to consider adding a gas buffer in your system. If you can assume your fluid is at equilibrium with the atmosphere, you may be able to use this to provide additional information that might affect the speciation calculation in your system. Often times, users may use a O2(g) fugacity or partial pressure measurement and set it in equilibrium to the fluid so that the software can use it as a constraint. You can see an example for this in section 7.2 Equilibrium models of the GWB Essentials User Guide. To maintain equilibrium over the course of a reaction path in React (or Phase2/X1t/X2t), you would need to fix the initial fugacity for the gas in the Reactants pane. Hope this helps, Jia
  21. Hello Muhammet, Thank you for attaching your input file. I wasn't able to reproduce your exact diagrams because I don't have your custom thermodynamic dataset, but here are a couple of suggestions that might help clear up some confusion. The cross section view plots variables on an XY grid for a row or column from the 2D phase diagram. I suggest that you double check the XY plots to make sure that they are plotting the row you are expecting from the phase diagram. In the XY plots, I see on the y-axis label "Xi, 0", which in this case means that you're plotting the cross section values in the bottom row of your phase diagram, where the pH is 1.004 and not 1.481. In the configuration dialog (under the tab "Step"), you can also change the Progress variable to display the "pH" instead of the "Rxn progress (y)", which might be helpful to see pH of the corresponding row you're plotting more clearly. If you would like to see more information and some examples of P2plot, refer to section 8.2 Cross-section Plot configuration in the GWB Reaction Modeling User Guide. Also note that the predominance diagram shows the species in the highest abundance. For example, if Ca++ , CaSO4, and Gypsum are present in the same node, the predominance diagram will color the node and assign subsection label according to the Ca containing species with the highest concentration. If you want to display fields where a mineral or group of minerals exist in the calculation, you can use an "Assemblage map" instead. You can also add a color mask of a variable's value range over the diagram axes, that would overlay onto either a predominance or assemblage map. If you're interested in the different the types of diagrams in P2plot, please take a look at section 8.1 2D Diagram in the GWB Reaction Modeling User Guide. It sounds like you're making progress with the software and your work. I hope this helps. Best regards, Jia Wang Aqueous Solutions LLC
  22. Hello, You're welcome. I am not sure the exact details of your file setup so it's difficult to know. One suggestion is to check the isotope data file for the species that are important in your simulation. The isotope.dat file provided with the installation is a good start but you may have to add to it fractionation factors for species that are not accounted for but expected in your simulation. If the species is missing in the database, the program assumes a fractionation factor of 0. If you are still encountering issues, please attach your input script so we can take a closer look. It would also be very helpful if you can provide more explanation of what you're trying to model and the trends you expect. Best regards, Jia Wang
  23. Hello, Thanks for attaching your input file. If you are only looking at one node, then I am not sure that you need a reactive transport modelling application as you have used here. X1t and X2t are set up to trace chemical reactions that occur over a region of space represented by a system of nodes. If this is the type of simulation that you're interested in, then you should build a reactive transport model. If you are only interested in reactions that are occurring in a single node, then you may want to consider using React. In React, you can just as easily add kinetic reactions to the flush model as you did in X1t. I also see that the specific surface area of forsterite is set to vary according to a random distribution. Since your X1t model has only one node, I am not really sure that it is very useful here. It might be more straightforward to set a constant specific surface area and vary that in different simulations. Just to note, the program does not factor grain size into the equilibrium or transport equations. For kinetic reactions, you can designate a specific surface area for the mineral of interest and that is taken into account for the kinetic dissolution/precipitation of that mineral. If you are using surface area as a proxy for grain size, that would be something that you need to consider carefully. You can find information regarding reactants under Reactant properties when you plot your results. React and X1t will both report the mass of minerals reacted, rate of reaction, and etc. You can find the pore volume displaced under the Physical parameters in the Gtplot or Xtplot. Hope this helps, Jia Wang Aqueous Solutions LLC
  24. Hello Muhammet, The issue here is that your input file for Phase2 is missing a reaction path for the y-axis. In the video posted, you can check under the "Y Axis" tab and see that there is nothing set. The Results pane also indicates that there is no reaction path set for your simulation after the run as well. The resulting output file does not enough information to plot a phase diagram in P2plot. Can you double check that you are running the correct file? The video shows your input files contain the .rea extension, which indicates that these are really meant for the React application. In certain cases, you may use a React input file as a starting point (i.e. for setting up the basis constraints) but you should also check that the reaction paths in both x and y axes are set up correctly. For more information on setting up a Phase2 input file, please see the examples in section 7 Using Phase2 in the GWB Reaction Modeling User Guide. Hope this helps, Jia Wang Aqueous Solutions LLC
  25. Hello, I think a good place for you to start is the section working with isotope fractionation in SpecE8. You would need to define the isotope system and then allow the program to calculate the composition of the solvent and dissolved species to honor the fluid's bulk composition assuming isotopic equilibrium. If you require evaporation in your simulation, then you would need to use the React application to simulate reaction path changes. For more information and examples, please take a look at section 7.7 Fractionation of stable isotopes in the GWB Essentials Guide and section 3.9 in the GWB Reaction Modeling Guide. Hope this helps, Jia Wang
  • Create New...