From 7850adebb2d26ec8f1f01113f18e5f8eeb0a6f4b Mon Sep 17 00:00:00 2001 From: lincolnharmer Date: Fri, 12 Dec 2025 15:51:04 -0700 Subject: [PATCH 1/7] Update base Ph attributes of flow, power and energy --- src/xeto/ph.attrs/base.xeto | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/xeto/ph.attrs/base.xeto b/src/xeto/ph.attrs/base.xeto index d3d1624..62566ee 100644 --- a/src/xeto/ph.attrs/base.xeto +++ b/src/xeto/ph.attrs/base.xeto @@ -37,3 +37,21 @@ TempAttr : NumberAttr { val: Number } +// Attribute with a number value with volumetric flow unit +VolumetricFlowAttr : NumberAttr { + flow + val: Number +} + +// Attribute with a number value with power unit +PowerAttr : NumberAttr { + power + val: Number +} + +// Attribute with a number value with energy unit +EnergyAttr : NumberAttr { + energy + val: Number +} + From e4cede8351070561ac2bf403a1b1afe238047399 Mon Sep 17 00:00:00 2001 From: lincolnharmer Date: Sat, 13 Dec 2025 19:56:03 -0700 Subject: [PATCH 2/7] add power and flow attrs --- src/xeto/ph.attrs/base.xeto | 1 - src/xeto/ph.attrs/flow.xeto | 88 ++++++++++++++++++++++++++++++++++++ src/xeto/ph.attrs/power.xeto | 22 +++++++++ 3 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 src/xeto/ph.attrs/flow.xeto create mode 100644 src/xeto/ph.attrs/power.xeto diff --git a/src/xeto/ph.attrs/base.xeto b/src/xeto/ph.attrs/base.xeto index 62566ee..c3e185d 100644 --- a/src/xeto/ph.attrs/base.xeto +++ b/src/xeto/ph.attrs/base.xeto @@ -45,7 +45,6 @@ VolumetricFlowAttr : NumberAttr { // Attribute with a number value with power unit PowerAttr : NumberAttr { - power val: Number } diff --git a/src/xeto/ph.attrs/flow.xeto b/src/xeto/ph.attrs/flow.xeto new file mode 100644 index 0000000..4c38422 --- /dev/null +++ b/src/xeto/ph.attrs/flow.xeto @@ -0,0 +1,88 @@ +// +// Copyright (c) 2025, Project-Haystack +// Licensed under the Academic Free License version 3.0 +// +// History: +// 13 Dec 2025 Lincoln Harmer Creation +// + +// Air flow of the asset +AirFlowAttr: VolumetricFlowAttr { air } + +////////////////////////////////////////////////////////////////////////// +// Design airflow attributes +////////////////////////////////////////////////////////////////////////// + +// Maximum design air flow of the asset +DesignMaxAirFlowAttr: AirFlowAttr { design, max } + +// Maximum design discharge air flow of the asset +DesignMaxDischargeAirFlowAttr: DesignMaxAirFlowAttr { discharge } + +// Maximum design discharge cooling air flow of the asset +DesignMaxDischargeCoolingAirFlowAttr: DesignMaxDischargeAirFlowAttr { cooling } + +// Maximum design discharge heating air flow of the asset +DesignMaxDischargeHeatingAirFlowAttr: DesignMaxDischargeAirFlowAttr { heating } + +// Maximum design outdoor air flow of the asset +DesignMaxOutdoorAirFlowAttr: DesignMaxAirFlowAttr { design, max, outdoor } + +// Minimum design air flow of the asset +DesignMinAirFlowAttr: AirFlowAttr { design, min } + +// Minimum design discharge air flow of the asset +DesignMinDischargeAirFlowAttr: DesignMinAirFlowAttr { discharge } + +// Minimum design discharge cooling air flow of the asset +DesignMinDischargeCoolingAirFlowAttr: DesignMinDischargeAirFlowAttr { cooling } + +// Minimum design discharge heating air flow of the asset +DesignMinDischargeHeatingAirFlowAttr: DesignMinDischargeAirFlowAttr { heating } + +// Minimum design outdoor air flow of the asset +DesignMinOutdoorAirFlowAttr: DesignMinAirFlowAttr { design, min, outdoor } + +////////////////////////////////////////////////////////////////////////// +// Rated air flow attributes +////////////////////////////////////////////////////////////////////////// + +// Maximum rated air flow of the asset +RatedMaxAirFlowAttr: AirFlowAttr { rated, max } + +// Maximum rated discharge air flow of the asset +RatedMaxDischargeAirFlowAttr: RatedMaxAirFlowAttr { discharge } + +// Maximum rated discharge cooling air flow of the asset +RatedMaxDischargeCoolingAirFlowAttr: RatedMaxDischargeAirFlowAttr { cooling } + +// Maximum rated discharge heating air flow of the asset +RatedMaxDischargeHeatingAirFlowAttr: RatedMaxDischargeAirFlowAttr { heating } + +// Maximum rated outdoor air flow of the asset +RatedMaxOutdoorAirFlowAttr: RatedMaxAirFlowAttr { rated, max, outdoor } + +// Minimum rated air flow of the asset +RatedMinAirFlowAttr: AirFlowAttr { rated, min } + +// Minimum rated discharge air flow of the asset +RatedMinDischargeAirFlowAttr: RatedMinAirFlowAttr { discharge } + +////////////////////////////////////////////////////////////////////////// +// Water flow Attributes +////////////////////////////////////////////////////////////////////////// + +// Water flow of the asset +WaterFlowAttr: VolumetricFlowAttr { water } + +// Maximum design water flow of the asset +DesignMaxWaterFlowAttr: WaterFlowAttr { design, max, water } + +// Minimum design water flow of the asset +DesignMinWaterFlowAttr: WaterFlowAttr { design, min, water } + +// Maximum rated water flow of the asset +RatedMaxWaterFlowAttr: WaterFlowAttr { rated, max, water } + +// Minimum rated water flow of the asset +RatedMinWaterFlowAttr: WaterFlowAttr { rated, min, water } \ No newline at end of file diff --git a/src/xeto/ph.attrs/power.xeto b/src/xeto/ph.attrs/power.xeto new file mode 100644 index 0000000..fbdbc25 --- /dev/null +++ b/src/xeto/ph.attrs/power.xeto @@ -0,0 +1,22 @@ +// +// Copyright (c) 2025, Project-Haystack +// Licensed under the Academic Free License version 3.0 +// +// History: +// 13 Dec 2025 Lincoln JenHarmernings Creation +// + +// Capacity of the asset +CapacityAttr : PowerAttr { capacity } + +// Rated cooling capacity of the asset +RatedCoolingCapacityAttr : CapacityAttr { rated, cooling } + +// Design cooling capacity of the asset +DesignCoolingCapacityAttr : CapacityAttr { design, cooling } + +// Rated heating capacity of the asset +RatedHeatingCapacityAttr : CapacityAttr { rated, heating } + +// Design heating capacity of the asset +DesignHeatingCapacityAttr : CapacityAttr { design, heating } \ No newline at end of file From 0ffcf1497d57db630fcff717dde3005a0636b3f6 Mon Sep 17 00:00:00 2001 From: lincolnharmer Date: Tue, 16 Dec 2025 11:54:58 -0700 Subject: [PATCH 3/7] fix abstraction based on Ricks feedback --- src/xeto/ph.attrs/base.xeto | 6 +++ src/xeto/ph.attrs/flow.xeto | 88 ++++++++++++++++++++------------- src/xeto/ph.attrs/power.xeto | 67 ++++++++++++++++++++----- src/xeto/ph.attrs/pressure.xeto | 33 +++++++++++++ src/xeto/ph.attrs/temp.xeto | 28 +++++++++++ 5 files changed, 176 insertions(+), 46 deletions(-) create mode 100644 src/xeto/ph.attrs/pressure.xeto diff --git a/src/xeto/ph.attrs/base.xeto b/src/xeto/ph.attrs/base.xeto index c3e185d..8773ef3 100644 --- a/src/xeto/ph.attrs/base.xeto +++ b/src/xeto/ph.attrs/base.xeto @@ -54,3 +54,9 @@ EnergyAttr : NumberAttr { val: Number } +// Attribute with a number value with pressure unit +PressureAttr : NumberAttr { + pressure + val: Number +} + diff --git a/src/xeto/ph.attrs/flow.xeto b/src/xeto/ph.attrs/flow.xeto index 4c38422..14f4dc7 100644 --- a/src/xeto/ph.attrs/flow.xeto +++ b/src/xeto/ph.attrs/flow.xeto @@ -3,7 +3,7 @@ // Licensed under the Academic Free License version 3.0 // // History: -// 13 Dec 2025 Lincoln Harmer Creation +// 13 Dec 2025 Lincoln Harmer Creation // // Air flow of the asset @@ -13,60 +13,66 @@ AirFlowAttr: VolumetricFlowAttr { air } // Design airflow attributes ////////////////////////////////////////////////////////////////////////// +// Design air flow of the asset +DesignAirFlowAttr: AirFlowAttr { design } + // Maximum design air flow of the asset -DesignMaxAirFlowAttr: AirFlowAttr { design, max } +MaxDesignAirFlowAttr: DesignAirFlowAttr { max } -// Maximum design discharge air flow of the asset -DesignMaxDischargeAirFlowAttr: DesignMaxAirFlowAttr { discharge } +// Discharge maximum design air flow of the asset +DischargeMaxDesignAirFlowAttr: MaxDesignAirFlowAttr { discharge } -// Maximum design discharge cooling air flow of the asset -DesignMaxDischargeCoolingAirFlowAttr: DesignMaxDischargeAirFlowAttr { cooling } +// Cooling maximum design air flow of the asset +CoolingDischargeMaxDesignAirFlowAttr: DischargeMaxDesignAirFlowAttr { cooling } -// Maximum design discharge heating air flow of the asset -DesignMaxDischargeHeatingAirFlowAttr: DesignMaxDischargeAirFlowAttr { heating } +// Heating maximum design air flow of the asset +HeatingDischargeMaxDesignAirFlowAttr: DischargeMaxDesignAirFlowAttr { heating } -// Maximum design outdoor air flow of the asset -DesignMaxOutdoorAirFlowAttr: DesignMaxAirFlowAttr { design, max, outdoor } +// Outdoor maximum design air flow of the asset +OutdoorMaxDesignAirFlowAttr: MaxDesignAirFlowAttr { outdoor } // Minimum design air flow of the asset -DesignMinAirFlowAttr: AirFlowAttr { design, min } +MinDesignAirFlowAttr: DesignAirFlowAttr { min } -// Minimum design discharge air flow of the asset -DesignMinDischargeAirFlowAttr: DesignMinAirFlowAttr { discharge } +// Discharge minimum design air flow of the asset +DischargeMinDesignAirFlowAttr: MinDesignAirFlowAttr { discharge } -// Minimum design discharge cooling air flow of the asset -DesignMinDischargeCoolingAirFlowAttr: DesignMinDischargeAirFlowAttr { cooling } +// Cooling discharge minimum design air flow of the asset +CoolingDischargeMinDesignAirFlowAttr: DischargeMinDesignAirFlowAttr { cooling } -// Minimum design discharge heating air flow of the asset -DesignMinDischargeHeatingAirFlowAttr: DesignMinDischargeAirFlowAttr { heating } +// Heating discharge minimum design air flow of the asset +HeatingDischargeMinDesignAirFlowAttr: DischargeMinDesignAirFlowAttr { heating } -// Minimum design outdoor air flow of the asset -DesignMinOutdoorAirFlowAttr: DesignMinAirFlowAttr { design, min, outdoor } +// Outdoor design minimum air flow of the asset +OutdoorMinDesignAirFlowAttr: MinDesignAirFlowAttr { outdoor } ////////////////////////////////////////////////////////////////////////// // Rated air flow attributes ////////////////////////////////////////////////////////////////////////// +// Rated air flow of the asset +RatedAirFlowAttr: AirFlowAttr { rated } + // Maximum rated air flow of the asset -RatedMaxAirFlowAttr: AirFlowAttr { rated, max } +MaxRatedAirFlowAttr: RatedAirFlowAttr { max } -// Maximum rated discharge air flow of the asset -RatedMaxDischargeAirFlowAttr: RatedMaxAirFlowAttr { discharge } +// Discharge maximum rated air flow of the asset +DischargeMaxRatedAirFlowAttr: MaxRatedAirFlowAttr { discharge } -// Maximum rated discharge cooling air flow of the asset -RatedMaxDischargeCoolingAirFlowAttr: RatedMaxDischargeAirFlowAttr { cooling } +// Cooling maximum discharge rated discharge air flow of the asset +CoolingMaxRatedDischargeAirFlowAttr: MaxRatedDischargeAirFlowAttr { cooling } -// Maximum rated discharge heating air flow of the asset -RatedMaxDischargeHeatingAirFlowAttr: RatedMaxDischargeAirFlowAttr { heating } +// Heating maximum rated discharge air flow of the asset +HeatingMaxRatedDischargeAirFlowAttr: MaxRatedDischargeAirFlowAttr { heating } -// Maximum rated outdoor air flow of the asset -RatedMaxOutdoorAirFlowAttr: RatedMaxAirFlowAttr { rated, max, outdoor } +// Outdoor maximum rated air flow of the asset +OutdoorMaxRatedAirFlowAttr: MaxRatedAirFlowAttr { outdoor } // Minimum rated air flow of the asset -RatedMinAirFlowAttr: AirFlowAttr { rated, min } +MinRatedAirFlowAttr: RatedAirFlowAttr { min } -// Minimum rated discharge air flow of the asset -RatedMinDischargeAirFlowAttr: RatedMinAirFlowAttr { discharge } +// Discharge minimum rated air flow of the asset +DischargeMinRatedAirFlowAttr: MinRatedAirFlowAttr { discharge } ////////////////////////////////////////////////////////////////////////// // Water flow Attributes @@ -75,14 +81,26 @@ RatedMinDischargeAirFlowAttr: RatedMinAirFlowAttr { discharge } // Water flow of the asset WaterFlowAttr: VolumetricFlowAttr { water } +// Design water flow of the asset +DesignWaterFlowAttr: WaterFlowAttr { design } + +// Rated water flow of the asset +RatedWaterFlowAttr: WaterFlowAttr { rated } + // Maximum design water flow of the asset -DesignMaxWaterFlowAttr: WaterFlowAttr { design, max, water } +MaxDesignWaterFlowAttr: DesignWaterFlowAttr { max } + +// Chilled maximum design water flow of the asset +ChilledMaxDesignWaterFlowAttr: MaxDesignWaterFlowAttr { chilled } + +// Hot maximum design water flow of the asset +HotMaxDesignWaterFlowAttr: MaxDesignWaterFlowAttr { hot } // Minimum design water flow of the asset -DesignMinWaterFlowAttr: WaterFlowAttr { design, min, water } +MinDesignWaterFlowAttr: DesignWaterFlowAttr { min } // Maximum rated water flow of the asset -RatedMaxWaterFlowAttr: WaterFlowAttr { rated, max, water } +MaxRatedWaterFlowAttr: RatedWaterFlowAttr { max } // Minimum rated water flow of the asset -RatedMinWaterFlowAttr: WaterFlowAttr { rated, min, water } \ No newline at end of file +MinRatedWaterFlowAttr: RatedWaterFlowAttr { min } \ No newline at end of file diff --git a/src/xeto/ph.attrs/power.xeto b/src/xeto/ph.attrs/power.xeto index fbdbc25..ff22326 100644 --- a/src/xeto/ph.attrs/power.xeto +++ b/src/xeto/ph.attrs/power.xeto @@ -3,20 +3,65 @@ // Licensed under the Academic Free License version 3.0 // // History: -// 13 Dec 2025 Lincoln JenHarmernings Creation +// 13 Dec 2025 Lincoln Harmer Creation // -// Capacity of the asset -CapacityAttr : PowerAttr { capacity } +////////////////////////////////////////////////////////////////////////// +// Capacity attributes +////////////////////////////////////////////////////////////////////////// -// Rated cooling capacity of the asset -RatedCoolingCapacityAttr : CapacityAttr { rated, cooling } +// Rated Capacity of the asset +RatedCapacityAttr : PowerAttr { rated, capacity } -// Design cooling capacity of the asset -DesignCoolingCapacityAttr : CapacityAttr { design, cooling } +// Design Capacity of the asset +DesignCapacityAttr : PowerAttr { design, capacity } -// Rated heating capacity of the asset -RatedHeatingCapacityAttr : CapacityAttr { rated, heating } +// Cooling rated capacity of the asset +CoolingRatedCapacityAttr : RatedCapacityAttr { cooling } -// Design heating capacity of the asset -DesignHeatingCapacityAttr : CapacityAttr { design, heating } \ No newline at end of file +// Cooling design capacity of the asset +CoolingDesignCapacityAttr : DesignCapacityAttr { cooling } + +// Heating rated capacity of the asset +HeatingRatedCapacityAttr : RatedCapacityAttr { heating } + +// Heating design capacity of the asset +HeatingDesignCapacityAttr : DesignCapacityAttr { heating } + +////////////////////////////////////////////////////////////////////////// +// Fan and pump design power attributes +////////////////////////////////////////////////////////////////////////// + +// Design motor power of the asset +DesignMotorPowerAttr : PowerAttr { design, motor } + +// Design fan motor power of the asset +FanDesignMotorPowerAttr : DesignMotorPowerAttr { fan } + +// Pump design motor power of the asset +PumpDesignMotorPowerAttr : DesignMotorPowerAttr { pump } + +// Discharge fan design motor power of the asset +DischargeFanDesignMotorPowerAttr : FanDesignMotorPowerAttr { discharge } + +// Return fan design motor power of the asset +ReturnFanDesignMotorPowerAttr : FanDesignMotorPowerAttr { return } + +////////////////////////////////////////////////////////////////////////// +// Fan and pump rated power attributes +////////////////////////////////////////////////////////////////////////// + +// Rated motor power of the asset +RatedMotorPowerAttr : PowerAttr { rated, motor } + +// Fan rated motor power of the asset +FanRatedMotorPowerAttr : RatedMotorPowerAttr { fan } + +// Pump rated motor power of the asset +PumpRatedMotorPowerAttr : RatedMotorPowerAttr { pump } + +// Discharge fan rated motor power of the asset +DischargeFanRatedMotorPowerAttr : FanRatedMotorPowerAttr { discharge } + +// Return fan rated motor power of the asset +ReturnFanRatedMotorPowerAttr : FanRatedMotorPowerAttr { return } \ No newline at end of file diff --git a/src/xeto/ph.attrs/pressure.xeto b/src/xeto/ph.attrs/pressure.xeto new file mode 100644 index 0000000..cf39fca --- /dev/null +++ b/src/xeto/ph.attrs/pressure.xeto @@ -0,0 +1,33 @@ +// +// Copyright (c) 2025, Project-Haystack +// Licensed under the Academic Free License version 3.0 +// +// History: +// 12 May 2025 Rick Jennings Creation +// + +////////////////////////////////////////////////////////////////////////// +// Design pressure attributes +////////////////////////////////////////////////////////////////////////// + +// Design pressure of the asset +DesignPressureAttr : PressureAttr { design } + +// Pump design pressure of the asset +PumpDesignPressureAttr : DesignPressureAttr { pump } + +// Fan design pressure of the asset +FanDesignPressureAttr : DesignPressureAttr { fan } + +// Chiller design pressure of the asset +ChillerDesignPressureAttr : DesignPressureAttr { chiller } + +////////////////////////////////////////////////////////////////////////// +// Rated pressure attributes +////////////////////////////////////////////////////////////////////////// + +// Rated pressure of the asset +RatedPressureAttr : PressureAttr { rated } + +// Min chiller rated pressure of the asset +MinChillerRatedPressureAttr : RatedPressureAttr { min, chiller } \ No newline at end of file diff --git a/src/xeto/ph.attrs/temp.xeto b/src/xeto/ph.attrs/temp.xeto index 7efc4ce..571d0cd 100644 --- a/src/xeto/ph.attrs/temp.xeto +++ b/src/xeto/ph.attrs/temp.xeto @@ -14,3 +14,31 @@ MinRatedOperatingTempAttr : RatedOperatingTempAttr { min } // Maximum rated operating temperature of the asset MaxRatedOperatingTempAttr : RatedOperatingTempAttr { max } + +////////////////////////////////////////////////////////////////////////// +// Design temp attributes +////////////////////////////////////////////////////////////////////////// + +// Design temperature of the asset +DesignTempAttr : TempAttr { design } + +// Leaving design temperature of the asset +LeavingDesignTempAttr : DesignTempAttr { leaving } + +// Entering design temperature of the asset +EnteringDesignTempAttr : DesignTempAttr { entering } + +// Hot water leaving design temperature of the asset +HotWaterLeavingDesignTempAttr : LeavingDesignTempAttr { hot, water } + +// Chilled water leaving design temperature of the asset +ChilledWaterLeavingDesignTempAttr : LeavingDesignTempAttr { chilled, water } + +// Hot water entering design temperature of the asset +HotWaterEnteringDesignTempAttr : EnteringDesignTempAttr { hot, water } + +// Chilled water entering design temperature of the asset +ChilledWaterEnteringDesignTempAttr : EnteringDesignTempAttr { chilled, water } + +// Design discharge air temperature of the asset +DischargeAirDesignTempAttr: DesignTempAttr { discharge, air } \ No newline at end of file From e1a2f0c984a9866876f9bc2ca97d1bc66fdfb395 Mon Sep 17 00:00:00 2001 From: lincolnharmer Date: Tue, 16 Dec 2025 12:21:05 -0700 Subject: [PATCH 4/7] fix typos --- src/xeto/ph.attrs/flow.xeto | 4 ++-- src/xeto/ph.attrs/pressure.xeto | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/xeto/ph.attrs/flow.xeto b/src/xeto/ph.attrs/flow.xeto index 14f4dc7..074b86d 100644 --- a/src/xeto/ph.attrs/flow.xeto +++ b/src/xeto/ph.attrs/flow.xeto @@ -60,10 +60,10 @@ MaxRatedAirFlowAttr: RatedAirFlowAttr { max } DischargeMaxRatedAirFlowAttr: MaxRatedAirFlowAttr { discharge } // Cooling maximum discharge rated discharge air flow of the asset -CoolingMaxRatedDischargeAirFlowAttr: MaxRatedDischargeAirFlowAttr { cooling } +CoolingDischargeMaxRatedAirFlowAttr: DischargeMaxRatedAirFlowAttr { cooling } // Heating maximum rated discharge air flow of the asset -HeatingMaxRatedDischargeAirFlowAttr: MaxRatedDischargeAirFlowAttr { heating } +HeatingDischargeMaxRatedAirFlowAttr: DischargeMaxRatedAirFlowAttr { heating } // Outdoor maximum rated air flow of the asset OutdoorMaxRatedAirFlowAttr: MaxRatedAirFlowAttr { outdoor } diff --git a/src/xeto/ph.attrs/pressure.xeto b/src/xeto/ph.attrs/pressure.xeto index cf39fca..1089b99 100644 --- a/src/xeto/ph.attrs/pressure.xeto +++ b/src/xeto/ph.attrs/pressure.xeto @@ -3,7 +3,7 @@ // Licensed under the Academic Free License version 3.0 // // History: -// 12 May 2025 Rick Jennings Creation +// 12 May 2025 Lincoln Harmer Creation // ////////////////////////////////////////////////////////////////////////// From 43415fd44542d841edd2acf9d2aee1a767a7b848 Mon Sep 17 00:00:00 2001 From: lincolnharmer Date: Tue, 16 Dec 2025 15:09:13 -0700 Subject: [PATCH 5/7] tweak abstractions for temp attrs --- src/xeto/ph.attrs/base.xeto | 4 ++-- src/xeto/ph.attrs/power.xeto | 2 +- src/xeto/ph.attrs/temp.xeto | 21 +++++++++++++++------ 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/xeto/ph.attrs/base.xeto b/src/xeto/ph.attrs/base.xeto index 8773ef3..39e8a7f 100644 --- a/src/xeto/ph.attrs/base.xeto +++ b/src/xeto/ph.attrs/base.xeto @@ -45,6 +45,7 @@ VolumetricFlowAttr : NumberAttr { // Attribute with a number value with power unit PowerAttr : NumberAttr { + power val: Number } @@ -58,5 +59,4 @@ EnergyAttr : NumberAttr { PressureAttr : NumberAttr { pressure val: Number -} - +} \ No newline at end of file diff --git a/src/xeto/ph.attrs/power.xeto b/src/xeto/ph.attrs/power.xeto index ff22326..0d40f13 100644 --- a/src/xeto/ph.attrs/power.xeto +++ b/src/xeto/ph.attrs/power.xeto @@ -3,7 +3,7 @@ // Licensed under the Academic Free License version 3.0 // // History: -// 13 Dec 2025 Lincoln Harmer Creation +// 13 Dec 2025 Lincoln Harmer Creation // ////////////////////////////////////////////////////////////////////////// diff --git a/src/xeto/ph.attrs/temp.xeto b/src/xeto/ph.attrs/temp.xeto index 571d0cd..c193b9a 100644 --- a/src/xeto/ph.attrs/temp.xeto +++ b/src/xeto/ph.attrs/temp.xeto @@ -22,6 +22,15 @@ MaxRatedOperatingTempAttr : RatedOperatingTempAttr { max } // Design temperature of the asset DesignTempAttr : TempAttr { design } +// Air design temperature of the asset +AirDesignTempAttr: DesignTempAttr { air } + +// Water entering design temperature of the asset +WaterEnteringDesignTempAttr : EnteringDesignTempAttr { water } + +// Water leaving design temperature of the asset +WaterLeavingDesignTempAttr : LeavingDesignTempAttr { water } + // Leaving design temperature of the asset LeavingDesignTempAttr : DesignTempAttr { leaving } @@ -29,16 +38,16 @@ LeavingDesignTempAttr : DesignTempAttr { leaving } EnteringDesignTempAttr : DesignTempAttr { entering } // Hot water leaving design temperature of the asset -HotWaterLeavingDesignTempAttr : LeavingDesignTempAttr { hot, water } +HotWaterLeavingDesignTempAttr : WaterLeavingDesignTempAttr { hot } // Chilled water leaving design temperature of the asset -ChilledWaterLeavingDesignTempAttr : LeavingDesignTempAttr { chilled, water } +ChilledWaterLeavingDesignTempAttr : WaterLeavingDesignTempAttr { chilled } // Hot water entering design temperature of the asset -HotWaterEnteringDesignTempAttr : EnteringDesignTempAttr { hot, water } +HotWaterEnteringDesignTempAttr : WaterEnteringDesignTempAttr { hot } // Chilled water entering design temperature of the asset -ChilledWaterEnteringDesignTempAttr : EnteringDesignTempAttr { chilled, water } +ChilledWaterEnteringDesignTempAttr : WaterEnteringDesignTempAttr { chilled } -// Design discharge air temperature of the asset -DischargeAirDesignTempAttr: DesignTempAttr { discharge, air } \ No newline at end of file +// Discharge air design temperature of the asset +DischargeAirDesignTempAttr: AirDesignTempAttr { discharge } \ No newline at end of file From f014d88302d07c26f85494e10f9bdd19a6f51760 Mon Sep 17 00:00:00 2001 From: lincolnharmer Date: Wed, 14 Jan 2026 08:30:28 -0700 Subject: [PATCH 6/7] refactor ph.attrs to phenomenon-first naming convention - Rename all attributes to put phenomenon (Air, Water, Elec) at far left - Replace redundant capacity concept with AirPowerAttr hierarchy - Add Air/Water phenomenon prefixes to temp, pressure attributes - Convert elec.xeto to "add to left" modifier ordering - Add base types: AirTempAttr, WaterTempAttr, AirPressureAttr, etc. Follows pattern: AirPowerAttr -> AirCoolingPowerAttr -> AirRatedCoolingPowerAttr --- src/xeto/ph.attrs/elec.xeto | 68 ++++++++++-------- src/xeto/ph.attrs/flow.xeto | 120 +++++++++++++++++--------------- src/xeto/ph.attrs/power.xeto | 87 +++++++++++++---------- src/xeto/ph.attrs/pressure.xeto | 42 +++++++---- src/xeto/ph.attrs/temp.xeto | 77 ++++++++++++-------- 5 files changed, 227 insertions(+), 167 deletions(-) diff --git a/src/xeto/ph.attrs/elec.xeto b/src/xeto/ph.attrs/elec.xeto index 31773dd..1274b15 100644 --- a/src/xeto/ph.attrs/elec.xeto +++ b/src/xeto/ph.attrs/elec.xeto @@ -6,29 +6,37 @@ // 16 Apr 2025 Rick Jennings Creation // +////////////////////////////////////////////////////////////////////////// +// Current attributes +////////////////////////////////////////////////////////////////////////// + // Current attribute for the asset ElecCurrentAttr : NumberAttr { elec, current } // AC current attribute for the asset ElecAcCurrentAttr : ElecCurrentAttr { ac } -// AC current rating of the asset -ElecAcRatedCurrentAttr : ElecAcCurrentAttr { rated } +// Elec rated AC current of the asset +ElecRatedAcCurrentAttr : ElecAcCurrentAttr { rated } + +// Elec continuous capacity rated AC current of the asset (80% or 100% - for circuit breakers) +ElecContinuousCapacityRatedAcCurrentAttr : ElecRatedAcCurrentAttr { currentContinuousCapacity } -// Continuous AC current capacity rating of the asset (80% or 100% - for circuit breakers) -ElecAcRatedContinuousCapacityCurrentAttr : ElecAcRatedCurrentAttr { currentContinuousCapacity } +// Elec continuous rated AC current of the asset (for circuit breakers) +ElecContinuousRatedAcCurrentAttr : ElecRatedAcCurrentAttr { currentContinuous } -// Continuous AC current rating of the asset (for circuit breakers) -ElecAcRatedContinuousCurrentAttr : ElecAcRatedCurrentAttr { currentContinuous } +// Elec max continuous rated AC current of the asset (for circuit breakers) +ElecMaxContinuousRatedAcCurrentAttr : ElecContinuousRatedAcCurrentAttr { max } -// Max continuous AC current rating of the asset (for circuit breakers) -ElecAcRatedMaxContinuousCurrentAttr : ElecAcRatedContinuousCurrentAttr { max } +// Elec input rated AC current of the asset +ElecInputRatedAcCurrentAttr : ElecRatedAcCurrentAttr { input } -// AC current input rating of the asset -ElecAcRatedInputCurrentAttr : ElecAcRatedCurrentAttr { input } +// Elec max input rated AC current of the asset +ElecMaxInputRatedAcCurrentAttr : ElecInputRatedAcCurrentAttr { max } -// Maximum AC current input rating of the asset -ElecAcRatedInputMaxCurrentAttr : ElecAcRatedInputCurrentAttr { max } +////////////////////////////////////////////////////////////////////////// +// Voltage attributes +////////////////////////////////////////////////////////////////////////// // Voltage attribute for the asset ElecVoltAttr : NumberAttr { elec, volt } @@ -36,29 +44,29 @@ ElecVoltAttr : NumberAttr { elec, volt } // AC voltage attribute for the asset ElecAcVoltAttr : ElecVoltAttr { ac } -// AC voltage rating of the asset -ElecAcRatedVoltAttr : ElecAcVoltAttr { rated } +// Elec rated AC voltage of the asset +ElecRatedAcVoltAttr : ElecAcVoltAttr { rated } -// AC voltage input rating of the asset -ElecAcRatedInputVoltAttr : ElecAcRatedVoltAttr { input } +// Elec input rated AC voltage of the asset +ElecInputRatedAcVoltAttr : ElecRatedAcVoltAttr { input } -// Nominal AC voltage input rating of the asset -ElecAcRatedInputNominalVoltAttr : ElecAcRatedInputVoltAttr { nominal } +// Elec nominal input rated AC voltage of the asset +ElecNominalInputRatedAcVoltAttr : ElecInputRatedAcVoltAttr { nominal } -// Nominal line-to-line AC voltage input rating of the asset -ElecAcRatedInputLineToLineNominalVoltAttr : ElecAcRatedInputNominalVoltAttr { voltLineToLine } +// Elec line-to-line nominal input rated AC voltage of the asset +ElecLineToLineNominalInputRatedAcVoltAttr : ElecNominalInputRatedAcVoltAttr { voltLineToLine } -// Nominal line-to-neutral AC voltage input rating of the asset -ElecAcRatedInputLineToNeutralNominalVoltAttr : ElecAcRatedInputNominalVoltAttr { voltLineToNeutral } +// Elec line-to-neutral nominal input rated AC voltage of the asset +ElecLineToNeutralNominalInputRatedAcVoltAttr : ElecNominalInputRatedAcVoltAttr { voltLineToNeutral } -// Minimum AC voltage input rating of the asset -ElecAcRatedInputMinVoltAttr : ElecAcRatedInputVoltAttr { min } +// Elec min input rated AC voltage of the asset +ElecMinInputRatedAcVoltAttr : ElecInputRatedAcVoltAttr { min } -// Minimum line-to-line AC voltage input rating of the asset -ElecAcRatedInputLineToLineMinVoltAttr : ElecAcRatedInputMinVoltAttr { voltLineToLine } +// Elec line-to-line min input rated AC voltage of the asset +ElecLineToLineMinInputRatedAcVoltAttr : ElecMinInputRatedAcVoltAttr { voltLineToLine } -// Maximum AC voltage input rating of the asset -ElecAcRatedInputMaxVoltAttr : ElecAcRatedInputVoltAttr { max } +// Elec max input rated AC voltage of the asset +ElecMaxInputRatedAcVoltAttr : ElecInputRatedAcVoltAttr { max } -// Maximum line-to-line AC voltage input rating of the asset -ElecAcRatedInputLineToLineMaxVoltAttr : ElecAcRatedInputMaxVoltAttr { voltLineToLine } +// Elec line-to-line max input rated AC voltage of the asset +ElecLineToLineMaxInputRatedAcVoltAttr : ElecMaxInputRatedAcVoltAttr { voltLineToLine } diff --git a/src/xeto/ph.attrs/flow.xeto b/src/xeto/ph.attrs/flow.xeto index 074b86d..195e645 100644 --- a/src/xeto/ph.attrs/flow.xeto +++ b/src/xeto/ph.attrs/flow.xeto @@ -6,101 +6,105 @@ // 13 Dec 2025 Lincoln Harmer Creation // -// Air flow of the asset +////////////////////////////////////////////////////////////////////////// +// Air flow attributes +////////////////////////////////////////////////////////////////////////// + +// Air flow of the asset AirFlowAttr: VolumetricFlowAttr { air } ////////////////////////////////////////////////////////////////////////// -// Design airflow attributes +// Design air flow attributes ////////////////////////////////////////////////////////////////////////// -// Design air flow of the asset -DesignAirFlowAttr: AirFlowAttr { design } +// Air design flow of the asset +AirDesignFlowAttr: AirFlowAttr { design } -// Maximum design air flow of the asset -MaxDesignAirFlowAttr: DesignAirFlowAttr { max } +// Air max design flow of the asset +AirMaxDesignFlowAttr: AirDesignFlowAttr { max } -// Discharge maximum design air flow of the asset -DischargeMaxDesignAirFlowAttr: MaxDesignAirFlowAttr { discharge } +// Air discharge max design flow of the asset +AirDischargeMaxDesignFlowAttr: AirMaxDesignFlowAttr { discharge } -// Cooling maximum design air flow of the asset -CoolingDischargeMaxDesignAirFlowAttr: DischargeMaxDesignAirFlowAttr { cooling } +// Air cooling discharge max design flow of the asset +AirCoolingDischargeMaxDesignFlowAttr: AirDischargeMaxDesignFlowAttr { cooling } -// Heating maximum design air flow of the asset -HeatingDischargeMaxDesignAirFlowAttr: DischargeMaxDesignAirFlowAttr { heating } +// Air heating discharge max design flow of the asset +AirHeatingDischargeMaxDesignFlowAttr: AirDischargeMaxDesignFlowAttr { heating } -// Outdoor maximum design air flow of the asset -OutdoorMaxDesignAirFlowAttr: MaxDesignAirFlowAttr { outdoor } +// Air outdoor max design flow of the asset +AirOutdoorMaxDesignFlowAttr: AirMaxDesignFlowAttr { outdoor } -// Minimum design air flow of the asset -MinDesignAirFlowAttr: DesignAirFlowAttr { min } +// Air min design flow of the asset +AirMinDesignFlowAttr: AirDesignFlowAttr { min } -// Discharge minimum design air flow of the asset -DischargeMinDesignAirFlowAttr: MinDesignAirFlowAttr { discharge } +// Air discharge min design flow of the asset +AirDischargeMinDesignFlowAttr: AirMinDesignFlowAttr { discharge } -// Cooling discharge minimum design air flow of the asset -CoolingDischargeMinDesignAirFlowAttr: DischargeMinDesignAirFlowAttr { cooling } +// Air cooling discharge min design flow of the asset +AirCoolingDischargeMinDesignFlowAttr: AirDischargeMinDesignFlowAttr { cooling } -// Heating discharge minimum design air flow of the asset -HeatingDischargeMinDesignAirFlowAttr: DischargeMinDesignAirFlowAttr { heating } +// Air heating discharge min design flow of the asset +AirHeatingDischargeMinDesignFlowAttr: AirDischargeMinDesignFlowAttr { heating } -// Outdoor design minimum air flow of the asset -OutdoorMinDesignAirFlowAttr: MinDesignAirFlowAttr { outdoor } +// Air outdoor min design flow of the asset +AirOutdoorMinDesignFlowAttr: AirMinDesignFlowAttr { outdoor } ////////////////////////////////////////////////////////////////////////// // Rated air flow attributes ////////////////////////////////////////////////////////////////////////// -// Rated air flow of the asset -RatedAirFlowAttr: AirFlowAttr { rated } +// Air rated flow of the asset +AirRatedFlowAttr: AirFlowAttr { rated } -// Maximum rated air flow of the asset -MaxRatedAirFlowAttr: RatedAirFlowAttr { max } +// Air max rated flow of the asset +AirMaxRatedFlowAttr: AirRatedFlowAttr { max } -// Discharge maximum rated air flow of the asset -DischargeMaxRatedAirFlowAttr: MaxRatedAirFlowAttr { discharge } +// Air discharge max rated flow of the asset +AirDischargeMaxRatedFlowAttr: AirMaxRatedFlowAttr { discharge } -// Cooling maximum discharge rated discharge air flow of the asset -CoolingDischargeMaxRatedAirFlowAttr: DischargeMaxRatedAirFlowAttr { cooling } +// Air cooling discharge max rated flow of the asset +AirCoolingDischargeMaxRatedFlowAttr: AirDischargeMaxRatedFlowAttr { cooling } -// Heating maximum rated discharge air flow of the asset -HeatingDischargeMaxRatedAirFlowAttr: DischargeMaxRatedAirFlowAttr { heating } +// Air heating discharge max rated flow of the asset +AirHeatingDischargeMaxRatedFlowAttr: AirDischargeMaxRatedFlowAttr { heating } -// Outdoor maximum rated air flow of the asset -OutdoorMaxRatedAirFlowAttr: MaxRatedAirFlowAttr { outdoor } +// Air outdoor max rated flow of the asset +AirOutdoorMaxRatedFlowAttr: AirMaxRatedFlowAttr { outdoor } -// Minimum rated air flow of the asset -MinRatedAirFlowAttr: RatedAirFlowAttr { min } +// Air min rated flow of the asset +AirMinRatedFlowAttr: AirRatedFlowAttr { min } -// Discharge minimum rated air flow of the asset -DischargeMinRatedAirFlowAttr: MinRatedAirFlowAttr { discharge } +// Air discharge min rated flow of the asset +AirDischargeMinRatedFlowAttr: AirMinRatedFlowAttr { discharge } ////////////////////////////////////////////////////////////////////////// -// Water flow Attributes +// Water flow attributes ////////////////////////////////////////////////////////////////////////// -// Water flow of the asset +// Water flow of the asset WaterFlowAttr: VolumetricFlowAttr { water } -// Design water flow of the asset -DesignWaterFlowAttr: WaterFlowAttr { design } +// Water design flow of the asset +WaterDesignFlowAttr: WaterFlowAttr { design } -// Rated water flow of the asset -RatedWaterFlowAttr: WaterFlowAttr { rated } +// Water rated flow of the asset +WaterRatedFlowAttr: WaterFlowAttr { rated } -// Maximum design water flow of the asset -MaxDesignWaterFlowAttr: DesignWaterFlowAttr { max } +// Water max design flow of the asset +WaterMaxDesignFlowAttr: WaterDesignFlowAttr { max } -// Chilled maximum design water flow of the asset -ChilledMaxDesignWaterFlowAttr: MaxDesignWaterFlowAttr { chilled } +// Water chilled max design flow of the asset +WaterChilledMaxDesignFlowAttr: WaterMaxDesignFlowAttr { chilled } -// Hot maximum design water flow of the asset -HotMaxDesignWaterFlowAttr: MaxDesignWaterFlowAttr { hot } +// Water hot max design flow of the asset +WaterHotMaxDesignFlowAttr: WaterMaxDesignFlowAttr { hot } -// Minimum design water flow of the asset -MinDesignWaterFlowAttr: DesignWaterFlowAttr { min } +// Water min design flow of the asset +WaterMinDesignFlowAttr: WaterDesignFlowAttr { min } -// Maximum rated water flow of the asset -MaxRatedWaterFlowAttr: RatedWaterFlowAttr { max } +// Water max rated flow of the asset +WaterMaxRatedFlowAttr: WaterRatedFlowAttr { max } -// Minimum rated water flow of the asset -MinRatedWaterFlowAttr: RatedWaterFlowAttr { min } \ No newline at end of file +// Water min rated flow of the asset +WaterMinRatedFlowAttr: WaterRatedFlowAttr { min } diff --git a/src/xeto/ph.attrs/power.xeto b/src/xeto/ph.attrs/power.xeto index 0d40f13..2f53aca 100644 --- a/src/xeto/ph.attrs/power.xeto +++ b/src/xeto/ph.attrs/power.xeto @@ -7,61 +7,78 @@ // ////////////////////////////////////////////////////////////////////////// -// Capacity attributes +// Air power attributes (cooling/heating capacity) ////////////////////////////////////////////////////////////////////////// -// Rated Capacity of the asset -RatedCapacityAttr : PowerAttr { rated, capacity } +// Air power of the asset +AirPowerAttr : PowerAttr { + air + unit: "BTU/hr" +} -// Design Capacity of the asset -DesignCapacityAttr : PowerAttr { design, capacity } +// Air cooling power of the asset +AirCoolingPowerAttr : AirPowerAttr { cooling } -// Cooling rated capacity of the asset -CoolingRatedCapacityAttr : RatedCapacityAttr { cooling } +// Air rated cooling power of the asset +AirRatedCoolingPowerAttr : AirCoolingPowerAttr { rated } -// Cooling design capacity of the asset -CoolingDesignCapacityAttr : DesignCapacityAttr { cooling } +// Air design cooling power of the asset +AirDesignCoolingPowerAttr : AirCoolingPowerAttr { design } -// Heating rated capacity of the asset -HeatingRatedCapacityAttr : RatedCapacityAttr { heating } +// Air heating power of the asset +AirHeatingPowerAttr : AirPowerAttr { heating } -// Heating design capacity of the asset -HeatingDesignCapacityAttr : DesignCapacityAttr { heating } +// Air rated heating power of the asset +AirRatedHeatingPowerAttr : AirHeatingPowerAttr { rated } + +// Air design heating power of the asset +AirDesignHeatingPowerAttr : AirHeatingPowerAttr { design } ////////////////////////////////////////////////////////////////////////// -// Fan and pump design power attributes +// Electrical motor power attributes ////////////////////////////////////////////////////////////////////////// -// Design motor power of the asset -DesignMotorPowerAttr : PowerAttr { design, motor } +// Electrical motor power of the asset +ElecMotorPowerAttr : PowerAttr { elec, motor } + +// Elec fan motor power of the asset +ElecFanMotorPowerAttr : ElecMotorPowerAttr { fan } -// Design fan motor power of the asset -FanDesignMotorPowerAttr : DesignMotorPowerAttr { fan } +// Elec pump motor power of the asset +ElecPumpMotorPowerAttr : ElecMotorPowerAttr { pump } + +////////////////////////////////////////////////////////////////////////// +// Design fan motor power attributes +////////////////////////////////////////////////////////////////////////// -// Pump design motor power of the asset -PumpDesignMotorPowerAttr : DesignMotorPowerAttr { pump } +// Elec design fan motor power of the asset +ElecDesignFanMotorPowerAttr : ElecFanMotorPowerAttr { design } -// Discharge fan design motor power of the asset -DischargeFanDesignMotorPowerAttr : FanDesignMotorPowerAttr { discharge } +// Elec discharge design fan motor power of the asset +ElecDischargeDesignFanMotorPowerAttr : ElecDesignFanMotorPowerAttr { discharge } -// Return fan design motor power of the asset -ReturnFanDesignMotorPowerAttr : FanDesignMotorPowerAttr { return } +// Elec return design fan motor power of the asset +ElecReturnDesignFanMotorPowerAttr : ElecDesignFanMotorPowerAttr { return } ////////////////////////////////////////////////////////////////////////// -// Fan and pump rated power attributes +// Rated fan motor power attributes ////////////////////////////////////////////////////////////////////////// -// Rated motor power of the asset -RatedMotorPowerAttr : PowerAttr { rated, motor } +// Elec rated fan motor power of the asset +ElecRatedFanMotorPowerAttr : ElecFanMotorPowerAttr { rated } + +// Elec discharge rated fan motor power of the asset +ElecDischargeRatedFanMotorPowerAttr : ElecRatedFanMotorPowerAttr { discharge } -// Fan rated motor power of the asset -FanRatedMotorPowerAttr : RatedMotorPowerAttr { fan } +// Elec return rated fan motor power of the asset +ElecReturnRatedFanMotorPowerAttr : ElecRatedFanMotorPowerAttr { return } -// Pump rated motor power of the asset -PumpRatedMotorPowerAttr : RatedMotorPowerAttr { pump } +////////////////////////////////////////////////////////////////////////// +// Pump motor power attributes +////////////////////////////////////////////////////////////////////////// -// Discharge fan rated motor power of the asset -DischargeFanRatedMotorPowerAttr : FanRatedMotorPowerAttr { discharge } +// Elec design pump motor power of the asset +ElecDesignPumpMotorPowerAttr : ElecPumpMotorPowerAttr { design } -// Return fan rated motor power of the asset -ReturnFanRatedMotorPowerAttr : FanRatedMotorPowerAttr { return } \ No newline at end of file +// Elec rated pump motor power of the asset +ElecRatedPumpMotorPowerAttr : ElecPumpMotorPowerAttr { rated } diff --git a/src/xeto/ph.attrs/pressure.xeto b/src/xeto/ph.attrs/pressure.xeto index 1089b99..f77513b 100644 --- a/src/xeto/ph.attrs/pressure.xeto +++ b/src/xeto/ph.attrs/pressure.xeto @@ -3,31 +3,43 @@ // Licensed under the Academic Free License version 3.0 // // History: -// 12 May 2025 Lincoln Harmer Creation +// 13 Dec 2025 Lincoln Harmer Creation // ////////////////////////////////////////////////////////////////////////// -// Design pressure attributes +// Air pressure attributes ////////////////////////////////////////////////////////////////////////// -// Design pressure of the asset -DesignPressureAttr : PressureAttr { design } +// Air pressure of the asset +AirPressureAttr : PressureAttr { air } -// Pump design pressure of the asset -PumpDesignPressureAttr : DesignPressureAttr { pump } +// Air design pressure of the asset +AirDesignPressureAttr : AirPressureAttr { design } -// Fan design pressure of the asset -FanDesignPressureAttr : DesignPressureAttr { fan } +// Air fan design pressure of the asset +AirFanDesignPressureAttr : AirDesignPressureAttr { fan } -// Chiller design pressure of the asset -ChillerDesignPressureAttr : DesignPressureAttr { chiller } +// Air rated pressure of the asset +AirRatedPressureAttr : AirPressureAttr { rated } ////////////////////////////////////////////////////////////////////////// -// Rated pressure attributes +// Water pressure attributes ////////////////////////////////////////////////////////////////////////// -// Rated pressure of the asset -RatedPressureAttr : PressureAttr { rated } +// Water pressure of the asset +WaterPressureAttr : PressureAttr { water } -// Min chiller rated pressure of the asset -MinChillerRatedPressureAttr : RatedPressureAttr { min, chiller } \ No newline at end of file +// Water design pressure of the asset +WaterDesignPressureAttr : WaterPressureAttr { design } + +// Water pump design pressure of the asset +WaterPumpDesignPressureAttr : WaterDesignPressureAttr { pump } + +// Water chiller design pressure of the asset +WaterChillerDesignPressureAttr : WaterDesignPressureAttr { chiller } + +// Water rated pressure of the asset +WaterRatedPressureAttr : WaterPressureAttr { rated } + +// Water chiller min rated pressure of the asset +WaterChillerMinRatedPressureAttr : WaterRatedPressureAttr { chiller, min } diff --git a/src/xeto/ph.attrs/temp.xeto b/src/xeto/ph.attrs/temp.xeto index c193b9a..7d7beed 100644 --- a/src/xeto/ph.attrs/temp.xeto +++ b/src/xeto/ph.attrs/temp.xeto @@ -6,48 +6,67 @@ // 12 May 2025 Rick Jennings Creation // -// Rated operating temperature of the asset -RatedOperatingTempAttr : TempAttr { rated, operating } +////////////////////////////////////////////////////////////////////////// +// Air temperature attributes +////////////////////////////////////////////////////////////////////////// + +// Air temperature of the asset +AirTempAttr : TempAttr { air } + +// Air operating temperature of the asset +AirOperatingTempAttr : AirTempAttr { operating } + +// Air rated operating temperature of the asset +AirRatedOperatingTempAttr : AirOperatingTempAttr { rated } + +// Air min rated operating temperature of the asset +AirMinRatedOperatingTempAttr : AirRatedOperatingTempAttr { min } + +// Air max rated operating temperature of the asset +AirMaxRatedOperatingTempAttr : AirRatedOperatingTempAttr { max } -// Minimum rated operating temperature of the asset -MinRatedOperatingTempAttr : RatedOperatingTempAttr { min } +// Air design temperature of the asset +AirDesignTempAttr : AirTempAttr { design } -// Maximum rated operating temperature of the asset -MaxRatedOperatingTempAttr : RatedOperatingTempAttr { max } +// Air discharge design temperature of the asset +AirDischargeDesignTempAttr : AirDesignTempAttr { discharge } ////////////////////////////////////////////////////////////////////////// -// Design temp attributes +// Water temperature attributes ////////////////////////////////////////////////////////////////////////// -// Design temperature of the asset -DesignTempAttr : TempAttr { design } +// Water temperature of the asset +WaterTempAttr : TempAttr { water } -// Air design temperature of the asset -AirDesignTempAttr: DesignTempAttr { air } +// Water operating temperature of the asset +WaterOperatingTempAttr : WaterTempAttr { operating } -// Water entering design temperature of the asset -WaterEnteringDesignTempAttr : EnteringDesignTempAttr { water } +// Water rated operating temperature of the asset +WaterRatedOperatingTempAttr : WaterOperatingTempAttr { rated } -// Water leaving design temperature of the asset -WaterLeavingDesignTempAttr : LeavingDesignTempAttr { water } +// Water min rated operating temperature of the asset +WaterMinRatedOperatingTempAttr : WaterRatedOperatingTempAttr { min } -// Leaving design temperature of the asset -LeavingDesignTempAttr : DesignTempAttr { leaving } +// Water max rated operating temperature of the asset +WaterMaxRatedOperatingTempAttr : WaterRatedOperatingTempAttr { max } -// Entering design temperature of the asset -EnteringDesignTempAttr : DesignTempAttr { entering } +// Water design temperature of the asset +WaterDesignTempAttr : WaterTempAttr { design } -// Hot water leaving design temperature of the asset -HotWaterLeavingDesignTempAttr : WaterLeavingDesignTempAttr { hot } +// Water entering design temperature of the asset +WaterEnteringDesignTempAttr : WaterDesignTempAttr { entering } + +// Water chilled entering design temperature of the asset +WaterChilledEnteringDesignTempAttr : WaterEnteringDesignTempAttr { chilled } -// Chilled water leaving design temperature of the asset -ChilledWaterLeavingDesignTempAttr : WaterLeavingDesignTempAttr { chilled } +// Water hot entering design temperature of the asset +WaterHotEnteringDesignTempAttr : WaterEnteringDesignTempAttr { hot } -// Hot water entering design temperature of the asset -HotWaterEnteringDesignTempAttr : WaterEnteringDesignTempAttr { hot } +// Water leaving design temperature of the asset +WaterLeavingDesignTempAttr : WaterDesignTempAttr { leaving } -// Chilled water entering design temperature of the asset -ChilledWaterEnteringDesignTempAttr : WaterEnteringDesignTempAttr { chilled } +// Water chilled leaving design temperature of the asset +WaterChilledLeavingDesignTempAttr : WaterLeavingDesignTempAttr { chilled } -// Discharge air design temperature of the asset -DischargeAirDesignTempAttr: AirDesignTempAttr { discharge } \ No newline at end of file +// Water hot leaving design temperature of the asset +WaterHotLeavingDesignTempAttr : WaterLeavingDesignTempAttr { hot } From 002ade76cc143466663258e04988610bead6015f Mon Sep 17 00:00:00 2001 From: lincolnharmer Date: Wed, 14 Jan 2026 11:58:09 -0700 Subject: [PATCH 7/7] add thermal/mechanical/fuel power type hierarchy - Add AirThermalPowerAttr and WaterThermalPowerAttr for thermal capacity - Add AirMechanicalPowerAttr (fan shaft) and WaterMechanicalPowerAttr (pump shaft) - Add ElecPowerAttr as parent for ElecMotorPowerAttr - Add fuel power types: NaturalGas, FuelOil, Propane, Diesel Key distinction: - Thermal power = heat transfer capacity (BTU/hr) - Mechanical power = shaft power output - Electrical power = motor input power - Fuel power = combustion equipment input --- src/xeto/ph.attrs/power.xeto | 199 ++++++++++++++++++++++++++++------- 1 file changed, 159 insertions(+), 40 deletions(-) diff --git a/src/xeto/ph.attrs/power.xeto b/src/xeto/ph.attrs/power.xeto index 2f53aca..d55e35d 100644 --- a/src/xeto/ph.attrs/power.xeto +++ b/src/xeto/ph.attrs/power.xeto @@ -7,78 +7,197 @@ // ////////////////////////////////////////////////////////////////////////// -// Air power attributes (cooling/heating capacity) +// Air power attributes ////////////////////////////////////////////////////////////////////////// -// Air power of the asset -AirPowerAttr : PowerAttr { - air - unit: "BTU/hr" -} +// Air power (capacity) of the asset +AirPowerAttr : PowerAttr { air } -// Air cooling power of the asset -AirCoolingPowerAttr : AirPowerAttr { cooling } +// Air thermal capacity (heat transfer to/from air) +AirThermalPowerAttr : AirPowerAttr { thermal, unit: "BTU/hr" } -// Air rated cooling power of the asset -AirRatedCoolingPowerAttr : AirCoolingPowerAttr { rated } +// Air cooling thermal capacity +AirCoolingThermalPowerAttr : AirThermalPowerAttr { cooling } -// Air design cooling power of the asset -AirDesignCoolingPowerAttr : AirCoolingPowerAttr { design } +// Air rated cooling thermal capacity +AirRatedCoolingThermalPowerAttr : AirCoolingThermalPowerAttr { rated } -// Air heating power of the asset -AirHeatingPowerAttr : AirPowerAttr { heating } +// Air design cooling thermal capacity +AirDesignCoolingThermalPowerAttr : AirCoolingThermalPowerAttr { design } -// Air rated heating power of the asset -AirRatedHeatingPowerAttr : AirHeatingPowerAttr { rated } +// Air heating thermal capacity +AirHeatingThermalPowerAttr : AirThermalPowerAttr { heating } -// Air design heating power of the asset -AirDesignHeatingPowerAttr : AirHeatingPowerAttr { design } +// Air rated heating thermal capacity +AirRatedHeatingThermalPowerAttr : AirHeatingThermalPowerAttr { rated } + +// Air design heating thermal capacity +AirDesignHeatingThermalPowerAttr : AirHeatingThermalPowerAttr { design } + +// Air mechanical power (fan shaft power) +AirMechanicalPowerAttr : AirPowerAttr { mechanical } + +// Air fan mechanical power +AirFanMechanicalPowerAttr : AirMechanicalPowerAttr { fan } + +// Air design fan mechanical power +AirDesignFanMechanicalPowerAttr : AirFanMechanicalPowerAttr { design } + +// Air discharge design fan mechanical power +AirDischargeDesignFanMechanicalPowerAttr : AirDesignFanMechanicalPowerAttr { discharge } + +// Air return design fan mechanical power +AirReturnDesignFanMechanicalPowerAttr : AirDesignFanMechanicalPowerAttr { return } + +// Air rated fan mechanical power +AirRatedFanMechanicalPowerAttr : AirFanMechanicalPowerAttr { rated } + +// Air discharge rated fan mechanical power +AirDischargeRatedFanMechanicalPowerAttr : AirRatedFanMechanicalPowerAttr { discharge } + +// Air return rated fan mechanical power +AirReturnRatedFanMechanicalPowerAttr : AirRatedFanMechanicalPowerAttr { return } ////////////////////////////////////////////////////////////////////////// -// Electrical motor power attributes +// Water power attributes ////////////////////////////////////////////////////////////////////////// -// Electrical motor power of the asset -ElecMotorPowerAttr : PowerAttr { elec, motor } +// Water power (capacity) of the asset +WaterPowerAttr : PowerAttr { water } -// Elec fan motor power of the asset -ElecFanMotorPowerAttr : ElecMotorPowerAttr { fan } +// Water thermal capacity (heat transfer to/from water) +WaterThermalPowerAttr : WaterPowerAttr { thermal, unit: "BTU/hr" } -// Elec pump motor power of the asset -ElecPumpMotorPowerAttr : ElecMotorPowerAttr { pump } +// Water cooling thermal capacity (chiller capacity, cooling coil) +WaterCoolingThermalPowerAttr : WaterThermalPowerAttr { cooling } + +// Water rated cooling thermal capacity +WaterRatedCoolingThermalPowerAttr : WaterCoolingThermalPowerAttr { rated } + +// Water design cooling thermal capacity +WaterDesignCoolingThermalPowerAttr : WaterCoolingThermalPowerAttr { design } + +// Water heating thermal capacity (boiler capacity, heating coil) +WaterHeatingThermalPowerAttr : WaterThermalPowerAttr { heating } + +// Water rated heating thermal capacity +WaterRatedHeatingThermalPowerAttr : WaterHeatingThermalPowerAttr { rated } + +// Water design heating thermal capacity +WaterDesignHeatingThermalPowerAttr : WaterHeatingThermalPowerAttr { design } + +// Water mechanical power (pump shaft power) +WaterMechanicalPowerAttr : WaterPowerAttr { mechanical } + +// Water pump mechanical power +WaterPumpMechanicalPowerAttr : WaterMechanicalPowerAttr { pump } + +// Water design pump mechanical power +WaterDesignPumpMechanicalPowerAttr : WaterPumpMechanicalPowerAttr { design } + +// Water rated pump mechanical power +WaterRatedPumpMechanicalPowerAttr : WaterPumpMechanicalPowerAttr { rated } ////////////////////////////////////////////////////////////////////////// -// Design fan motor power attributes +// Electrical power attributes ////////////////////////////////////////////////////////////////////////// -// Elec design fan motor power of the asset +// Electrical power of the asset +ElecPowerAttr : PowerAttr { elec } + +// Electrical motor power +ElecMotorPowerAttr : ElecPowerAttr { motor } + +// Elec fan motor power +ElecFanMotorPowerAttr : ElecMotorPowerAttr { fan } + +// Elec pump motor power +ElecPumpMotorPowerAttr : ElecMotorPowerAttr { pump } + +// Elec design fan motor power ElecDesignFanMotorPowerAttr : ElecFanMotorPowerAttr { design } -// Elec discharge design fan motor power of the asset +// Elec discharge design fan motor power ElecDischargeDesignFanMotorPowerAttr : ElecDesignFanMotorPowerAttr { discharge } -// Elec return design fan motor power of the asset +// Elec return design fan motor power ElecReturnDesignFanMotorPowerAttr : ElecDesignFanMotorPowerAttr { return } -////////////////////////////////////////////////////////////////////////// -// Rated fan motor power attributes -////////////////////////////////////////////////////////////////////////// +// Elec design pump motor power +ElecDesignPumpMotorPowerAttr : ElecPumpMotorPowerAttr { design } -// Elec rated fan motor power of the asset +// Elec rated fan motor power ElecRatedFanMotorPowerAttr : ElecFanMotorPowerAttr { rated } -// Elec discharge rated fan motor power of the asset +// Elec discharge rated fan motor power ElecDischargeRatedFanMotorPowerAttr : ElecRatedFanMotorPowerAttr { discharge } -// Elec return rated fan motor power of the asset +// Elec return rated fan motor power ElecReturnRatedFanMotorPowerAttr : ElecRatedFanMotorPowerAttr { return } +// Elec rated pump motor power +ElecRatedPumpMotorPowerAttr : ElecPumpMotorPowerAttr { rated } + ////////////////////////////////////////////////////////////////////////// -// Pump motor power attributes +// Natural gas power attributes ////////////////////////////////////////////////////////////////////////// -// Elec design pump motor power of the asset -ElecDesignPumpMotorPowerAttr : ElecPumpMotorPowerAttr { design } +// Natural gas power (fuel input) +NaturalGasPowerAttr : PowerAttr { naturalGas } -// Elec rated pump motor power of the asset -ElecRatedPumpMotorPowerAttr : ElecPumpMotorPowerAttr { rated } +// Natural gas input power +NaturalGasInputPowerAttr : NaturalGasPowerAttr { input } + +// Natural gas rated input power +NaturalGasRatedInputPowerAttr : NaturalGasInputPowerAttr { rated } + +// Natural gas design input power +NaturalGasDesignInputPowerAttr : NaturalGasInputPowerAttr { design } + +////////////////////////////////////////////////////////////////////////// +// Fuel oil power attributes +////////////////////////////////////////////////////////////////////////// + +// Fuel oil power (fuel input) +FuelOilPowerAttr : PowerAttr { fuelOil } + +// Fuel oil input power +FuelOilInputPowerAttr : FuelOilPowerAttr { input } + +// Fuel oil rated input power +FuelOilRatedInputPowerAttr : FuelOilInputPowerAttr { rated } + +// Fuel oil design input power +FuelOilDesignInputPowerAttr : FuelOilInputPowerAttr { design } + +////////////////////////////////////////////////////////////////////////// +// Propane power attributes +////////////////////////////////////////////////////////////////////////// + +// Propane power (fuel input) +PropanePowerAttr : PowerAttr { propane } + +// Propane input power +PropaneInputPowerAttr : PropanePowerAttr { input } + +// Propane rated input power +PropaneRatedInputPowerAttr : PropaneInputPowerAttr { rated } + +// Propane design input power +PropaneDesignInputPowerAttr : PropaneInputPowerAttr { design } + +////////////////////////////////////////////////////////////////////////// +// Diesel power attributes +////////////////////////////////////////////////////////////////////////// + +// Diesel power (fuel input) +DieselPowerAttr : PowerAttr { diesel } + +// Diesel input power +DieselInputPowerAttr : DieselPowerAttr { input } + +// Diesel rated input power +DieselRatedInputPowerAttr : DieselInputPowerAttr { rated } + +// Diesel design input power +DieselDesignInputPowerAttr : DieselInputPowerAttr { design }