Calculator estimates energy consumption of operating Chillers, Pumps and Towers in a cooling system (both air & water). Allows: Input multiple & varying capacity and types of Chillers that are operating together. Flexible input for operating schedule for each Chiller. Apply changes ( improvements / measures) and compare & examine, quantifying energy and cost savings. Changes: Increasing the chilled water temperature Decreasing the condenser water temperature Replacing the chillers Applying variable speed control to circulation pump motors Upgrade Tower Cell Fan Motor controls Upgrades: Replace chiller refrigerant Install Variable Speed Drive (VSD) on Centrifugal compressors Use Free Cooling.
More...
#include <process_cooling.h>
|
| enum | RefrigerantType {
R_11
, R_123
, R_12
, R_134a
,
R_22
, R_717
} |
| |
| enum | ACSourceLocation { Inside
, Outside
} |
| |
| enum | CoolingSystemType { Water
, Air
} |
| |
| enum | CellFanType { AxialFan
, CentrifugalFan
} |
| |
| enum | TowerSizedBy { Tonnage
, Fan_HP
} |
| |
| enum | ChillerCompressorType { Centrifugal
, Screw
, Reciprocating
} |
| |
| enum | FanMotorSpeedType { One
, Two
, Variable
} |
| |
|
| static vector< int > | getSysOpAnnualHours (const vector< int > &weeklyOpStartHour, const vector< int > &weeklyOpStopHour, const vector< int > &monthlyOpMaxHour) |
| |
|
|
| ProcessCooling (const vector< int > &systemOperationAnnualHours, const vector< double > &weatherDryBulbHourlyTemp, const vector< double > &weatherWetBulbHourlyTemp, const vector< ChillerInput > &chillerInputList, AirCooledSystemInput airCooledSystemInput, TowerInput towerInput, WaterCooledSystemInput waterCooledSystemInput) |
| |
|
void | annualChillerLoadProfile () |
| |
|
void | annualChillerEfficiencyProfileARI () |
| |
|
void | annualChillerEfficiencyProfile () |
| |
|
void | annualChillerPowerProfile () |
| |
|
double | getPercentFanPower (double wetBulbTemp, double percentWaterFlow, double range, double desiredApproach, int yearHourIndex) |
| |
|
double | getPercentWaterFlow (int yearHourIndex) |
| |
|
double | getRange (int yearHourIndex) |
| |
|
double | getApproach (double wetBulbTemp, double minToChillersTemp) const |
| |
|
double | modifyPercentFanPower (double percentFanPower) const |
| |
|
double | getWeightedAverageChillerLoad (int yearHourIndex) |
| |
|
double | getChillerTonnageTotal () |
| |
|
|
static double | getFanHP (double tonnage, TowerSizedBy towerSizing, int fanNum, CellFanType fanType, double fanHP) |
| |
|
static double | getCubeRoot (double number) |
| |
|
static double | getPumpHP (double power) |
| |
Definition at line 48 of file process_cooling.h.
◆ ACSourceLocation
| enum ProcessCooling::ACSourceLocation |
◆ CellFanType
| enum ProcessCooling::CellFanType |
◆ ChillerCompressorType
| enum ProcessCooling::ChillerCompressorType |
◆ CoolingSystemType
| enum ProcessCooling::CoolingSystemType |
◆ FanMotorSpeedType
| enum ProcessCooling::FanMotorSpeedType |
◆ RefrigerantType
| enum ProcessCooling::RefrigerantType |
◆ TowerSizedBy
| enum ProcessCooling::TowerSizedBy |
◆ ProcessCooling() [1/2]
| ProcessCooling::ProcessCooling |
( |
const vector< int > & |
systemOperationAnnualHours, |
|
|
const vector< double > & |
weatherDryBulbHourlyTemp, |
|
|
const vector< double > & |
weatherWetBulbHourlyTemp, |
|
|
const vector< ChillerInput > & |
chillerInputList, |
|
|
TowerInput |
towerInput, |
|
|
WaterCooledSystemInput |
waterCooledSystemInput |
|
) |
| |
|
inline |
Use this constructor for water cooling system
- Parameters
-
| systemOperationAnnualHours | integer array of 8760 hours of the year with values as 0 or 1 |
| weatherDryBulbHourlyTemp | double, @unit{\F}, array of 8760 hours of the year with dry bulb hourly recorded temperature |
| weatherWetBulbHourlyTemp | double, @unit{\F}, array of 8760 hours of the year with wet bulb hourly recorded temperature |
| chillerInputList | ChillerInput array |
| towerInput | TowerInput |
| waterCooledSystemInput | WaterCooledSystemInput |
Definition at line 485 of file process_cooling.h.
◆ ProcessCooling() [2/2]
| ProcessCooling::ProcessCooling |
( |
const vector< int > & |
systemOperationAnnualHours, |
|
|
const vector< double > & |
weatherDryBulbHourlyTemp, |
|
|
const vector< double > & |
weatherWetBulbHourlyTemp, |
|
|
const vector< ChillerInput > & |
chillerInputList, |
|
|
AirCooledSystemInput |
airCooledSystemInput |
|
) |
| |
|
inline |
Use this constructor for air cooled system
- Parameters
-
| systemOperationAnnualHours | integer array of 8760 hours of the year with values as 0 or 1 |
| weatherDryBulbHourlyTemp | double array of 8760 hours of the year with dry bulb hourly recorded temperature |
| weatherWetBulbHourlyTemp | double array of 8760 hours of the year with wet bulb hourly recorded temperature |
| chillerInputList | ChillerInput array |
| airCooledSystemInput | AirCooledSystemInput |
Definition at line 502 of file process_cooling.h.
◆ calculateChillerEnergy()
◆ calculatePumpEnergy()
◆ calculateTowerEnergy()
◆ getSysOpAnnualHours()
| static vector< int > ProcessCooling::getSysOpAnnualHours |
( |
const vector< int > & |
weeklyOpStartHour, |
|
|
const vector< int > & |
weeklyOpStopHour, |
|
|
const vector< int > & |
monthlyOpMaxHour |
|
) |
| |
|
static |
Use this method to generate system operation annual hours from weekly schedules and monthly max operation hours
- Parameters
-
| weeklyOpStartHour | integer array of 7 with hours of the day of the week with start hour of operation (0-23) |
| weeklyOpStopHour | integer array of 7 with hours of the day of the week with stop hour of operation (0-24) |
| monthlyOpMaxHour | integer array of 12 with months of the year with max operation hours in that month (0-744) 0 for no operation for that month. If monthlyOpMaxHour exceeds the total hours for a month, it will be capped to the max hours in that month and ending hour for that month will be set to non operational after the max hours is reached. |
- Returns
- integer array of 8760 hours of the year with values as 0 or 1 set based on weekly and monthly schedules
◆ airCooledSystem
◆ chillerHourlyEfficiency
| vector<vector<double> > ProcessCooling::chillerHourlyEfficiency |
|
private |
◆ chillerHourlyEfficiencyARI
| vector<vector<double> > ProcessCooling::chillerHourlyEfficiencyARI |
|
private |
◆ chillerHourlyLoad
| vector<vector<double> > ProcessCooling::chillerHourlyLoad |
|
private |
◆ chillerHourlyLoadOperational
| vector<vector<double> > ProcessCooling::chillerHourlyLoadOperational |
|
private |
◆ chillerHourlyPower
| vector<vector<double> > ProcessCooling::chillerHourlyPower |
|
private |
◆ chillers
◆ coolingType
| CoolingSystemType ProcessCooling::coolingType |
|
private |
◆ CWTHourly
| vector<double> ProcessCooling::CWTHourly |
|
private |
◆ dryBulbHourlyTemp
| vector<double> ProcessCooling::dryBulbHourlyTemp |
|
private |
◆ FCTemp
| double ProcessCooling::FCTemp = 0 |
|
private |
◆ numChillers
| int ProcessCooling::numChillers |
|
private |
◆ systemOperationAnnual
| vector<int> ProcessCooling::systemOperationAnnual |
|
private |
◆ tower
◆ waterCooledSystem
◆ wetBulbHourlyTemp
| vector<double> ProcessCooling::wetBulbHourlyTemp |
|
private |
The documentation for this class was generated from the following file: