Class CoolingWaterSystem

java.lang.Object
neqsim.process.equipment.heatexchanger.CoolingWaterSystem
All Implemented Interfaces:
Serializable

public class CoolingWaterSystem extends Object implements Serializable
Cooling water system designer for process plant utility sizing.

Collects cooling duty requirements from process coolers, sizes the cooling water circulation system (pump, network, cooling tower), and estimates operating cost.

Usage example:


CoolingWaterSystem cws = new CoolingWaterSystem();
cws.addCoolingRequirement("After-Cooler 1", 5000.0, 40.0, 30.0); // kW, outlet C, approach C
cws.addCoolingRequirement("Condenser", 3000.0, 55.0, 25.0);
cws.setCoolingWaterSupplyTemperature(25.0); // C
cws.setCoolingWaterReturnTemperature(35.0); // C
cws.setElectricityCost(0.10); // $/kWh
cws.calculate();
double cwFlow = cws.getTotalCWFlowRate(); // m3/hr
double pumpPower = cws.getPumpPower(); // kW
double annualCost = cws.getAnnualOperatingCost(); // $

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

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • CP_WATER

      private static final double CP_WATER
      Specific heat capacity of water in kJ/(kg*K).
      See Also:
    • DENSITY_WATER

      private static final double DENSITY_WATER
      Water density in kg/m3.
      See Also:
    • cwSupplyTemperatureC

      private double cwSupplyTemperatureC
      CW supply temperature in C (default 25 C).
    • cwReturnTemperatureC

      private double cwReturnTemperatureC
      CW return temperature in C (default 35 C).
    • systemPressureDrop

      private double systemPressureDrop
      CW system pressure drop in bar (default 3 bar).
    • pumpEfficiency

      private double pumpEfficiency
      CW pump efficiency (default 0.75).
    • towerFanPowerFraction

      private double towerFanPowerFraction
      Cooling tower fan power as fraction of duty (default 0.01 = 1%).
    • electricityCost

      private double electricityCost
      Electricity cost in $/kWh (default 0.10).
    • annualOperatingHours

      private double annualOperatingHours
      Annual operating hours (default 8000).
    • requirements

      private final List<CoolingWaterSystem.CoolingRequirement> requirements
      Cooling requirements.
    • totalDutyKW

      private double totalDutyKW
    • totalCWFlowRateM3PerHr

      private double totalCWFlowRateM3PerHr
    • pumpPowerKW

      private double pumpPowerKW
    • towerFanPowerKW

      private double towerFanPowerKW
    • totalElectricalPowerKW

      private double totalElectricalPowerKW
    • annualOperatingCostDollars

      private double annualOperatingCostDollars
    • calculated

      private boolean calculated
  • Constructor Details

    • CoolingWaterSystem

      public CoolingWaterSystem()
      Creates a new cooling water system.
  • Method Details

    • addCoolingRequirement

      public void addCoolingRequirement(String name, double dutyKW, double processOutletTempC, double approachDeltaTC)
      Adds a cooling duty requirement.
      Parameters:
      name - cooler name
      dutyKW - required cooling duty in kW
      processOutletTempC - process outlet temperature in C
      approachDeltaTC - minimum approach temperature in C
    • setCoolingWaterSupplyTemperature

      public void setCoolingWaterSupplyTemperature(double tempC)
      Sets the cooling water supply temperature.
      Parameters:
      tempC - supply temperature in Celsius
    • setCoolingWaterReturnTemperature

      public void setCoolingWaterReturnTemperature(double tempC)
      Sets the cooling water return temperature.
      Parameters:
      tempC - return temperature in Celsius
    • setSystemPressureDrop

      public void setSystemPressureDrop(double pressureDropBar)
      Sets the CW system pressure drop for pump sizing.
      Parameters:
      pressureDropBar - system pressure drop in bar
    • setPumpEfficiency

      public void setPumpEfficiency(double efficiency)
      Sets the CW pump efficiency.
      Parameters:
      efficiency - pump efficiency as fraction (0.0 to 1.0)
    • setElectricityCost

      public void setElectricityCost(double costPerKWh)
      Sets the electricity unit cost.
      Parameters:
      costPerKWh - cost per kWh in currency units
    • setAnnualOperatingHours

      public void setAnnualOperatingHours(double hours)
      Sets the annual operating hours for cost estimation.
      Parameters:
      hours - operating hours per year
    • calculate

      public void calculate()
      Runs the cooling water system design calculation.
    • getTotalDuty

      public double getTotalDuty()
      Gets the total cooling duty.
      Returns:
      total duty in kW
    • getTotalCWFlowRate

      public double getTotalCWFlowRate()
      Gets the total cooling water flow rate.
      Returns:
      CW flow rate in m3/hr
    • getPumpPower

      public double getPumpPower()
      Gets the CW pump power.
      Returns:
      pump power in kW
    • getTowerFanPower

      public double getTowerFanPower()
      Gets the cooling tower fan power.
      Returns:
      fan power in kW
    • getTotalElectricalPower

      public double getTotalElectricalPower()
      Gets the total electrical power for the cooling water system.
      Returns:
      total power in kW
    • getAnnualOperatingCost

      public double getAnnualOperatingCost()
      Gets the annual operating cost.
      Returns:
      annual cost in currency units
    • toJson

      public String toJson()
      Returns the design results as a JSON string.
      Returns:
      JSON representation of cooling water system design