NE

neqsim-field-development

Assists with full-lifecycle field development planning and integrated project evaluation using NeqSim.

Install

mkdir -p .claude/skills/neqsim-field-development && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/10655" && unzip -o skill.zip -d .claude/skills/neqsim-field-development && rm skill.zip

Installs to .claude/skills/neqsim-field-development

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Field development workflows, concept selection, and integrated project evaluation using NeqSim. USE WHEN: performing field development studies, concept screening, tieback analysis, production forecasting, or integrated field planning. Covers the full lifecycle from discovery through operations with NeqSim's field development classes.
335 chars✓ has a “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Advanced

Key capabilities

  • Perform concept screening
  • Run production forecasting
  • Model field development lifecycle
  • Conduct tieback analysis

How it works

Uses NeqSim's field development framework to model the lifecycle from discovery to operations.

Inputs & outputs

You give it
Field development parameters
You get back
Concept KPIs and economic results

When to use neqsim-field-development

  • Perform concept screening
  • Run production forecasting
  • Model field development lifecycle
  • Conduct tieback analysis

About this skill

NeqSim Field Development Skill

Comprehensive reference for oil & gas field development using NeqSim's field development framework. Covers the full lifecycle from discovery through decommissioning, with emphasis on concept selection, production forecasting, economics, and risk assessment.


Field Development Lifecycle (Decision Gates)

PhaseDecision GateFidelityAccuracyNeqSim Focus
DiscoverySCREENING±50%Volumetrics, PVT lab, analogs
FeasibilityDG1SCREENING±50%Flow assurance screening, cost correlations, Arps decline
Concept SelectDG2CONCEPTUAL±30%EOS tuning, IPR/VLP, process simulation, concept ranking
FEEDDG3/DG4DETAILED±20%Full process model, reservoir coupling, Monte Carlo NPV
OperationsDETAILED±10%History matching, debottlenecking, optimization
Late LifeDETAILED±20%IOR/EOR, recompletion, decommissioning cost

Workflow Orchestration

FieldDevelopmentWorkflow workflow = new FieldDevelopmentWorkflow("Field Name");
workflow.setStudyPhase(StudyPhase.FEASIBILITY);
workflow.setFidelityLevel(FidelityLevel.SCREENING);

// Set reservoir
ReservoirInput reservoir = new ReservoirInput();
reservoir.setFluidType("gas_condensate");
reservoir.setGIIP(1.5e9);  // Sm3
reservoir.setReservoirPressure(350.0);  // bara
reservoir.setReservoirTemperature(95.0);  // °C
reservoir.setRecoveryFactor(0.65);
workflow.setReservoirInput(reservoir);

// Set wells
WellsInput wells = new WellsInput();
wells.setNumberOfProducers(4);
wells.setWaterDepth(350.0);
wells.setTotalDepth(3800.0);
workflow.setWellsInput(wells);

// Set infrastructure
InfrastructureInput infra = new InfrastructureInput();
infra.setDevelopmentType("subsea_tieback");
infra.setTiebackDistance(25.0);  // km
workflow.setInfrastructureInput(infra);

// Run
WorkflowResult result = workflow.run();

Key Result Classes

ClassKey Fields
WorkflowResultnpvMUSD, irrPercent, paybackYears, totalCapexMUSD, totalOpexMUSD, totalPowerMW, co2IntensityKgPerBoe
ConceptKPIsSame as WorkflowResult + concept-level metrics
CashFlowResultYear-by-year revenue, opex, capex, tax, net_cash_flow, cumulative_dcf

Concept Selection (Multi-Concept Comparison)

Define Concepts

// Concept 1: Subsea tieback to existing platform
FieldConcept tieback = new FieldConcept("Subsea Tieback");
tieback.setReservoirInput(reservoir);
tieback.setWellsInput(wells);
InfrastructureInput tiebackInfra = new InfrastructureInput();
tiebackInfra.setDevelopmentType("subsea_tieback");
tiebackInfra.setTiebackDistance(25.0);
tiebackInfra.setHostCapacity(50000.0);  // boe/d
tieback.setInfrastructureInput(tiebackInfra);

// Concept 2: Standalone FPSO
FieldConcept fpso = new FieldConcept("Standalone FPSO");
fpso.setReservoirInput(reservoir);
fpso.setWellsInput(wells);
InfrastructureInput fpsoInfra = new InfrastructureInput();
fpsoInfra.setDevelopmentType("fpso");
fpso.setInfrastructureInput(fpsoInfra);

// Concept 3: Fixed platform
FieldConcept platform = new FieldConcept("Fixed Platform");
// ... configure ...

Batch Evaluation

BatchConceptRunner runner = new BatchConceptRunner();
runner.addConcept(tieback);
runner.addConcept(fpso);
runner.addConcept(platform);
runner.setFluid(tunedEosFluid);
runner.setOilPrice(70.0);    // USD/bbl
runner.setGasPrice(0.30);    // USD/Sm3
runner.setDiscountRate(0.08);

List<ConceptKPIs> results = runner.runAll();

// Rank by NPV
DevelopmentOptionRanker ranker = new DevelopmentOptionRanker();
for (ConceptKPIs kpi : results) {
    ranker.addOption(kpi);
}
List<ConceptKPIs> ranked = ranker.rankByNPV();

Physically Coupled Lifetime Comparison

Use process.fielddevelopment.lifecycle after rapid screening when reservoir pressure, well/SURF hydraulics, processing capacity, gas injection and economics must share one time-dependent state:

FieldLifecycleEvaluator evaluator = new FieldLifecycleEvaluator();
List<FieldLifecycleResult> ranked = evaluator.evaluateAll(
    NorwegianOilFieldCase.createDevelopmentPortfolio());

FieldLifecycleModel accepts a user-built ProcessSystem or a complete multi-area ProcessModel, so screening concepts can be refined without replacing the lifecycle/economic interface. Use existingSurfAndFacility(...) when the new field enters a shared existing SURF area before a host facility; wire the areas with shared streams and map host feeds at their actual subsea or topsides entry points. Whole-model execution, power, sizing and area::equipment bottlenecks then include both SURF and processing. Each concept must own an independent mutable reservoir/process model. Use FacilityLifecycleStrategy.greenfield(...) to auto-size a new detailed processing facility from design cases. Use FacilityLifecycleStrategy.tieback(...) with the existing HostFacility, ProductionProfileSeries, CapacityAllocationPolicy, and HoldbackPolicy types for a producing-host tieback. Connect the model's optional host oil/gas/water feeds to the real shared process so annual FieldLifecycleResult records host load, admitted satellite rate, deliberate holdback, capacity-deferred oil, operating and requested utilization, and their primary bottlenecks. Set FieldLifecycleModel.setProductionPotentialProvider(...) when a detailed NeqSim well/network model or imported reservoir schedule should replace the reference aggregate PI/water-cut potential calculation.

Use AreaDevelopmentPortfolio when one discovery can be routed to several independently modeled producing assets or to a new facility. Add one AreaDevelopmentOption per host/tieback route or greenfield alternative, then use AreaDevelopmentEvaluator to compare route identity, NPV, break-even, recovery, deferment, utilization, bottlenecks and specification compliance. Each option must own its reservoir, SURF and mutable process state.

Attach FieldProductSpecifications to each configuration to check live export-gas CO2/H2S/O2, ISO 6976 GCV/Wobbe, dew points, stabilized-oil RVP/BS&W and treated-water oil-in-water. The built-in evaluator uses NeqSim stream analysers and standards; connect FieldProductQualityProvider where a real facility has a dedicated water-treatment or online-analyser model. Choose REPORT_ONLY for diagnostics or REJECT_OPTION to exclude non-compliant options from the area recommendation.

For brownfield studies, preserve actual equipment limits (autoSizeDetailedProcess(false)). For greenfield studies, run the process at the simultaneous design case, auto-size equipment with the selected design margin, and use explicit oil/gas/water/liquid nameplates for non-coincident component peak cases. Put any debottleneck capacity change in capacityFromYear(...) and its CAPEX in FieldLifecycleConfiguration. Use FacilityModificationPlanner.analyse(result, targetUtilization) to create traceable screening candidates from annual requested utilization and deferred oil. Implement, size and cost each candidate in a cloned detailed process before comparing its rerun lifecycle; the planner's multiplier is not a substitute for that engineering model. See docs/fielddevelopment/FIELD_LIFECYCLE_SIMULATION.md for the connection points and fidelity boundaries.


Reservoir & Well Modeling

Material Balance (SimpleReservoir)

SimpleReservoir reservoir = new SimpleReservoir("Main Reservoir");
reservoir.setReservoirFluid(fluid.clone(), giipSm3, reservoirThickness, reservoirArea);
reservoir.addOilProducer("P1");
reservoir.addWaterInjector("I1");

// Depletion with time steps
for (int year = 0; year < 20; year++) {
    reservoir.setProductionRate(annualRate[year]);
    reservoir.run();
    pressureProfile[year] = reservoir.getReservoirPressure();
}

Inverse Material Balance / Reserves Surveillance

Regress OGIP/OOIP, drive mechanism and aquifer support directly from a measured pressure-vs-cumulative-production history (the "inverse" of the forward SimpleReservoir model). Package neqsim.pvtsimulation.reservoirproperties.materialbalance:

import neqsim.pvtsimulation.reservoirproperties.materialbalance.GasMaterialBalance;
import neqsim.pvtsimulation.reservoirproperties.materialbalance.OilMaterialBalance;
import neqsim.pvtsimulation.reservoirproperties.materialbalance.VanEverdingenHurstAquifer;

// Gas: P/Z straight line → OGIP (+ Cole plot aquifer diagnostic)
GasMaterialBalance.Result g = GasMaterialBalance.fitVolumetric(pressure, z, gp);
double ogip = g.getOgip();

// Oil: Havlena-Odeh depletion / gas-cap / water drive + Pirson drive indices
OilMaterialBalance.Result o = OilMaterialBalance.fitGasCapDrive(f, eo, eg);

// Aquifer: Van Everdingen-Hurst / Carter-Tracy cumulative influx + ECLIPSE AQUTAB
double u = VanEverdingenHurstAquifer.aquiferConstant(phi, ct, h, re, angleDeg);
double[] we = VanEverdingenHurstAquifer.cumulativeInfluxCarterTracy(tD, deltaP, u, reD);

See the neqsim-production-optimization skill for the full surveillance workflow.

Injection Strategy (Voidage Replacement)

InjectionStrategy strategy = InjectionStrategy.waterInjection(1.0);  // VRR = 1.0
InjectionResult injection = strategy.calculateInjection(
    reservoir, oilRate, gasRate, waterRate
);
double requiredInjection = injection.waterInjectionRate;  // Sm3/d

Well Performance (IPR/VLP Nodal Analysis)

WellSystem well = new WellSystem("Producer-1", reservoirStream);
well.setIPRModel(WellSystem.IPRModel.VOGEL);
well.setVogelParameters(qTest, pwfTest, pRes);
well.setTubingLength(2500.0, "m");
well.setTubingDiameter(4.0, "in");
well.setPressureDropCorrelation(
    TubingPerformance.PressureDropCorrelation.BEGGS_BRILL);
well.setWellheadPressure(50.0, "bara");
well.run();

double operatingRate = well.getOperatingFlowRate("Sm3/day");
double operatingBHP = well.getOperatingBHP("bara");

Content truncated.

When not to use it

  • Real-time operations monitoring
  • Non-NeqSim field studies

Prerequisites

NeqSim

Limitations

  • Requires specific unit conventions
  • API under active development

How it compares

Integrates reservoir, well, and infrastructure modeling into a single economic evaluation framework.

Compared to similar skills

neqsim-field-development side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
neqsim-field-development (this skill)03moNo flagsAdvanced
run_flash_experiments01moReviewAdvanced
workflow-orchestration-patterns102moNo flagsAdvanced
java-pro344moNo flagsAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

run_flash_experiments

equinor

Execute NeqSim flash calculations in batch mode, collect metrics, and produce

00

workflow-orchestration-patterns

wshobson

Design durable workflows with Temporal for distributed systems. Covers workflow vs activity separation, saga patterns, state management, and determinism constraints. Use when building long-running processes, distributed transactions, or microservice orchestration.

10117

java-pro

sickn33

Master Java 21+ with modern features like virtual threads, pattern matching, and Spring Boot 3.x. Expert in the latest Java ecosystem including GraalVM, Project Loom, and cloud-native patterns. Use PROACTIVELY for Java development, microservices architecture, or performance optimization.

3492

springboot-patterns

affaan-m

Spring Boot 架构模式、REST API 设计、分层服务、数据访问、缓存、异步处理和日志记录。适用于 Java Spring Boot 后端工作。

1147

backend-microservice-development

TencentBlueKing

后端微服务开发规范,涵盖目录结构、分层架构(API/Service/DAO)、依赖注入、配置管理、Spring Boot 最佳实践。当用户进行后端开发、创建新微服务、编写 Kotlin/Java 代码或设计服务架构时使用。

213

microservice-infrastructure

TencentBlueKing

微服务基础设施指南,涵盖条件配置、事件驱动架构、服务间通信、国际化与日志等微服务架构的核心基础设施。当用户实现服务间调用、配置多环境、实现异步通信、处理国际化或规范日志输出时使用。

411

Search skills

Search the agent skills registry