Basrah university for Oil & Gas

College of Oil & Gas engineering

Departement of Oil & Gas

Iraq - Basrah

R Markdown

Content:

  1. Preparing and recalling data.

  2. Modelling Correction of Porosity & Permeability

  3. Parameter visualization

1. Preparing and recalling data

In this section we will recall the data that we will work on from an external file and then calling our dataset:

setwd("C:/Users/Hussein Malik/Desktop/R data") # setting working directory
d1<-read.csv("C:/Users/Hussein Malik/Desktop/R data/karpur.csv",header = TRUE) # calling dataset
head(d1)
##    depth caliper ind.deep ind.med  gamma phi.N R.deep  R.med      SP
## 1 5667.0   8.685  618.005 569.781 98.823 0.410  1.618  1.755 -56.587
## 2 5667.5   8.686  497.547 419.494 90.640 0.307  2.010  2.384 -61.916
## 3 5668.0   8.686  384.935 300.155 78.087 0.203  2.598  3.332 -55.861
## 4 5668.5   8.686  278.324 205.224 66.232 0.119  3.593  4.873 -41.860
## 5 5669.0   8.686  183.743 131.155 59.807 0.069  5.442  7.625 -34.934
## 6 5669.5   8.686  109.512  75.633 57.109 0.048  9.131 13.222 -39.769
##   density.corr density phi.core   k.core Facies phi.core.fr.
## 1       -0.033   2.205  33.9000 2442.590     F1     0.339000
## 2       -0.067   2.040  33.4131 3006.989     F1     0.334131
## 3       -0.064   1.888  33.1000 3370.000     F1     0.331000
## 4       -0.053   1.794  34.9000 2270.000     F1     0.349000
## 5       -0.054   1.758  35.0644 2530.758     F1     0.350644
## 6       -0.058   1.759  35.3152 2928.314     F1     0.353152

2. Modelling and Correction of Porosity & Permeability

porosity_model<-lm(phi.core.fr.~phi.N+Facies-1,data = d1)
summary(porosity_model)
## 
## Call:
## lm(formula = phi.core.fr. ~ phi.N + Facies - 1, data = d1)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.103530 -0.011573 -0.000206  0.010463  0.102852 
## 
## Coefficients:
##           Estimate Std. Error t value Pr(>|t|)    
## phi.N     0.013364   0.018060    0.74     0.46    
## FaciesF1  0.314805   0.002777  113.37   <2e-16 ***
## FaciesF10 0.207680   0.005072   40.95   <2e-16 ***
## FaciesF2  0.175233   0.009390   18.66   <2e-16 ***
## FaciesF3  0.231939   0.004955   46.81   <2e-16 ***
## FaciesF5  0.272953   0.003914   69.74   <2e-16 ***
## FaciesF7  0.225164   0.008730   25.79   <2e-16 ***
## FaciesF8  0.305884   0.005019   60.94   <2e-16 ***
## FaciesF9  0.264448   0.004825   54.81   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.02326 on 810 degrees of freedom
## Multiple R-squared:  0.9928, Adjusted R-squared:  0.9928 
## F-statistic: 1.246e+04 on 9 and 810 DF,  p-value: < 2.2e-16
corrected_porosity<-predict(porosity_model,d1)
summary(corrected_porosity)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.1775  0.2345  0.2682  0.2693  0.3094  0.3203
permability_model<-lm(d1$k.core~corrected_porosity+Facies-1,data = d1)
summary(permability_model)
## 
## Call:
## lm(formula = d1$k.core ~ corrected_porosity + Facies - 1, data = d1)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -5613.4  -596.9  -130.3   475.0 10449.1 
## 
## Coefficients:
##                    Estimate Std. Error t value Pr(>|t|)    
## corrected_porosity  -412352      89814  -4.591 5.11e-06 ***
## FaciesF1             132659      28386   4.673 3.47e-06 ***
## FaciesF10             87869      18969   4.632 4.21e-06 ***
## FaciesF2              73980      16049   4.610 4.69e-06 ***
## FaciesF3              97910      21087   4.643 4.00e-06 ***
## FaciesF5             118916      24729   4.809 1.81e-06 ***
## FaciesF7              95868      20496   4.677 3.40e-06 ***
## FaciesF8             130990      27786   4.714 2.86e-06 ***
## FaciesF9             111324      24050   4.629 4.28e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1546 on 810 degrees of freedom
## Multiple R-squared:  0.7652, Adjusted R-squared:  0.7626 
## F-statistic: 293.2 on 9 and 810 DF,  p-value: < 2.2e-16
corrected_permability<-predict(permability_model,d1)
summary(corrected_permability)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   11.26  861.89 1833.75 2251.91 3409.26 6280.63

3. Parameter visualization

In this section we will display our parameters by using plot function.

par(mfrow=(c(1,5)))
plot(d1$phi.core.fr.,d1$depth,ylim =rev (c(5667,6083)),xlim = c(0.1570,0.3630),type = "l",lwd=2,xlab = 'core porosity',ylab = 'depth m',col="red")
plot(corrected_porosity,d1$depth,ylim =rev (c(5667,6083)),xlim = c(0.1775,0.3203),type = "l",lwd=2,xlab = 'corrected core porosity',ylab = 'depth m',col="green")
plot(d1$k.core,d1$depth,ylim =rev (c(5667,6083)),xlim = c(0.42,15600.00),type = "l",lwd=2,xlab = 'core permability',ylab = 'depth m',col="blue")
plot(corrected_permability,d1$depth,ylim =rev (c(5667,6083)),xlim = c(11.26,6280.63),type = "l",lwd=2,xlab = 'corrected core permability',ylab = 'depth m',col="orange")
boxplot(depth~Facies,data = d1,ylim =rev (c(5667,6083)))