Jump to content
Geochemist's Workbench Support Forum

Recommended Posts

Posted

Hello, I am trying to run a X2t model for carbonated brine injection into a reservoir water. It says "residuals too large" when I started to run it. I tried the initial mineral/fluid in Spec8 and there is almost no charge imbalance. I cannot figure out why Cl- residual is too large. Can you help check it? Thanks!

carbonated water injection.x2t

Posted

Hello,

It seems like your injection fluid has a very high Cl- concentration. Did you also check the charge imbalance on this fluid in SpecE8/React? If I change your model to a zero injection rate for the well, it seems to run to completion just fine. I would suggest starting in React with your fluids and see what might be the issue there. If a fluid has an excess of anions, you should select a cation for charge balancing.

Another suggestion is that for certain basis species, it would help with convergence if you swap in a more abundant species of that form give the conditions (such as pH) of your system.

Another thing to double check is your concentration and units. I noticed that you have set the same concentration (1e-14 mg/l) for certain species. If you have no measurement for certain components, you would want to set the value to an insignificant concentration since the program can't numerically solve equations with zero values but not necessarily too low.

Lastly, you might also be interested in looking into using a virial model for working with brine solutions. For more information regarding datasets available with the GWB installation, please see the Thermo Data page.

Best regards,
Jia Wang
Aqueous Solutions LLC

Posted

I tried to make well injection rate in the domain as zero (no injection), but it still did work, saying residuals too large, 681-th iteration. If I change the charge balance to Na+, then a lot more species will have largest residuals instead of Cl-. 

 

I checked the initial reservoir fluid and the injection fluid in React. There are some precipitates and the water chemistry changed a little, which is what I expected. I want the injected concentrated water to mix with the reservoir water and see what will happen as a function of time and location. However, it did not work in the X2t model from the very first step. It would be much appreciated if you can help check it again. 

 

Also what does "free" mean when I set the H2O and mineral volumes%? 

carbonated water injection - 230317.x2t React-injection fluid.rea React-reservoir fluid.rea

  • 2 weeks later...
Posted

Hi Jia,

It's been a while and I just want to follow up with you to see if you have any suggestions to this residual problem. Thank you very much for your hep!

Wei

Posted

Hi Jia,

I tried to "pick up" the result from React to get a balanced initial status. However, it can only pick up the fluid chemistry without minerals although it asked me if I want to include minerals and I clicked yes. I wonder how to pick up the exact results file as the input. Can you help with that?

Thanks,
Wei

Posted

Hello Wei,

When you ran the React input files, were you able to converge on an equilibrium state for your fluids? When I try running React-reservoir, it immediately fails upon trying to calculate the equilibrium state. I would suggest that you double check your basis and evaluate if it is correct. Minerals swapped are used to set the concentration of the component. This is typically done when you can assume that the mineral is in equilibrium with your fluid. If minerals are present in your system but not in equilibrium with your initial fluid, you can add the mineral as a kinetic reaction. I noticed that you have set Quartz in equilibrium with your initial fluid (basis) and set a kinetic rate law for the reaction. Are siderite and kaolinite in equilibrium with the fluid initially? Or should they be set as kinetic reactions?
 
Another consideration, though this is not related to your initial fluid convergence issue, is to look at whether a different thermo dataset would serve your purpose better. Your brine fluid is much higher in concentration than your initial fluid. Thermo.tdat is the default dataset and uses the bdot activity model. The bdot model typically loses accuracy as the fluid ionic increases pass ~ 0.3 molal. I would suggest you take a look at the virial models available (SIT or hmw) and consider them. You can view a summary of thermo datasets on the thermo page, where you can download a fresh version of all datasets installed with the software or you can find them in your Gtdata folder.
 
With regards to pickup, are you using pickup-> system -> entire? This should allow you to pick up all fluids and minerals (in equilibrium with your final system) as your basis. If you are using the command line, you can enter the command "pickup entire". Please see the GWB Command Reference for more details regarding the pickup command.
 
Hope this helps,
Jia
Posted

Hi Jia,

Thanks for your helpful suggestions. I added all the kinetics of minerals involved and also changed the temperature to the same for injection and reservoir. It works now for fewer nodes (11x11). Once I increased the nodes number, it would become non-convergent in later steps depending on the node size. I wonder if I should change any Config parameters/setup in order to increase the nodes. Attached latest script. 11x11 works okay for me. But it would be nice to increase it to 15x15 to get better resolution. 

Regarding the thermo dataset, I downloaded SIT database, but cannot open it with GWB 10.0. It says it's in a wrong format. I wonder if there is an older version. I also have hmw database. But it does not include some species like Fe2+ and Ba2+ in the base. I wonder if it is okay to combine the hmw database with the default database. Would it cause trouble? If not, how do I combine the two database to make it suitable for high salinity water?

Thank you very much!

Wei 

230330 carbonated water injection.x2t

Posted

Hello Wei,

Taking a look at your model, I am noticing that your injection well rapidly increases in mineral volume and eventually results in a very low porosity. I turned on the explain step feature and it seems like the simulation step size was limited by the transport criteria to maintain stability. As a result of the low porosity, I think your model is having a difficult time converging, especially when you increase the number of nodal blocks and decrease the bulk volume of each block. You can set the time interval to right before your model stops converging and check the mineral volume and porosity at your injection well.

The SIT activity model is only available with a GWB Subscription or with the GWB Community Edition. In general, I do not recommend taking data from one dataset and combining it with the other dataset type. The default database uses the bdot activity model, which is conceptually very different from how the hmw activity model handles electrolyte activities. Simply taking reactions from one dataset and adding it to another with a different model type would result in erroneous results.

You might want to if others have published any compatible datasets for your use. You might want to evaluate how your model results look using the default database and see if it is acceptable for your results.

Hope this helps,
Jia

Posted

Hello Wei,

You're welcome. A couple of additional thoughts. You can go one step further with your React simulations to help set up your bigger more complex model. If you run a reaction model (e.g. flush model), then you can quickly identify minerals that precipitate but are not expected to form or observe. In particular, you might've noticed carbonate minerals (e.g. aragonite, dolomite, witherite) that form in your reactive transport model. If you don't expect some of these minerals to form in your system, you can suppress them from consideration in the simulation.

Additionally, your X2t input file sets the injection fluid to 74C and not 25C, which is what you have set in React_injection and your previous X2t input file. Perhaps that is an error?

Best,
Jia

Posted

Thanks. That is a good idea to check the minerals.

For the temperature, if I set it at 25C for injection fluid, the calculation will have convergence issue pretty early (about initial few steps Xi =0.002...). Setting the temperature the same is also reasonable and I tried that it worked. Although I still did not figure out why temperature has such an impact on convergence.

Wei

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...