Class PipeCostEstimate

java.lang.Object
neqsim.process.costestimation.UnitCostEstimateBaseClass
neqsim.process.costestimation.pipe.PipeCostEstimate
All Implemented Interfaces:
Serializable

public class PipeCostEstimate extends UnitCostEstimateBaseClass
Cost estimation class for pipelines and piping systems.

This class provides pipe-specific cost estimation methods using chemical engineering cost correlations for carbon steel, stainless steel, and other piping materials. Includes costs for fittings, flanges, valves, and installation.

Version:
1.0
Author:
AGAS
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serialization version UID.
      See Also:
    • nominalDiameter

      private double nominalDiameter
      Pipe nominal diameter in inches.
    • pipeLength

      private double pipeLength
      Pipe length in meters.
    • pipeSchedule

      private String pipeSchedule
      Pipe schedule.
    • installationType

      private String installationType
      Installation type.
    • includeFittings

      private boolean includeFittings
      Include fittings cost.
    • fittingsPerHundredMeters

      private int fittingsPerHundredMeters
      Number of fittings per 100m.
    • numberOfFlanges

      private int numberOfFlanges
      Number of flanged connections.
    • includeInsulation

      private boolean includeInsulation
      Include insulation.
    • insulationThickness

      private double insulationThickness
      Insulation thickness in mm.
  • Constructor Details

    • PipeCostEstimate

      public PipeCostEstimate(MechanicalDesign mechanicalEquipment)
      Constructor for PipeCostEstimate.
      Parameters:
      mechanicalEquipment - the pipe mechanical design
  • Method Details

    • setNominalDiameter

      public void setNominalDiameter(double diameter)
      Set nominal diameter.
      Parameters:
      diameter - nominal diameter in inches
    • getNominalDiameter

      public double getNominalDiameter()
      Get nominal diameter.
      Returns:
      nominal diameter in inches
    • setPipeLength

      public void setPipeLength(double length)
      Set pipe length.
      Parameters:
      length - pipe length in meters
    • getPipeLength

      public double getPipeLength()
      Get pipe length.
      Returns:
      pipe length in meters
    • setPipeSchedule

      public void setPipeSchedule(String schedule)
      Set pipe schedule.
      Parameters:
      schedule - pipe schedule ("10", "40", "80", "160", "XXS")
    • setInstallationType

      public void setInstallationType(String type)
      Set installation type.
      Parameters:
      type - installation type ("above-ground", "buried", "subsea")
    • setIncludeFittings

      public void setIncludeFittings(boolean include)
      Set whether to include fittings.
      Parameters:
      include - true to include fittings
    • setFittingsPerHundredMeters

      public void setFittingsPerHundredMeters(int count)
      Set fittings per 100m of pipe.
      Parameters:
      count - number of fittings
    • setNumberOfFlanges

      public void setNumberOfFlanges(int count)
      Set number of flanges.
      Parameters:
      count - number of flanged connections
    • setIncludeInsulation

      public void setIncludeInsulation(boolean include)
      Set whether to include insulation.
      Parameters:
      include - true to include insulation
    • setInsulationThickness

      public void setInsulationThickness(double thickness)
      Set insulation thickness.
      Parameters:
      thickness - insulation thickness in mm
    • calcPurchasedEquipmentCost

      protected double calcPurchasedEquipmentCost()
      Calculate purchased equipment cost.

      Override this method in subclasses to provide equipment-specific cost correlations.

      Overrides:
      calcPurchasedEquipmentCost in class UnitCostEstimateBaseClass
      Returns:
      purchased equipment cost in USD
    • getScheduleFactor

      private double getScheduleFactor()
      Get pipe schedule factor.
      Returns:
      schedule factor
    • getInstallationTypeFactor

      private double getInstallationTypeFactor()
      Get installation type factor.
      Returns:
      installation type factor
    • calcFittingsCost

      private double calcFittingsCost()
      Calculate fittings cost.
      Returns:
      fittings cost in USD
    • calcFlangesCost

      private double calcFlangesCost()
      Calculate flanges cost.
      Returns:
      flanges cost in USD
    • calcInsulationCost

      private double calcInsulationCost()
      Calculate insulation cost.
      Returns:
      insulation cost in USD
    • calcPipeWeight

      public double calcPipeWeight()
      Calculate pipe weight.
      Returns:
      pipe weight in kg
    • getScheduleWallThickness

      private double getScheduleWallThickness()
      Get wall thickness from schedule (approximate values).
      Returns:
      wall thickness in meters
    • getTotalCost

      public double getTotalCost()
      Get total cost using simple weight-based method.
      Overrides:
      getTotalCost in class UnitCostEstimateBaseClass
      Returns:
      the total cost in USD
    • getCostBreakdown

      public Map<String,Object> getCostBreakdown()
      Get cost breakdown as map.
      Returns:
      map with cost breakdown