SlideShare a Scribd company logo
Python Awareness for Exploration and
Production Students and Professionals
Yohanes Nuwara
Outline
• Why do we need to program and why Python?
• Python & oil and gas industries in-action
• Python as scientific programming language
• Open datasets and cloud computing with Python
• Python “lifehacks” you should know (for oil and gas)
• How to start learning and pitch ideas
• Demo, yeay!
Reasons why Engineers are not Starting?
• Engineers love working on spreadsheets – But, is it effective enough if we need to
automate?
• Engineers think programming is horrible (back in college when they learned C) –
But, do we want to learn if in fact programming is much simpler?
• Engineers depend on software – But, are you sure you know what’s behind the black
box?
• Engineers think that most problems are easy (1+1=2, so no need to code) – You
kidding! Engineering is not that simple.
• Engineers don’t need to be a programmer because there have been so many out
there – Nope! They don’t solve problems for you; they solve for themselves.
Why Python?
• Python is open-source
• Python is easy : It is built based on human language (feels like we’re “having
conversation” with the programs)
• Python is fast and efficient : The use of “list comprehension” instead of “for-loop”
makes consuming much less lines of codes
• Python is flexible : We can build and deploy programs almost anywhere (in local PC
systems and in the cloud)
• Python is abundant : 2 million ++ libraries and packages available to use
• Python is scientific : For scientific task, Python is as capable as scientific programming
languages like MATLAB, or even better.
The use of Python in Oil and Gas
Industries
• CGG GeoSoftware develops a Python
plugin that connects machine learning to
their interpretation software
• Schlumberger develops Python editor
that connects petrophysical calculation to
their Techlog software
• Equinor actively works on Python libraries
such as segyio for seismic data loader,
libecl for reservoir simulation data loader,
dlisio, etc.
• Tech companies help oil and gas
industries to deploy Python in their cloud
service, such as AWS
• OPM open-source reservoir simulator runs
on Python
AWS and CMG simulation architecture
Python as Scientific Programming
Language
• Acoustic/elastic wave simulation based on various
methods (finite-difference, pseudo-spectral, spectral)
for computational seismology (Prof. Heiner Igel from
LMU in Germany)
• FeNiCs high performance computing for
computational fluid dynamics (KTH in Sweden)
• Gekko numerical solvers and optimization (Prof.
John Hedengren from BYU in USA)
• Pylops package for (mathematical) inversion of
seismic data (Matteo Ravasi from Equinor)
• Fatiando a Terra package for computation in
potential methods in geophysics (Leonardo Uieda
from University of Liverpool, UK)
Navier-Stokes simulation in FeNiCs
Gravity processing in
Fatiando
Bayesian inversion in
Pylops
Python as Scientific Programming
Language
Python “lifehacks”
What things you need to master?
Numpy “lifehacks”
• Manipulating multidimensional arrays (transposing, etc) – seismic data is a “4D” data
consists of inlines, crosslines, time, and amplitude
• Data cleansing (search for NaNs, replace values) – data quality control (QC)
• Load and read files with text formats – parsing multiple files (e.g. ECLIPSE simulator
files)
• Operations in Numpy (matrix linear algebra, FFT, etc) – signal processing in
geophysics, inverse problems
• Generating random numbers – synthetic data generation when data is not available (!),
Monte Carlo simulation of a stochastic analysis in oil and gas
• Write files – output results from program to a file
Matplotlib “lifehacks”
• Creating subplots through automation – displaying multiple well logs and composites
(RHOB, NPHI, resistivity, GR, PEF, etc.) during formation eval
• Scatter plots – facies typing from petrophysical crossplots
• Logarithmic plots – semilog plot for well-test analysis
• Displaying histogram – evaluation of the statistical distribution of petrophysical variables
• Displaying boxplot – identifying outliers in well logs or production data
• Creating contour plots – spatial distribution of porosity, permeability, net pay, sand
thickness, etc.
• Displaying 3D plot – wellbore trajectory visualization
Pandas “lifehacks”
• Read spreadsheets
• Dataframe manipulation (slicing or creating subsets of dataframes, merging, etc)
• Datetime conversion (datetime format in Pandas is YYYY-MM-DD. If our input has
different format, we need to convert it)
• Summary statistics (knowing the mean, interquartiles, standard deviation, min, max)
• Data cleansing (searching for NaNs, removing unwanted rows or columns)
• Regex (string contains)
Scipy “lifehacks”
• Gridding data – gridding from a reservoir model (porosity, permeability, net pay in 2D/3D)
• Interpolate – mapping porosity, permeability, net pay using different methods (spline,
cubic, or kriging)
• Solve systems of equations and roots – solving PVT (e.g. Peng-Robinson cubic EOS)
• Using optimization methods – linear regression or curve fitting in well-test analysis,
Arps’ decline curve analysis
Open datasets and cloud computing
with Python
• Many available open datasets that you can access: SEG Wiki, Geothermal Data
Repository (GDR) OpenEi, KGS, MSEEL, and many more
• We have list down open datasets in: https://github.com/yohanesnuwara/open-geoscience-
repository
• Python allows interfacing with data stored in websites (cloud computing in Google Colab)
Starting Python
How to learn and pitch ideas? And a demo.
Learning thru solving textbooks
Sample problem (from Towler, 2001)
Plot
Python script code
Pitching Ideas: Volumetrics with Python
• Producing contour maps of petrophysical properties
• Calculating OOIP and OGIP using Green’s theorem and geometric rules; Trapezoidal,
Pyramidal, and Simpson’s 1/3
Pitching Ideas: PVT Calculator with Python
• Creating a library of PVT correlations for reservoir gas, oil, and water
• Calculating PVT properties, such as z-factor of gas, formation volume factor (FVF),
solution gas-oil ratio, isothermal compressibility, and viscosity
Pitching Ideas: Material Balance with
Python
• Calculating original gas (and condensate) in place from dry-gas and gas-condensate
reservoirs
• Calculating original oil and gas in place from undersaturated and saturated oil
reservoirs; volatile and non-volatile
• Calculating aquifer influx and reservoir drive indices
Pitching Ideas: Well Testing with Python
• Modeling well rate and pressure transient response from a simulated multi-rate
pressure and rate tests; series of drawdowns and shut-ins
• Analyzing drawdown, buildup, and constant pressure tests
Pitching Ideas: Geomechanics with
Python
• Pore pressure estimation from geophysical logs
(sonic and density) logs
• Stress bounds (Sv, SHmax, Shmin) estimation using
stress diagram
• Mohr-Coulomb analysis of fault data (dip and
azimuth) from image logs
• Measuring probability of induced seismicity from
hydraulic fracturing operations
Taken from my project
reservoir-geomechanics
in GitHub
Pitching Ideas: Reservoir Simulation
with Python
• Build a simple reservoir simulator with Python
• Solve single-phase simulation (incompressible, slightly compressible, and
compressible); and multi-phase simulation
Taken from my project
PyReSim in GitHub
Pitching Ideas: Formation Evaluation
with Python
• Well-log visualization
• Exploratory data analysis (EDA) of well logs
• Petrophysical computations for total porosity, shale volume, water saturation, and
permeability
Pitching Ideas: Seismic Attribute
Computation
• Compute various seismic attributes (RMS, envelope, phase envelope, instantaneous
frequency, instantaneous phase, apparent polarity)
• Utilizing effective computation that does not consume memory space and RAM
Taken from my project
computational-
geophysics in GitHub
Demo
Starting Python in 1 hour. To access: bit.ly/demopython
Potential Implementations in Petroleum
Engineering & Geoscience
• Seismic post- and pre-stack inversion – geoscience
• Interpretation of bond logs (CBL, VDL, USIT) – completion + geoscience
• Kill sheets for kick tolerance calculation – drilling engineering
• Offset study and trajectory design – drilling engineering
• Wellbore geomechanics (borehole instabilities using Kirsch modeling) – drilling engineering +
geoscience
• Mud weight design considering the mud window – drilling engineering + geoscience
• Geosteering (real-time acquisition of formation logging) – drilling engineering + geoscience
• Drill bit selection – drilling engineering + machine learning
• Nodal analysis – production engineering
• Selection of artificial lift system – production engineering (completion)
• Frac job – production engineering (completion)
• Calculations in formation stimulation and acidizing – production engineering
• Never ending list !!!
Thank You, it’s your turn now!
Want to discuss?
E-mail : ign.nuwara97@gmail.com
LinkedIn : https://www.linkedin.com/in/yohanesnuwara/

More Related Content

What's hot

Final SLB Project
Final SLB ProjectFinal SLB Project
Final SLB ProjectEbuka David
 
Reservoir
ReservoirReservoir
Reservoir
Achmad Ridho
 
Drill stem test
Drill stem testDrill stem test
Drill stem test
Nouh Almandhari
 
Well Test Analysis
Well  Test AnalysisWell  Test Analysis
Well Test Analysis
MamunUrRashid909773
 
Material balance simulation(1)
Material balance simulation(1)Material balance simulation(1)
Material balance simulation(1)
KripalKumarPatel
 
Reservoir Simulation
Reservoir SimulationReservoir Simulation
Reservoir Simulation
Rigoberto José Martínez Cedeño
 
Reservoir modeling and characterization
Reservoir modeling and characterizationReservoir modeling and characterization
Reservoir modeling and characterization
Sigve Hamilton Aspelund
 
Nodal Analysis introduction to inflow and outflow performance - next
Nodal Analysis   introduction to inflow and outflow performance - nextNodal Analysis   introduction to inflow and outflow performance - next
Nodal Analysis introduction to inflow and outflow performance - next
gusgon
 
4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanisms4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanisms
Atils
 
Introduction to Mudlogging
Introduction to MudloggingIntroduction to Mudlogging
Sucker Rod Pump (SRP)
Sucker Rod Pump (SRP)Sucker Rod Pump (SRP)
Sucker Rod Pump (SRP)
Rakesh Kumar
 
Neutron density and sonic logs
Neutron density and sonic logs Neutron density and sonic logs
Neutron density and sonic logs
Amir I. Abdelaziz
 
Q921 re1 lec3 v1
Q921 re1 lec3 v1Q921 re1 lec3 v1
Q921 re1 lec3 v1AFATous
 
Artificial Intelligence in Oil and Gas
Artificial Intelligence in Oil and GasArtificial Intelligence in Oil and Gas
An introduction to oil and gas production
An introduction to oil and gas productionAn introduction to oil and gas production
An introduction to oil and gas production
Andi Anriansyah
 
Session 1 log-analysis
Session 1 log-analysisSession 1 log-analysis
Session 1 log-analysis
abdelrahman2012
 
Conventional and Unconventional Reservoirs
Conventional and Unconventional ReservoirsConventional and Unconventional Reservoirs
Conventional and Unconventional Reservoirs
Rimsha Rais
 
Waterflood Design and Operational Best Practices
Waterflood Design and Operational Best PracticesWaterflood Design and Operational Best Practices
Waterflood Design and Operational Best Practices
Society of Petroleum Engineers
 
decline_curve_analysis-ppt.pdf
decline_curve_analysis-ppt.pdfdecline_curve_analysis-ppt.pdf
decline_curve_analysis-ppt.pdf
MohamedSadek942403
 

What's hot (20)

Final SLB Project
Final SLB ProjectFinal SLB Project
Final SLB Project
 
Reservoir
ReservoirReservoir
Reservoir
 
Drill stem test
Drill stem testDrill stem test
Drill stem test
 
Well Test Analysis
Well  Test AnalysisWell  Test Analysis
Well Test Analysis
 
Material balance simulation(1)
Material balance simulation(1)Material balance simulation(1)
Material balance simulation(1)
 
Reservoir Simulation
Reservoir SimulationReservoir Simulation
Reservoir Simulation
 
Reservoir modeling and characterization
Reservoir modeling and characterizationReservoir modeling and characterization
Reservoir modeling and characterization
 
Nodal Analysis introduction to inflow and outflow performance - next
Nodal Analysis   introduction to inflow and outflow performance - nextNodal Analysis   introduction to inflow and outflow performance - next
Nodal Analysis introduction to inflow and outflow performance - next
 
4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanisms4 1 reservoir-drive_mechanisms
4 1 reservoir-drive_mechanisms
 
Introduction to Mudlogging
Introduction to MudloggingIntroduction to Mudlogging
Introduction to Mudlogging
 
Reservoir Modeling
Reservoir ModelingReservoir Modeling
Reservoir Modeling
 
Sucker Rod Pump (SRP)
Sucker Rod Pump (SRP)Sucker Rod Pump (SRP)
Sucker Rod Pump (SRP)
 
Neutron density and sonic logs
Neutron density and sonic logs Neutron density and sonic logs
Neutron density and sonic logs
 
Q921 re1 lec3 v1
Q921 re1 lec3 v1Q921 re1 lec3 v1
Q921 re1 lec3 v1
 
Artificial Intelligence in Oil and Gas
Artificial Intelligence in Oil and GasArtificial Intelligence in Oil and Gas
Artificial Intelligence in Oil and Gas
 
An introduction to oil and gas production
An introduction to oil and gas productionAn introduction to oil and gas production
An introduction to oil and gas production
 
Session 1 log-analysis
Session 1 log-analysisSession 1 log-analysis
Session 1 log-analysis
 
Conventional and Unconventional Reservoirs
Conventional and Unconventional ReservoirsConventional and Unconventional Reservoirs
Conventional and Unconventional Reservoirs
 
Waterflood Design and Operational Best Practices
Waterflood Design and Operational Best PracticesWaterflood Design and Operational Best Practices
Waterflood Design and Operational Best Practices
 
decline_curve_analysis-ppt.pdf
decline_curve_analysis-ppt.pdfdecline_curve_analysis-ppt.pdf
decline_curve_analysis-ppt.pdf
 

Similar to Python Awareness for Exploration and Production Students and Professionals

New Developments in H2O: April 2017 Edition
New Developments in H2O: April 2017 EditionNew Developments in H2O: April 2017 Edition
New Developments in H2O: April 2017 Edition
Sri Ambati
 
Numerical inflation: simulation of observational parameters
Numerical inflation: simulation of observational parametersNumerical inflation: simulation of observational parameters
Numerical inflation: simulation of observational parameters
Milan Milošević
 
Python ml
Python mlPython ml
Python ml
Shubham Sharma
 
Data Stream Algorithms in Storm and R
Data Stream Algorithms in Storm and RData Stream Algorithms in Storm and R
Data Stream Algorithms in Storm and R
Radek Maciaszek
 
APPLICATION OF PYTHON IN GEOSCIENCE
APPLICATION OF  PYTHON IN GEOSCIENCEAPPLICATION OF  PYTHON IN GEOSCIENCE
APPLICATION OF PYTHON IN GEOSCIENCE
AhasanHabibSajeeb
 
04 open source_tools
04 open source_tools04 open source_tools
04 open source_tools
Marco Quartulli
 
Software tools for high-throughput materials data generation and data mining
Software tools for high-throughput materials data generation and data miningSoftware tools for high-throughput materials data generation and data mining
Software tools for high-throughput materials data generation and data mining
Anubhav Jain
 
Sci computing using python
Sci computing using pythonSci computing using python
Sci computing using python
Ashok Govindarajan
 
Travis Oliphant "Python for Speed, Scale, and Science"
Travis Oliphant "Python for Speed, Scale, and Science"Travis Oliphant "Python for Speed, Scale, and Science"
Travis Oliphant "Python for Speed, Scale, and Science"
Fwdays
 
Constrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiConstrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project Bonsai
Ivo Andreev
 
2015 03-28-eb-final
2015 03-28-eb-final2015 03-28-eb-final
2015 03-28-eb-final
Christopher Wilson
 
Python programming language introduction unit
Python programming language introduction unitPython programming language introduction unit
Python programming language introduction unit
michaelaaron25322
 
How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)
How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)
How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)
PyData
 
SFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulations
SFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulationsSFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulations
SFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulations
South Tyrol Free Software Conference
 
Big data berlin
Big data berlinBig data berlin
Big data berlin
kammeyer
 
Atomate: a tool for rapid high-throughput computing and materials discovery
Atomate: a tool for rapid high-throughput computing and materials discoveryAtomate: a tool for rapid high-throughput computing and materials discovery
Atomate: a tool for rapid high-throughput computing and materials discovery
Anubhav Jain
 
Python For Audio Signal Processing ( PDFDrive ).pdf
Python For Audio Signal Processing ( PDFDrive ).pdfPython For Audio Signal Processing ( PDFDrive ).pdf
Python For Audio Signal Processing ( PDFDrive ).pdf
shaikriyaz89
 
A Production Quality Sketching Library for the Analysis of Big Data
A Production Quality Sketching Library for the Analysis of Big DataA Production Quality Sketching Library for the Analysis of Big Data
A Production Quality Sketching Library for the Analysis of Big Data
Databricks
 
PyData Boston 2013
PyData Boston 2013PyData Boston 2013
PyData Boston 2013
Travis Oliphant
 
Role of python in hpc
Role of python in hpcRole of python in hpc
Role of python in hpc
Dr Reeja S R
 

Similar to Python Awareness for Exploration and Production Students and Professionals (20)

New Developments in H2O: April 2017 Edition
New Developments in H2O: April 2017 EditionNew Developments in H2O: April 2017 Edition
New Developments in H2O: April 2017 Edition
 
Numerical inflation: simulation of observational parameters
Numerical inflation: simulation of observational parametersNumerical inflation: simulation of observational parameters
Numerical inflation: simulation of observational parameters
 
Python ml
Python mlPython ml
Python ml
 
Data Stream Algorithms in Storm and R
Data Stream Algorithms in Storm and RData Stream Algorithms in Storm and R
Data Stream Algorithms in Storm and R
 
APPLICATION OF PYTHON IN GEOSCIENCE
APPLICATION OF  PYTHON IN GEOSCIENCEAPPLICATION OF  PYTHON IN GEOSCIENCE
APPLICATION OF PYTHON IN GEOSCIENCE
 
04 open source_tools
04 open source_tools04 open source_tools
04 open source_tools
 
Software tools for high-throughput materials data generation and data mining
Software tools for high-throughput materials data generation and data miningSoftware tools for high-throughput materials data generation and data mining
Software tools for high-throughput materials data generation and data mining
 
Sci computing using python
Sci computing using pythonSci computing using python
Sci computing using python
 
Travis Oliphant "Python for Speed, Scale, and Science"
Travis Oliphant "Python for Speed, Scale, and Science"Travis Oliphant "Python for Speed, Scale, and Science"
Travis Oliphant "Python for Speed, Scale, and Science"
 
Constrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiConstrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project Bonsai
 
2015 03-28-eb-final
2015 03-28-eb-final2015 03-28-eb-final
2015 03-28-eb-final
 
Python programming language introduction unit
Python programming language introduction unitPython programming language introduction unit
Python programming language introduction unit
 
How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)
How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)
How Web APIs and Data Centric Tools Power the Materials Project (PyData SV 2013)
 
SFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulations
SFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulationsSFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulations
SFSCON23 - Yaman Güçlü - Psydac a Python IGA library for large-scale simulations
 
Big data berlin
Big data berlinBig data berlin
Big data berlin
 
Atomate: a tool for rapid high-throughput computing and materials discovery
Atomate: a tool for rapid high-throughput computing and materials discoveryAtomate: a tool for rapid high-throughput computing and materials discovery
Atomate: a tool for rapid high-throughput computing and materials discovery
 
Python For Audio Signal Processing ( PDFDrive ).pdf
Python For Audio Signal Processing ( PDFDrive ).pdfPython For Audio Signal Processing ( PDFDrive ).pdf
Python For Audio Signal Processing ( PDFDrive ).pdf
 
A Production Quality Sketching Library for the Analysis of Big Data
A Production Quality Sketching Library for the Analysis of Big DataA Production Quality Sketching Library for the Analysis of Big Data
A Production Quality Sketching Library for the Analysis of Big Data
 
PyData Boston 2013
PyData Boston 2013PyData Boston 2013
PyData Boston 2013
 
Role of python in hpc
Role of python in hpcRole of python in hpc
Role of python in hpc
 

Recently uploaded

Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...
Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...
Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...
Sérgio Sacani
 
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Ana Luísa Pinho
 
In silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptxIn silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptx
AlaminAfendy1
 
Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...
Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...
Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...
University of Maribor
 
Richard's aventures in two entangled wonderlands
Richard's aventures in two entangled wonderlandsRichard's aventures in two entangled wonderlands
Richard's aventures in two entangled wonderlands
Richard Gill
 
原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样
原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样
原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样
yqqaatn0
 
NuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyerNuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyer
pablovgd
 
DMARDs Pharmacolgy Pharm D 5th Semester.pdf
DMARDs Pharmacolgy Pharm D 5th Semester.pdfDMARDs Pharmacolgy Pharm D 5th Semester.pdf
DMARDs Pharmacolgy Pharm D 5th Semester.pdf
fafyfskhan251kmf
 
ISI 2024: Application Form (Extended), Exam Date (Out), Eligibility
ISI 2024: Application Form (Extended), Exam Date (Out), EligibilityISI 2024: Application Form (Extended), Exam Date (Out), Eligibility
ISI 2024: Application Form (Extended), Exam Date (Out), Eligibility
SciAstra
 
Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...
Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...
Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...
Travis Hills MN
 
如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样
如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样
如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样
yqqaatn0
 
Nutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technologyNutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technology
Lokesh Patil
 
Seminar of U.V. Spectroscopy by SAMIR PANDA
 Seminar of U.V. Spectroscopy by SAMIR PANDA Seminar of U.V. Spectroscopy by SAMIR PANDA
Seminar of U.V. Spectroscopy by SAMIR PANDA
SAMIR PANDA
 
Shallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptxShallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptx
Gokturk Mehmet Dilci
 
Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...
Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...
Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...
University of Maribor
 
Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...
Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...
Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...
Studia Poinsotiana
 
Deep Software Variability and Frictionless Reproducibility
Deep Software Variability and Frictionless ReproducibilityDeep Software Variability and Frictionless Reproducibility
Deep Software Variability and Frictionless Reproducibility
University of Rennes, INSA Rennes, Inria/IRISA, CNRS
 
DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...
DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...
DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...
Wasswaderrick3
 
3D Hybrid PIC simulation of the plasma expansion (ISSS-14)
3D Hybrid PIC simulation of the plasma expansion (ISSS-14)3D Hybrid PIC simulation of the plasma expansion (ISSS-14)
3D Hybrid PIC simulation of the plasma expansion (ISSS-14)
David Osipyan
 
bordetella pertussis.................................ppt
bordetella pertussis.................................pptbordetella pertussis.................................ppt
bordetella pertussis.................................ppt
kejapriya1
 

Recently uploaded (20)

Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...
Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...
Earliest Galaxies in the JADES Origins Field: Luminosity Function and Cosmic ...
 
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
Deep Behavioral Phenotyping in Systems Neuroscience for Functional Atlasing a...
 
In silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptxIn silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptx
 
Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...
Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...
Comparing Evolved Extractive Text Summary Scores of Bidirectional Encoder Rep...
 
Richard's aventures in two entangled wonderlands
Richard's aventures in two entangled wonderlandsRichard's aventures in two entangled wonderlands
Richard's aventures in two entangled wonderlands
 
原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样
原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样
原版制作(carleton毕业证书)卡尔顿大学毕业证硕士文凭原版一模一样
 
NuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyerNuGOweek 2024 Ghent programme overview flyer
NuGOweek 2024 Ghent programme overview flyer
 
DMARDs Pharmacolgy Pharm D 5th Semester.pdf
DMARDs Pharmacolgy Pharm D 5th Semester.pdfDMARDs Pharmacolgy Pharm D 5th Semester.pdf
DMARDs Pharmacolgy Pharm D 5th Semester.pdf
 
ISI 2024: Application Form (Extended), Exam Date (Out), Eligibility
ISI 2024: Application Form (Extended), Exam Date (Out), EligibilityISI 2024: Application Form (Extended), Exam Date (Out), Eligibility
ISI 2024: Application Form (Extended), Exam Date (Out), Eligibility
 
Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...
Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...
Travis Hills' Endeavors in Minnesota: Fostering Environmental and Economic Pr...
 
如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样
如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样
如何办理(uvic毕业证书)维多利亚大学毕业证本科学位证书原版一模一样
 
Nutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technologyNutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technology
 
Seminar of U.V. Spectroscopy by SAMIR PANDA
 Seminar of U.V. Spectroscopy by SAMIR PANDA Seminar of U.V. Spectroscopy by SAMIR PANDA
Seminar of U.V. Spectroscopy by SAMIR PANDA
 
Shallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptxShallowest Oil Discovery of Turkiye.pptx
Shallowest Oil Discovery of Turkiye.pptx
 
Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...
Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...
Remote Sensing and Computational, Evolutionary, Supercomputing, and Intellige...
 
Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...
Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...
Salas, V. (2024) "John of St. Thomas (Poinsot) on the Science of Sacred Theol...
 
Deep Software Variability and Frictionless Reproducibility
Deep Software Variability and Frictionless ReproducibilityDeep Software Variability and Frictionless Reproducibility
Deep Software Variability and Frictionless Reproducibility
 
DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...
DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...
DERIVATION OF MODIFIED BERNOULLI EQUATION WITH VISCOUS EFFECTS AND TERMINAL V...
 
3D Hybrid PIC simulation of the plasma expansion (ISSS-14)
3D Hybrid PIC simulation of the plasma expansion (ISSS-14)3D Hybrid PIC simulation of the plasma expansion (ISSS-14)
3D Hybrid PIC simulation of the plasma expansion (ISSS-14)
 
bordetella pertussis.................................ppt
bordetella pertussis.................................pptbordetella pertussis.................................ppt
bordetella pertussis.................................ppt
 

Python Awareness for Exploration and Production Students and Professionals

  • 1. Python Awareness for Exploration and Production Students and Professionals Yohanes Nuwara
  • 2. Outline • Why do we need to program and why Python? • Python & oil and gas industries in-action • Python as scientific programming language • Open datasets and cloud computing with Python • Python “lifehacks” you should know (for oil and gas) • How to start learning and pitch ideas • Demo, yeay!
  • 3. Reasons why Engineers are not Starting? • Engineers love working on spreadsheets – But, is it effective enough if we need to automate? • Engineers think programming is horrible (back in college when they learned C) – But, do we want to learn if in fact programming is much simpler? • Engineers depend on software – But, are you sure you know what’s behind the black box? • Engineers think that most problems are easy (1+1=2, so no need to code) – You kidding! Engineering is not that simple. • Engineers don’t need to be a programmer because there have been so many out there – Nope! They don’t solve problems for you; they solve for themselves.
  • 4. Why Python? • Python is open-source • Python is easy : It is built based on human language (feels like we’re “having conversation” with the programs) • Python is fast and efficient : The use of “list comprehension” instead of “for-loop” makes consuming much less lines of codes • Python is flexible : We can build and deploy programs almost anywhere (in local PC systems and in the cloud) • Python is abundant : 2 million ++ libraries and packages available to use • Python is scientific : For scientific task, Python is as capable as scientific programming languages like MATLAB, or even better.
  • 5. The use of Python in Oil and Gas Industries • CGG GeoSoftware develops a Python plugin that connects machine learning to their interpretation software • Schlumberger develops Python editor that connects petrophysical calculation to their Techlog software • Equinor actively works on Python libraries such as segyio for seismic data loader, libecl for reservoir simulation data loader, dlisio, etc. • Tech companies help oil and gas industries to deploy Python in their cloud service, such as AWS • OPM open-source reservoir simulator runs on Python AWS and CMG simulation architecture
  • 6. Python as Scientific Programming Language
  • 7. • Acoustic/elastic wave simulation based on various methods (finite-difference, pseudo-spectral, spectral) for computational seismology (Prof. Heiner Igel from LMU in Germany) • FeNiCs high performance computing for computational fluid dynamics (KTH in Sweden) • Gekko numerical solvers and optimization (Prof. John Hedengren from BYU in USA) • Pylops package for (mathematical) inversion of seismic data (Matteo Ravasi from Equinor) • Fatiando a Terra package for computation in potential methods in geophysics (Leonardo Uieda from University of Liverpool, UK) Navier-Stokes simulation in FeNiCs Gravity processing in Fatiando Bayesian inversion in Pylops Python as Scientific Programming Language
  • 9. Numpy “lifehacks” • Manipulating multidimensional arrays (transposing, etc) – seismic data is a “4D” data consists of inlines, crosslines, time, and amplitude • Data cleansing (search for NaNs, replace values) – data quality control (QC) • Load and read files with text formats – parsing multiple files (e.g. ECLIPSE simulator files) • Operations in Numpy (matrix linear algebra, FFT, etc) – signal processing in geophysics, inverse problems • Generating random numbers – synthetic data generation when data is not available (!), Monte Carlo simulation of a stochastic analysis in oil and gas • Write files – output results from program to a file
  • 10. Matplotlib “lifehacks” • Creating subplots through automation – displaying multiple well logs and composites (RHOB, NPHI, resistivity, GR, PEF, etc.) during formation eval • Scatter plots – facies typing from petrophysical crossplots • Logarithmic plots – semilog plot for well-test analysis • Displaying histogram – evaluation of the statistical distribution of petrophysical variables • Displaying boxplot – identifying outliers in well logs or production data • Creating contour plots – spatial distribution of porosity, permeability, net pay, sand thickness, etc. • Displaying 3D plot – wellbore trajectory visualization
  • 11. Pandas “lifehacks” • Read spreadsheets • Dataframe manipulation (slicing or creating subsets of dataframes, merging, etc) • Datetime conversion (datetime format in Pandas is YYYY-MM-DD. If our input has different format, we need to convert it) • Summary statistics (knowing the mean, interquartiles, standard deviation, min, max) • Data cleansing (searching for NaNs, removing unwanted rows or columns) • Regex (string contains)
  • 12. Scipy “lifehacks” • Gridding data – gridding from a reservoir model (porosity, permeability, net pay in 2D/3D) • Interpolate – mapping porosity, permeability, net pay using different methods (spline, cubic, or kriging) • Solve systems of equations and roots – solving PVT (e.g. Peng-Robinson cubic EOS) • Using optimization methods – linear regression or curve fitting in well-test analysis, Arps’ decline curve analysis
  • 13. Open datasets and cloud computing with Python • Many available open datasets that you can access: SEG Wiki, Geothermal Data Repository (GDR) OpenEi, KGS, MSEEL, and many more • We have list down open datasets in: https://github.com/yohanesnuwara/open-geoscience- repository • Python allows interfacing with data stored in websites (cloud computing in Google Colab)
  • 14. Starting Python How to learn and pitch ideas? And a demo.
  • 15. Learning thru solving textbooks Sample problem (from Towler, 2001) Plot Python script code
  • 16. Pitching Ideas: Volumetrics with Python • Producing contour maps of petrophysical properties • Calculating OOIP and OGIP using Green’s theorem and geometric rules; Trapezoidal, Pyramidal, and Simpson’s 1/3
  • 17. Pitching Ideas: PVT Calculator with Python • Creating a library of PVT correlations for reservoir gas, oil, and water • Calculating PVT properties, such as z-factor of gas, formation volume factor (FVF), solution gas-oil ratio, isothermal compressibility, and viscosity
  • 18. Pitching Ideas: Material Balance with Python • Calculating original gas (and condensate) in place from dry-gas and gas-condensate reservoirs • Calculating original oil and gas in place from undersaturated and saturated oil reservoirs; volatile and non-volatile • Calculating aquifer influx and reservoir drive indices
  • 19. Pitching Ideas: Well Testing with Python • Modeling well rate and pressure transient response from a simulated multi-rate pressure and rate tests; series of drawdowns and shut-ins • Analyzing drawdown, buildup, and constant pressure tests
  • 20. Pitching Ideas: Geomechanics with Python • Pore pressure estimation from geophysical logs (sonic and density) logs • Stress bounds (Sv, SHmax, Shmin) estimation using stress diagram • Mohr-Coulomb analysis of fault data (dip and azimuth) from image logs • Measuring probability of induced seismicity from hydraulic fracturing operations Taken from my project reservoir-geomechanics in GitHub
  • 21. Pitching Ideas: Reservoir Simulation with Python • Build a simple reservoir simulator with Python • Solve single-phase simulation (incompressible, slightly compressible, and compressible); and multi-phase simulation Taken from my project PyReSim in GitHub
  • 22. Pitching Ideas: Formation Evaluation with Python • Well-log visualization • Exploratory data analysis (EDA) of well logs • Petrophysical computations for total porosity, shale volume, water saturation, and permeability
  • 23. Pitching Ideas: Seismic Attribute Computation • Compute various seismic attributes (RMS, envelope, phase envelope, instantaneous frequency, instantaneous phase, apparent polarity) • Utilizing effective computation that does not consume memory space and RAM Taken from my project computational- geophysics in GitHub
  • 24. Demo Starting Python in 1 hour. To access: bit.ly/demopython
  • 25. Potential Implementations in Petroleum Engineering & Geoscience • Seismic post- and pre-stack inversion – geoscience • Interpretation of bond logs (CBL, VDL, USIT) – completion + geoscience • Kill sheets for kick tolerance calculation – drilling engineering • Offset study and trajectory design – drilling engineering • Wellbore geomechanics (borehole instabilities using Kirsch modeling) – drilling engineering + geoscience • Mud weight design considering the mud window – drilling engineering + geoscience • Geosteering (real-time acquisition of formation logging) – drilling engineering + geoscience • Drill bit selection – drilling engineering + machine learning • Nodal analysis – production engineering • Selection of artificial lift system – production engineering (completion) • Frac job – production engineering (completion) • Calculations in formation stimulation and acidizing – production engineering • Never ending list !!!
  • 26. Thank You, it’s your turn now! Want to discuss? E-mail : ign.nuwara97@gmail.com LinkedIn : https://www.linkedin.com/in/yohanesnuwara/