For TUPREP members

The full list of software developed by TUPREP can be accessed here (members only). Some recent release highlights include:

TUPREP Nonlinearly Constrained Production Optimization Package (TU-NLCPO) v1.2 (2023 Release)

This program is the extension of v1.1, released in 2022. The major improvements include:

  • Compatibility with INTERSECT reservoir simulator (IX).
  • Enabled injection bottom-hole pressure (IBHP) nonlinear state constraints for rate-controlled injectors.
  • Second-order correction (SOC) for quadratic programming (QP) subproblem.
  • User-defined random seed number for determinism.

This optimization program is compatible with many different reservoir simulators:

  • For CMG-compatible (IMEX and GEM) version: 
  • For IX-compatible version:

The code is developed by Quang Minh Nguyen (qun972@utulsa.edu).

TU-ILHSOPT v1.0 (2023 Release)

TUPREP releases an optimization package (referred to as TU-ILHSOPT v1.0) using Python programming language for performing minimization/maximization based on a population-based gradient-free optimization method called Iterative Latin Hypercube Sampling (ILHS).

It is a standalone optimizer that can be used to optimize any user-specified objective function, be it a simple test function or a more complicated problem that involves calling an external reservoir simulator. Depending on the fitness function provided by the user, TU-ILHSOPT is designed to accommodate optimization problems where the design variables have the same or different upper and lower bounds.

In the examples provided, a 40-dimensional Rosenbrock function was optimized, as well as two well-placement optimization problems coupled with CMG-GEM from Computer Modeling Group (CMG).

The code is developed by Imaobong Tom (iut6383@utulsa.edu). 

INSIM-BHP v1.0 (2023 Release)

The version referred to as INSIM-BHP-v1.0-2023 is the extension of INSIM-FT-3D-v1.1-2020 to include the following new major features:

  • Addresses the material balance error (MBE) originating from the well control pore volume update formula.
  • Removes the Glimm data-reduction technique from the front tracking method to rectify saturation calculation inaccuracies.
  • The user can match the BHP directly. The ΔBHP of wells in the history matching procedure is removed from the code.
  • Coupled with TU-NLCPO optimization module (written in Python, originally developed by Quang Minh Nguyen) that is capable of managing production optimization problems with nonlinear state constraints. This module facilitates operation of producers under both rate and BHP control during optimization.
  • Integrates time-variant skin to accommodate changing skin conditions.
  • Incorporates well productivity index multipliers as additional history matching parameters.
  • Adds the Fetkovich-type aquifer nodes.
  • Implements a well-control switches for producers in instances of non-physical situations during forward runs, such as BHP falling below atmospheric pressure.
  • Includes six (6) tutorial cases to verify the functionality of the newly added code features.

The code is developed by Ying Li (liy7576@utulsa.edu).


Data Set of the Comparative Study on the Sampling Performance of Ensemble-based methods.

Data set used to compare ensemble-based methods in the paper: “Investigation on the sampling performance of ensemble-based methods” submitted to Computational Geosciences by Alexandre Emerick and Albert Reynolds, 2012.

The objective of this data set is to allow other research groups to reproduce the results in the original paper and to test their own implementations and methods. Besides the true model, the data set includes the results obtained with Markov chain Monte Carlo (MCMC) using a very long Markov chain (20 million proposals). The results from this Markov chain were used as reference distributions to compare the results of the ensemble-based methods.

Download data set (zip file 807 KB)

Note: the file MCMC_results.xls was updated on April 03, 2013 to correct the standard deviation of lnk.

For questions about the data set, please contact Alex Emerick (aemerick@gmail.com)