Reference by topic
This reference documents the reservoir meaning of the PetroScript objects that are implemented today. It is intentionally written from PetroScript’s semantic API, not copied from OPM or ECLIPSE manuals. Keyword names appear only to explain what the current compiler emits.
Every public name, one line each with its call and first docstring line, is on the API map, generated from the census.
Reading path
Section titled “Reading path”The semantic domain pages document the reservoir meaning, the PetroScript API, units/shapes, validation pitfalls, and what each concept lowers to:
- Grid and rock — Cartesian geometry, porosity, permeability, and rock compressibility.
- Rock compaction — pressure-dependent and water-induced compaction tables and options.
- Fluids and PVT — black-oil phases, water/gas/oil PVT, and surface densities.
- Phase formulations — semantic black-oil/gas-water formulation declarations, vaporized-water obligations, and SATOPTS diagnostics.
- Relative permeability and SCAL — water-oil and gas-oil mobility tables.
- Initialization — equilibrium contacts, datum pressure, and solution GOR by depth.
- Wells and schedule — wells, completions, controls, report settings, and timesteps.
- Multisegment wellbores — segment topologies, completion links, and inflow-control devices.
- Facilities and networks — production-system networks, node efficiency, branch lift quantities, network balancing, and typed VFP tables.
- Summary requests — field, well, and block time-series requests.
- User-defined quantities, tables, and actions — typed UDQ definitions and evaluation policy, closed-interpolation lookup tables, repeat-limited action rules, and trusted hooks.
- Passive tracers — phase-aware water/gas tracers and well concentration controls.
- Boundary conditions and source terms — typed boundary controls, cell mass/heat source terms, and thermal aquifer state.
- Transport — diffusion, dispersion, and bounded semantic grid-array operations.
- MICP — microbial plugging parameters, diffusion, and initial state.
- Miscible and surfactant EOR — semantic miscible displacement, Todd-Longstaff mixing, and fail-closed surfactant viscosity intent.
- Polymer EOR — semantic polymer package, rheology, shear, rock-density, and group reinjection intent.
- Storage, brine, and salt chemistry — CO2 storage activity models, brine salinity basis, and salt precipitation factors.
- Physics guards — every
physics.*validation check with its tier, thresholds, and rationale, plus how a model accepts a warning it means (acknowledged_warnings=). - Deck records — a native deck read as the ordered keyword occurrences it states, typed records and the include mode explicit; a reader, never an authoring door.
- Build a model from a bundle of tables — one directory of checked tables a model is assembled from: the sheet writer, the recipe, the registered sheet schemas and their typed refusals; the schemas as SCHEMAS.json and the recipe’s keys with a minimal working example as RECIPE.json.
Two support-status references round out the user reference:
- Keyword catalog — keyword → section/fields/record-widths, the one source the compiler’s schemas are read from.
- Keyword registry — one row per keyword: section, role, Flow’s treatment, PetroScript’s status, and the laws that keep the render, the import and the registry in step.
- Eclipse keyword to PetroScript — generated: one line per deck keyword with its import status and the spelling that writes it.
Support-status vocabulary
Section titled “Support-status vocabulary”The reference uses three statuses consistently:
- emitted now — current section lowerers generate this deck keyword/vector from semantic PetroScript objects.
- catalog/profile metadata only — PetroScript knows the keyword name or schema for validation/catalog purposes, but current semantic lowerers do not emit it.
- future/unsupported — the concept is outside the current implementation.
The keyword catalog is not the source of truth for emitted behavior. Current emission must be backed by the compiler lowerers.
PetroScript is licensed under the Apache License 2.0. © 2026 Blauweiss EDV LLC. PetroScript by Blauweiss AI.For AI agents: llms.txt