Jump to content
Geochemist's Workbench Support Forum


  • Content Count

  • Joined

  • Last visited

Everything posted by superflyben

  1. Shanna, Not sure I can be much help with how DBC interacts with EQ3/6 as I've only ever dealt with the GWB side of things, but based on my reading of the command options (accessed on mac with ./DBCreate -h), it would seem that you can start with data0 and go straight to a GWB formatted database. I think you make an excellent point that there should be more sharing in general of database files to avoid duplicating work, so I've gone ahead and posted the database I work with here, but I suspect it will be of limited utility b/c mine is targeted at working in deep-sea hydrothermal systems and doesn't include much in the way of organics. For that reason, it's probably worth figuring out how to generate a database as there will always be the need for additional modifications. So, yes, I would suggest contacting the authors to ask for code/executables as they seem to be willing to help. Regarding Geopig, the geopig.asu.edu link appears to be broken and a cursory Google Search has not turned up a new location. Do you know if these resources are still available? - Ben Larson thermo.500.dat
  2. I also ran into some problems with the source code I received from the authors (though I should mention they were pretty responsive and did seem to want to get me up and running). I had to make a couple of specific changes to make the code work for me, and then I was able to generate new databases, but as Oleh points out, the formatting differences between the slop07.dat and the originating database packaged with DBCreate (thermo.com.dat) prevent using the slop07.dat thermodynamic file, so I was still restricted to using speq06.dat. In any case, here is what worked for me: Source Code Changes: I had to make 2 changes to the maker.f source file (Note that I started with a newer version of the code than what accompanied the article online back in 2012. Can't remember if I got it off UMN's website or if the authors sent it directly): 1. On line 24 (approximate line number depending on version of source code: PARAMETER (MAXSPX=30) --> Had to change 10 to 30 As I did this a while ago, I don't remember the exact reason, but I was hitting some kind of limit 2. On line 25: PARAMETER (idafile=77, irxnspx=11,ireacf=41,iNotFound=27) --> Added the unit number assignment for idafile (should be between 1-99) which the original code does not have. This was required for me b/c the openf command on line 47 was not otherwise finding the direct access file (dpeq06.dat in my case), and though my memory is fuzzy on this point, this error may have resulted in an output database that was the same as the input, similar to what Oleh describes, though it seems like an error should be thrown in this case. Once I made these changes and recompiled the code, I got results for the new PT conditions contained in my con file. Modifications to included thermodynamic file: speq06.dat Regarding the use of slop07.dat, One other suggestion I would make is that instead of trying to make slop07.dat work, you might consider adding what you need to the sequantial access database that comes with DBCreate (speq06.dat), then using cprons92 to regenerate the direct access file from this (e.g., dpeq06.dat), then re-running DBCreate to create your GWB-ready database. This way, you only have to make sure the new stuff has the right format, rather than trying to reformat an entirely different sequential access database. I did this with some UO2++ species, and was then able to load the new database into GWB and model these species.
  3. Hello, I'm attempting to use a custom rate law for a redox reaction but first trying to convince myself I understand the units expected by GWB in the value I return at the end of the custom rate law script (which is included as part of the GWB script using the requisite curly braces). The full script is attached. I'm looking at a (made up) reaction that is 2nd order in one reactant and 1st order in another reactant. I'm using the pre-exp and act_en variables to calculate the constant as a function of temperature (rather than setting the rate constant directly). I use the same equation as the built in rate law for redox reactions, the goal being to reproduce the built-in rate law to make sure I understand what units the returned value need to have in potentially more complicated future custom rate laws. Assuming my pre-exp factor is entered with the correct units, (mol/kg)^-2 s^-1, for the reaction I describe (in which I use concentrations for the promoting species), then my understanding is the returned rate should be in mol/kg/s, but the value I print out within the script does not match the value in the output file for a given Step #. I also tried multiplying the value by Wmass and comparing to dndt (also printed out within the custom script). Again, no match. I even tried setting theta to 0 and comparing the calculated value to dndt0 thinking perhaps it was a matter of weighting, but by the end of a step, there is still no match. The differences are not huge, so maybe I'm unnecessarily concerned, but it's making me wonder whether I'm giving GWB the quantity it is expecting. So, my questions are: 1. What units should be returned for a rate at the end of a custom rate law for a redox reaction if not mol/kg/s? 2. How is this value used by React, that is, does it use the returned rate to integrate over the time step to then calculate the change in concentration of a kinetic reactant over that interval? 3. If I'm understanding correctly, why can't I get the calculated rate to match either the rate shown in the output file or the rate carried by React's memory (dndt) after multiplying by Wmass? 4. If I'm not understanding, what am I missing? basic_no_comment.rea
  • Create New...