Heterogeneity Index

refers to a quantitative measure that assesses the degree of heterogeneity or variability in the distribution of geological properties within a subsurface reservoir. This index is utilized to characterize the spatial diversity of key reservoir parameters, such as porosity, permeability, or lithology.

he determination of the Heterogeneity Index involves employing two distinct methods: the Dykstra-Parsons method and the Lorenz coefficient of permeability variation.

df <- read.csv("karpur.csv")
df = df[order(df$k.core, decreasing=TRUE), ]
head(df)

K = df$k.core #Calculating Number of Samples >= k
sample = c(1: length(K))  # Calculating % >= k
k_percent = (sample * 100) / length(K)
plot(k_percent, K, log =  'y', xlab = "Portion of total samples having larger or equal K", ylab = "k (md)", pch = 10, cex = 0.5, col = "blue")

model = lm(log(K) ~ k_percent)
plot(k_percent, log(K),xlab = "Portion of Total Samples Having Larger or Equal K", ylab = "k (md)", pch = 10, cex = 0.5, col = "blue4")
abline(model, col = 'red4', lwd = 3)

new_df = data.frame(k_percent  = c(50, 84.1))
predicted_values = predict(model, new_df)
heterogenity_index = (predicted_values[1] - predicted_values[2]) / predicted_values[1]
heterogenity_index
        1 
0.2035464 
LS0tDQp0aXRsZTogIkNhbGN1bGF0aW5nIHRoZSBIZXRlcm9nZW5laXR5IEluZGV4Ig0KYXV0aG9yOiAiQWxpIGhhaWRlciBhbGkiDQpkYXRlOiAiMjEgT2N0dWJlciAyMDI0Ig0Kb3V0cHV0OiBodG1sX25vdGVib29rDQotLS0NCiMgSGV0ZXJvZ2VuZWl0eSBJbmRleA0KDQpyZWZlcnMgdG8gYSBxdWFudGl0YXRpdmUgbWVhc3VyZSB0aGF0IGFzc2Vzc2VzIHRoZSBkZWdyZWUgb2YgaGV0ZXJvZ2VuZWl0eSBvciB2YXJpYWJpbGl0eSBpbiB0aGUgZGlzdHJpYnV0aW9uIG9mIGdlb2xvZ2ljYWwgcHJvcGVydGllcyB3aXRoaW4gYSBzdWJzdXJmYWNlIHJlc2Vydm9pci4gVGhpcyBpbmRleCBpcyB1dGlsaXplZCB0byBjaGFyYWN0ZXJpemUgdGhlIHNwYXRpYWwgZGl2ZXJzaXR5IG9mIGtleSByZXNlcnZvaXIgcGFyYW1ldGVycywgc3VjaCBhcyBwb3Jvc2l0eSwgcGVybWVhYmlsaXR5LCBvciBsaXRob2xvZ3kuDQoNCmhlIGRldGVybWluYXRpb24gb2YgdGhlIEhldGVyb2dlbmVpdHkgSW5kZXggaW52b2x2ZXMgZW1wbG95aW5nIHR3byBkaXN0aW5jdCBtZXRob2RzOiB0aGUgRHlrc3RyYS1QYXJzb25zIG1ldGhvZCBhbmQgdGhlIExvcmVueiBjb2VmZmljaWVudCBvZiBwZXJtZWFiaWxpdHkgdmFyaWF0aW9uLg0KDQpgYGB7cn0NCmRmIDwtIHJlYWQuY3N2KCJrYXJwdXIuY3N2IikNCmRmID0gZGZbb3JkZXIoZGYkay5jb3JlLCBkZWNyZWFzaW5nPVRSVUUpLCBdDQpoZWFkKGRmKQ0KYGBgDQoNCmBgYHtyfQ0KDQpLID0gZGYkay5jb3JlICNDYWxjdWxhdGluZyBOdW1iZXIgb2YgU2FtcGxlcyA+PSBrDQpzYW1wbGUgPSBjKDE6IGxlbmd0aChLKSkgICMgQ2FsY3VsYXRpbmcgJSA+PSBrDQprX3BlcmNlbnQgPSAoc2FtcGxlICogMTAwKSAvIGxlbmd0aChLKQ0KYGBgDQoNCmBgYHtyfQ0KcGxvdChrX3BlcmNlbnQsIEssIGxvZyA9ICAneScsIHhsYWIgPSAiUG9ydGlvbiBvZiB0b3RhbCBzYW1wbGVzIGhhdmluZyBsYXJnZXIgb3IgZXF1YWwgSyIsIHlsYWIgPSAiayAobWQpIiwgcGNoID0gMTAsIGNleCA9IDAuNSwgY29sID0gImJsdWUiKQ0KYGBgDQoNCmBgYHtyfQ0KbW9kZWwgPSBsbShsb2coSykgfiBrX3BlcmNlbnQpDQpwbG90KGtfcGVyY2VudCwgbG9nKEspLHhsYWIgPSAiUG9ydGlvbiBvZiBUb3RhbCBTYW1wbGVzIEhhdmluZyBMYXJnZXIgb3IgRXF1YWwgSyIsIHlsYWIgPSAiayAobWQpIiwgcGNoID0gMTAsIGNleCA9IDAuNSwgY29sID0gImJsdWU0IikNCmFibGluZShtb2RlbCwgY29sID0gJ3JlZDQnLCBsd2QgPSAzKQ0KYGBgDQoNCmBgYHtyfQ0KbmV3X2RmID0gZGF0YS5mcmFtZShrX3BlcmNlbnQgID0gYyg1MCwgODQuMSkpDQpwcmVkaWN0ZWRfdmFsdWVzID0gcHJlZGljdChtb2RlbCwgbmV3X2RmKQ0KaGV0ZXJvZ2VuaXR5X2luZGV4ID0gKHByZWRpY3RlZF92YWx1ZXNbMV0gLSBwcmVkaWN0ZWRfdmFsdWVzWzJdKSAvIHByZWRpY3RlZF92YWx1ZXNbMV0NCmhldGVyb2dlbml0eV9pbmRleA0KYGBg