How to assign a permeability for each grid cell?

Hi. I am trying to convert an Eclipse simulation model to TOUGH2. In the Eclipse model each grid cell has a (diagonal) permeability tensor, with a scalar for permx, permy, and permz. Now I want to assign these values to each cell in the TOUGH2 model. How can this be done?

(From the manual, the ROCKS data block can only contain up to 27 domains, so this does not seem to help much if the grid consists of thousands of grid cells).

5replies Oldest first
  • Oldest first
  • Newest first
  • Active threads
  • Popular
  • Hakon,

    See variable PMX in block ELEME. It is a permeability modifier to be assigned to each grid block.


  • Hi Stefan. Yes, but this is a scalar value and hence it will be restricted to 27 different types of tensors (since it is to be multiplied by the permeability in the domains given in block ROCKS) also it will affect the capillary pressure (which is not desired in this application)). For example if the permeability in domain 1 is diag(1,10,100) all permeability tensors in domain1 are restricted to the same ratio of kx/ky and kz/kx for example (since the permeability can only be modified by a scalar multiplication).

  • Hakon,

    I don't know the details of your application (it sure seems challenging). Here are a few hints (assuming you have the source code):


    (1) Simply globally replace "(27)" by "(500)" and "(3,27)" by "(3,500"), assuming you want 500 rock types.

    (2) Simply remove the Leverett scaling in subroutine MULTI (file t2fm.f), i.e., comment out or delete the following line:

      107    IF(PM(N).NE.0.) PAR(NLM2P+6)=PAR(NLM2P+6)/SQRT(PM(N))


    (3) Redimension "PM(MNEL)" to "PM(3,MNEL)" in COMMON BLOCK E7, then read in three instead of only one permeability modifier in INPUT and RFILE, and assign it in t2fm.f according the to value of ISOT (there are only a handful of uses of PM() throughout the code). (I presume your permeability tensor and heterogeneity data are accurate enough to warrant such a treatment, and that your sampling algorithm accounts for correlated sampling to maintain some anisotropy.)


    Hope this helps,



  • Hi Hakon,

    Did you manage to convert the Eclipse model to Tough2?


    • JM
    • fuchsia_flower
    • 6 yrs ago
    • Reported - view

    Hakon, I am having running into the same limitation, that there is only a scalar multiplier option. I'm wondering what your eventual solution was?

Like Follow
  • 6 yrs agoLast active
  • 5Replies
  • 1051Views
  • 5 Following