0

Heat generation in EOS3

Hello,

I am a relatively new TOUGH2 user. I have developed a model for heat and fluid flow in a basin with a lake. I am attempting to have atmospheric boundary conditions are the top of the model everywhere except where the lake is. This boundary consists of an atmospheric boundary layer and a layer just beneath from which I inject water to simulate infiltration from precipitation (more generally precipitation-evaporation). I want to be able to generate a thermal gradient with depth based on a defined background heat flow. I have specified water generation along the top surface and the model runs, but my heat generation line in the block GENER causes the simulation to fail. Here are a few lines from my block GENER:

GENER----1----*----2----*----3----*----4----*----5----*----6----*----7----*----8

A5N59INJ 1                         COM1   8.68E-06  1.24E+03
A6X88HOT 1                         HEAT   9.93E-01

Note, I have 1830 sources and I am only showing 2, but the rest are similar and only differ based on the size of the cell (triangular mesh generated with GMSH and converted to TOUGH2 format using TOUGHIO). I have attached a snippet of more GENER lines. The format for heat generation is based on examples from the TOUGH2 user guide.

The error message I get in the command prompt is:      

"0              0.0000 |forrtl: severe (408): fort: (2): Subscript #2 of the array CUMGENK has value 3 which is greater than the upper bound of 2"

I have also attached my .out and .msg files.

My primary questions are:

1. What is the correct syntax for heat production from the GENER block for a non-isothermal multiphase EOS3 model? 

2. I would also like to confirm whether I need to specify the specific enthalpy for the water injection near the atmospheric boundary.

I can send the input file over email with more explanations if that is needed.

I would appreciate any thoughts on this.

Thanks in advance!

Zach

4 replies

null
    • kenny
    • 1 yr ago
    • Reported - view

    It seems not enough information to figure out your problem.  I would suggest you play around with the source/sinks ( try no source/sinks, only water, only heat, less source/sink terms). What is the input meaning for  the heat source? The energy bringing into the system by water has already included in the source term of water. If you have a fixed temperature at the top, you may use the first type boundary for it ( large volume), and apply the infiltration to the second layer.

    (1) Heat production has the same syntax as heat injection, but with a negative value.

    (2) Yes, you need provide the enthalpy for the water for non-isothermal model.

     

    By the way, I noticed you have turned on the diffusion. Are you sure you want to simulate the diffusive processes for a site-scale model?

    • Zachary_Smith
    • 1 yr ago
    • Reported - view

    Hi Kenny,

     

    Thanks for your response. I made a few mistakes in my initial message.  First, I meant to say heat injection, not production, so I believe it should be positive. I am attached a screenshot of the mesh and my latest input file. I am attempting to inject heat along the base of the profile to produce a temperature gradient consistent with continental crust temperature gradients. 

     

    I ran the model without heat injection and the model runs fine. I also ran the model where I changed the sign on the heat and the model runs (for a little bit and then stops because it cools the model below a reasonable temperature). However, when the heat is positive I cannot get the model to run. 

     

    Regarding diffusion, I am hoping to compare diffusive and advective heat transfer in the system. I know there are some significant unknowns in my study area, but this is just a test.

     

    Would you mind taking a look at my input file to see if I need to change some settings to allow for heat injection?

     

    Thank you for your time!

     

    Best,

    Zach

    • kenny
    • 1 yr ago
    • Reported - view

    I tried to run your model on my computer. It seems work ok. However, you need:

    (1) turn off the diffusion, because you did not input diffusion coefficients.

    (2) The enthalpy you provided for the infiltration source/sink term is too small (injecting very cold water). This offsets the heat injection and causes the temperature drop in the reservoir.    If you specify constant temperature, not heat source,  at the bottom and top, it will be more easy  to get the the thermal gradient.   

    • Zachary_Smith
    • 1 yr ago
    • Reported - view

    Hi Kenny,

     

    Thanks for testing out the input file and letting me know that it mostly works. I will turn diffusion off.

     

    I also started emailing with Yingqi Zhang who helped teach a TOUGH workshop I took last year. Yingqi suggested the issue I am having is with a dimensionality bug in my installation of iTOUGH2 on a Windows machine, so I am not able to run models with heat injection. 

     

    Thanks for letting me know about the enthalpy. Can you clarify how to calculate the appropriate enthalpy? I have set specific temperatures that correspond to measured surface temperatures in the atmospheric boundary at the top. I would like the temperature of the injection to be constant and associated with the specific surface temperature. I saw in this post (https://tough.forumbee.com/t/k97wgd/assigning-the-right-enthalpy) that this can be done by assigning an extra cell with a high CP. Is this extra cell the one I am injecting from (right below the large volume atmospheric boundary cells)?

     

    In a previous model I set the top and bottom boundaries to a specific temperature in order to produce the desired temperature gradient and it worked. However, I'm curious about the ability to test different background heat flows in the model and thought that by changing the boundary condition to a Neumman boundary condition this can be implemented more effectively.

     

    Thanks again for your time!

     

    Best,

    Zach

Content aside

  • 1 yr agoLast active
  • 4Replies
  • 83Views
  • 2 Following