DARKSPY

Petrophysics Analysis Desktop Application

Version 1.0 | Developed at IIT (ISM) Dhanbad | Sep - Nov 2024

Introduction

DARKSPY (Data Analysis and Reservoir Knowledge System for PetroPhYsics) is a comprehensive desktop application designed to facilitate the analysis and visualization of well log data. Built with Python and PyQt5, this application provides geoscientists, engineers, and students with powerful tools to load, visualize, interpret, and analyze subsurface geological data through an intuitive graphical interface.

Key Features

Target Users

System Requirements

Minimum Requirements

Required Python Libraries

PyQt5 >= 5.15.0
numpy >= 1.19.0
pandas >= 1.2.0
matplotlib >= 3.3.0
scipy >= 1.6.0
seaborn >= 0.11.0
plotly >= 5.0.0
lasio >= 0.28
scikit-learn >= 0.24.0

Installation Guide

Method 1: Direct Installation (Recommended)

  1. Download the DARKSPY installer package
  2. Run the installer executable
  3. Follow the installation wizard prompts
  4. Launch DARKSPY from the desktop shortcut

Method 2: Python Source Installation

  1. Ensure Python 3.7+ is installed on your system
  2. Download the source code from the repository
  3. Install required dependencies:
  4. pip install -r requirements.txt
  5. Run the application:
  6. python main.py

Method 3: Virtual Environment Setup

# Create virtual environment
python -m venv darkspy_env

# Activate virtual environment
# Windows:
darkspy_env\Scripts\activate
# macOS/Linux:
source darkspy_env/bin/activate

# Install dependencies
pip install -r requirements.txt

# Run application
python main.py

Getting Started

First Launch

  1. Double-click the DARKSPY desktop icon or run from command line.
  2. The main application window will open with the "Data Loading" tab active.
  3. Review the "Motive" dialog that explains the application's purpose.
  4. Access the Help menu for detailed guidance.

Quick Start Workflow

  1. Load Data: Import your LAS, CSV, or XLSX files.
  2. Review Statistics: Check data quality and basic statistics.
  3. Visualize: Create well log plots and cross-plots.
  4. Analyze: Perform formation evaluation and quality control.
  5. Export: Save results and plots for reporting.

User Interface Overview

Main Window Components

The DARKSPY interface consists of four primary tabs:

1. Data Loading Tab

2. Well Data and Stats Tab

3. Basic Visualization Tab

4. Formation Evaluation Tab

Data Loading Module

Supported File Formats

LAS Files (.las)

CSV Files (.csv) & Excel Files (.xlsx, .xls)

Loading Data Process

  1. Select File: Click "Browse Files" or use drag-and-drop.
  2. File Validation: DARKSPY automatically validates the file format and checks data integrity.
  3. Data Preview: A preview is shown in the data table, flagging missing values.

Well Data and Statistics

Data Table Features

Statistical Analysis

The statistics panel provides count, mean, standard deviation, min/max, and percentiles (25th, 50th, 75th).

Basic Visualization

Multi-track Log Display

Create professional log plots with configurable tracks for gamma ray, resistivity, porosity, and custom curves. Features include depth correlation, logarithmic/linear scaling, and color-coded curves.

Cross-Plot Analysis

Generate insightful cross-plots like Neutron vs. Density for lithology or Porosity vs. Resistivity for saturation analysis. Includes regression fitting and correlation metrics.

Histogram Analysis

Analyze data distributions with customizable histograms, bin sizes, and statistical overlays.

Formation Evaluation

Quality Control Module

The quality control system uses the Isolation Forest algorithm, an unsupervised machine learning method, to identify outliers and anomalies in your data. Results are displayed in an interactive scatter plot where inliers are blue and outliers are orange.

V-Shale Analysis

Calculates the volume of shale using gamma ray logs with the linear model:

Vsh = (GR - GR_min) / (GR_max - GR_min)

The application supports Linear, Larionov, and Steiber models with configurable baselines.

Porosity Analysis

Provides multiple methods for calculating effective porosity, including neutron, density, and combined neutron-density, with automatic shale corrections.

Water Saturation Analysis

Implements Archie's equation for water saturation with user-defined parameters:

Sw = [(a * Rw) / (φ^m * Rt)]^(1/n)

Reservoir Evaluation

Identifies reservoir-quality rock using user-defined cutoffs for V-shale, water saturation, and porosity. It automatically calculates net pay and presents results in a five-track display.

Quality Control Tools

Includes automated checks for range validation, data continuity, and unit consistency. It also provides both statistical (Z-score, IQR) and machine learning (Isolation Forest, LOF) methods for advanced outlier detection.

Statistical Analysis

Descriptive Statistics

Calculates a full suite of descriptive statistics for each curve, including mean, median, mode, standard deviation, variance, skewness, and kurtosis.

Correlation Analysis

Offers both Pearson (linear) and Spearman (rank-based) correlation analysis to explore relationships between well log curves, complete with matrix visualizations.

Export and Reporting

Data and Plot Export

Export processed data to various formats including CSV, XLSX, LAS, and JSON. Plots can be saved in high-resolution formats like PNG, PDF, and SVG for publications and reports.

Report Generation

Generate automated or custom reports that compile summary statistics, QC results, and formation evaluation summaries into a professional, print-ready document.

Troubleshooting

Installation Problems

Issue: Application won't start.
Solution: Verify Python 3.7+ is installed, check all dependencies with pip install -r requirements.txt, and restart your computer.

Data Loading Issues

Issue: LAS file won't load.
Solution: Verify the file is a valid LAS format, check for corruption, and ensure file permissions are correct.

Visualization Problems

Issue: Plots not displaying correctly.
Solution: Update your graphics drivers and the matplotlib library. Ensure the selected data curves contain valid numerical values.

Contact Information

Development Team

Institution: Indian Institute of Technology (ISM) Dhanbad
Lead Developer: Md Ashraf
Email: mdashraf620@gmail.com

Reporting Issues

When reporting bugs, please include your OS, Python version, a detailed description of the problem, steps to reproduce, and any relevant error messages or log files.

Appendices

Appendix A: Keyboard Shortcuts

Appendix C: Supported Units