Add Valve and Damper base specs with valve/actuator enums#50
Draft
agarnhart wants to merge 1 commit intoProject-Haystack:masterfrom
Draft
Add Valve and Damper base specs with valve/actuator enums#50agarnhart wants to merge 1 commit intoProject-Haystack:masterfrom
agarnhart wants to merge 1 commit intoProject-Haystack:masterfrom
Conversation
Introduce foundational equipment specs and enum types to support valve and actuator modeling in the ph library: Equipment specs: - Valve: abstract base for all valve equipment (actuated and non-actuated) with slots for valveFunction, valvePorts, valveBodyType, pipeFluid, and pipeSection - Damper: abstract base for all damper equipment with ductSection slot - ValveActuator: updated to Actuator & Valve intersection - DamperActuator: updated to Actuator & Damper intersection - Actuator: add actuatorFailPosition, actuatorDirection, actuatorControlAction, and actuatorMechanism slots Enum types (7 new, 42 total values): - ValveFunction: 13 piping roles (isolation, control, mixing, etc.) - ValveBodyType: 6 body types (globe, butterfly, ball, etc.) - ValvePorts: 3 port configurations (twoWay, threeWay, fourWay) - ActuatorFailPosition: 4 fail-safe modes - ActuatorDirection: direct/reverse acting - ActuatorControlAction: modulating, twoPosition, floating - ActuatorMechanism: 4 drive types (electricMotor, pneumatic, etc.) All classifications use Enum to avoid adding new global marker tags.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add foundational equipment specs and enum types for valve and actuator modeling in the
phlibrary. This introduces abstract base specs forValveandDamper, updatesActuatorwith new classification slots, and defines 7 new Enum types (42 values total).Equipment Specs
Valve: abstract base for all valve equipment (actuated and non-actuated) with slots forvalveFunction,valvePorts,valveBodyType,pipeFluid, andpipeSectionDamper: abstract base for all damper equipment withductSectionslotValveActuator: updated toActuator & Valveintersection — inherits both actuator and valve slotsDamperActuator: updated toActuator & Damperintersection — inherits both actuator and damper slotsActuator: gains four new optional slots for fail position, direction, control action, and mechanismEnum Types
All classifications use
Enumrather thanChoiceto avoid adding new global marker tags toPhEntity.ValveFunctionValveBodyTypeValvePortsActuatorFailPositionActuatorDirectionActuatorControlActionActuatorMechanismDesign Rationale
Valveabstract base gives them a home without requiring actuator metadata.ValveActuator : Actuator & Valvecomposes both concerns cleanly — valve body identity fromValve, control metadata fromActuator.Damperfollows the same pattern asValveso thatDamperActuatorgains symmetry and future damper-specific slots have a home.Files Changed
src/xeto/ph/enums.xeto— 7 new Enum types in alphabetical ordersrc/xeto/ph/equip.xeto—Valve,Damperabstract bases; updatedActuator,ValveActuator,DamperActuator