Heterogeneity:

Within the oil industry, a mathematical or measurable device that’s utilized to demonstrate or portray the spatial dissemination of these properties may be called a heterogeneity work. This include might make it less demanding for geoscientists and petroleum engineers to comprehend and degree the varieties in liquid and shake characteristics all through the store. For successful store administration and oil recuperation methods, an understanding of heterogeneity is basic.

Here we measure the degree of heterogeneity in permeability using:

A. Dykastra-Parson Coefficient.
B. Lorentz Coefficient.

A- Dykastra-Parson Coefficient:

The Dykstra-Parsons method involves plotting the frequency distribution of the permeability on a log-normal probability graph paper. This is done by arranging the permeability values in descending order and then calculating for each permeability, the percent of the samples with permeability greater than that value. to avoid values of zero or 100%, the percent greater than or equal to value is normalized by n+1, where n it is the number of samples.

Let’s Import data

data=read.csv("karpur.csv")
head(data)

Now we will sorting permeability values in a descending order, Then finding samples >= k portions

data = data[order(data$k.core, decreasing=TRUE), ]
k = data$k.core

sample = c(1: length(k))
k_percent = (sample * 100 / length(k))

Now let’s plot the output:

xlab = "Portion of Total Samples Having Larger or Equal K"
ylab = "Permeability k (md)"
plot(k_percent, k, log =  'y', xlab = xlab, ylab = ylab, pch = 10, cex = 0.5, col = "#16423C")

OK, Let’s get linear model is fitted to the data:

log.k = log(k)
model = lm(log_k ~ k_percent)
plot(k_percent, log_k, xlab = xlab , ylab = ylab, pch = 10, cex = 0.5, col = "#16423C")
abline(model, col = "red", lwd = 2)

Result we can calculated the heterogeneity index (HI) by:
V=(k50−k84.1)/k50

N_data = data.frame(k_percent = c(50, 84.1))
predict_values    = predict(model, N_data)
HI = (predict_values[1] - predict_values[2]) / predict_values[1]
HI
        1 
0.2035464 

HI = 0.204 , which refers to slightly heterogeneous class of permeability distribution.

B- Lorentz Coefficient:

A measurable instrument regularly utilized in financial matters to characterize the dissemination of riches or wage is the Lorenz Coefficient. It is outlined to depict the dissemination of a specific trait (such as porosity or peremability) inside the store within the setting of supply heterogeneity
* The Lorenz coefficient of permeability variation is obtained by plotting a graph of cumulative kh versus cumulative phi*h, sometimes called a flow capacity plot.

Use same data

data=read.csv("karpur.csv")

Calculating thickness values for each layer from their tops.

#thickness calculation
thickness = c(0.5)
for (i in 2:819) {
  h = data$depth[i] - data$depth[i-1]
  thickness = append(thickness, h)
}

data = data[order(data$k.core, decreasing = TRUE), ]

Now, calculate the flow capacity (KH) and storage capacity (PhiH) which is easily the multiplication between permeability and porosity with corresponding thickness.
Then calculate the cumulative sum of each one.

KH = thickness * data$k.core
PhiH = thickness * data$phi.core
cum_sum_KH = cumsum(KH)
CUM_SUM_PhiH= cumsum(PhiH)

Finally, We need to calculated the: ∑cum.k.core/tota & ∑cum.phi.core/tota then plot:

tot_vol = (CUM_SUM_PhiH/100) / max(CUM_SUM_PhiH/100) #to convert phi between (0,1)
tot_flow = cum_sum_KH / max(cum_sum_KH)

plot(tot_vol, tot_flow, pch = 10, cex = 0.2, col = 'blue', text(0.4, 0.8, "D"))
text(0,0, "A", pos = 2)
text(1,1, "B", pos = 1)
text(1,0, "C", pos = 2)
abline(0,1, col = 'red', lwd = 2)

Need to estimation of the area under the curve (ADBCA)
* require (DescTools)

require("DescTools")

Now we can estimation:

library(DescTools)
area = AUC(tot_vol, tot_flow, method = "trapezoid")

By The formula of Lorenz Coefficient:

 Lorenz Cofficient = (area ADBA) / (area ABCA)
Lcoff = (area - 0.5) / 0.5
Lcoff
[1] 0.4524741
  •  In Lorenz method if the value is closer to zero, it considers more heterogeneous, so the current value 0.4524741 considers as heterogeneous reservoir.
LS0tDQp0aXRsZTogIkhXIDI6TWVhc3VyZSBUaGUgRGVncmVlIE9mIEhldGVyb2dlbmVpdHkgSW4gUGVybWVhYmlsaXR5Ig0KYXV0aG9yOiAiQWhtZWQgS2htbWVzIEtoaXNhZiINCmRhdGU6ICJPY3RvYmVyIDE5LDIwMjQiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQojIEhldGVyb2dlbmVpdHk6DQoNCldpdGhpbiB0aGUgb2lsIGluZHVzdHJ5LCBhIG1hdGhlbWF0aWNhbCBvciBtZWFzdXJhYmxlIGRldmljZSB0aGF0J3MgdXRpbGl6ZWQgdG8gZGVtb25zdHJhdGUgb3IgcG9ydHJheSB0aGUgc3BhdGlhbCBkaXNzZW1pbmF0aW9uIG9mIHRoZXNlIHByb3BlcnRpZXMgbWF5IGJlIGNhbGxlZCBhICoqaGV0ZXJvZ2VuZWl0eSoqIHdvcmsuIFRoaXMgaW5jbHVkZSBtaWdodCBtYWtlIGl0IGxlc3MgZGVtYW5kaW5nIGZvciBnZW9zY2llbnRpc3RzIGFuZCBwZXRyb2xldW0gZW5naW5lZXJzIHRvIGNvbXByZWhlbmQgYW5kIGRlZ3JlZSB0aGUgdmFyaWV0aWVzIGluIGxpcXVpZCBhbmQgc2hha2UgY2hhcmFjdGVyaXN0aWNzIGFsbCB0aHJvdWdoIHRoZSBzdG9yZS4gRm9yIHN1Y2Nlc3NmdWwgc3RvcmUgYWRtaW5pc3RyYXRpb24gYW5kIG9pbCByZWN1cGVyYXRpb24gbWV0aG9kcywgYW4gdW5kZXJzdGFuZGluZyBvZiBoZXRlcm9nZW5laXR5IGlzIGJhc2ljLg0KDQojIyMgKipIZXJlIHdlIG1lYXN1cmUgdGhlIGRlZ3JlZSBvZiBoZXRlcm9nZW5laXR5IGluIHBlcm1lYWJpbGl0eSB1c2luZzoqKg0KDQoqKkEuKiogRHlrYXN0cmEtUGFyc29uIENvZWZmaWNpZW50LlwNCioqQi4qKiBMb3JlbnR6IENvZWZmaWNpZW50Lg0KDQojIyMgQS0gRHlrYXN0cmEtUGFyc29uIENvZWZmaWNpZW50Og0KDQo+IFRoZSBEeWtzdHJhLVBhcnNvbnMgbWV0aG9kIGludm9sdmVzIHBsb3R0aW5nIHRoZSBmcmVxdWVuY3kgZGlzdHJpYnV0aW9uIG9mIHRoZSBwZXJtZWFiaWxpdHkgb24gYSBsb2ctbm9ybWFsIHByb2JhYmlsaXR5IGdyYXBoIHBhcGVyLiBUaGlzIGlzIGRvbmUgYnkgYXJyYW5naW5nIHRoZSBwZXJtZWFiaWxpdHkgdmFsdWVzIGluIGRlc2NlbmRpbmcgb3JkZXIgYW5kIHRoZW4gY2FsY3VsYXRpbmcgZm9yIGVhY2ggcGVybWVhYmlsaXR5LCB0aGUgcGVyY2VudCBvZiB0aGUgc2FtcGxlcyB3aXRoIHBlcm1lYWJpbGl0eSBncmVhdGVyIHRoYW4gdGhhdCB2YWx1ZS4gdG8gYXZvaWQgdmFsdWVzIG9mIHplcm8gb3IgMTAwJSwgdGhlIHBlcmNlbnQgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIHZhbHVlIGlzIG5vcm1hbGl6ZWQgYnkgbisxLCB3aGVyZSBuIGl0IGlzIHRoZSBudW1iZXIgb2Ygc2FtcGxlcy4NCg0KTGV0J3MgKipJbXBvcnQqKiBkYXRhDQoNCmBgYHtyfQ0KZGF0YT1yZWFkLmNzdigia2FycHVyLmNzdiIpDQpoZWFkKGRhdGEpDQpgYGANCg0KTm93IHdlIHdpbGwgc29ydGluZyBwZXJtZWFiaWxpdHkgdmFsdWVzIGluIGEgZGVzY2VuZGluZyBvcmRlciwgKipUaGVuKiogZmluZGluZyBzYW1wbGVzIFw+PSBrIHBvcnRpb25zDQoNCmBgYHtyfQ0KZGF0YSA9IGRhdGFbb3JkZXIoZGF0YSRrLmNvcmUsIGRlY3JlYXNpbmc9VFJVRSksIF0NCmsgPSBkYXRhJGsuY29yZQ0KDQpzYW1wbGUgPSBjKDE6IGxlbmd0aChrKSkNCmtfcGVyY2VudCA9IChzYW1wbGUgKiAxMDAgLyBsZW5ndGgoaykpDQpgYGANCg0KTm93IGxldCdzICoqcGxvdCoqIHRoZSBvdXRwdXQ6DQoNCmBgYHtyIGZpZy5oZWlnaHQ9NX0NCnhsYWIgPSAiUG9ydGlvbiBvZiBUb3RhbCBTYW1wbGVzIEhhdmluZyBMYXJnZXIgb3IgRXF1YWwgSyINCnlsYWIgPSAiUGVybWVhYmlsaXR5IGsgKG1kKSINCnBsb3Qoa19wZXJjZW50LCBrLCBsb2cgPSAgJ3knLCB4bGFiID0geGxhYiwgeWxhYiA9IHlsYWIsIHBjaCA9IDEwLCBjZXggPSAwLjUsIGNvbCA9ICIjMTY0MjNDIikNCmBgYA0KDQpPSywgTGV0J3MgKipnZXQgbGluZWFyIG1vZGVsKiogaXMgZml0dGVkIHRvIHRoZSBkYXRhOg0KDQpgYGB7ciBmaWcuaGVpZ2h0PTV9DQpsb2cuayA9IGxvZyhrKQ0KbW9kZWwgPSBsbShsb2dfayB+IGtfcGVyY2VudCkNCnBsb3Qoa19wZXJjZW50LCBsb2dfaywgeGxhYiA9IHhsYWIgLCB5bGFiID0geWxhYiwgcGNoID0gMTAsIGNleCA9IDAuNSwgY29sID0gIiMxNjQyM0MiKQ0KYWJsaW5lKG1vZGVsLCBjb2wgPSAicmVkIiwgbHdkID0gMikNCmBgYA0KDQpSZXN1bHQgd2UgY2FuIGNhbGN1bGF0ZWQgdGhlIGhldGVyb2dlbmVpdHkgaW5kZXggKGBISWApIGJ5OlwNCioqKlY9KGs1MOKIkms4NC4xKS9rNTAqKioNCg0KYGBge3J9DQpOX2RhdGEgPSBkYXRhLmZyYW1lKGtfcGVyY2VudCA9IGMoNTAsIDg0LjEpKQ0KcHJlZGljdF92YWx1ZXMgICAgPSBwcmVkaWN0KG1vZGVsLCBOX2RhdGEpDQpISSA9IChwcmVkaWN0X3ZhbHVlc1sxXSAtIHByZWRpY3RfdmFsdWVzWzJdKSAvIHByZWRpY3RfdmFsdWVzWzFdDQpISQ0KYGBgDQoNCmBISSA9IDAuMjA0YCAsIHdoaWNoIHJlZmVycyB0byBzbGlnaHRseSBoZXRlcm9nZW5lb3VzIGNsYXNzIG9mIHBlcm1lYWJpbGl0eSBkaXN0cmlidXRpb24uDQoNCiMjIyBCLSBMb3JlbnR6IENvZWZmaWNpZW50Og0KDQo+IEEgbWVhc3VyYWJsZSBpbnN0cnVtZW50IHJlZ3VsYXJseSB1dGlsaXplZCBpbiBmaW5hbmNpYWwgbWF0dGVycyB0byBjaGFyYWN0ZXJpemUgdGhlIGRpc3NlbWluYXRpb24gb2YgcmljaGVzIG9yIHdhZ2UgaXMgdGhlIExvcmVueiBDb2VmZmljaWVudC4gSXQgaXMgb3V0bGluZWQgdG8gZGVwaWN0IHRoZSBkaXNzZW1pbmF0aW9uIG9mIGEgc3BlY2lmaWMgdHJhaXQgKHN1Y2ggYXMgcG9yb3NpdHkgb3IgcGVyZW1hYmlsaXR5KSBpbnNpZGUgdGhlIHN0b3JlIHdpdGhpbiB0aGUgc2V0dGluZyBvZiBzdXBwbHkgKipoZXRlcm9nZW5laXR5KiouwqBcDQo+IFwqIFRoZSBMb3JlbnogY29lZmZpY2llbnQgb2YgcGVybWVhYmlsaXR5IHZhcmlhdGlvbiBpcyBvYnRhaW5lZCBieSBwbG90dGluZyBhIGdyYXBoIG9mIGN1bXVsYXRpdmUga2ggdmVyc3VzIGN1bXVsYXRpdmUgcGhpXCpoLCBzb21ldGltZXMgY2FsbGVkIGEgZmxvdyBjYXBhY2l0eSBwbG90Lg0KDQpVc2Ugc2FtZSBkYXRhDQoNCmBgYHtyfQ0KZGF0YT1yZWFkLmNzdigia2FycHVyLmNzdiIpDQpgYGANCg0KQ2FsY3VsYXRpbmcgdGhpY2tuZXNzIHZhbHVlcyBmb3IgZWFjaCBsYXllciAqKmZyb20gdGhlaXIgdG9wcyoqLg0KDQpgYGB7cn0NCiN0aGlja25lc3MgY2FsY3VsYXRpb24NCnRoaWNrbmVzcyA9IGMoMC41KQ0KZm9yIChpIGluIDI6ODE5KSB7DQogIGggPSBkYXRhJGRlcHRoW2ldIC0gZGF0YSRkZXB0aFtpLTFdDQogIHRoaWNrbmVzcyA9IGFwcGVuZCh0aGlja25lc3MsIGgpDQp9DQoNCmRhdGEgPSBkYXRhW29yZGVyKGRhdGEkay5jb3JlLCBkZWNyZWFzaW5nID0gVFJVRSksIF0NCmBgYA0KDQpOb3csIGNhbGN1bGF0ZSB0aGUgZmxvdyBjYXBhY2l0eSAoS0gpIGFuZCBzdG9yYWdlIGNhcGFjaXR5IChQaGlIKSB3aGljaCBpcyBlYXNpbHkgdGhlIG11bHRpcGxpY2F0aW9uIGJldHdlZW4gKipwZXJtZWFiaWxpdHkgYW5kIHBvcm9zaXR5Kiogd2l0aCBjb3JyZXNwb25kaW5nIHRoaWNrbmVzcy5cDQpUaGVuIGNhbGN1bGF0ZSB0aGUgY3VtdWxhdGl2ZSBzdW0gb2YgZWFjaCBvbmUuDQoNCmBgYHtyfQ0KS0ggPSB0aGlja25lc3MgKiBkYXRhJGsuY29yZQ0KUGhpSCA9IHRoaWNrbmVzcyAqIGRhdGEkcGhpLmNvcmUNCmN1bV9zdW1fS0ggPSBjdW1zdW0oS0gpDQpDVU1fU1VNX1BoaUg9IGN1bXN1bShQaGlIKQ0KYGBgDQoNCkZpbmFsbHksIFdlIG5lZWQgdG8gY2FsY3VsYXRlZCB0aGU6IGDiiJFjdW0uay5jb3JlL3RvdGEgJiDiiJFjdW0ucGhpLmNvcmUvdG90YWAgdGhlbiAqKnBsb3QqKjoNCg0KYGBge3J9DQp0b3Rfdm9sID0gKENVTV9TVU1fUGhpSC8xMDApIC8gbWF4KENVTV9TVU1fUGhpSC8xMDApICN0byBjb252ZXJ0IHBoaSBiZXR3ZWVuICgwLDEpDQp0b3RfZmxvdyA9IGN1bV9zdW1fS0ggLyBtYXgoY3VtX3N1bV9LSCkNCg0KcGxvdCh0b3Rfdm9sLCB0b3RfZmxvdywgcGNoID0gMTAsIGNleCA9IDAuMiwgY29sID0gJ2JsdWUnLCB0ZXh0KDAuNCwgMC44LCAiRCIpKQ0KdGV4dCgwLDAsICJBIiwgcG9zID0gMikNCnRleHQoMSwxLCAiQiIsIHBvcyA9IDEpDQp0ZXh0KDEsMCwgIkMiLCBwb3MgPSAyKQ0KYWJsaW5lKDAsMSwgY29sID0gJ3JlZCcsIGx3ZCA9IDIpDQpgYGANCg0KTmVlZCB0byAqKmVzdGltYXRpb24qKiBvZiB0aGUgYXJlYSB1bmRlciB0aGUgY3VydmUgKEFEQkNBKVwNClwqIHJlcXVpcmUgKERlc2NUb29scykNCg0KYGBge3J9DQpyZXF1aXJlKCJEZXNjVG9vbHMiKQ0KYGBgDQoNCk5vdyB3ZSBjYW4gZXN0aW1hdGlvbjoNCg0KYGBge3J9DQpsaWJyYXJ5KERlc2NUb29scykNCmFyZWEgPSBBVUModG90X3ZvbCwgdG90X2Zsb3csIG1ldGhvZCA9ICJ0cmFwZXpvaWQiKQ0KYGBgDQoNCkJ5IFRoZSAqKmZvcm11bGEgb2YgTG9yZW56IENvZWZmaWNpZW50Kio6DQoNCmBgYCAgICAgICAgIA0KIExvcmVueiBDb2ZmaWNpZW50ID0gKGFyZWEgQURCQSkgLyAoYXJlYSBBQkNBKQ0KYGBgDQoNCmBgYHtyfQ0KTGNvZmYgPSAoYXJlYSAtIDAuNSkgLyAwLjUNCkxjb2ZmDQpgYGANCg0KLSAgIMKgSW4gTG9yZW56IG1ldGhvZCBpZiB0aGUgdmFsdWUgaXMgY2xvc2VyIHRvIHplcm8sIGl0IGNvbnNpZGVycyBtb3JlIGhldGVyb2dlbmVvdXMsIHNvIHRoZSBjdXJyZW50IHZhbHVlIGAwLjQ1MjQ3NDFgIGNvbnNpZGVycyBhcyAqKmhldGVyb2dlbmVvdXMgcmVzZXJ2b2lyKiouDQo=