Skip to main content

Package for determinig the Gas or Oil Wells' Nodal Analysis

Project description


stars forks watchers issues license

NodAnaPy

NodAnaPy is the fundamental package petroleum, in this package you will find to determine the Well Nodal Analysis for oil and gas.

Table of Contents

Installation

You can install NodAnaPy using pip:

pip install nodanapy

Usage

Here is a quick example of how to use NodAnaPy to calculate the optimal rate of an oil well.

INPUT

import matplotlib.pyplot as plt
from nodanapy import WellNAOilR

pr = 4500 # reservoir pressure
tr = 140 + 460 # reservoir temperature
ph = 140 # wellhead pressure
th = 84 + 460 # wellhead temperature
pb = 1500 # bubble pressure

well = WellNAOilR(ph, th, pr, tr, pb)

ipr_well = well.ipr
vlp_well = well.vlp

fig, (ax_ql, ax_qg, ax_qo) = plt.subplots(3, 1)

ax_ql.set_xlabel('Ql(bbl/d)')
ax_ql.set_ylabel('Pwf(psia)')
ax_ql.plot(ipr_well.Ql, ipr_well.Pwf)
ax_ql.plot(vlp_well.Ql, vlp_well.Pwf)
    
ax_qg.set_xlabel('Qg(Mscf/d)')
ax_qg.set_ylabel('Pwf(psia)')
ax_qg.plot(ipr_well.Qg, ipr_well.Pwf)
ax_qg.plot(vlp_well.Qg, vlp_well.Pwf)
    
ax_qo.set_xlabel('Qo(bbl/d)')
ax_qo.set_ylabel('Pwf(psia)')
ax_qo.plot(ipr_well.Qo, ipr_well.Pwf)
ax_qo.plot(vlp_well.Qo, vlp_well.Pwf)

OUTPUT

Well Nodal Analysis

Ql(bbl/d) vs Pwf(psia); Qg(Mscf/d) vs Pwf(psia); Qo(bbl/d) vs Pwf(psia)

Theory

it will be to calculate inflow performance relationship (IPR) and vertical lift performance (VLP) curves for oil and gas wells. In addition, it will be to determine the holdup liquid well.

Click to expand the theory section.

Inflow Performance Relationship (IPR)

The curve is calculated using the different correlations, for example:

  • Oil
    • Vogel
    • Fetkovich
  • Gas
    • LIT
    • Darcy

Vertical Lift Performance (VLP)

The curve is calculated using the different correlations, for example:

  • Oil
    • Hagedorn Brown
    • Beggs and Brill
  • Gas
    • Gray

Dependencies

NodAnaPy requires the following Python (=>3.12) libraries:

  1. PetProPy
  2. Numpy
  3. Scipy
  4. Pandas
pip install -r requirements.txt

License

This project is licensed under the GNU Lesser General Public License v3.0 - see the LICENSE file for details.

API Documentation

For detailed API documentation, please refer to the official documentation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nodanapy-1.0.2.tar.gz (27.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nodanapy-1.0.2-py3-none-any.whl (37.2 kB view details)

Uploaded Python 3

File details

Details for the file nodanapy-1.0.2.tar.gz.

File metadata

  • Download URL: nodanapy-1.0.2.tar.gz
  • Upload date:
  • Size: 27.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for nodanapy-1.0.2.tar.gz
Algorithm Hash digest
SHA256 e1a65485f3d49b9452920cef0b9f567b8147928a04187380b6a602f1c33eab31
MD5 360be3f876b4e3ec70f7f6806b423b3c
BLAKE2b-256 3d8624cb3ace14827520e0dbfe2e09d302bd822f6f1a9ea0f192866eada59d68

See more details on using hashes here.

File details

Details for the file nodanapy-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: nodanapy-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 37.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for nodanapy-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e37bb51023a38c8313ed377c38a4a4f07cc4a40f8dd69126348adc47044438c4
MD5 99a9558427b5d3732eb8c45b55017a31
BLAKE2b-256 7c17921a0f794f16ced2d7e252f7eebac596ccc91e9b5c12d8b3d0fe02aed9ba

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page