GeoPython 2022

Appling Python in Petroleum System Modeling.
2022-06-21, 14:30–15:00, Room 2

Using Python capabilities to manage RockEval® Data, interpret them and finally create a kerogen kinetic.


Describing the evolution of sedimentary layers which contains or had contained a reactive organic matter which is/was able to produce hydrocarbons one (Source Rock) of the key elements in a petroleum system: if it does not exist, there is no chance to find hydrocarbons in a basin. Geochemistry helps us to understand if the source exists (Kerogen), if it has been active and when, if large volumes of hydrocarbons have been generated and which type.

Extensive works have been done since the 80’s to measure, understand and predict the source rocks behaviors (potential of generation and kinetic of reaction). Several “kerogen types” were described and nowadays our understanding is good enough to propose geochemical modeling solutions to predict oil and gas occurrences in basins. One of the key data to populate these models are parameters obtained by pyrolysis of source rock samples (e.g. RockEval® TOC, HI, Tmax, etc.). The first challenge is to correctly interpret RockEval data for identifying different kerogen types vs. different maturity levels. The second challenge is to obtain consistent kinetic schemes, direct measurement being more expensive (especially compositional ones) and sometimes unusable.

We will explain our workflow from data collecting to kerogen kinetic modelling with a special focus on standard interpretation graphs and kinetic modeling. All the shown images and scripts can be easily redone by a python beginner with open-source library. The key point is to properly write the pyrolysis routine using several parallel 1st order chemical reactions (Arrhenius). With the proposed scripts it is possible to QC the data, create kinetic from pyrolyze data (pyrograms and/or Rock Eval), mix the kinetics of several kerogens, and propose a compositional dressing to predict fluid composition during primary cacking.