From bde77ea313a31d9dc97405db93dd7da93ab946c0 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 25 Jun 2026 21:07:05 +0000 Subject: [PATCH 1/3] Add process engineering value sets (PISCES/SFF coverage) Adds comprehensive value sets for chemical/process engineering, motivated by gaps surfaced when checking coverage against Project PISCES and its Standard Flowsheet Format (SFF), where unit operations/equipment are flowsheet nodes and streams are edges. New module src/valuesets/schema/process_engineering/: - unit_operations.yaml: UnitOperationType (53 values, grouped by transfer class) and ProcessEquipmentType (42 values, the SFF node types), with verified CHMO/OBI/PROCO mappings. - process_streams.yaml: ProcessStreamRole, ProcessStreamPhase (incl. multiphase combinations), and UtilityType. - process_industries.yaml: ProcessIndustryCategory (generalizes the PISCES top-level categories via a pisces_category annotation) and ProcessOperationMode. Augments existing (non-closed) DownstreamProcessEnum in bioprocessing/ scale_up.yaml with clarification, flocculation, ultrafiltration, diafiltration, TFF, buffer exchange, adsorption, viral inactivation, polishing, and lyophilization. Registers the three new files in valuesets.yaml imports. All ontology mappings verified via OLS/OAK; schema imports resolve and enum mapping validation passes (0 errors on changed files). Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01JkQ7CEGzWMmM8ReU2KTwiP --- cache/chmo/terms.csv | 10 + cache/obi/terms.csv | 2 + .../schema/bioprocessing/scale_up.yaml | 34 ++ .../process_industries.yaml | 125 +++++ .../process_engineering/process_streams.yaml | 162 ++++++ .../process_engineering/unit_operations.yaml | 506 ++++++++++++++++++ src/valuesets/schema/valuesets.yaml | 3 + 7 files changed, 842 insertions(+) create mode 100644 src/valuesets/schema/process_engineering/process_industries.yaml create mode 100644 src/valuesets/schema/process_engineering/process_streams.yaml create mode 100644 src/valuesets/schema/process_engineering/unit_operations.yaml diff --git a/cache/chmo/terms.csv b/cache/chmo/terms.csv index 9af679d0..4560b9be 100644 --- a/cache/chmo/terms.csv +++ b/cache/chmo/terms.csv @@ -92,3 +92,13 @@ CHMO:0001477,crystallisation,2026-06-11T16:10:14.320283 CHMO:0000158,powder X-ray diffraction,2026-06-11T16:10:21.908188 CHMO:0000025,cyclic voltammetry,2026-06-11T16:10:31.974523 CHMO:0002535,Karl–Fischer titration,2026-06-11T16:10:40.306624 +CHMO:0001532,distillation,2026-06-25T21:04:13.349577 +CHMO:0001681,leaching,2026-06-25T21:04:13.350319 +CHMO:0001641,micro-filtration,2026-06-25T21:04:14.116239 +CHMO:0001645,ultra-filtration,2026-06-25T21:04:14.117118 +CHMO:0001642,nano-filtration,2026-06-25T21:04:14.117843 +CHMO:0001643,reverse osmosis,2026-06-25T21:04:14.118535 +CHMO:0001624,fermentation,2026-06-25T21:04:16.308638 +CHMO:0001473,combustion,2026-06-25T21:04:16.309243 +CHMO:0001502,pyrolysis,2026-06-25T21:04:16.309789 +CHMO:0002231,purification,2026-06-25T21:04:16.310266 diff --git a/cache/obi/terms.csv b/cache/obi/terms.csv index 5b8e1ec8..09206b1c 100644 --- a/cache/obi/terms.csv +++ b/cache/obi/terms.csv @@ -82,3 +82,5 @@ OBI:0302886,centrifugation,2026-06-11T16:05:52.111915 OBI:0000626,DNA sequencing assay,2026-06-11T16:09:55.501188 OBI:0002107,bio-layer interferometry assay,2026-06-11T16:12:09.434877 OBI:0000719,vaccine production,2026-06-23T05:48:33.992380 +OBI:0001046,bioreactor,2026-06-25T21:04:16.310785 +OBI:0000038,chromatography column,2026-06-25T21:04:16.311231 diff --git a/src/valuesets/schema/bioprocessing/scale_up.yaml b/src/valuesets/schema/bioprocessing/scale_up.yaml index c54b1949..d604f182 100644 --- a/src/valuesets/schema/bioprocessing/scale_up.yaml +++ b/src/valuesets/schema/bioprocessing/scale_up.yaml @@ -348,6 +348,40 @@ enums: description: Cell disruption/homogenization annotations: methods: High pressure, bead mill + CLARIFICATION: + description: Removal of cells and debris to produce a clarified harvest + annotations: + methods: Centrifugation, depth filtration + FLOCCULATION: + description: Aggregation of cells and debris into flocs to aid clarification + ULTRAFILTRATION: + title: ultra-filtration + description: Membrane concentration retaining macromolecules such as proteins + meaning: CHMO:0001645 + annotations: + mwco: Typically 1-1000 kDa + DIAFILTRATION: + description: Buffer exchange and desalting by ultrafiltration with continuous makeup + TANGENTIAL_FLOW_FILTRATION: + description: Crossflow membrane filtration used for concentration and diafiltration + annotations: + aliases: TFF, crossflow filtration + BUFFER_EXCHANGE: + description: Replacement of the buffer matrix of a product stream + ADSORPTION: + description: Capture of product or impurities onto a solid sorbent + VIRAL_INACTIVATION: + description: Treatment step that inactivates potential viral contaminants + annotations: + methods: Low pH, solvent/detergent, heat + POLISHING: + description: Final chromatographic or filtration steps to remove trace impurities + LYOPHILIZATION: + title: freeze drying + description: Freeze-drying to produce a stable solid product + meaning: CHMO:0001553 + annotations: + aliases: freeze drying FeedstockTypeEnum: title: Feedstock Type description: Types of feedstocks for bioprocessing diff --git a/src/valuesets/schema/process_engineering/process_industries.yaml b/src/valuesets/schema/process_engineering/process_industries.yaml new file mode 100644 index 00000000..3df6d679 --- /dev/null +++ b/src/valuesets/schema/process_engineering/process_industries.yaml @@ -0,0 +1,125 @@ +name: valuesets-process-engineering-process-industries +title: Process Industry Value Sets +description: >- + Value sets categorizing process industries and process operation modes. + The process industry categories generalize the top-level process categories + used by the PISCES Standard Flowsheet Format (Biofuel, Chemical, Energy, + Pharmaceutical, Food Product) into a more comprehensive set of process + manufacturing sectors. +id: https://w3id.org/valuesets/process_engineering/process_industries +imports: +- linkml:types +prefixes: + linkml: https://w3id.org/linkml/ + valuesets: https://w3id.org/valuesets/ + orcid: https://orcid.org/ + valuesets_meta: https://w3id.org/valuesets/meta/ +default_prefix: valuesets +slots: + process_industry_category: + description: The process manufacturing sector a process belongs to + range: ProcessIndustryCategory + process_operation_mode: + description: The temporal operating mode of a process + range: ProcessOperationMode +enums: + ProcessIndustryCategory: + title: Process Industry Category + description: >- + Sectors of the process (continuous and batch) manufacturing industries. + The pisces_category annotation records the corresponding top-level + category in the PISCES Standard Flowsheet Format where one exists. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + PETROLEUM_REFINING: + description: Refining of crude oil into fuels and feedstocks + annotations: + pisces_category: Energy + PETROCHEMICAL: + description: Production of chemicals derived from petroleum and natural gas + annotations: + pisces_category: Chemical + BULK_CHEMICAL: + description: Large-volume production of commodity chemicals + annotations: + pisces_category: Chemical + SPECIALTY_CHEMICAL: + description: Production of lower-volume, high-value performance chemicals + annotations: + pisces_category: Chemical + AGROCHEMICAL: + description: Production of fertilizers, pesticides, and other agricultural chemicals + annotations: + pisces_category: Chemical + POLYMER_AND_PLASTICS: + description: Production of polymers, resins, and plastic materials + annotations: + pisces_category: Chemical + PHARMACEUTICAL: + description: Manufacture of active pharmaceutical ingredients and drug products + annotations: + pisces_category: Pharmaceutical + BIOTECHNOLOGY: + description: Manufacture of products using biological systems and fermentation + annotations: + pisces_category: Pharmaceutical + BIOFUEL: + description: Production of biologically derived fuels such as ethanol and biodiesel + annotations: + pisces_category: Biofuel + FOOD_AND_BEVERAGE: + description: Processing and manufacture of food and beverage products + annotations: + pisces_category: Food Product + PULP_AND_PAPER: + description: Production of pulp, paper, and board from fiber + METALS_AND_MINING: + description: Extraction and processing of metals and minerals + WATER_AND_WASTEWATER_TREATMENT: + description: Treatment of water and wastewater streams + POWER_GENERATION: + description: Generation of electrical power and process heat + annotations: + pisces_category: Energy + GAS_PROCESSING: + description: Processing and separation of natural gas and industrial gases + annotations: + pisces_category: Energy + CEMENT_AND_CONSTRUCTION_MATERIALS: + description: Production of cement, lime, and construction materials + GLASS_AND_CERAMICS: + description: Manufacture of glass and ceramic products + TEXTILE: + description: Production and finishing of textile fibers and fabrics + COSMETICS_AND_PERSONAL_CARE: + description: Manufacture of cosmetics and personal care products + NUCLEAR_FUEL: + description: Processing of nuclear fuel materials + annotations: + pisces_category: Energy + SEMICONDUCTOR: + description: Fabrication of semiconductor and microelectronic materials + ProcessOperationMode: + title: Process Operation Mode + description: >- + The temporal mode in which a process or unit operation is run. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + BATCH: + description: Material is charged, processed, and discharged in discrete batches + CONTINUOUS: + description: Material flows through the process steadily without interruption + SEMI_BATCH: + description: A hybrid mode where some streams are continuous while others are batch-wise + SEMI_CONTINUOUS: + description: Process alternates between continuous operation and periodic interruptions diff --git a/src/valuesets/schema/process_engineering/process_streams.yaml b/src/valuesets/schema/process_engineering/process_streams.yaml new file mode 100644 index 00000000..12da385e --- /dev/null +++ b/src/valuesets/schema/process_engineering/process_streams.yaml @@ -0,0 +1,162 @@ +name: valuesets-process-engineering-process-streams +title: Process Engineering Stream Value Sets +description: >- + Value sets describing process streams - the material and energy flows that + connect unit operations in a process flowsheet (the edges of a process + graph, e.g. in the PISCES Standard Flowsheet Format). Covers the role a + stream plays in the process, its physical (phase) state, and common plant + utility types. +id: https://w3id.org/valuesets/process_engineering/process_streams +imports: +- linkml:types +prefixes: + linkml: https://w3id.org/linkml/ + valuesets: https://w3id.org/valuesets/ + orcid: https://orcid.org/ + valuesets_meta: https://w3id.org/valuesets/meta/ +default_prefix: valuesets +slots: + process_stream_role: + description: The role a process stream plays in a flowsheet + range: ProcessStreamRole + process_stream_phase: + description: The physical phase state of a process stream + range: ProcessStreamPhase + utility_type: + description: The type of plant utility supplied to or produced by a process + range: UtilityType +enums: + ProcessStreamRole: + title: Process Stream Role + description: >- + The functional role of a stream within a process flowsheet, independent + of its chemical composition. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + FEED: + description: A stream entering the process or a unit operation as input + RAW_MATERIAL: + description: A fresh raw material or reactant stream entering the process battery limits + PRODUCT: + description: A primary product stream of commercial value leaving the process + BYPRODUCT: + description: A secondary saleable or usable product produced alongside the main product + INTERMEDIATE: + description: A stream flowing between unit operations within the process + RECYCLE: + description: A stream returned to an upstream point for reprocessing + PURGE: + description: A stream withdrawn from a recycle loop to prevent accumulation of inerts or impurities + BLEED: + description: A small continuous stream withdrawn to control composition or level + MAKEUP: + description: A stream added to replenish material lost from a circulating loop + WASTE: + description: A stream with no further use that must be treated or disposed of + EFFLUENT: + description: A liquid waste stream discharged from the process + EMISSION: + description: A gaseous stream released to the atmosphere + UTILITY: + description: A service stream (e.g. steam, cooling water) supplied to a unit operation + ProcessStreamPhase: + title: Process Stream Phase + description: >- + The physical phase or phase combination of a process stream. For + single-phase fundamental states see also StateOfMatterEnum in the physics + module; this enum adds the multiphase combinations common in process + engineering. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + see_also: + - https://w3id.org/valuesets/physics/states_of_matter + permissible_values: + GAS: + description: A single gas or vapor phase + annotations: + sff_phase_code: g + LIQUID: + description: A single liquid phase + annotations: + sff_phase_code: l + SOLID: + description: A single solid phase + annotations: + sff_phase_code: s + SUPERCRITICAL: + description: A supercritical fluid above its critical temperature and pressure + VAPOR_LIQUID: + description: A two-phase mixture of vapor and liquid + LIQUID_LIQUID: + description: A two-phase mixture of two immiscible liquids + VAPOR_LIQUID_LIQUID: + description: A three-phase mixture of a vapor and two immiscible liquids + SLURRY: + description: A suspension of solids in a liquid + GAS_SOLID: + description: A two-phase mixture of gas and entrained or fluidized solids + MULTIPHASE: + description: A stream containing more than one phase, of mixed or unspecified composition + UtilityType: + title: Utility Type + description: >- + Common plant utilities consumed or produced by process unit operations, + used for energy and mass balance accounting on a flowsheet. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + STEAM: + description: Process steam used for heating or stripping + LOW_PRESSURE_STEAM: + description: Low-pressure steam utility + annotations: + typical_range: <3 barg + MEDIUM_PRESSURE_STEAM: + description: Medium-pressure steam utility + annotations: + typical_range: 3-20 barg + HIGH_PRESSURE_STEAM: + description: High-pressure steam utility + annotations: + typical_range: '>20 barg' + COOLING_WATER: + description: Recirculated cooling water for heat rejection + CHILLED_WATER: + description: Refrigerated water for below-ambient cooling + REFRIGERANT: + description: Refrigerant fluid for low-temperature cooling duty + PROCESS_WATER: + description: Treated water used as a process input + DEMINERALIZED_WATER: + description: High-purity demineralized water utility + ELECTRICITY: + description: Electrical power supplied to drivers and equipment + NATURAL_GAS: + description: Natural gas supplied as fuel or feedstock + FUEL_GAS: + description: Fuel gas burned in fired heaters and boilers + COMPRESSED_AIR: + description: Compressed air utility for process or actuation use + INSTRUMENT_AIR: + description: Clean dry compressed air for instrumentation + NITROGEN: + description: Nitrogen used for inerting, blanketing, or purging + HOT_OIL: + description: Thermal oil heat-transfer fluid for high-temperature heating + BRINE: + description: Chilled brine used as a low-temperature coolant + FLARE: + description: Flare system for safe combustion of relieved gases diff --git a/src/valuesets/schema/process_engineering/unit_operations.yaml b/src/valuesets/schema/process_engineering/unit_operations.yaml new file mode 100644 index 00000000..76ef9d95 --- /dev/null +++ b/src/valuesets/schema/process_engineering/unit_operations.yaml @@ -0,0 +1,506 @@ +name: valuesets-process-engineering-unit-operations +title: Process Engineering Unit Operations Value Sets +description: >- + Value sets for chemical and process engineering unit operations and process + equipment. Unit operations are the fundamental processing steps (separation, + reaction, heat/mass transfer, solids handling) that compose a process + flowsheet, while process equipment types are the physical assets that + implement them. These value sets are intended to support flowsheet data + models such as the PISCES Standard Flowsheet Format (SFF), where unit + operations / equipment are the nodes of a process graph. +id: https://w3id.org/valuesets/process_engineering/unit_operations +imports: +- linkml:types +prefixes: + linkml: https://w3id.org/linkml/ + valuesets: https://w3id.org/valuesets/ + CHMO: http://purl.obolibrary.org/obo/CHMO_ + OBI: http://purl.obolibrary.org/obo/OBI_ + PROCO: http://purl.obolibrary.org/obo/PROCO_ + orcid: https://orcid.org/ + valuesets_meta: https://w3id.org/valuesets/meta/ +default_prefix: valuesets +slots: + unit_operation_type: + description: The type of unit operation performed at a process step + range: UnitOperationType + process_equipment_type: + description: The type of physical equipment implementing a process step + range: ProcessEquipmentType +enums: + UnitOperationType: + title: Unit Operation Type + description: >- + Fundamental chemical and process engineering unit operations - the + discrete processing steps that transform, separate, combine, or move + process material. Grouped (via the unit_operation_class annotation) into + momentum transfer, heat transfer, mass-transfer separations, mechanical + separations, solids processing, reaction, and storage. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + # --- Momentum transfer / fluid handling --- + PUMPING: + description: Raising the pressure or moving of a liquid stream using a pump + annotations: + unit_operation_class: MOMENTUM_TRANSFER + COMPRESSION: + description: Raising the pressure of a gas or vapor stream using a compressor + annotations: + unit_operation_class: MOMENTUM_TRANSFER + GAS_MOVING: + description: Moving a gas stream at low pressure rise using a fan or blower + annotations: + unit_operation_class: MOMENTUM_TRANSFER + FLOW_SPLITTING: + description: Dividing a single stream into two or more streams of identical composition + annotations: + unit_operation_class: MOMENTUM_TRANSFER + STREAM_MIXING: + description: Combining two or more streams into a single stream + annotations: + unit_operation_class: MOMENTUM_TRANSFER + # --- Heat transfer --- + HEAT_EXCHANGE: + description: Transfer of thermal energy between two streams without phase-change intent + annotations: + unit_operation_class: HEAT_TRANSFER + HEATING: + description: Raising the temperature of a process stream + annotations: + unit_operation_class: HEAT_TRANSFER + COOLING: + description: Lowering the temperature of a process stream + annotations: + unit_operation_class: HEAT_TRANSFER + CONDENSATION: + description: Converting a vapor to a liquid by removing heat + annotations: + unit_operation_class: HEAT_TRANSFER + EVAPORATION: + title: evaporation + description: Concentrating a solution by vaporizing solvent, typically water + meaning: CHMO:0001574 + annotations: + unit_operation_class: HEAT_TRANSFER + # --- Mass transfer / equilibrium separations --- + DISTILLATION: + title: distillation + description: Separation of components by differences in volatility (boiling point) + meaning: CHMO:0001532 + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + ABSORPTION: + description: Selective transfer of one or more gas-phase components into a liquid solvent + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + STRIPPING: + description: Selective transfer of dissolved components from a liquid into a gas stream + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + LIQUID_LIQUID_EXTRACTION: + title: extraction + description: Separation by partitioning of solutes between two immiscible liquid phases + meaning: CHMO:0001577 + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + LEACHING: + title: leaching + description: Solid-liquid extraction of soluble components from a solid using a solvent + meaning: CHMO:0001681 + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + ADSORPTION: + description: Selective uptake of components onto the surface of a solid sorbent + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + ION_EXCHANGE: + description: Reversible exchange of ions between a solution and a solid ion-exchange resin + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + CHROMATOGRAPHY: + title: chromatography + description: Separation by differential partitioning of solutes between a mobile and stationary phase + meaning: CHMO:0001000 + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + CRYSTALLIZATION: + title: crystallization + description: Formation of a solid crystalline phase from a solution or melt + meaning: PROCO:0000052 + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + PRECIPITATION: + title: precipitation + description: Formation of an insoluble solid from solution by chemical or physical means + meaning: CHMO:0001688 + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + DRYING: + description: Removal of a liquid (usually water) from a solid or surface by vaporization + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + FREEZE_DRYING: + title: freeze drying + description: Removal of solvent by sublimation from the frozen state (lyophilization) + meaning: CHMO:0001553 + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + aliases: lyophilization + HUMIDIFICATION: + description: Addition of water vapor to a gas stream + annotations: + unit_operation_class: MASS_TRANSFER_SEPARATION + # --- Membrane separations --- + MEMBRANE_SEPARATION: + description: Separation of stream components using a semipermeable membrane + annotations: + unit_operation_class: MEMBRANE_SEPARATION + MICROFILTRATION: + title: micro-filtration + description: Membrane separation retaining particles roughly 0.1-10 micrometers + meaning: CHMO:0001641 + annotations: + unit_operation_class: MEMBRANE_SEPARATION + ULTRAFILTRATION: + title: ultra-filtration + description: Membrane separation retaining macromolecules and colloids + meaning: CHMO:0001645 + annotations: + unit_operation_class: MEMBRANE_SEPARATION + NANOFILTRATION: + title: nano-filtration + description: Membrane separation retaining small molecules and multivalent ions + meaning: CHMO:0001642 + annotations: + unit_operation_class: MEMBRANE_SEPARATION + REVERSE_OSMOSIS: + title: reverse osmosis + description: Pressure-driven membrane separation rejecting dissolved salts and small solutes + meaning: CHMO:0001643 + annotations: + unit_operation_class: MEMBRANE_SEPARATION + DIALYSIS: + title: dialysis + description: Diffusive membrane separation of solutes across a concentration gradient + meaning: CHMO:0001522 + annotations: + unit_operation_class: MEMBRANE_SEPARATION + ELECTRODIALYSIS: + description: Membrane separation of ions driven by an applied electric field + annotations: + unit_operation_class: MEMBRANE_SEPARATION + PERVAPORATION: + description: Membrane separation combining permeation and partial vaporization of the permeate + annotations: + unit_operation_class: MEMBRANE_SEPARATION + # --- Mechanical / fluid-solid separations --- + FILTRATION: + title: filtration + description: Separation of solids from a fluid by passage through a porous medium + meaning: CHMO:0001640 + annotations: + unit_operation_class: MECHANICAL_SEPARATION + CENTRIFUGATION: + title: centrifugation + description: Separation of phases by density difference under centrifugal force + meaning: OBI:0302886 + annotations: + unit_operation_class: MECHANICAL_SEPARATION + SEDIMENTATION: + description: Gravity separation of suspended solids or immiscible liquids by settling + annotations: + unit_operation_class: MECHANICAL_SEPARATION + CLARIFICATION: + description: Removal of suspended solids from a liquid to produce a clarified stream + annotations: + unit_operation_class: MECHANICAL_SEPARATION + FLOTATION: + description: Separation of solids or droplets by attachment to rising gas bubbles + annotations: + unit_operation_class: MECHANICAL_SEPARATION + FLOCCULATION: + description: Aggregation of fine suspended particles into larger flocs to aid separation + annotations: + unit_operation_class: MECHANICAL_SEPARATION + CYCLONE_SEPARATION: + description: Separation of particles from a fluid using centrifugal force in a cyclone + annotations: + unit_operation_class: MECHANICAL_SEPARATION + SCREENING: + description: Separation of particulate solids by size using a screen or sieve + annotations: + unit_operation_class: MECHANICAL_SEPARATION + GAS_LIQUID_SEPARATION: + description: Disengagement of vapor and liquid phases, e.g. in a flash or knockout drum + annotations: + unit_operation_class: MECHANICAL_SEPARATION + # --- Solids processing --- + SIZE_REDUCTION: + description: Reduction of particle size by crushing, grinding, or milling (comminution) + annotations: + unit_operation_class: SOLIDS_PROCESSING + SIZE_ENLARGEMENT: + description: Increase of particle size by granulation, agglomeration, or pelletizing + annotations: + unit_operation_class: SOLIDS_PROCESSING + MIXING: + title: mixing + description: Blending of materials to achieve compositional or thermal uniformity + meaning: CHMO:0001685 + annotations: + unit_operation_class: SOLIDS_PROCESSING + SOLIDS_CONVEYING: + description: Transport of bulk particulate solids between process steps + annotations: + unit_operation_class: SOLIDS_PROCESSING + # --- Reaction --- + CHEMICAL_REACTION: + description: Chemical conversion of reactants to products in a reactor + annotations: + unit_operation_class: REACTION + FERMENTATION: + title: fermentation + description: Microbial or enzymatic conversion of substrate to product in a bioreactor + meaning: CHMO:0001624 + annotations: + unit_operation_class: REACTION + COMBUSTION: + title: combustion + description: Exothermic oxidation of a fuel, typically to generate heat or power + meaning: CHMO:0001473 + annotations: + unit_operation_class: REACTION + GASIFICATION: + title: gasification + description: Conversion of carbonaceous feedstock to synthesis gas under limited oxygen + meaning: CHMO:0001501 + annotations: + unit_operation_class: REACTION + PYROLYSIS: + title: pyrolysis + description: Thermal decomposition of material in the absence of oxygen + meaning: CHMO:0001502 + annotations: + unit_operation_class: REACTION + ELECTROLYSIS: + description: Driving a non-spontaneous chemical reaction using electrical energy + annotations: + unit_operation_class: REACTION + NEUTRALIZATION: + description: Adjustment of pH by reaction of acid and base + annotations: + unit_operation_class: REACTION + # --- Downstream finishing --- + PURIFICATION: + title: purification + description: Removal of impurities to increase the purity of a product stream + meaning: CHMO:0002231 + annotations: + unit_operation_class: SEPARATION + # --- Storage / staging --- + STORAGE: + description: Holding of material in a vessel or tank between process steps + annotations: + unit_operation_class: STORAGE + ProcessEquipmentType: + title: Process Equipment Type + description: >- + Physical equipment / asset types used in process plants. These correspond + to the nodes of a process flowsheet and complement UnitOperationType + (which describes the function performed). Grouped via the equipment_class + annotation. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + # --- Vessels / storage --- + STORAGE_TANK: + description: Atmospheric or low-pressure vessel for holding liquids or solids + annotations: + equipment_class: VESSEL + PRESSURE_VESSEL: + description: Vessel designed to hold contents at elevated pressure + annotations: + equipment_class: VESSEL + HOPPER: + description: Funnel-shaped vessel for storing and discharging bulk solids + annotations: + equipment_class: VESSEL + FLASH_DRUM: + description: Vessel for separating vapor and liquid produced by a pressure let-down + annotations: + equipment_class: VESSEL + KNOCKOUT_DRUM: + description: Vessel that removes entrained liquid from a gas stream + annotations: + equipment_class: VESSEL + # --- Reactors --- + REACTOR: + description: Vessel in which chemical reactions are carried out + annotations: + equipment_class: REACTOR + subtypes: CSTR, plug-flow, batch, fixed-bed, fluidized-bed + BIOREACTOR: + title: bioreactor + description: Vessel for culturing cells or carrying out enzymatic reactions + meaning: OBI:0001046 + annotations: + equipment_class: REACTOR + FERMENTER: + description: Bioreactor configured for microbial fermentation + annotations: + equipment_class: REACTOR + # --- Columns / contactors --- + DISTILLATION_COLUMN: + description: Column with trays or packing for vapor-liquid separation by distillation + annotations: + equipment_class: COLUMN + ABSORPTION_COLUMN: + description: Column for gas absorption into a liquid solvent + annotations: + equipment_class: COLUMN + STRIPPING_COLUMN: + description: Column for stripping volatile components from a liquid + annotations: + equipment_class: COLUMN + EXTRACTION_COLUMN: + description: Column for liquid-liquid extraction + annotations: + equipment_class: COLUMN + CHROMATOGRAPHY_COLUMN: + title: chromatography column + description: Column packed with a stationary phase for chromatographic separation + meaning: OBI:0000038 + annotations: + equipment_class: COLUMN + SCRUBBER: + description: Contactor for removing pollutants or particulates from a gas using a liquid + annotations: + equipment_class: COLUMN + # --- Heat transfer equipment --- + HEAT_EXCHANGER: + description: Equipment that transfers heat between two fluid streams + annotations: + equipment_class: HEAT_TRANSFER + subtypes: shell-and-tube, plate, air-cooled + CONDENSER: + description: Heat exchanger that condenses a vapor to liquid + annotations: + equipment_class: HEAT_TRANSFER + REBOILER: + description: Heat exchanger that supplies boilup at the base of a distillation column + annotations: + equipment_class: HEAT_TRANSFER + EVAPORATOR: + description: Equipment that concentrates a solution by vaporizing solvent + annotations: + equipment_class: HEAT_TRANSFER + FURNACE: + description: Fired heater that raises stream temperature by combustion + annotations: + equipment_class: HEAT_TRANSFER + BOILER: + description: Equipment that generates steam by transferring combustion heat to water + annotations: + equipment_class: HEAT_TRANSFER + COOLING_TOWER: + description: Equipment that rejects process heat to the atmosphere by evaporative cooling + annotations: + equipment_class: HEAT_TRANSFER + DRYER: + description: Equipment for removing liquid from solids by vaporization + annotations: + equipment_class: HEAT_TRANSFER + CRYSTALLIZER: + description: Equipment for producing crystalline solids from solution or melt + annotations: + equipment_class: HEAT_TRANSFER + # --- Fluid movers --- + PUMP: + description: Machine that moves or pressurizes a liquid + annotations: + equipment_class: FLUID_MOVER + COMPRESSOR: + description: Machine that raises the pressure of a gas + annotations: + equipment_class: FLUID_MOVER + BLOWER: + description: Machine that moves gas at a low pressure rise + annotations: + equipment_class: FLUID_MOVER + FAN: + description: Machine that moves large gas volumes at very low pressure rise + annotations: + equipment_class: FLUID_MOVER + VALVE: + description: Device that regulates, directs, or controls stream flow + annotations: + equipment_class: FLUID_MOVER + # --- Mechanical separation equipment --- + CENTRIFUGE: + title: centrifuge + description: Equipment that separates phases by density under centrifugal force + meaning: OBI:0400106 + annotations: + equipment_class: SEPARATION + FILTER: + description: Equipment that separates solids from a fluid using a porous medium + annotations: + equipment_class: SEPARATION + DECANTER: + description: Equipment that separates immiscible liquids or settled solids by gravity + annotations: + equipment_class: SEPARATION + CLARIFIER: + description: Settling tank that removes suspended solids from a liquid + annotations: + equipment_class: SEPARATION + CYCLONE: + description: Device that separates particles from a fluid by centrifugal action + annotations: + equipment_class: SEPARATION + HYDROCYCLONE: + description: Cyclone that separates solids or immiscible liquids from a liquid stream + annotations: + equipment_class: SEPARATION + MEMBRANE_MODULE: + description: Housing containing membrane elements for a membrane separation + annotations: + equipment_class: SEPARATION + SETTLER: + description: Vessel allowing phases to separate by gravity settling + annotations: + equipment_class: SEPARATION + # --- Mixing / solids handling --- + MIXER: + description: Equipment for blending streams or materials + annotations: + equipment_class: SOLIDS_HANDLING + AGITATOR: + description: Impeller-driven device that mixes vessel contents + annotations: + equipment_class: SOLIDS_HANDLING + MILL: + description: Equipment that reduces particle size by grinding or crushing + annotations: + equipment_class: SOLIDS_HANDLING + CRUSHER: + description: Equipment that reduces large solids by mechanical force + annotations: + equipment_class: SOLIDS_HANDLING + SCREEN: + description: Equipment that classifies particulate solids by size + annotations: + equipment_class: SOLIDS_HANDLING + CONVEYOR: + description: Equipment that transports bulk solids between locations + annotations: + equipment_class: SOLIDS_HANDLING diff --git a/src/valuesets/schema/valuesets.yaml b/src/valuesets/schema/valuesets.yaml index b5f7454b..f4bc0b98 100644 --- a/src/valuesets/schema/valuesets.yaml +++ b/src/valuesets/schema/valuesets.yaml @@ -121,6 +121,9 @@ imports: - clinical/phenopackets - bioprocessing/scale_up - bioprocessing/biomanufacturing +- process_engineering/unit_operations +- process_engineering/process_streams +- process_engineering/process_industries - units/measurements - units/quantity_kinds - computing/file_formats From 44232e8ac150298839ca2967ffd834ab6533518f Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 25 Jun 2026 21:27:43 +0000 Subject: [PATCH 2/3] Add SFF de-facto enum value sets (thermo, modeling, currency, units) Implements the gaps found when analyzing the PISCES Standard Flowsheet Format (SFF) v0.0.3 schema, whose categorical fields are free strings (the schema has no formal JSON-Schema enums). Each new value set turns one of those de-facto enums into a controlled vocabulary. New files: - process_engineering/thermodynamics.yaml: EquationOfStateModel, ActivityCoefficientModel, ThermodynamicPropertyPackage, MixingRuleModel, PoyntingCorrectionMethod (SFF thermo_property_package phi/gamma/mixture/PCF). - process_engineering/process_modeling.yaml: DesignSimulationMethod, FlowsheetSolutionApproach, ProcessSimulator (SFF design_simulation_method, process_simulator.name). - chemistry/identifiers.yaml: ChemicalIdentifierScheme (SFF chemical registry_id - CAS/SMILES/InChI/...). - business/currencies.yaml: CurrencyCode (ISO 4217 alpha-3, 48 currencies; none existed repo-wide) for SFF TEA_currency and price units. Augments: - units/measurements.yaml: EnergyUnitEnum, PowerUnitEnum, MassFlowRateUnitEnum, MolarFlowRateUnitEnum, VolumetricFlowRateUnitEnum (SFF flow/power/energy unit fields; base SI units mapped to UO). - process_engineering/process_streams.yaml: utility_category annotation (HEAT/POWER/OTHER) on UtilityType, matching the SFF heat/power/other utilities split. Registers the four new files in valuesets.yaml imports. Ontology mappings verified via OLS/OAK; full schema imports resolve (679 enums) with 0 validation errors on changed files. Method/software/currency names have no OBO equivalent and are intentionally left unmapped. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01JkQ7CEGzWMmM8ReU2KTwiP --- cache/uo/terms.csv | 5 + src/valuesets/schema/business/currencies.yaml | 230 ++++++++++++++++ .../schema/chemistry/identifiers.yaml | 64 +++++ .../process_engineering/process_modeling.yaml | 147 +++++++++++ .../process_engineering/process_streams.yaml | 45 +++- .../process_engineering/thermodynamics.yaml | 232 +++++++++++++++++ src/valuesets/schema/units/measurements.yaml | 245 ++++++++++++++++++ src/valuesets/schema/valuesets.yaml | 4 + 8 files changed, 966 insertions(+), 6 deletions(-) create mode 100644 src/valuesets/schema/business/currencies.yaml create mode 100644 src/valuesets/schema/chemistry/identifiers.yaml create mode 100644 src/valuesets/schema/process_engineering/process_modeling.yaml create mode 100644 src/valuesets/schema/process_engineering/thermodynamics.yaml diff --git a/cache/uo/terms.csv b/cache/uo/terms.csv index e02ea1b3..a7af8e20 100644 --- a/cache/uo/terms.csv +++ b/cache/uo/terms.csv @@ -69,3 +69,8 @@ UO:0000234,kilobyte,2025-10-19T07:20:52.384399 UO:0000235,megabyte,2025-10-19T07:20:52.384574 UO:0000164,mass volume percentage,2025-12-19T11:06:30.198413 UO:0000165,volume percentage,2025-12-19T11:06:30.198991 +UO:0000112,joule,2026-06-25T21:27:03.811552 +UO:0000223,watt-hour,2026-06-25T21:27:03.812325 +UO:0000224,kilowatt-hour,2026-06-25T21:27:03.812954 +UO:0010051,large calorie,2026-06-25T21:27:03.813453 +UO:0000114,watt,2026-06-25T21:27:03.813962 diff --git a/src/valuesets/schema/business/currencies.yaml b/src/valuesets/schema/business/currencies.yaml new file mode 100644 index 00000000..ca0e3d51 --- /dev/null +++ b/src/valuesets/schema/business/currencies.yaml @@ -0,0 +1,230 @@ +name: valuesets-business-currencies +title: Currency Value Sets +description: >- + Value set of world currencies identified by their ISO 4217 three-letter + alpha codes. Permissible value names are the ISO 4217 alpha-3 codes (an + existing standard) rather than upper-snake-case. Covers monetary fields such + as the PISCES Standard Flowsheet Format TEA_currency and per-mass price + units. This is a curated set of actively circulating currencies and is + extensible to the full ISO 4217 list. +id: https://w3id.org/valuesets/business/currencies +imports: +- linkml:types +prefixes: + linkml: https://w3id.org/linkml/ + valuesets: https://w3id.org/valuesets/ + orcid: https://orcid.org/ + valuesets_meta: https://w3id.org/valuesets/meta/ +default_prefix: valuesets +slots: + currency_code: + description: The ISO 4217 currency of a monetary amount + range: CurrencyCode +enums: + CurrencyCode: + title: Currency Code + description: >- + World currencies by ISO 4217 alpha-3 code. The numeric_code, symbol, and + minor_unit (number of decimal places) annotations record the + corresponding ISO 4217 attributes. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + annotations: + standard: ISO 4217 + permissible_values: + USD: + title: United States dollar + description: United States dollar + annotations: {numeric_code: '840', symbol: $, minor_unit: 2} + EUR: + title: Euro + description: Euro + annotations: {numeric_code: '978', symbol: "€", minor_unit: 2} + JPY: + title: Japanese yen + description: Japanese yen + annotations: {numeric_code: '392', symbol: "¥", minor_unit: 0} + GBP: + title: Pound sterling + description: British pound sterling + annotations: {numeric_code: '826', symbol: "£", minor_unit: 2} + CNY: + title: Renminbi + description: Chinese yuan renminbi + annotations: {numeric_code: '156', symbol: "¥", minor_unit: 2} + AUD: + title: Australian dollar + description: Australian dollar + annotations: {numeric_code: '036', symbol: $, minor_unit: 2} + CAD: + title: Canadian dollar + description: Canadian dollar + annotations: {numeric_code: '124', symbol: $, minor_unit: 2} + CHF: + title: Swiss franc + description: Swiss franc + annotations: {numeric_code: '756', symbol: Fr, minor_unit: 2} + HKD: + title: Hong Kong dollar + description: Hong Kong dollar + annotations: {numeric_code: '344', symbol: $, minor_unit: 2} + SGD: + title: Singapore dollar + description: Singapore dollar + annotations: {numeric_code: '702', symbol: $, minor_unit: 2} + SEK: + title: Swedish krona + description: Swedish krona + annotations: {numeric_code: '752', symbol: kr, minor_unit: 2} + NOK: + title: Norwegian krone + description: Norwegian krone + annotations: {numeric_code: '578', symbol: kr, minor_unit: 2} + DKK: + title: Danish krone + description: Danish krone + annotations: {numeric_code: '208', symbol: kr, minor_unit: 2} + NZD: + title: New Zealand dollar + description: New Zealand dollar + annotations: {numeric_code: '554', symbol: $, minor_unit: 2} + KRW: + title: South Korean won + description: South Korean won + annotations: {numeric_code: '410', symbol: "₩", minor_unit: 0} + INR: + title: Indian rupee + description: Indian rupee + annotations: {numeric_code: '356', symbol: "₹", minor_unit: 2} + BRL: + title: Brazilian real + description: Brazilian real + annotations: {numeric_code: '986', symbol: R$, minor_unit: 2} + ZAR: + title: South African rand + description: South African rand + annotations: {numeric_code: '710', symbol: R, minor_unit: 2} + RUB: + title: Russian ruble + description: Russian ruble + annotations: {numeric_code: '643', symbol: "₽", minor_unit: 2} + MXN: + title: Mexican peso + description: Mexican peso + annotations: {numeric_code: '484', symbol: $, minor_unit: 2} + TRY: + title: Turkish lira + description: Turkish lira + annotations: {numeric_code: '949', symbol: "₺", minor_unit: 2} + PLN: + title: Polish zloty + description: Polish zloty + annotations: {numeric_code: '985', symbol: "zł", minor_unit: 2} + THB: + title: Thai baht + description: Thai baht + annotations: {numeric_code: '764', symbol: "฿", minor_unit: 2} + IDR: + title: Indonesian rupiah + description: Indonesian rupiah + annotations: {numeric_code: '360', symbol: Rp, minor_unit: 2} + MYR: + title: Malaysian ringgit + description: Malaysian ringgit + annotations: {numeric_code: '458', symbol: RM, minor_unit: 2} + PHP: + title: Philippine peso + description: Philippine peso + annotations: {numeric_code: '608', symbol: "₱", minor_unit: 2} + AED: + title: UAE dirham + description: United Arab Emirates dirham + annotations: {numeric_code: '784', minor_unit: 2} + SAR: + title: Saudi riyal + description: Saudi riyal + annotations: {numeric_code: '682', minor_unit: 2} + ILS: + title: Israeli new shekel + description: Israeli new shekel + annotations: {numeric_code: '376', symbol: "₪", minor_unit: 2} + CZK: + title: Czech koruna + description: Czech koruna + annotations: {numeric_code: '203', symbol: "Kč", minor_unit: 2} + HUF: + title: Hungarian forint + description: Hungarian forint + annotations: {numeric_code: '348', symbol: Ft, minor_unit: 2} + RON: + title: Romanian leu + description: Romanian leu + annotations: {numeric_code: '946', symbol: lei, minor_unit: 2} + UAH: + title: Ukrainian hryvnia + description: Ukrainian hryvnia + annotations: {numeric_code: '980', symbol: "₴", minor_unit: 2} + CLP: + title: Chilean peso + description: Chilean peso + annotations: {numeric_code: '152', symbol: $, minor_unit: 0} + COP: + title: Colombian peso + description: Colombian peso + annotations: {numeric_code: '170', symbol: $, minor_unit: 2} + ARS: + title: Argentine peso + description: Argentine peso + annotations: {numeric_code: '032', symbol: $, minor_unit: 2} + EGP: + title: Egyptian pound + description: Egyptian pound + annotations: {numeric_code: '818', symbol: "£", minor_unit: 2} + NGN: + title: Nigerian naira + description: Nigerian naira + annotations: {numeric_code: '566', symbol: "₦", minor_unit: 2} + KES: + title: Kenyan shilling + description: Kenyan shilling + annotations: {numeric_code: '404', symbol: Sh, minor_unit: 2} + PKR: + title: Pakistani rupee + description: Pakistani rupee + annotations: {numeric_code: '586', symbol: "₨", minor_unit: 2} + BDT: + title: Bangladeshi taka + description: Bangladeshi taka + annotations: {numeric_code: '050', symbol: "৳", minor_unit: 2} + VND: + title: Vietnamese dong + description: Vietnamese dong + annotations: {numeric_code: '704', symbol: "₫", minor_unit: 0} + TWD: + title: New Taiwan dollar + description: New Taiwan dollar + annotations: {numeric_code: '901', symbol: $, minor_unit: 2} + KWD: + title: Kuwaiti dinar + description: Kuwaiti dinar + annotations: {numeric_code: '414', minor_unit: 3} + BHD: + title: Bahraini dinar + description: Bahraini dinar + annotations: {numeric_code: '048', minor_unit: 3} + OMR: + title: Omani rial + description: Omani rial + annotations: {numeric_code: '512', minor_unit: 3} + QAR: + title: Qatari riyal + description: Qatari riyal + annotations: {numeric_code: '634', minor_unit: 2} + ISK: + title: Icelandic krona + description: Icelandic krona + annotations: {numeric_code: '352', symbol: kr, minor_unit: 0} diff --git a/src/valuesets/schema/chemistry/identifiers.yaml b/src/valuesets/schema/chemistry/identifiers.yaml new file mode 100644 index 00000000..bd17d0bc --- /dev/null +++ b/src/valuesets/schema/chemistry/identifiers.yaml @@ -0,0 +1,64 @@ +name: valuesets-chemistry-identifiers +title: Chemical Identifier Value Sets +description: >- + Value sets for the identifier schemes used to reference chemical substances. + Covers fields such as the PISCES Standard Flowsheet Format chemical + registry_id ("CAS number or SMILES string"). +id: https://w3id.org/valuesets/chemistry/identifiers +imports: +- linkml:types +prefixes: + linkml: https://w3id.org/linkml/ + valuesets: https://w3id.org/valuesets/ + orcid: https://orcid.org/ + valuesets_meta: https://w3id.org/valuesets/meta/ +default_prefix: valuesets +slots: + chemical_identifier_scheme: + description: The scheme/namespace of a chemical identifier + range: ChemicalIdentifierScheme +enums: + ChemicalIdentifierScheme: + title: Chemical Identifier Scheme + description: >- + Schemes used to identify chemical substances, including registry numbers, + line notations, structure-derived keys, and database accessions. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + CAS_RN: + description: CAS Registry Number assigned by the Chemical Abstracts Service + annotations: + example: 64-17-5 + SMILES: + description: Simplified Molecular-Input Line-Entry System structure notation + annotations: + example: CCO + INCHI: + description: IUPAC International Chemical Identifier structure string + annotations: + example: InChI=1S/C2H6O/c1-2-3/h3H,2H2,1H3 + INCHIKEY: + description: Hashed fixed-length form of an InChI + annotations: + example: LFQSCWFLJHTTHZ-UHFFFAOYSA-N + IUPAC_NAME: + description: Systematic IUPAC chemical name + MOLECULAR_FORMULA: + description: Molecular or empirical chemical formula + annotations: + example: C2H6O + PUBCHEM_CID: + description: PubChem Compound Identifier + CHEBI_ID: + description: ChEBI ontology identifier + KEGG_COMPOUND: + description: KEGG COMPOUND database accession + DRUGBANK_ID: + description: DrugBank accession + EC_NUMBER: + description: European Community (EINECS/EC) substance number diff --git a/src/valuesets/schema/process_engineering/process_modeling.yaml b/src/valuesets/schema/process_engineering/process_modeling.yaml new file mode 100644 index 00000000..998f0ace --- /dev/null +++ b/src/valuesets/schema/process_engineering/process_modeling.yaml @@ -0,0 +1,147 @@ +name: valuesets-process-engineering-process-modeling +title: Process Modeling Value Sets +description: >- + Value sets describing how process flowsheets and unit operations are modeled + and solved - unit-operation design/simulation methods, flowsheet solution + approaches, and process simulator software. These cover the + design_simulation_method and process_simulator fields of the PISCES Standard + Flowsheet Format, which are otherwise free strings. +id: https://w3id.org/valuesets/process_engineering/process_modeling +imports: +- linkml:types +prefixes: + linkml: https://w3id.org/linkml/ + valuesets: https://w3id.org/valuesets/ + orcid: https://orcid.org/ + valuesets_meta: https://w3id.org/valuesets/meta/ +default_prefix: valuesets +slots: + design_simulation_method: + description: The method used to design or simulate a unit operation + range: DesignSimulationMethod + flowsheet_solution_approach: + description: The overall approach used to converge a flowsheet + range: FlowsheetSolutionApproach + process_simulator: + description: The process simulation software used to model a flowsheet + range: ProcessSimulator +enums: + DesignSimulationMethod: + title: Design and Simulation Method + description: >- + Methods used to design or simulate unit operations, particularly + separation columns - ranging from graphical and shortcut methods to + rigorous stage-by-stage and rate-based models. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + MCCABE_THIELE: + description: McCabe-Thiele graphical method for binary distillation + annotations: + method_class: GRAPHICAL + PONCHON_SAVARIT: + description: Ponchon-Savarit enthalpy-composition graphical method for binary distillation + annotations: + method_class: GRAPHICAL + FENSKE_UNDERWOOD_GILLILAND: + description: Fenske-Underwood-Gilliland shortcut method for multicomponent distillation + annotations: + method_class: SHORTCUT + abbreviation: FUG + KREMSER: + description: Kremser shortcut method for absorber and stripper design + annotations: + method_class: SHORTCUT + MESH: + description: Rigorous equilibrium-stage solution of the Material, Equilibrium, Summation and Heat (enthalpy) equations + annotations: + method_class: RIGOROUS_EQUILIBRIUM + INSIDE_OUT: + description: Inside-out algorithm for rigorous equilibrium-stage column convergence + annotations: + method_class: RIGOROUS_EQUILIBRIUM + RATE_BASED: + description: Rate-based (nonequilibrium) model accounting for mass and heat transfer rates + annotations: + method_class: RATE_BASED + EQUILIBRIUM_STAGE: + description: Generic equilibrium-stage model assuming each stage reaches phase equilibrium + annotations: + method_class: RIGOROUS_EQUILIBRIUM + SHORTCUT: + description: Generic shortcut / approximate design method + annotations: + method_class: SHORTCUT + RIGOROUS: + description: Generic rigorous design method + annotations: + method_class: RIGOROUS_EQUILIBRIUM + PINCH_ANALYSIS: + description: Pinch analysis for heat-exchanger network and energy integration + annotations: + method_class: ENERGY_INTEGRATION + FlowsheetSolutionApproach: + title: Flowsheet Solution Approach + description: >- + The overall computational strategy used to converge a process flowsheet. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + SEQUENTIAL_MODULAR: + description: Units solved one at a time in sequence, iterating on recycle tear streams + EQUATION_ORIENTED: + description: All model equations assembled and solved simultaneously + SIMULTANEOUS_MODULAR: + description: Hybrid approach combining modular unit models with a simultaneous convergence layer + ProcessSimulator: + title: Process Simulator + description: >- + Process simulation software packages used to model chemical and + biochemical process flowsheets. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + ASPEN_PLUS: + description: Aspen Plus steady-state process simulator (AspenTech) + ASPEN_HYSYS: + description: Aspen HYSYS process simulator (AspenTech) + ASPEN_CUSTOM_MODELER: + description: Aspen Custom Modeler for user-defined unit operation models (AspenTech) + UNISIM_DESIGN: + description: Honeywell UniSim Design process simulator + PRO_II: + description: AVEVA Pro/II (formerly SimSci Pro/II) process simulator + AVEVA_PROCESS_SIMULATION: + description: AVEVA Process Simulation (formerly SimCentral) + CHEMCAD: + description: ChemCAD process simulator (Chemstations) + DWSIM: + description: DWSIM open-source CAPE-OPEN process simulator + COCO_SIMULATOR: + description: COCO/COFE free CAPE-OPEN flowsheeting environment + GPROMS: + description: gPROMS equation-oriented process modeling environment (Siemens / PSE) + PROSIMPLUS: + description: ProSimPlus steady-state process simulator (ProSim) + PETRO_SIM: + description: KBC Petro-SIM process simulator + BIOSTEAM: + description: BioSTEAM open-source biorefinery simulation and techno-economic analysis package + SUPERPRO_DESIGNER: + description: SuperPro Designer batch and bioprocess simulator (Intelligen) + IDAES: + description: IDAES open-source equation-oriented process systems engineering platform (US DOE) + CAPE_OPEN: + description: A CAPE-OPEN compliant simulator or unit (interoperability standard, simulator unspecified) diff --git a/src/valuesets/schema/process_engineering/process_streams.yaml b/src/valuesets/schema/process_engineering/process_streams.yaml index 12da385e..6a62dd48 100644 --- a/src/valuesets/schema/process_engineering/process_streams.yaml +++ b/src/valuesets/schema/process_engineering/process_streams.yaml @@ -120,43 +120,76 @@ enums: permissible_values: STEAM: description: Process steam used for heating or stripping + annotations: + utility_category: HEAT LOW_PRESSURE_STEAM: description: Low-pressure steam utility annotations: + utility_category: HEAT typical_range: <3 barg MEDIUM_PRESSURE_STEAM: description: Medium-pressure steam utility annotations: + utility_category: HEAT typical_range: 3-20 barg HIGH_PRESSURE_STEAM: description: High-pressure steam utility annotations: + utility_category: HEAT typical_range: '>20 barg' COOLING_WATER: description: Recirculated cooling water for heat rejection + annotations: + utility_category: HEAT CHILLED_WATER: description: Refrigerated water for below-ambient cooling + annotations: + utility_category: HEAT REFRIGERANT: description: Refrigerant fluid for low-temperature cooling duty + annotations: + utility_category: HEAT + HOT_OIL: + description: Thermal oil heat-transfer fluid for high-temperature heating + annotations: + utility_category: HEAT + BRINE: + description: Chilled brine used as a low-temperature coolant + annotations: + utility_category: HEAT + ELECTRICITY: + description: Electrical power supplied to drivers and equipment + annotations: + utility_category: POWER PROCESS_WATER: description: Treated water used as a process input + annotations: + utility_category: OTHER DEMINERALIZED_WATER: description: High-purity demineralized water utility - ELECTRICITY: - description: Electrical power supplied to drivers and equipment + annotations: + utility_category: OTHER NATURAL_GAS: description: Natural gas supplied as fuel or feedstock + annotations: + utility_category: OTHER FUEL_GAS: description: Fuel gas burned in fired heaters and boilers + annotations: + utility_category: OTHER COMPRESSED_AIR: description: Compressed air utility for process or actuation use + annotations: + utility_category: OTHER INSTRUMENT_AIR: description: Clean dry compressed air for instrumentation + annotations: + utility_category: OTHER NITROGEN: description: Nitrogen used for inerting, blanketing, or purging - HOT_OIL: - description: Thermal oil heat-transfer fluid for high-temperature heating - BRINE: - description: Chilled brine used as a low-temperature coolant + annotations: + utility_category: OTHER FLARE: description: Flare system for safe combustion of relieved gases + annotations: + utility_category: OTHER diff --git a/src/valuesets/schema/process_engineering/thermodynamics.yaml b/src/valuesets/schema/process_engineering/thermodynamics.yaml new file mode 100644 index 00000000..4de0c3b4 --- /dev/null +++ b/src/valuesets/schema/process_engineering/thermodynamics.yaml @@ -0,0 +1,232 @@ +name: valuesets-process-engineering-thermodynamics +title: Process Thermodynamics Value Sets +description: >- + Value sets for the thermodynamic models used in process simulation - equations + of state, activity-coefficient (excess Gibbs energy) models, mixing rules, + Poynting corrections, and the named property packages that combine them. + These cover the thermo_property_package fields (mixture, gamma, phi, PCF) of + the PISCES Standard Flowsheet Format, which are otherwise free strings. +id: https://w3id.org/valuesets/process_engineering/thermodynamics +imports: +- linkml:types +prefixes: + linkml: https://w3id.org/linkml/ + valuesets: https://w3id.org/valuesets/ + orcid: https://orcid.org/ + valuesets_meta: https://w3id.org/valuesets/meta/ +default_prefix: valuesets +slots: + equation_of_state_model: + description: The equation of state used for fugacity / PVT property estimation + range: EquationOfStateModel + activity_coefficient_model: + description: The activity-coefficient (excess Gibbs energy) model used for the liquid phase + range: ActivityCoefficientModel + thermodynamic_property_package: + description: The named thermodynamic property package used for a simulation + range: ThermodynamicPropertyPackage + mixing_rule_model: + description: The mixing rule applied to an equation of state + range: MixingRuleModel + poynting_correction_method: + description: The method used for the Poynting correction factor + range: PoyntingCorrectionMethod +enums: + EquationOfStateModel: + title: Equation of State Model + description: >- + Equations of state used to compute fugacity coefficients and PVT + behavior of fluids in process simulation (the SFF phi method). + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + IDEAL_GAS: + description: Ideal gas law, assuming no intermolecular interactions + VIRIAL: + description: Virial equation of state expressed as a power series in density or pressure + REDLICH_KWONG: + description: Redlich-Kwong cubic equation of state + annotations: + abbreviation: RK + SOAVE_REDLICH_KWONG: + description: Soave modification of the Redlich-Kwong cubic equation of state + annotations: + abbreviation: SRK + PENG_ROBINSON: + description: Peng-Robinson cubic equation of state + annotations: + abbreviation: PR + PENG_ROBINSON_BOSTON_MATHIAS: + description: Peng-Robinson with Boston-Mathias alpha function for supercritical extrapolation + annotations: + abbreviation: PR-BM + SRK_BOSTON_MATHIAS: + description: Soave-Redlich-Kwong with Boston-Mathias alpha function + annotations: + abbreviation: SRK-BM + LEE_KESLER_PLOCKER: + description: Lee-Kesler-Plocker corresponding-states equation of state + annotations: + abbreviation: LKP + BENEDICT_WEBB_RUBIN_STARLING: + description: Benedict-Webb-Rubin-Starling equation of state for light hydrocarbons + annotations: + abbreviation: BWRS + PREDICTIVE_SRK: + description: Predictive SRK combining SRK with a UNIFAC-based mixing rule + annotations: + abbreviation: PSRK + PC_SAFT: + description: Perturbed-chain statistical associating fluid theory equation of state + annotations: + abbreviation: PC-SAFT + CUBIC_PLUS_ASSOCIATION: + description: Cubic-plus-association equation of state for associating fluids + annotations: + abbreviation: CPA + GERG_2008: + description: GERG-2008 reference equation of state for natural gas mixtures + IAPWS_95: + description: IAPWS-95 reference formulation for the thermodynamic properties of water + annotations: + aliases: steam tables + ActivityCoefficientModel: + title: Activity Coefficient Model + description: >- + Excess Gibbs energy / activity-coefficient models for non-ideal liquid + phases (the SFF gamma method). + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + IDEAL: + description: Ideal solution, all activity coefficients equal to one (Raoult's law) + MARGULES: + description: Margules two-parameter activity-coefficient model + VAN_LAAR: + description: Van Laar activity-coefficient model + REGULAR_SOLUTION: + description: Scatchard-Hildebrand regular solution model based on solubility parameters + WILSON: + description: Wilson local-composition activity-coefficient model + NRTL: + description: Non-random two-liquid local-composition activity-coefficient model + ELECTROLYTE_NRTL: + description: Electrolyte NRTL model for systems containing ions + annotations: + abbreviation: eNRTL + UNIQUAC: + description: Universal quasi-chemical activity-coefficient model + UNIFAC: + description: UNIQUAC functional-group activity-coefficient (group-contribution) model + UNIFAC_DORTMUND: + description: Modified UNIFAC (Dortmund) group-contribution model + FLORY_HUGGINS: + description: Flory-Huggins model for polymer solutions + PITZER: + description: Pitzer model for aqueous electrolyte activity coefficients + COSMO_SAC: + description: COSMO-based segment activity-coefficient model from quantum chemistry + annotations: + aliases: COSMO-RS, COSMO-SAC + ThermodynamicPropertyPackage: + title: Thermodynamic Property Package + description: >- + Named property methods/packages offered by process simulators, typically + combining an equation of state and/or an activity-coefficient model. Used + where a single package label rather than separate gamma/phi methods is + recorded. + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + IDEAL: + description: Ideal (Raoult's law) property package + NRTL: + description: NRTL activity model with ideal or RK vapor phase + NRTL_RK: + description: NRTL activity model with Redlich-Kwong vapor phase + UNIQUAC: + description: UNIQUAC activity model property package + UNIFAC: + description: UNIFAC group-contribution property package + WILSON: + description: Wilson activity model property package + VAN_LAAR: + description: Van Laar activity model property package + PENG_ROBINSON: + description: Peng-Robinson equation-of-state property package + SOAVE_REDLICH_KWONG: + description: Soave-Redlich-Kwong equation-of-state property package + ELECTROLYTE_NRTL: + description: Electrolyte NRTL property package for ionic systems + PITZER: + description: Pitzer property package for aqueous electrolytes + CHAO_SEADER: + description: Chao-Seader semi-empirical package for hydrocarbon systems + GRAYSON_STREED: + description: Grayson-Streed package for hydrogen-rich hydrocarbon systems + BRAUN_K10: + description: Braun K10 package for low-pressure heavy hydrocarbon systems + annotations: + abbreviation: BK10 + PC_SAFT: + description: PC-SAFT equation-of-state property package + STEAM_TABLES: + description: Steam-table (IAPWS / ASME) property package for water and steam + API_SOUR: + description: API sour-water package for systems with acid gases and ammonia + MixingRuleModel: + title: Mixing Rule Model + description: >- + Mixing rules applied to equation-of-state parameters for mixtures (the + SFF mixture method). + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + IDEAL: + description: Ideal mixing, no excess properties + VAN_DER_WAALS: + description: Classical van der Waals one-fluid mixing rule with binary interaction parameters + annotations: + aliases: classical, quadratic mixing rule + HURON_VIDAL: + description: Huron-Vidal mixing rule coupling an equation of state to an excess Gibbs energy model + MODIFIED_HURON_VIDAL: + description: Modified Huron-Vidal first/second order mixing rules + annotations: + aliases: MHV1, MHV2 + WONG_SANDLER: + description: Wong-Sandler mixing rule with correct low- and high-density limits + PSRK_MIXING: + description: Predictive SRK (PSRK) mixing rule based on UNIFAC + PoyntingCorrectionMethod: + title: Poynting Correction Method + description: >- + Treatment of the Poynting correction factor accounting for the effect of + pressure on liquid fugacity (the SFF PCF method). + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + NONE: + description: No Poynting correction applied + POYNTING: + description: Poynting correction factor applied to the liquid fugacity diff --git a/src/valuesets/schema/units/measurements.yaml b/src/valuesets/schema/units/measurements.yaml index 6828d009..18032c1c 100644 --- a/src/valuesets/schema/units/measurements.yaml +++ b/src/valuesets/schema/units/measurements.yaml @@ -47,6 +47,21 @@ slots: data_size_unit: description: Units of digital data size range: DataSizeUnitEnum + energy_unit: + description: Units of energy + range: EnergyUnitEnum + power_unit: + description: Units of power (energy per unit time) + range: PowerUnitEnum + mass_flow_rate_unit: + description: Units of mass flow rate + range: MassFlowRateUnitEnum + molar_flow_rate_unit: + description: Units of molar flow rate + range: MolarFlowRateUnitEnum + volumetric_flow_rate_unit: + description: Units of volumetric flow rate + range: VolumetricFlowRateUnitEnum enums: LengthUnitEnum: title: Length Unit @@ -745,3 +760,233 @@ enums: symbol: TiB conversion_to_byte: '1099511627776' standard: binary + EnergyUnitEnum: + title: Energy Unit + description: Units of energy + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + JOULE: + description: Joule (SI derived unit of energy) + meaning: UO:0000112 + annotations: + symbol: J + system: SI + KILOJOULE: + description: Kilojoule (1000 joules) + annotations: + symbol: kJ + conversion_to_joule: '1000' + MEGAJOULE: + description: Megajoule (10^6 joules) + annotations: + symbol: MJ + conversion_to_joule: 1e6 + GIGAJOULE: + description: Gigajoule (10^9 joules) + annotations: + symbol: GJ + conversion_to_joule: 1e9 + WATT_HOUR: + title: watt-hour + description: Watt-hour (energy of one watt over one hour) + meaning: UO:0000223 + annotations: + symbol: Wh + conversion_to_joule: '3600' + KILOWATT_HOUR: + title: kilowatt-hour + description: Kilowatt-hour + meaning: UO:0000224 + annotations: + symbol: kWh + conversion_to_joule: '3600000' + MEGAWATT_HOUR: + description: Megawatt-hour + annotations: + symbol: MWh + conversion_to_joule: 3.6e9 + CALORIE: + description: Thermochemical calorie + annotations: + symbol: cal + conversion_to_joule: '4.184' + KILOCALORIE: + title: large calorie + description: Kilocalorie (large calorie) + meaning: UO:0010051 + annotations: + symbol: kcal + conversion_to_joule: '4184' + BTU: + title: British thermal unit + description: British thermal unit + annotations: + symbol: BTU + conversion_to_joule: '1055.06' + system: imperial + PowerUnitEnum: + title: Power Unit + description: Units of power (energy per unit time) + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + WATT: + description: Watt (SI derived unit of power) + meaning: UO:0000114 + annotations: + symbol: W + system: SI + definition: J/s + KILOWATT: + description: Kilowatt (1000 watts) + annotations: + symbol: kW + conversion_to_watt: '1000' + MEGAWATT: + description: Megawatt (10^6 watts) + annotations: + symbol: MW + conversion_to_watt: 1e6 + GIGAWATT: + description: Gigawatt (10^9 watts) + annotations: + symbol: GW + conversion_to_watt: 1e9 + MILLIWATT: + description: Milliwatt (10^-3 watts) + annotations: + symbol: mW + conversion_to_watt: '0.001' + HORSEPOWER: + description: Mechanical horsepower + annotations: + symbol: hp + conversion_to_watt: '745.7' + system: imperial + BTU_PER_HOUR: + description: British thermal units per hour + annotations: + symbol: BTU/h + conversion_to_watt: '0.293071' + MassFlowRateUnitEnum: + title: Mass Flow Rate Unit + description: Units of mass flow rate (mass per unit time) + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + KILOGRAM_PER_SECOND: + description: Kilograms per second (SI) + annotations: + symbol: kg/s + system: SI + KILOGRAM_PER_HOUR: + description: Kilograms per hour + annotations: + symbol: kg/h + conversion_to_kg_per_s: '0.000277778' + GRAM_PER_SECOND: + description: Grams per second + annotations: + symbol: g/s + conversion_to_kg_per_s: '0.001' + TONNE_PER_HOUR: + description: Metric tonnes per hour + annotations: + symbol: t/h + conversion_to_kg_per_s: '0.277778' + TONNE_PER_DAY: + description: Metric tonnes per day + annotations: + symbol: t/d + conversion_to_kg_per_s: '0.0115741' + POUND_PER_HOUR: + description: Pounds (mass) per hour + annotations: + symbol: lb/h + conversion_to_kg_per_s: '0.000125998' + system: imperial + MolarFlowRateUnitEnum: + title: Molar Flow Rate Unit + description: Units of molar flow rate (amount of substance per unit time) + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + MOLE_PER_SECOND: + description: Moles per second (SI) + annotations: + symbol: mol/s + system: SI + MOLE_PER_HOUR: + description: Moles per hour + annotations: + symbol: mol/h + conversion_to_mol_per_s: '0.000277778' + KILOMOLE_PER_HOUR: + description: Kilomoles per hour + annotations: + symbol: kmol/h + conversion_to_mol_per_s: '0.277778' + KILOMOLE_PER_SECOND: + description: Kilomoles per second + annotations: + symbol: kmol/s + conversion_to_mol_per_s: '1000' + VolumetricFlowRateUnitEnum: + title: Volumetric Flow Rate Unit + description: Units of volumetric flow rate (volume per unit time) + status: DRAFT + contributors: + - orcid:0000-0002-6601-2165 + - https://github.com/anthropics/claude-code + instantiates: + - valuesets_meta:ValueSetEnumDefinition + permissible_values: + CUBIC_METER_PER_SECOND: + description: Cubic meters per second (SI) + annotations: + symbol: m3/s + system: SI + CUBIC_METER_PER_HOUR: + description: Cubic meters per hour + annotations: + symbol: m3/h + conversion_to_m3_per_s: '0.000277778' + LITER_PER_SECOND: + description: Liters per second + annotations: + symbol: L/s + conversion_to_m3_per_s: '0.001' + LITER_PER_MINUTE: + description: Liters per minute + annotations: + symbol: L/min + conversion_to_m3_per_s: '1.66667e-5' + GALLON_PER_MINUTE: + description: US gallons per minute + annotations: + symbol: gpm + conversion_to_m3_per_s: '6.30902e-5' + system: US + CUBIC_FOOT_PER_MINUTE: + description: Cubic feet per minute + annotations: + symbol: cfm + conversion_to_m3_per_s: '0.000471947' + system: imperial diff --git a/src/valuesets/schema/valuesets.yaml b/src/valuesets/schema/valuesets.yaml index f4bc0b98..0861325c 100644 --- a/src/valuesets/schema/valuesets.yaml +++ b/src/valuesets/schema/valuesets.yaml @@ -124,6 +124,10 @@ imports: - process_engineering/unit_operations - process_engineering/process_streams - process_engineering/process_industries +- process_engineering/thermodynamics +- process_engineering/process_modeling +- chemistry/identifiers +- business/currencies - units/measurements - units/quantity_kinds - computing/file_formats From 2476be1403c944eb430897dc0149977695f97022 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 25 Jun 2026 21:33:19 +0000 Subject: [PATCH 3/3] Fix slot-name collision: drop duplicate EnergyUnitEnum/PowerUnitEnum CI gen-project failed merging the full schema: the energy_unit and power_unit slots I added to units/measurements.yaml collided with the pre-existing energy_unit/power_unit slots in energy/energy.yaml, which already provide comprehensive QUDT-mapped EnergyUnit and PowerUnit enums. Removed the duplicate EnergyUnitEnum and PowerUnitEnum (and their slots) from measurements.yaml. Kept the genuinely new MassFlowRateUnitEnum, MolarFlowRateUnitEnum, and VolumetricFlowRateUnitEnum. Verified the full gen-project build succeeds locally and no other slot/enum name collisions remain. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01JkQ7CEGzWMmM8ReU2KTwiP --- src/valuesets/schema/units/measurements.yaml | 123 ------------------- 1 file changed, 123 deletions(-) diff --git a/src/valuesets/schema/units/measurements.yaml b/src/valuesets/schema/units/measurements.yaml index 18032c1c..956de5e0 100644 --- a/src/valuesets/schema/units/measurements.yaml +++ b/src/valuesets/schema/units/measurements.yaml @@ -47,12 +47,6 @@ slots: data_size_unit: description: Units of digital data size range: DataSizeUnitEnum - energy_unit: - description: Units of energy - range: EnergyUnitEnum - power_unit: - description: Units of power (energy per unit time) - range: PowerUnitEnum mass_flow_rate_unit: description: Units of mass flow rate range: MassFlowRateUnitEnum @@ -760,123 +754,6 @@ enums: symbol: TiB conversion_to_byte: '1099511627776' standard: binary - EnergyUnitEnum: - title: Energy Unit - description: Units of energy - status: DRAFT - contributors: - - orcid:0000-0002-6601-2165 - - https://github.com/anthropics/claude-code - instantiates: - - valuesets_meta:ValueSetEnumDefinition - permissible_values: - JOULE: - description: Joule (SI derived unit of energy) - meaning: UO:0000112 - annotations: - symbol: J - system: SI - KILOJOULE: - description: Kilojoule (1000 joules) - annotations: - symbol: kJ - conversion_to_joule: '1000' - MEGAJOULE: - description: Megajoule (10^6 joules) - annotations: - symbol: MJ - conversion_to_joule: 1e6 - GIGAJOULE: - description: Gigajoule (10^9 joules) - annotations: - symbol: GJ - conversion_to_joule: 1e9 - WATT_HOUR: - title: watt-hour - description: Watt-hour (energy of one watt over one hour) - meaning: UO:0000223 - annotations: - symbol: Wh - conversion_to_joule: '3600' - KILOWATT_HOUR: - title: kilowatt-hour - description: Kilowatt-hour - meaning: UO:0000224 - annotations: - symbol: kWh - conversion_to_joule: '3600000' - MEGAWATT_HOUR: - description: Megawatt-hour - annotations: - symbol: MWh - conversion_to_joule: 3.6e9 - CALORIE: - description: Thermochemical calorie - annotations: - symbol: cal - conversion_to_joule: '4.184' - KILOCALORIE: - title: large calorie - description: Kilocalorie (large calorie) - meaning: UO:0010051 - annotations: - symbol: kcal - conversion_to_joule: '4184' - BTU: - title: British thermal unit - description: British thermal unit - annotations: - symbol: BTU - conversion_to_joule: '1055.06' - system: imperial - PowerUnitEnum: - title: Power Unit - description: Units of power (energy per unit time) - status: DRAFT - contributors: - - orcid:0000-0002-6601-2165 - - https://github.com/anthropics/claude-code - instantiates: - - valuesets_meta:ValueSetEnumDefinition - permissible_values: - WATT: - description: Watt (SI derived unit of power) - meaning: UO:0000114 - annotations: - symbol: W - system: SI - definition: J/s - KILOWATT: - description: Kilowatt (1000 watts) - annotations: - symbol: kW - conversion_to_watt: '1000' - MEGAWATT: - description: Megawatt (10^6 watts) - annotations: - symbol: MW - conversion_to_watt: 1e6 - GIGAWATT: - description: Gigawatt (10^9 watts) - annotations: - symbol: GW - conversion_to_watt: 1e9 - MILLIWATT: - description: Milliwatt (10^-3 watts) - annotations: - symbol: mW - conversion_to_watt: '0.001' - HORSEPOWER: - description: Mechanical horsepower - annotations: - symbol: hp - conversion_to_watt: '745.7' - system: imperial - BTU_PER_HOUR: - description: British thermal units per hour - annotations: - symbol: BTU/h - conversion_to_watt: '0.293071' MassFlowRateUnitEnum: title: Mass Flow Rate Unit description: Units of mass flow rate (mass per unit time)