Skip to main content

A package for well architecture design and visualization

Project description

WellArchitectureDesign

A Python package for creating detailed well architecture diagrams and visualizations. This tool provides comprehensive well diagram generation capabilities with support for multiple tubular sections, cement visualization, and packer placement.

Features

  • Comprehensive tubular section visualization with customizable parameters
  • Multiple cement section support with accurate representation
  • Packer placement and visualization capabilities
  • Automatic scaling and dimension handling
  • Detailed component labeling and information display
  • Support for complex well configurations

Installation

Install using pip:

pip install wellarchitecturedesign

Usage Example

Here's a complete example demonstrating the main features of the package:

from wellarchitecturedesign import Tubular, Cement, Well, Tubing, Packer

# Define tubular sections
t0 = Tubular(name="conductor", inD=7.25, outD=8, weight=58, top=0, low=250)
t1 = Tubular(name="surface", inD=6.25, outD=6.75, weight=47, top=0, low=2000, shoeSize=7)
t2 = Tubular(name="intermediate", inD=5.5, outD=5.75, weight=39, top=0, low=3750, shoeSize=6, 
             info="this is very expensive!")
t3 = Tubular(name="production", inD=4.75, outD=5, weight=39, top=0, low=5200, shoeSize=5.25)
t4 = Tubular(name="liner", inD=3.75, outD=4, weight=27, top=4800, low=6500, shoeSize=4.5)

# Add tubing
tubing = Tubing(name="tubing", inD=2.75, outD=3.5, weight=15.5, top=0, low=6000)

# Define cement sections
c0 = Cement(top=0, low=2000, tub0=t0, tub1=t1)
c1 = Cement(top=1800, low=3750, tub0=t2, tub1=t1)
c2 = Cement(top=3500, low=5200, tub0=t2, tub1=t3)

# Add packers
p1 = Packer(depth=4000, inner_tubular=tubing, outer_tubular=t3, packer_type="tubing")
p2 = Packer(depth=5500, inner_tubular=tubing, outer_tubular=t4, packer_type="tubing")
p3 = Packer(depth=5000, inner_tubular=t4, outer_tubular=t3, packer_type="casing")

# Create and configure well
well = Well(name="Test Well 001", kop=5000)

# Add components to well
well.addTubular(t0)
well.addTubular(t1)
well.addTubular(t2)
well.addTubular(t3)
well.addTubular(t4)
well.addTubular(tubing)
well.addPacker(p1)
well.addPacker(p2)
well.addPacker(p3)

# Generate visualization
well.visualize()

This code generates:

sample wellbore diagram output

Component Documentation

Tubular

  • name: Component identifier
  • inD: Inner diameter (inches)
  • outD: Outer diameter (inches)
  • weight: Weight per foot (lb/ft)
  • top: Starting depth (ft)
  • low: Ending depth (ft)
  • shoeSize: Shoe diameter (inches, optional)
  • info: Additional information (optional)

Cement

  • top: Upper depth limit
  • low: Lower depth limit
  • tub0: Primary tubular component
  • tub1: Secondary tubular component

Packer

  • depth: Installation depth
  • inner_tubular: Interior tubular component
  • outer_tubular: Exterior tubular component
  • packer_type: Type specification ("tubing" or "casing")

Well

  • name: Well identifier
  • kop: Kick-off point depth
  • topVerView: Top view extent
  • mdl: Mudline depth

Requirements

  • Python >=3.7
  • numpy >=1.21.0
  • matplotlib >=3.4.0

License

This project is licensed under the MIT License - see the LICENSE file for details.

Some Arguably Unnecessary Lore lol

I started this project because I had some free time in grad school, and this was never meant to be a full-fleshed project. I updated this project because I had some free time at work. If you think the structure of this project is messed-up, it was doomed from the get go ig lol

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

wellarchitecturedesign-0.1.1.tar.gz (46.7 kB view details)

Uploaded Source

Built Distribution

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

wellarchitecturedesign-0.1.1-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file wellarchitecturedesign-0.1.1.tar.gz.

File metadata

  • Download URL: wellarchitecturedesign-0.1.1.tar.gz
  • Upload date:
  • Size: 46.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for wellarchitecturedesign-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7bfc7107f5993733a5fb8d491566dfa16b08c904af628b691cd26a42d39b99c7
MD5 b20ebe4a8c8b19fe951dbf5da12985e2
BLAKE2b-256 4de739e0a217f20ff47742e773e55676aa8e9eb51187cebeec252b03c567f298

See more details on using hashes here.

Provenance

The following attestation bundles were made for wellarchitecturedesign-0.1.1.tar.gz:

Publisher: python-publish.yml on fraclad/wellArchitectureDesign

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wellarchitecturedesign-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for wellarchitecturedesign-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8788b5225ecbc6e734017b3a7011e1cd5e85323988fc44eefb7f3cdbcb5d6c34
MD5 9dc5598ff4e61b2c6744053524e71a0a
BLAKE2b-256 82e26fbee6c51273f46e4d863e2eb17911bbbc4823d2ad8963450d881fb25507

See more details on using hashes here.

Provenance

The following attestation bundles were made for wellarchitecturedesign-0.1.1-py3-none-any.whl:

Publisher: python-publish.yml on fraclad/wellArchitectureDesign

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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