# Geology - Professional Geological Model Reconstruction Toolkit
# Core dependencies for geological inpainting and modeling

# =============================================================================
# Core Scientific Computing Stack
# =============================================================================
numpy>=1.21.0                    # Fundamental array computing
matplotlib>=3.5.0                # Scientific plotting and visualization  
scipy>=1.8.0                     # Scientific computing algorithms
pandas>=1.4.0                    # Data manipulation and analysis

# =============================================================================
# Machine Learning and Image Processing
# =============================================================================
scikit-image>=0.19.0             # Image processing and inpainting algorithms
scikit-learn>=1.1.0              # Machine learning for classification
joblib>=1.1.0                    # Efficient storage of numpy arrays

# =============================================================================
# Geospatial and Earth Science Libraries
# =============================================================================
geopandas>=0.11.0                # Geospatial data analysis
shapely>=1.8.0                   # Geometric operations
pyproj>=3.3.0                    # Cartographic projections and geodetic computations
fiona>=1.8.0                     # Reading and writing spatial data files

# =============================================================================
# 3D Visualization and VTK Integration
# =============================================================================
vtk>=9.0.0                       # 3D visualization and VTK file format support

# =============================================================================
# Specialized Geometric and Spatial Processing
# =============================================================================
alphashape>=1.3.0                # Alpha shape computation for geological boundaries
descartes>=1.1.0                 # Convert geometries to matplotlib patches

# =============================================================================
# Interactive Computing and Notebook Support
# =============================================================================
jupyter>=1.0.0                   # Interactive notebook environment
ipykernel>=6.0.0                 # Jupyter kernel for Python

# =============================================================================
# Data Format Support
# =============================================================================
openpyxl>=3.0.0                  # Excel file reading and writing
xlrd>=2.0.0                      # Excel file reading (legacy support)

# =============================================================================
# Optional Enhanced Visualization (install separately if needed)
# =============================================================================
# pyvista>=0.36.0                # Modern VTK interface for 3D visualization
# mayavi>=4.7.0                  # Advanced 3D scientific visualization
# plotly>=5.0.0                  # Interactive plotting and web visualization
# seaborn>=0.11.0                # Statistical data visualization

# =============================================================================
# Optional Geospatial Enhancement (install separately if needed)
# =============================================================================
# rasterio>=1.3.0                # Raster data I/O (GeoTIFF, etc.)
# contextily>=1.2.0              # Web map tiles and basemaps
# folium>=0.12.0                 # Interactive web mapping

# =============================================================================
# Development and Testing (install separately for development)
# =============================================================================
# pytest>=7.0.0                  # Testing framework
# pytest-cov>=3.0.0              # Coverage testing
# black>=22.0.0                  # Code formatting
# flake8>=4.0.0                  # Code linting
# sphinx>=4.0.0                  # Documentation generation