Class ReservoirInput

java.lang.Object
neqsim.process.fielddevelopment.concept.ReservoirInput
All Implemented Interfaces:
Serializable

public final class ReservoirInput extends Object implements Serializable
Reservoir fluid and conditions input for field concept definition.

Captures the key reservoir characteristics needed for concept screening:

  • Fluid type (lean gas, rich gas, volatile oil, black oil, etc.)
  • GOR - Gas/Oil ratio
  • CO2 and H2S content
  • Water cut and salinity
  • Reservoir pressure and temperature
Version:
1.0
Author:
ESOL
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • fluidType

      private final ReservoirInput.FluidType fluidType
    • gor

      private final double gor
    • gorUnit

      private final String gorUnit
    • co2Percent

      private final double co2Percent
    • h2sPercent

      private final double h2sPercent
    • n2Percent

      private final double n2Percent
    • waterCut

      private final double waterCut
    • waterSalinity

      private final double waterSalinity
    • reservoirPressure

      private final double reservoirPressure
    • reservoirTemperature

      private final double reservoirTemperature
    • apiGravity

      private final double apiGravity
    • gasGravity

      private final double gasGravity
    • resourceEstimate

      private final double resourceEstimate
    • resourceUnit

      private final String resourceUnit
    • recoveryFactor

      private final double recoveryFactor
    • resourceP10

      private final double resourceP10
    • resourceP50

      private final double resourceP50
    • resourceP90

      private final double resourceP90
    • customComposition

      private final Map<String,Double> customComposition
  • Constructor Details

  • Method Details

    • builder

      public static ReservoirInput.Builder builder()
      Creates a new builder for ReservoirInput.
      Returns:
      new builder instance
    • leanGas

      public static ReservoirInput.Builder leanGas()
      Creates a builder initialized with typical lean gas properties.
      Returns:
      builder with lean gas defaults
    • richGas

      public static ReservoirInput.Builder richGas()
      Creates a builder initialized with typical rich gas properties.
      Returns:
      builder with rich gas defaults
    • gasCondensate

      public static ReservoirInput.Builder gasCondensate()
      Creates a builder initialized with typical gas condensate properties.
      Returns:
      builder with gas condensate defaults
    • blackOil

      public static ReservoirInput.Builder blackOil()
      Creates a builder initialized with typical black oil properties.
      Returns:
      builder with black oil defaults
    • getFluidType

      public ReservoirInput.FluidType getFluidType()
    • getGor

      public double getGor()
    • getGorUnit

      public String getGorUnit()
    • getCo2Percent

      public double getCo2Percent()
    • getH2sPercent

      public double getH2sPercent()
    • getN2Percent

      public double getN2Percent()
    • getWaterCut

      public double getWaterCut()
    • getWaterSalinity

      public double getWaterSalinity()
    • getReservoirPressure

      public double getReservoirPressure()
    • getReservoirTemperature

      public double getReservoirTemperature()
    • getApiGravity

      public double getApiGravity()
    • getGasGravity

      public double getGasGravity()
    • getResourceEstimate

      public double getResourceEstimate()
      Gets the in-place resource estimate.
      Returns:
      resource estimate in getResourceUnit()
    • getResourceUnit

      public String getResourceUnit()
      Gets the resource estimate unit.
      Returns:
      resource estimate unit such as GSm3, MMbbl, or MMboe
    • getRecoveryFactor

      public double getRecoveryFactor()
      Gets the target recovery factor.
      Returns:
      recovery factor as a fraction from 0 to 1
    • getRecoverableResourceEstimate

      public double getRecoverableResourceEstimate()
      Gets the recoverable resource estimate.
      Returns:
      recoverable resource estimate in getResourceUnit()
    • hasResourceUncertainty

      public boolean hasResourceUncertainty()
      Checks whether P10/P50/P90 resource uncertainty is available.
      Returns:
      true if resource uncertainty has been specified
    • getResourceP10

      public double getResourceP10()
      Gets the P10 resource estimate.
      Returns:
      P10 resource estimate in getResourceUnit()
    • getResourceP50

      public double getResourceP50()
      Gets the P50 resource estimate.
      Returns:
      P50 resource estimate in getResourceUnit()
    • getResourceP90

      public double getResourceP90()
      Gets the P90 resource estimate.
      Returns:
      P90 resource estimate in getResourceUnit()
    • getRecoverableResourceP10

      public double getRecoverableResourceP10()
      Gets the P10 recoverable resource estimate.
      Returns:
      P10 recoverable resource in getResourceUnit()
    • getRecoverableResourceP50

      public double getRecoverableResourceP50()
      Gets the P50 recoverable resource estimate.
      Returns:
      P50 recoverable resource in getResourceUnit()
    • getRecoverableResourceP90

      public double getRecoverableResourceP90()
      Gets the P90 recoverable resource estimate.
      Returns:
      P90 recoverable resource in getResourceUnit()
    • getCustomComposition

      public Map<String,Double> getCustomComposition()
    • isSour

      public boolean isSour()
      Checks if this is a sour fluid (H2S > 0.5%).
      Returns:
      true if sour
    • isHighCO2

      public boolean isHighCO2()
      Checks if this is a high-CO2 fluid (CO2 > 5%).
      Returns:
      true if high CO2
    • hasSignificantWater

      public boolean hasSignificantWater()
      Checks if water handling is significant (water cut > 10%).
      Returns:
      true if significant water
    • getWaterCutPercent

      public double getWaterCutPercent()
      Gets the water cut as a percentage (0-100).
      Returns:
      water cut percent
    • getH2SPercent

      public double getH2SPercent()
      Gets the H2S content as a percentage.
      Returns:
      H2S percent
    • hasLiquidProduction

      public boolean hasLiquidProduction()
      Checks if this fluid has liquid production (oil or condensate).
      Returns:
      true if liquid production expected
    • toString

      public String toString()
      Overrides:
      toString in class Object