Full-Featured. Fully GPU.
Permeon implements production-grade reservoir simulation physics with a solver pipeline designed from first principles for GPU hardware. Every feature you need — none of the CPU overhead.
Physics & Numerics
Three-Phase Blackoil Formulation
Full oil–water–gas formulation with pressure-dependent PVT. Dead oil, live oil, dissolved gas, gas cap, and vaporized oil options. Tabulated (PVTO, PVTG, PVTW) and correlation-based input.
IMPES and Fully Implicit Solvers
Implicit Pressure Explicit Saturation (IMPES) for fast, weakly-coupled problems. Sequential fully-implicit (SFI) for tight coupling and stability. Adaptive switching based on convergence.
Newton–Raphson Nonlinear Solver
Robust Newton iteration with line-search damping. Convergence criteria tunable per simulation. Stagnation detection and fallback strategies prevent unnecessary timestep cuts.
Preconditioned Linear Solver
CPR (Constrained Pressure Residual) two-stage preconditioner with ILU(k) smoother. AMG pressure stage. Entire solve pipeline runs on GPU with cuSPARSE and custom kernels.
Thermal & Geothermal
Energy Equation (Non-Isothermal Flow)
A full temperature solve on top of the flow: multiphase enthalpy advection (water and oil carry heat), Fourier conduction (THCONR), and well heat sources. Sequential (THERMAL) and sequential-implicit (THERMCPL) formulations; injectors enter at WTEMP. Mass balance stays exact under the discrete maximum principle.
Low- to High-Enthalpy Geothermal
Liquid-dominated doublets for district heating / direct-use, through high-enthalpy water–steam flash (H2OSTEAM) using IAPWS-IF97 steam tables with latent heat across boiling, plus enhanced-geothermal (EGS) fractured-well and doublet configurations.
Validated Thermal Front
Thermal-breakthrough retardation validated against the Ogata-Banks and Avdonin analytic solutions to ~1–2%, and cross-validated against the open-DARTS geothermal simulator (independent operator-based code) to ~2% on a 1-D doublet.
CO₂ Storage & CO₂-Plume Geothermal
CO₂–brine thermodynamics (solubility via Spycher-Pruess, density, viscosity) for carbon storage (CO2STORE / SALINITY) and CO₂-plume geothermal (CPG) with a fully-coupled (p,T) energy solve. External thermodynamics cross-checked against open-DARTS and MOOSE.
Coupled Geomechanics (HM / THM)
Poroelastic Compaction & Subsidence
Linear poroelasticity (Biot) coupled to the flow. A geomech-consistent uniaxial compaction drive feeds the formation compressibility directly into the black-oil flow; surface subsidence follows from the volumetric strain. Enabled with a single GEOMECH keyword (E, ν, Biot α).
Cell-Centered MPSA Stress Field
A 3-D multi-point stress approximation (MPSA) displacement/stress solve over the full logical grid, with inactive over/under-burden rock deforming passively (Biot-α gated). Roller / traction / free-surface boundary conditions. Validated against the Terzaghi and Mandel analytic consolidation problems.
Two-Way Coupling & Thermal Stress (THM)
Fixed-stress two-way feedback: the true volumetric strain updates porosity (and pore volume) back into the flow. Thermo-poroelastic stress (−3K·α_T·ΔT) couples the energy equation to the mechanics — the cold-reinjection thermal-contraction mechanism behind induced-seismicity and fault-reactivation assessment.
Stress-Dependent Fracture Conductivity
For stress-sensitive / unconventional rock: an exponential effective-stress law scales transmissibility from the computed stress field (not just a pressure proxy), capturing the depletion-driven permeability loss of fractures. Pressure-driven rock compaction tables (ROCKTAB / ROCKCOMP, reversible & hysteretic) are also supported.
Grid & Geometry
Corner-Point Geometry
Full corner-point grid (CPG) support with COORD/ZCORN keywords. Faults with transmissibility multipliers, pinchouts, and zero-thickness cells handled correctly.
Non-Neighboring Connections
Explicit NNC support for faults, aquifer connections, and complex geological structures. Full transmissibility calculation and override.
Grid Multipliers & Transmissibilities
MULTPV, MULTX/Y/Z, MULTFLT, MULTREGT — complete set of transmissibility and pore volume multipliers. Region-based and individual cell overrides.
Well & Production
Multi-Layer Completions
Multiple perforations per well across any combination of grid layers. Individual perforation skin, effective wellbore radius, and transmissibility factors.
Well Control & Constraints
BHP, ORAT, WRAT, GRAT, LRAT, and RESV controls with automatic switching. Group control hierarchy. Producer and injector wells with rate and pressure limits.
Peaceman Well Model
Standard Peaceman (1983) well inflow model with skin, drilling damage, and non-Darcy flow corrections. Customizable equivalent wellbore radius.
Schedule Management
Full SCHEDULE section support: well drilling/completion changes, rate adjustments, shut-in/reopen, injection switching, group hierarchy changes across simulation time.
Output & Integration
Eclipse-Compatible Output
EGRID and UNRST binary output files. Full SUMMARY section with WOPR, WWPR, WGPR, WBHP, WOIR, FOPT, FWCT, FGOR, and all standard vectors. SMSPEC/UNSMRY format.
VTK Export
Export 3D grid properties and dynamic solutions as VTK UnstructuredGrid files for visualization in ParaView, VisIt, or any VTK-compatible tool.
REST API
Submit jobs, poll status, download results, stream logs — all via RESTful API with JSON payloads. Python SDK and example notebooks included.
Eclipse-Compatible by Design
Permeon reads the standard .DATA file format used by Eclipse, tNavigator, OPM, and others. Existing models migrate with zero conversion effort. Keywords not yet supported are flagged with clear warnings rather than silent errors.