Jump to content

Why does my model only run for 12 days and then neither compute nor terminate?


Recommended Posts

  

Hi, I am trying to build a model that describes flowing through a basalt core with a CO2-rich acidic fluid and observing mineral alteration processes.
I would like to see the altered minerals ten years after the experiment, which is precisely the strength of numerical simulations. 
However, the reactive transport model built by X1t only ran for ten days, and then, it neither computed further nor terminated.
Would you like to help me?
 

     > # X1t script, saved Wed Nov  9 2022 by wlhen
     > data = thermo.250bars.04Nov22_1218.tdat verify
     > conductivity = conductivity-USGS.dat
     > interval start at 0 day, fluid = inlet
     > time end at 1 day
     > length = 26 cm
     > Nx = 26
     > discharge = 4.6627 cm3/cm2/hr
     > temperature = 150 C
     > scope = initial
     >    H2O          = 1 free kg
     >    Al+++        = 7.49e-13 mmolal
     >    Ba++         = .0771 mmolal
     >    Ca++         = .203 mmolal
     >    balance on Cl-
     >    pH           = 6.9514
     >    swap CO2(aq) for HCO3-
     >    CO2(aq)      = .21021 mmolal
     >    Fe++         = 1.53e-16 mmolal
     >    K+           = 3.02 mmolal
     >    Mg++         = .01 mmolal
     >    Na+          = 5.01 mmolal
     >    O2(aq)       = .001 mmolal
     >    SiO2(aq)     = .0056 mmolal
     > scope = inlet
     >    H2O          = 1 free kg
     >    Al+++        = 7.49e-13 mmolal
     >    Ba++         = .0771 mmolal
     >    Ca++         = .2 mmolal
     >    balance on Cl-
     >    pH           = 3.3
     >    swap CO2(aq) for HCO3-
     >    CO2(aq)      = 600 mmolal
     >    Fe++         = 1.95e-10 mmolal
     >    K+           = 3.02 mmolal
     >    Mg++         = .01 mmolal
     >    Na+          = 1000 mmolal
     >    O2(aq)       = .001 mmolal
     >    SiO2(aq)     = .0056 mmolal
     > scope
     > kinetic An70 51 volume% pre-exp = 2.80819e-6 act_eng = 42092 surface = 2508
     > kinetic Di80Hed20 30 volume% pre-exp = 7.76247e-8 act_eng = 40600 surface = 2508
     > kinetic Fo80 4 volume% pre-exp = 14.6 act_eng = 70400 surface = 2508
X1t  > 

eventually, I have to break the model and get the message as follows:

 

Step 1311961, Xi = 12.612     (Co = 1.000)
Step 1311962, Xi = 12.612     (Co = 1.000)
Step 1311963, Xi = 12.612     (Co = 1.000)
Step 1311964, Xi = 12.612     (Co = 1.000)
Step 1311965, Xi = 12.612     (Co = 1.000)
Step 1311966, Xi = 12.612     (Co = 1.000)
Step 1311967, Xi = 12.612     (Co = 1.000)
Step 1311968, Xi = 12.612     (Co = 1.000)
Step 1311969, Xi = 12.612     (Co = 1.000)
Step 1311970, Xi = 12.612     (Co = 1.000)
Step 1311971, Xi = 12.612     (Co = 1.000)
Step 1311972, Xi = 12.612     (Co = 1.000)
Step 1311973, Xi = 12.612     (Co = 1.000)
Step 1311974, Xi = 12.612     (Co = 1.000)
Step 1311975, Xi = 12.612     (Co = 1.000)
Step 1311976, Xi = 12.612     (Co = 1.000)
Step 1311977, Xi = 12.612     (Co = 1.000)
Step 1311978, Xi = 12.612     (Co = 1.000)
Step 1311979, Xi = 12.612     (Co = 1.000)
Step 1311980, Xi = 12.612     (Co = 1.000)
Step 1311981, Xi = 12.612     (Co = 1.000)
Step 1311982, Xi = 12.612     (Co = 1.000)
Step 1311983, Xi = 12.612     (Co = 1.000)
 
Simulation required 12085.6 seconds of computing time (1480.4 seconds clock time):
 8492.4 seconds solving chemical reaction equations,
 2406.5 seconds solving transport equations,
 1186.7 seconds performing other tasks.
 
Simulation ran using 16 threads on 16 computing cores:
 
              CPU time   Clock time  Utilization
 Parallel    11437.7 s      820.7 s     1393.7 %
 Serial        648.0 s      659.8 s       98.2 %
 Total       12085.6 s     1480.4 s      816.4 %

 

Link to comment
Share on other sites

Hello Liheng,

Thank you for attaching your thermo dataset. I tried running your input file and have a couple of suggestions for you to check.

I noticed that for your kinetic minerals, there's a large rate difference at which the minerals dissolve. Your Fo80 is dissolved almost entirely very early on in the simulation compared to the two other kinetic minerals. You might want to double check that the kinetic minerals are correct for your rate law. In particular, the pre-exponential factor for Fo80 is several orders of magnitude larger than the other minerals. Does your rate law include any promoting or inhibiting species? You can see the rate and rate constant calculated during the simulation under the "Reactant parameters" parameters. Are these rates and rate constants what you expect? You can use a "go initial" run (under the "Go" on the menu bar) to get X1t to calculate the initial equilibrium state before any reaction starts.

In general minerals that react very quickly within your system can be swapped in your Basis pane and treated as equilibrium reactions. Minerals that react slowly but measurable over the course of the time scale of your system would work well being constrained kinetically. Determining the type of reaction would be helpful in picking the right mechanism to represent them in your system.

I also noticed that you have set your O2(aq) component as a bulk constraint, which I don't think is causing the short run time issue, but you might want to double check whether this should be set as a free constraint. Please see more regarding free vs. bulk constraints in section 7.2 Equilibrium models in the GWB Essentials User Guide.

Another note, I also recommend that you take a look at all the minerals that are precipitating within your column. The software considers all minerals provided in the database during calculation. If there are minerals that are forming and you don't expect them to form, you can suppress them and that removes those minerals from consideration. To do so, go to the Config menu and click on Suppress... Please find more information regarding the suppress command in section 8.108 in the GWB Command Reference.

Hope this helps,
Jia Wang
Aqueous Solutions

 

Link to comment
Share on other sites

5 hours ago, Jia Wang said:

Hello Liheng,

Thank you for attaching your thermo dataset. I tried running your input file and have a couple of suggestions for you to check.

I noticed that for your kinetic minerals, there's a large rate difference at which the minerals dissolve. Your Fo80 is dissolved almost entirely very early on in the simulation compared to the two other kinetic minerals. You might want to double check that the kinetic minerals are correct for your rate law. In particular, the pre-exponential factor for Fo80 is several orders of magnitude larger than the other minerals. Does your rate law include any promoting or inhibiting species? You can see the rate and rate constant calculated during the simulation under the "Reactant parameters" parameters. Are these rates and rate constants what you expect? You can use a "go initial" run (under the "Go" on the menu bar) to get X1t to calculate the initial equilibrium state before any reaction starts.

In general minerals that react very quickly within your system can be swapped in your Basis pane and treated as equilibrium reactions. Minerals that react slowly but measurable over the course of the time scale of your system would work well being constrained kinetically. Determining the type of reaction would be helpful in picking the right mechanism to represent them in your system.

I also noticed that you have set your O2(aq) component as a bulk constraint, which I don't think is causing the short run time issue, but you might want to double check whether this should be set as a free constraint. Please see more regarding free vs. bulk constraints in section 7.2 Equilibrium models in the GWB Essentials User Guide.

Another note, I also recommend that you take a look at all the minerals that are precipitating within your column. The software considers all minerals provided in the database during calculation. If there are minerals that are forming and you don't expect them to form, you can suppress them and that removes those minerals from consideration. To do so, go to the Config menu and click on Suppress... Please find more information regarding the suppress command in section 8.108 in the GWB Command Reference.

Hope this helps,
Jia Wang
Aqueous Solutions

 

Thanks a lot for your relply. I am trying to figure out the reason as your suggestion.

Thanks

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...