MCP Server

EngScript Engineering MCP

com.engscript/mcp
Science & Engineering Public & reachable MCP 2026-07-28

What this MCP does

Performs engineering calculations for oil and gas applications, including thermodynamics, fluid systems, equipment sizing, balances, emissions, and project economics.

advDVR
Advanced Data Validation and Reconciliation including gross error detection and elimation
Input schema
{'type': 'object', 'required': ['MEASURED', 'ACCURACY', 'EQUATION'], 'properties': {'ACCURACY': {'type': 'object', 'description': "Measurement accuracy in %. Format: {TAG: {value: number, unit: '%'}}. Example: {A: {value: 5, unit: '%'}}", 'additionalProperties': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}}}, 'EQUATION': {'type': 'object', 'description': "Constraint equations. Format: {EQ1: 'A=B+C', EQ2: 'C=D+E'}. Each value is an equation string with '=' separator.", 'additionalProperties': {'type': 'string'}}, 'MEASURED': {'type': 'object', 'description': "Measured values. Format: {TAG: {value: number, unit: string}}. Example: {A: {value: 100, unit: ''}}", 'additionalProperties': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}}}}}
advECONOMIC
Advanced Economic analysis with inflation, depreciation, and tax: NPV, IRR, Simple Payback, Profitability Index, NCF
Input schema
{'type': 'object', 'required': ['INPUT'], 'properties': {'INPUT': {'type': 'object', 'required': ['CapEx'], 'properties': {'Tax': {'type': 'object', 'description': "Corporate tax rate (fraction), e.g. {'value': 0.25}"}, 'Life': {'type': 'object', 'description': "Project life in years, e.g. {'value': 10}"}, 'OpEx': {'type': 'object', 'description': "Annual operating expenditure (nominal base), e.g. {'value': 0}"}, 'CapEx': {'type': 'object', 'description': "Capital expenditure (initial investment), e.g. {'value': 3200000}"}, 'Profit': {'type': 'object', 'description': "Annual profit/benefit (nominal base), e.g. {'value': 701250}"}, 'Salvage': {'type': 'object', 'description': "Salvage value at end of project life, e.g. {'value': 0}"}, 'Discount': {'type': 'object', 'description': "Real discount rate (fraction), e.g. {'value': 0.08}"}, 'Inflation': {'type': 'object', 'description': "Annual inflation rate (fraction), e.g. {'value': 0.03}"}, 'Depreciation': {'type': 'object', 'description': "Declining-balance depreciation rate (fraction), e.g. {'value': 0.20}"}}}}}
BALANCE
General mass/energy balance solver using GEKKO
Input schema
{'type': 'object', 'required': ['VARIABLE', 'EQUATION'], 'properties': {'EQUATION': {'type': 'object', 'description': "Equality/inequality constraints. Keys prefixed eq/ge/le/gt/lt. Each entry: {'left': expr, 'right': expr}."}, 'MAXIMIZE': {'type': 'object', 'nullable': True, 'description': "Objective to maximize. Format: {'left': 'maxtarget', 'right': 'expr'}."}, 'MINIMIZE': {'type': 'object', 'nullable': True, 'description': "Objective to minimize. Format: {'left': 'mintarget', 'right': 'expr'}."}, 'VARIABLE': {'type': 'object', 'description': 'Decision variables. Each entry: [lb, init, ub] for free variable, or [fixed, fixed, fixed] for constant.'}}}
CARBON
Calculate thermodynamic properties of hydrocarbon mixture. Supports hydrocarbons and non-hydrocarbon chemicals (PR EOS flash calculation).
Input schema
{'type': 'object', 'required': ['HC', 'mole', 'P', 'T'], 'properties': {'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Temperature'}, 'HC': {'type': 'array', 'items': {'type': 'string'}, 'description': 'List of component formula strings. Supported: H2, CH4, C2H2, C2H4, C2H6, C3H4, C3H6, C3H8, C4H8, C4H10, C5H12, C6H14, C7H16, C8H18, C9H20, C10H22, C6H6, C7H8, C8H10, C5H12O, Air, Ar, N2, O2, CO, CO2, H2O, H2S, NH3, SO2, SO3, HCl, NO2, N2O, N2O4, NaOH, N2O4'}, 'mole': {'type': 'array', 'items': {'type': 'number'}, 'description': 'Mole fraction list corresponding to HC, e.g. [0.85, 0.10, 0.03, 0.02]'}, 'H_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'kcal/kg', 'description': 'Enthalpy unit'}, 'S_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'kcal/kg-C', 'description': 'Entropy unit'}, 'Cp_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'kcal/kg-C', 'description': 'Cp unit'}, 'Cv_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'kcal/kg-C', 'description': 'Cv unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'kg/m3', 'description': 'Density unit'}, 'Tbub_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'C', 'description': 'Bubble point temperature unit'}, 'Tdew_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'C', 'description': 'Dew point temperature unit'}}}
COMPPOLYEFF
Calculate polytropic efficiency of compressor
Input schema
{'type': 'object', 'required': ['Pi', 'Po', 'Ti', 'To', 'k'], 'properties': {'k': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Heat capacity ratio'}, 'Pi': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet pressure'}, 'Po': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Outlet pressure'}, 'Ti': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet temperature'}, 'To': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Outlet temperature'}}}
CTWRCAPA
Cooling tower capacity evaluation
Input schema
{'type': 'object', 'required': ['INPUT'], 'properties': {'INPUT': {'type': 'object', 'required': ['BP', 'WB', 'LG', 'TS', 'TR', 'SLOP', 'TST_C'], 'properties': {'BP': {'type': 'object'}, 'LG': {'type': 'object'}, 'TR': {'type': 'object'}, 'TS': {'type': 'object'}, 'WB': {'type': 'object'}, 'SLOP': {'type': 'object'}, 'TST_C': {'type': 'object'}}}, 'OUTPUT': {'type': 'object'}}}
CTWRCAPADSNTST
Cooling tower capacity evaluation: design vs test
Input schema
{'type': 'object', 'required': ['INPUT'], 'properties': {'INPUT': {'type': 'object', 'required': ['DSN_BP', 'TST_BP', 'DSN_DB', 'TST_DB', 'DSN_RH', 'TST_RH', 'DSN_WB', 'TST_WB', 'DSN_LG', 'TST_LG', 'DSN_L', 'TST_L', 'DSN_TS', 'TST_TS', 'DSN_TR', 'TST_TR', 'DSN_SLOP', 'TST_SLOP', 'DSN_BHP', 'TST_BHP'], 'properties': {'DSN_L': {'type': 'object'}, 'TST_L': {'type': 'object'}, 'DSN_BP': {'type': 'object'}, 'DSN_DB': {'type': 'object'}, 'DSN_LG': {'type': 'object'}, 'DSN_RH': {'type': 'object'}, 'DSN_TR': {'type': 'object'}, 'DSN_TS': {'type': 'object'}, 'DSN_WB': {'type': 'object'}, 'TST_BP': {'type': 'object'}, 'TST_DB': {'type': 'object'}, 'TST_LG': {'type': 'object'}, 'TST_RH': {'type': 'object'}, 'TST_TR': {'type': 'object'}, 'TST_TS': {'type': 'object'}, 'TST_WB': {'type': 'object'}, 'DSN_BHP': {'type': 'object'}, 'TST_BHP': {'type': 'object'}, 'DSN_SLOP': {'type': 'object'}, 'TST_SLOP': {'type': 'object'}}}, 'OUTPUT': {'type': 'object'}}}
CTWREVAPOR
Cooling tower evaporation rate: mass removal rate (MR) and heat removal rate (QR)
Input schema
{'type': 'object', 'required': ['INPUT'], 'properties': {'INPUT': {'type': 'object', 'required': ['BP', 'DB', 'RH', 'LG', 'DT'], 'properties': {'BP': {'type': 'object'}, 'DB': {'type': 'object'}, 'DT': {'type': 'object'}, 'LG': {'type': 'object'}, 'RH': {'type': 'object'}}}, 'OUTPUT': {'type': 'object'}}}
CTWRLG
Cooling tower L/G ratio calculation
Input schema
{'type': 'object', 'required': ['INPUT'], 'properties': {'INPUT': {'type': 'object', 'required': ['BP', 'WB1', 'WB2', 'DT'], 'properties': {'BP': {'type': 'object'}, 'DT': {'type': 'object'}, 'WB1': {'type': 'object'}, 'WB2': {'type': 'object'}}}, 'OUTPUT': {'type': 'object'}}}
CTWRNTU
Cooling tower NTU and characteristic C value calculation
Input schema
{'type': 'object', 'required': ['INPUT'], 'properties': {'INPUT': {'type': 'object', 'required': ['BP', 'WB', 'LG', 'TS', 'TR', 'SLOP'], 'properties': {'BP': {'type': 'object'}, 'LG': {'type': 'object'}, 'TR': {'type': 'object'}, 'TS': {'type': 'object'}, 'WB': {'type': 'object'}, 'SLOP': {'type': 'object'}}}, 'OUTPUT': {'type': 'object'}}}
CVGAS
Calculate gas control valve Cv and Kv from flow conditions
Input schema
{'type': 'object', 'required': ['Q', 'P1', 'P2', 'T1', 'MW', 'k'], 'properties': {'Q': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MSCFH', 'Nm3/hr', 'SCFH', 'Sm3/hr', 'kNm3/hr', 'kSCFH', 'kSm3/hr'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Gas volumetric flow rate at standard conditions'}, 'k': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': [''], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Specific heat ratio (Cp/Cv)'}, 'MW': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Gas molecular weight'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream pressure'}, 'T1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet gas temperature'}, 'Cv_unit': {'enum': [''], 'type': 'string', 'default': '', 'description': 'Output Cv unit'}, 'Kv_unit': {'enum': [''], 'type': 'string', 'default': '', 'description': 'Output Kv unit'}}}
CVLIQ
Calculate liquid control valve Cv and Kv from flow conditions
Input schema
{'type': 'object', 'required': ['Q', 'P1', 'P2', 'rho'], 'properties': {'Q': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L/day', 'L/hr', 'L/min', 'L/sec', 'USGPH', 'USGPM', 'barrel/day', 'barrel/hr', 'ft3/day', 'ft3/hr', 'gph', 'gpm', 'm3/day', 'm3/hr', 'm3/min', 'm3/sec'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Liquid volumetric flow rate'}, 'FL': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': [''], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Liquid pressure recovery factor (optional, default 0.9)'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream pressure'}, 'Pc': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Liquid critical pressure (optional, default 22120 kPa)'}, 'Pv': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Liquid vapor pressure (optional, default 0 kPa)'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Liquid density'}, 'Cv_unit': {'enum': [''], 'type': 'string', 'default': '', 'description': 'Output Cv unit'}, 'Kv_unit': {'enum': [''], 'type': 'string', 'default': '', 'description': 'Output Kv unit'}}}
CVSTEAM
Calculate steam control valve Cv and Kv from flow conditions
Input schema
{'type': 'object', 'required': ['M', 'P1', 'P2', 'rho'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Steam mass flow rate'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream pressure'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Steam density'}, 'Cv_unit': {'enum': [''], 'type': 'string', 'default': '', 'description': 'Output Cv unit'}, 'Kv_unit': {'enum': [''], 'type': 'string', 'default': '', 'description': 'Output Kv unit'}}}
DESUPERHEATER
Calculate boiler feed water flow and total flow from pressure and temperature reduction through desuperheater. Also returns the inlet/outlet/BFW specific enthalpies (h_in, h_out, h_bfw) used in the mass balance, always in Btu/lb.
Input schema
{'type': 'object', 'required': ['Min', 'Pin', 'Tin', 'Pout', 'Tout', 'Pbfw', 'Tbfw'], 'properties': {'Min': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet steam flow rate'}, 'Pin': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet steam pressure'}, 'Tin': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet steam temperature'}, 'Pbfw': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'BFW (boiler feed water) pressure'}, 'Pout': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Outlet steam pressure'}, 'Tbfw': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'BFW (boiler feed water) temperature'}, 'Tout': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Outlet steam temperature'}, 'Mbfw_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'lb/hr', 'description': 'Required BFW (boiler feed water) flow unit'}, 'Mout_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'lb/hr', 'description': 'Total output steam flow unit'}}}
DVR
Data Validation and Reconciliation
Input schema
{'type': 'object', 'required': ['MEASURED', 'ACCURACY', 'EQUATION'], 'properties': {'ACCURACY': {'type': 'object', 'description': "Measurement accuracy in %. Format: {TAG: {value: number, unit: '%'}}. Example: {A: {value: 5, unit: '%'}}", 'additionalProperties': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}}}, 'EQUATION': {'type': 'object', 'description': "Constraint equations. Format: {EQ1: 'A=B+C', EQ2: 'C=D+E'}. Each value is an equation string with '=' separator.", 'additionalProperties': {'type': 'string'}}, 'MEASURED': {'type': 'object', 'description': "Measured values. Format: {TAG: {value: number, unit: string}}. Example: {A: {value: 100, unit: ''}}", 'additionalProperties': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}}}}}
ECONOMIC
Economic analysis: NPV, IRR, Simple Payback, Profitability Index, EAC
Input schema
{'type': 'object', 'required': ['CF'], 'properties': {'R': {'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'number'}}, 'description': 'Discount rate (fraction, e.g. 0.1 for 10%). Default 0.1.'}, 'CF': {'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Cash flow list, period 0 (initial investment, negative) through final period, e.g. [-100000, 30000, 30000, 30000]'}}}
EMISSIONFACTOR
Calculate CO2 emission conversion factor from gas composition
Input schema
{'type': 'object', 'required': ['HC', 'mole'], 'properties': {'HC': {'type': 'array', 'items': {'type': 'string'}, 'description': "List of fuel component formula strings, e.g. ['CH4', 'C3H8', 'N2', 'CO2']"}, 'mole': {'type': 'array', 'items': {'type': 'number'}, 'description': 'Mole fraction list corresponding to HC, e.g. [0.88, 0.05, 0.04, 0.03]'}, 'ECF_unit': {'enum': ['CO2-g/MBtu', 'CO2-kg/MBtu', 'CO2-lb/MBtu', 'CO2-ton/MBtu'], 'type': 'string', 'default': 'CO2-ton/MBtu', 'description': 'Emission factor output unit'}}}
FLUEGAS
Calculate enthalpy of flue gas from composition
Input schema
{'type': 'object', 'required': ['HC', 'mole', 'Tb', 'Tg'], 'properties': {'HC': {'type': 'array', 'items': {'type': 'string'}, 'description': "List of fuel component formula strings, e.g. ['CH4', 'C2H6', 'N2']"}, 'Tb': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Base temperature'}, 'Tg': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Flue gas temperature'}, 'mole': {'type': 'array', 'items': {'type': 'number'}, 'description': 'Mole fraction list corresponding to HC, e.g. [0.90, 0.05, 0.05]'}, 'Cp_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'Btu/lb-F', 'description': 'Cp output unit'}, 'MW_unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string', 'default': 'g/mol', 'description': 'MW output unit'}, 'dH_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'Btu/lb', 'description': 'Enthalpy output unit'}}}
FORMULA
Generic formula calculator with unit conversion and IF-THEN-ELSE
Input schema
{'type': 'object', 'required': ['INPUT', 'FORMULA', 'OUTPUT'], 'properties': {'UNIT': {'type': 'object'}, 'INPUT': {'type': 'object'}, 'OUTPUT': {'type': 'object'}, 'FORMULA': {'type': 'object'}}}
FUELGAS
Calculate MW, LHV and HHV of fuel gas from composition
Input schema
{'type': 'object', 'required': ['HC', 'mole'], 'properties': {'HC': {'type': 'array', 'items': {'type': 'string'}, 'description': "List of fuel component formula strings, e.g. ['CH4', 'C2H6', 'H2', 'N2']"}, 'mole': {'type': 'array', 'items': {'type': 'number'}, 'description': 'Mole fraction list corresponding to HC, e.g. [0.90, 0.05, 0.03, 0.02]'}, 'MW_unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string', 'default': 'g/mol', 'description': 'MW output unit'}, 'HHV_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'Btu/lb', 'description': 'HHV output unit'}, 'LHV_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'Btu/lb', 'description': 'LHV output unit'}}}
GN2DEPRESS
Calculate depressurization gas volume and hold time for gaseous nitrogen storage vessel
Input schema
{'type': 'object', 'required': ['V1', 'P1', 'P2', 'Q2'], 'properties': {'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Initial pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Final pressure'}, 'Q2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MSCFH', 'Nm3/hr', 'SCFH', 'Sm3/hr', 'kNm3/hr', 'kSCFH', 'kSm3/hr'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Nitrogen consumption rate'}, 'V1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L', 'cm3', 'ft3', 'in3', 'm3', 'mL'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Vessel volume'}, 'H_unit': {'enum': ['days', 'hours', 'minutes', 'seconds', 'years'], 'type': 'string', 'default': 'hours', 'description': 'Required hold time unit'}, 'V2_unit': {'enum': ['MSCF', 'Nm3', 'SCF', 'Sm3', 'kNm3', 'kSCF', 'kSm3'], 'type': 'string', 'default': 'Nm3', 'description': 'Available gas volume unit'}}}
HEXRF
Heat exchanger fouling resistance back-calculation from shell/tube-side operating conditions.
Input schema
{'type': 'object', 'required': ['Unknown', 'D_shll', 'D_tube', 'D_wall', 'P_tube', 'S_baffle', 'N_tube', 'L_tube', 'N_shllseri', 'N_shllpara', 'N_shllpass', 'N_tubepass', 'A_hex', 'R_shll', 'R_tube', 'F', 'k_hex', 'T_shll', 'rho_shll', 'Cp_shll', 'mu_shll', 'k_shll', 'T_tube', 'rho_tube', 'Cp_tube', 'mu_tube', 'k_tube', 'V_shll', 'T1_shll', 'T2_shll', 'V_tube', 'T1_tube', 'T2_tube'], 'properties': {'F': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Correction factor (dimensionless)'}, 'A_hex': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm2', 'ft2', 'in2', 'm2'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Total heat transfer area'}, 'k_hex': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['Btu/hr-ft-F', 'Btu/hr-ft-R', 'Kcal/m-hr-C', 'Kcal/m-hr-K', 'W/m-C', 'W/m-K'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube wall thermal conductivity'}, 'D_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Shell inside diameter'}, 'D_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube outside diameter'}, 'D_wall': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube wall thickness'}, 'L_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube length'}, 'N_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['EA', 'ea'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Number of tubes'}, 'P_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube pitch'}, 'Q_unit': {'enum': ['Btu/hr', 'Gcal/hr', 'MBtu/hr', 'MW', 'Mcal/hr', 'W', 'cal/hr', 'hp', 'kBtu/hr', 'kW', 'kcal/hr'], 'type': 'string', 'default': 'MBtu/hr', 'description': 'Output heat duty unit'}, 'R_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C-h-m2/J', 'C-h-m2/kJ', 'C-h-m2/kcal', 'C-m2/W', 'C-m2/kW', 'F-hr-ft2/Btu', 'hr-ft2-F/Btu'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Shell-side fouling resistance'}, 'R_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C-h-m2/J', 'C-h-m2/kJ', 'C-h-m2/kcal', 'C-m2/W', 'C-m2/kW', 'F-hr-ft2/Btu', 'hr-ft2-F/Btu'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube-side fouling resistance'}, 'T_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Shell-side temperature range [T1, T2] used for property evaluation'}, 'T_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Tube-side temperature range [T1, T2] used for property evaluation'}, 'V_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L/day', 'L/hr', 'L/min', 'L/sec', 'USGPH', 'USGPM', 'barrel/day', 'barrel/hr', 'ft3/day', 'ft3/hr', 'gph', 'gpm', 'm3/day', 'm3/hr', 'm3/min', 'm3/sec'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Shell-side volumetric flow rate'}, 'V_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L/day', 'L/hr', 'L/min', 'L/sec', 'USGPH', 'USGPM', 'barrel/day', 'barrel/hr', 'ft3/day', 'ft3/hr', 'gph', 'gpm', 'm3/day', 'm3/hr', 'm3/min', 'm3/sec'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube-side volumetric flow rate'}, 'k_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['Btu/hr-ft-F', 'Btu/hr-ft-R', 'Kcal/m-hr-C', 'Kcal/m-hr-K', 'W/m-C', 'W/m-K'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Shell-side fluid thermal conductivity list'}, 'k_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['Btu/hr-ft-F', 'Btu/hr-ft-R', 'Kcal/m-hr-C', 'Kcal/m-hr-K', 'W/m-C', 'W/m-K'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Tube-side fluid thermal conductivity list'}, 'Cp_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Shell-side fluid heat capacity list'}, 'Cp_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Tube-side fluid heat capacity list'}, 'Rf_unit': {'enum': ['C-h-m2/J', 'C-h-m2/kJ', 'C-h-m2/kcal', 'C-m2/W', 'C-m2/kW', 'F-hr-ft2/Btu', 'hr-ft2-F/Btu'], 'type': 'string', 'default': 'hr-ft2-F/Btu', 'description': 'Output fouling resistance unit'}, 'T1_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Shell-side inlet temperature'}, 'T1_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube-side inlet temperature'}, 'T2_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Shell-side outlet temperature'}, 'T2_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tube-side outlet temperature'}, 'Unknown': {'enum': ['tube-V', 'tube-T2', 'shll-V', 'shll-T2'], 'type': 'string', 'description': 'Which unknown is being solved for.'}, 'mu_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Shell-side fluid viscosity list'}, 'mu_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Tube-side fluid viscosity list'}, 'S_baffle': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Baffle spacing'}, 'rho_shll': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Shell-side fluid density list'}, 'rho_tube': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Tube-side fluid density list'}, 'N_shllpara': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Number of shells in parallel'}, 'N_shllpass': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Number of shell-side passes'}, 'N_shllseri': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Number of shells in series'}, 'N_tubepass': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Number of tube-side passes'}, 'U_act_unit': {'enum': ['Btu/hr-ft2-F', 'W/m2-C', 'kJ/h-m2-C', 'kJ/s-m2-C', 'kcal/h-m2-C'], 'type': 'string', 'default': 'Btu/hr-ft2-F', 'description': 'Output actual (fouled) overall heat transfer coefficient unit'}, 'U_cln_unit': {'enum': ['Btu/hr-ft2-F', 'W/m2-C', 'kJ/h-m2-C', 'kJ/s-m2-C', 'kcal/h-m2-C'], 'type': 'string', 'default': 'Btu/hr-ft2-F', 'description': 'Output clean overall heat transfer coefficient unit'}, 'h_shll_unit': {'enum': ['Btu/hr-ft2', 'W/m2', 'kJ/h-m2', 'kJ/s-m2', 'kcal/h-m2'], 'type': 'string', 'default': 'Btu/hr-ft2', 'description': 'Output shell-side film heat transfer coefficient unit'}, 'h_tube_unit': {'enum': ['Btu/hr-ft2', 'W/m2', 'kJ/h-m2', 'kJ/s-m2', 'kcal/h-m2'], 'type': 'string', 'default': 'Btu/hr-ft2', 'description': 'Output tube-side film heat transfer coefficient unit'}, 'u_shll_unit': {'enum': ['MPH', 'cm/sec', 'ft/hr', 'ft/min', 'ft/sec', 'km/hr', 'm/hr', 'm/min', 'm/s', 'm/sec'], 'type': 'string', 'default': 'ft/sec', 'description': 'Output shell-side velocity unit'}, 'u_tube_unit': {'enum': ['MPH', 'cm/sec', 'ft/hr', 'ft/min', 'ft/sec', 'km/hr', 'm/hr', 'm/min', 'm/s', 'm/sec'], 'type': 'string', 'default': 'ft/sec', 'description': 'Output tube-side velocity unit'}}}
HPADEPRESS
Calculate depressurization gas volume and hold time for high pressure air storage vessel
Input schema
{'type': 'object', 'required': ['V1', 'P1', 'P2', 'Q2'], 'properties': {'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Initial pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Final pressure'}, 'Q2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MSCFH', 'Nm3/hr', 'SCFH', 'Sm3/hr', 'kNm3/hr', 'kSCFH', 'kSm3/hr'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Gas consumption rate'}, 'V1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L', 'cm3', 'ft3', 'in3', 'm3', 'mL'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Vessel volume'}, 'H_unit': {'enum': ['days', 'hours', 'minutes', 'seconds', 'years'], 'type': 'string', 'default': 'hours', 'description': 'Required hold time unit'}, 'V2_unit': {'enum': ['MSCF', 'Nm3', 'SCF', 'Sm3', 'kNm3', 'kSCF', 'kSm3'], 'type': 'string', 'default': 'Nm3', 'description': 'Available gas volume unit'}}}
HTRINOUTEFF
Calculate fired heater heat duty and efficiency from inlet/outlet conditions and composition
Input schema
{'type': 'object', 'required': ['HC', 'mole', 'Mfuel', 'Tfuel', 'Tair', 'exO2', 'Trad', 'Tstk'], 'properties': {'HC': {'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'array', 'items': {'type': 'string'}}}, 'description': "Fuel gas hydrocarbon component list (e.g. ['CH4','C2H6'])"}, 'Tair': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Combustion air temperature'}, 'Trad': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Radiant section outlet temperature'}, 'Tstk': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stack gas temperature'}, 'exO2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['%'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Excess oxygen in flue gas'}, 'mole': {'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'array', 'items': {'type': 'number'}}}, 'description': 'Fuel gas mole fraction list matching HC order (e.g. [0.9, 0.1])'}, 'Mfuel': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fuel mass flow rate'}, 'Tfuel': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fuel temperature'}, 'Mair_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'kg/hr', 'description': 'Output air mass flow rate unit'}, 'Qrad_unit': {'enum': ['Btu/hr', 'Gcal/hr', 'MBtu/hr', 'MW', 'Mcal/hr', 'W', 'cal/hr', 'hp', 'kBtu/hr', 'kW', 'kcal/hr'], 'type': 'string', 'default': 'kW', 'description': 'Output radiant section duty unit'}, 'Qconv_unit': {'enum': ['Btu/hr', 'Gcal/hr', 'MBtu/hr', 'MW', 'Mcal/hr', 'W', 'cal/hr', 'hp', 'kBtu/hr', 'kW', 'kcal/hr'], 'type': 'string', 'default': 'kW', 'description': 'Output convection section duty unit'}, 'Qduty_unit': {'enum': ['Btu/hr', 'Gcal/hr', 'MBtu/hr', 'MW', 'Mcal/hr', 'W', 'cal/hr', 'hp', 'kBtu/hr', 'kW', 'kcal/hr'], 'type': 'string', 'default': 'kW', 'description': 'Output total heat duty unit'}, 'Qloss_unit': {'enum': ['Btu/hr', 'Gcal/hr', 'MBtu/hr', 'MW', 'Mcal/hr', 'W', 'cal/hr', 'hp', 'kBtu/hr', 'kW', 'kcal/hr'], 'type': 'string', 'default': 'kW', 'description': 'Output heat loss unit'}, 'MWfuel_unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string', 'default': 'g/gmol', 'description': 'Output fuel molecular weight unit'}, 'LHVfuel_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'kJ/kg', 'description': 'Output fuel LHV unit'}}}
HTRLOSSEFF
Calculate fired heater loss efficiency from ambient temperature, stack gas temperature and excess oxygen
Input schema
{'type': 'object', 'required': ['Type', 'Tg', 'Ta', 'exO2'], 'properties': {'Ta': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Ambient temperature'}, 'Tg': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stack gas temperature'}, 'Type': {'type': 'object', 'required': ['unit'], 'properties': {'unit': {'enum': ['gas', 'oil'], 'type': 'string'}}, 'description': 'Fuel type'}, 'exO2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['%'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Excess oxygen'}}}
LMTD
Calculate LMTD of heat exchanger
Input schema
{'type': 'object', 'required': ['Thi', 'Tho', 'Tci', 'Tco'], 'properties': {'Tci': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Cold inlet temperature'}, 'Tco': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Cold outlet temperature'}, 'Thi': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Hot inlet temperature'}, 'Tho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Hot outlet temperature'}, 'LMTD_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'C', 'description': 'Output LMTD unit'}}}
LN2DEPRESS
Calculate depressurization gas volumn abd hold time and saturation temperature for liquid nitrogen storage vessel
Input schema
{'type': 'object', 'required': ['V1', 'P1', 'P2', 'Q2'], 'properties': {'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Initial pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Final pressure'}, 'Q2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MSCFH', 'Nm3/hr', 'SCFH', 'Sm3/hr', 'kNm3/hr', 'kSCFH', 'kSm3/hr'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Nitrogen consumption rate'}, 'V1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L', 'cm3', 'ft3', 'in3', 'm3', 'mL'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Tank volume'}, 'H_unit': {'enum': ['days', 'hours', 'minutes', 'seconds', 'years'], 'type': 'string', 'default': 'hours', 'description': 'Required hold time unit'}, 'T1_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'C', 'description': 'Required temperature unit'}, 'V2_unit': {'enum': ['MSCF', 'Nm3', 'SCF', 'Sm3', 'kNm3', 'kSCF', 'kSm3'], 'type': 'string', 'default': 'Nm3', 'description': 'Available gas volume unit'}}}
MIXTURE
Primary thermodynamic property calculator. Use this tool first for all mixture property calculations. Supports hydrocarbons and non-hydrocarbon chemicals (PR EOS flash calculation).
Input schema
{'type': 'object', 'required': ['HC', 'mole', 'P', 'T'], 'properties': {'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Temperature'}, 'HC': {'type': 'array', 'items': {'type': 'string'}, 'description': "Component list. Supported formulas or names: H2(hydrogen), CH4(methane), C2H2(acetylene), C2H4(ethylene), C2H6(ethane),C3H4(propadiene), C3H6(propene), C3H8(propane), C4H8(isobutylene), C4H10(n-butane), C5H12(pentane), C6H14(hexane), C7H16(heptane), C8H18(octane), C9H20(nonane), C10H22(decane),C11H24(undecane), C12H26(dodecane), C5H12O(MTBE), C6H6(benzene), C7H8(toluene), C8H10(o-xylene), Air, Ar(argon), N2(nitrogen), O2(oxygen), CO(carbon monoxide), CO2(carbon dioxide),H2O(water), HCl(hydrogen chloride), H2S(hydrogen sulfide), NH3(ammonia), NO2(nitrogen dioxide), N2O(nitrous oxide), N2O4(dinitrogen tetroxide), SO2(sulfur dioxide), SO3(sulfur trioxide), NaOH(sodium hydroxide). Names are case-insensitive.Examples: ['CH4','C2H6','C3H8'], ['Methane','Ethane','Propane'], ['methane','ethane','propane']"}, 'mole': {'type': 'array', 'items': {'type': 'number'}, 'description': 'Mole fractions or mole amounts corresponding to HC. Automatically normalized.'}, 'H_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'kcal/kg', 'description': 'Enthalpy unit'}, 'S_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'kcal/kg-C', 'description': 'Entropy unit'}, 'U_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'kcal/kg', 'description': 'Internal energy U unit'}, 'k_unit': {'enum': ['Btu/hr-ft-F', 'Btu/hr-ft-R', 'Kcal/m-hr-C', 'Kcal/m-hr-K', 'W/m-C', 'W/m-K'], 'type': 'string', 'default': 'W/m-K', 'description': 'Thermal conductivity k unit'}, 'Cp_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'kcal/kg-C', 'description': 'Heat capacity Cp unit'}, 'Cv_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'kcal/kg-C', 'description': 'Heat capacity Cv unit'}, 'MW_unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string', 'default': 'kg/kgmol', 'description': 'Molecular weight unit'}, 'mu_unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string', 'default': 'cP', 'description': 'Viscosity mu unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'kg/m3', 'description': 'Density unit'}, 'Tbub_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'C', 'description': 'Bubble point Tbub unit'}, 'Tdew_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'C', 'description': 'Dew point Tdew unit'}}}
MtoV
Convert mass flow rate to volumetric flow rate at standard condition
Input schema
{'type': 'object', 'required': ['M', 'MW'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Mass flow rate'}, 'MW': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Molecular weight'}, 'V_unit': {'enum': ['MSCFH', 'Nm3/hr', 'SCFH', 'Sm3/hr', 'kNm3/hr', 'kSCFH', 'kSm3/hr'], 'type': 'string', 'default': 'SCFH', 'description': 'Output gas volume flow unit'}}}
ORIFICEGAS
Gas orifice sizing / differential pressure / flow rate calculation based on ISO 5167 orifice. Exactly ONE of [M, dP, D2] must be set to '?' — that variable will be calculated.
Input schema
{'type': 'object', 'required': ['M', 'dP', 'D2', 'P1', 'D1', 'rho', 'mu'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {}}, 'description': "Gas mass flow rate. Set value='?' to calculate."}, 'k': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Heat capacity ratio (Cp/Cv), default 1.4'}, 'D1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe inside diameter'}, 'D2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {}}, 'description': "Orifice bore diameter. Set value='?' to calculate."}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream (operating) pressure'}, 'dP': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {}}, 'description': "Differential pressure across orifice. Set value='?' to calculate."}, 'mu': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Dynamic viscosity'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fluid density'}}}
ORIFICELIQ
Liquid orifice sizing / differential pressure / flow rate calculation based on ISO 5167 orifice. Exactly ONE of [M, dP, D2] must be set to '?' — that variable will be calculated.
Input schema
{'type': 'object', 'required': ['M', 'dP', 'D2', 'P1', 'D1', 'rho', 'mu'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {}}, 'description': "Liquid mass flow rate. Set value='?' to calculate."}, 'D1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe inside diameter'}, 'D2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {}}, 'description': "Orifice bore diameter. Set value='?' to calculate."}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream (operating) pressure'}, 'dP': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {}}, 'description': "Differential pressure across orifice. Set value='?' to calculate."}, 'mu': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Dynamic viscosity'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fluid density'}}}
PIPEAIR
Calculate compressed air pipe sizing: pipe diameter, velocity, pressure drop
Input schema
{'type': 'object', 'required': ['P', 'T', 'M', 'L'], 'properties': {'L': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe length'}, 'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Compressed air mass flow rate'}, 'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Compressed air pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Compressed air temperature'}, 'D_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'in', 'description': 'Output pipe diameter unit'}, 'u_unit': {'enum': ['MPH', 'cm/sec', 'ft/hr', 'ft/min', 'ft/sec', 'km/hr', 'm/hr', 'm/min', 'm/s', 'm/sec'], 'type': 'string', 'default': 'm/sec', 'description': 'Output velocity unit'}, 'dP_unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string', 'default': 'psi', 'description': 'Output pressure drop unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'lb/ft3', 'description': 'Output density unit'}}}
PIPEFF
Calculate Darcy friction factor based on Reynolds number and pipe roughness
Input schema
{'type': 'object', 'required': ['Piping', 'D', 'Re'], 'properties': {'D': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe inside diameter'}, 'Re': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Reynolds number'}, 'Piping': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'enum': ['', 'steel', 'cast', 'galva', 'asphalt', 'tubing'], 'type': 'string'}, 'value': {'type': 'string'}}, 'description': 'Pipe material'}}}
PIPEFLOWGAS
Calculate isothermal gas pipe flow: density, volumetric flow rate, mass flow rate from pressure drop
Input schema
{'type': 'object', 'required': ['P1', 'P2', 'T', 'L', 'D', 'MW'], 'properties': {'D': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe inside diameter'}, 'L': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe length'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Gas temperature'}, 'MW': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Gas molecular weight'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream (inlet) pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream (outlet) pressure'}, 'M_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'kg/hr', 'description': 'Output mass flow unit'}, 'Q_unit': {'enum': ['MSCFH', 'Nm3/hr', 'SCFH', 'Sm3/hr', 'kNm3/hr', 'kSCFH', 'kSm3/hr'], 'type': 'string', 'default': 'Nm3/hr', 'description': 'Output volumetric flow unit (normal conditions)'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'kg/m3', 'description': 'Output density unit'}}}
PIPEFLOWLIQ
Calculate liquid pipe flow: volumetric flow rate and mass flow rate from pressure drop
Input schema
{'type': 'object', 'required': ['P1', 'P2', 'L', 'D', 'rho'], 'properties': {'D': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe inside diameter'}, 'L': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe length'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream (inlet) pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream (outlet) pressure'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Liquid density'}, 'M_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'kg/hr', 'description': 'Output mass flow unit'}, 'Q_unit': {'enum': ['L/day', 'L/hr', 'L/min', 'L/sec', 'USGPH', 'USGPM', 'barrel/day', 'barrel/hr', 'ft3/day', 'ft3/hr', 'gph', 'gpm', 'm3/day', 'm3/hr', 'm3/min', 'm3/sec'], 'type': 'string', 'default': 'm3/hr', 'description': 'Output volumetric flow unit'}}}
PIPEINSUL
Calculate optimal pipe insulation thickness to limit outer surface temperature (burn protection) and minimise heat loss. Uses cylindrical heat conduction + external convection model, solved via scipy.optimize.brentq. Returns exact minimum thickness and nearest commercial 5 mm step.
Input schema
{'type': 'object', 'required': ['NPS', 'Tf', 'Ta', 'Tmax', 'kins', 'ha'], 'properties': {'Ta': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Ambient (outdoor) temperature'}, 'Tf': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fluid / pipe outer surface temperature'}, 'ha': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['Btu/hr-ft2-F', 'W/m2-C', 'kJ/h-m2-C', 'kJ/s-m2-C', 'kcal/h-m2-C'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'External (air-side) convection coefficient'}, 'NPS': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['in', 'inch'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Nominal Pipe Size in inches (ASME B36.10).'}, 'Tmax': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Maximum allowable insulation outer surface temperature (burn-prevention limit = 50 °C per EN ISO 13732-1)'}, 'kins': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['Btu/hr-ft-F', 'Btu/hr-ft-R', 'Kcal/m-hr-C', 'Kcal/m-hr-K', 'W/m-C', 'W/m-K'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Insulation thermal conductivity'}, 'r2_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'mm', 'description': 'Desired Pipe outer radius output unit'}, 'r3_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'mm', 'description': 'Desired Insulation outer radius output unit'}, 'tins_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'mm', 'description': 'Desired Insulation thickness output unit'}, 'Dpipe_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'mm', 'description': 'Desired Pipe OD output unit'}, 'Qloss_unit': {'enum': ['W/m', 'kW/m', 'BTU/hr-ft'], 'type': 'string', 'default': 'W/m', 'description': 'Desired Heat loss output unit'}, 'Tsurf_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'C', 'description': 'Desired Surface temperature output unit'}}}
PIPENITROGEN
Calculate nitrogen pipe sizing: pipe diameter, velocity, pressure drop
Input schema
{'type': 'object', 'required': ['P', 'T', 'M', 'L'], 'properties': {'L': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe length'}, 'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Nitrogen mass flow rate'}, 'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Nitrogen pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Nitrogen temperature'}, 'D_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'in', 'description': 'Output pipe diameter unit'}, 'u_unit': {'enum': ['MPH', 'cm/sec', 'ft/hr', 'ft/min', 'ft/sec', 'km/hr', 'm/hr', 'm/min', 'm/s', 'm/sec'], 'type': 'string', 'default': 'm/sec', 'description': 'Output velocity unit'}, 'dP_unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string', 'default': 'psi', 'description': 'Output pressure drop unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'lb/ft3', 'description': 'Output density unit'}}}
PIPESTEAM
Calculate steam pipe sizing: pipe diameter, velocity, pressure drop
Input schema
{'type': 'object', 'required': ['P', 'T', 'M', 'L'], 'properties': {'L': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe length'}, 'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Steam mass flow rate'}, 'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Steam pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Steam temperature'}, 'D_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'in', 'description': 'Output pipe diameter unit'}, 'u_unit': {'enum': ['MPH', 'cm/sec', 'ft/hr', 'ft/min', 'ft/sec', 'km/hr', 'm/hr', 'm/min', 'm/s', 'm/sec'], 'type': 'string', 'default': 'm/sec', 'description': 'Output velocity unit'}, 'dP_unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string', 'default': 'psi', 'description': 'Output pressure drop unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'lb/ft3', 'description': 'Output density unit'}}}
PIPEWATER
Calculate water pipe sizing: pipe diameter, velocity, pressure drop
Input schema
{'type': 'object', 'required': ['P', 'T', 'M', 'L'], 'properties': {'L': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe length'}, 'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Water mass flow rate'}, 'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Water pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Water temperature'}, 'D_unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string', 'default': 'in', 'description': 'Output pipe diameter unit'}, 'u_unit': {'enum': ['MPH', 'cm/sec', 'ft/hr', 'ft/min', 'ft/sec', 'km/hr', 'm/hr', 'm/min', 'm/s', 'm/sec'], 'type': 'string', 'default': 'm/sec', 'description': 'Output velocity unit'}, 'dP_unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string', 'default': 'psi', 'description': 'Output pressure drop unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'lb/ft3', 'description': 'Output density unit'}}}
Pmean
Calculate mean pressure between inlet and outlet
Input schema
{'type': 'object', 'required': ['Fluid', 'P1', 'P2'], 'properties': {'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Outlet pressure'}, 'Fluid': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'string'}}, 'description': 'Fluid type (gas or liquid)'}, 'Pmean_unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string', 'default': 'bar', 'description': 'Output mean pressure unit'}}}
PSVGAS
Calculate required PSV (pressure safety valve) relief area for gas/vapor service per API 520
Input schema
{'type': 'object', 'required': ['M', 'P1', 'P2', 'T1', 'MW'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Relieving mass flow rate'}, 'k': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Heat capacity ratio (Cp/Cv), default 1.4'}, 'Kb': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Capacity correction factor for back pressure, default 1.0'}, 'Kc': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Combination correction factor (rupture disk), default 1.0'}, 'Kd': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Effective coefficient of discharge, default 0.975'}, 'MW': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Gas/vapor molecular weight'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream relieving pressure (set pressure + overpressure + atm)'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream (back) pressure'}, 'T1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Relieving temperature'}, 'A_unit': {'enum': ['cm2', 'ft2', 'in2', 'm2'], 'type': 'string', 'default': 'cm2', 'description': 'Output relief area unit'}}}
PSVLIQ
Calculate required PSV (pressure safety valve) relief area for liquid service per API 520
Input schema
{'type': 'object', 'required': ['M', 'P1', 'P2', 'rho'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Relieving mass flow rate'}, 'Kc': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Combination correction factor (rupture disk), default 1.0'}, 'Kd': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Effective coefficient of discharge, default 0.65'}, 'Kv': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Viscosity correction factor, default 1.0'}, 'Kw': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Back pressure correction factor (balanced bellows), default 1.0'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream relieving pressure (set pressure + overpressure + atm)'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream (back) pressure'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Liquid density'}, 'Pover': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Overpressure fraction (e.g. 0.1 = 10%), default 0.1'}, 'A_unit': {'enum': ['cm2', 'ft2', 'in2', 'm2'], 'type': 'string', 'default': 'cm2', 'description': 'Output relief area unit'}}}
PSVSTEAM
Calculate required PSV (pressure safety valve) relief area for steam service per API 520
Input schema
{'type': 'object', 'required': ['M', 'P1', 'T1'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Relieving mass flow rate'}, 'Kb': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Capacity correction factor for back pressure, default 1.0'}, 'Kc': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Combination correction factor (rupture disk), default 1.0'}, 'Kd': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Effective coefficient of discharge, default 0.975'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream relieving pressure (set pressure + overpressure + atm)'}, 'T1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Relieving temperature'}, 'A_unit': {'enum': ['cm2', 'ft2', 'in2', 'm2'], 'type': 'string', 'default': 'cm2', 'description': 'Output relief area unit'}}}
PSYCHROMETRIC
Psychrometric properties of moist air
Input schema
{'type': 'object', 'required': ['BP', 'DB'], 'properties': {'BP': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}}, 'DB': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}}, 'DP': {'type': 'object', 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}}, 'RH': {'type': 'object', 'properties': {'unit': {'enum': ['%'], 'type': 'string'}, 'value': {'type': 'number'}}}, 'WB': {'type': 'object', 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}}, 'H_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'Btu/lb', 'description': 'Enthalpy output unit (HDA/HWA)'}, 'V_unit': {'enum': ['cm3/g', 'cm^3/g', 'ft3/lb', 'ft^3/lb', 'm3/kg', 'm^3/kg'], 'type': 'string', 'default': 'ft3/lb', 'description': 'Specific volume unit (VDA/VWA)'}, 'DP_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'F', 'description': 'Dew point temperature output unit'}, 'WB_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'F', 'description': 'Wet bulb temperature output unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'lb/ft3', 'description': 'Density output unit (DDA/DWA)'}}}
PTV
Calculate gas molar volume using equation of state
Input schema
{'type': 'object', 'required': ['P', 'T'], 'properties': {'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Temperature'}, 'V_unit': {'enum': ['L', 'cm3', 'ft3', 'in3', 'm3', 'mL'], 'type': 'string', 'default': 'm3', 'description': 'Output molar volume unit'}}}
PUMPBHP
Calculate pump brake horsepower
Input schema
{'type': 'object', 'required': ['rho', 'Q', 'P1', 'P2', 'Eff'], 'properties': {'Q': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L/day', 'L/hr', 'L/min', 'L/sec', 'USGPH', 'USGPM', 'barrel/day', 'barrel/hr', 'ft3/day', 'ft3/hr', 'gph', 'gpm', 'm3/day', 'm3/hr', 'm3/min', 'm3/sec'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Volumetric flow rate'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Outlet pressure'}, 'Eff': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['%'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pump efficiency'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fluid density'}, 'BHP_unit': {'enum': ['Btu/hr', 'Gcal/hr', 'MBtu/hr', 'MW', 'Mcal/hr', 'W', 'cal/hr', 'hp', 'kBtu/hr', 'kW', 'kcal/hr'], 'type': 'string', 'default': 'kW', 'description': 'Output power unit'}}}
REFRIGERANT
Calculate refrigerant thermodynamic properties using CoolProp. Provide Fluid name and any 2 state variables from: T, P, rho, H, S, U. Returns all remaining properties: T, P, rho, H, S, U, Cp, Cv, viscosity, conductivity, molecular weight.
Input schema
{'type': 'object', 'required': ['Fluid'], 'properties': {'H': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Specific Enthalpy (INPUT if known). Units: J/kg, kJ/kg'}, 'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pressure (INPUT if known). Units: Pa, kPa, MPa, bar, psi'}, 'S': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Specific Entropy (INPUT if known). Units: J/kg-K, kJ/kg-K'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Temperature (INPUT if known). Units: K, C, F'}, 'U': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Specific Internal Energy (INPUT if known). Units: J/kg, kJ/kg'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Density (INPUT if known). Units: kg/m3'}, 'Fluid': {'type': 'object', 'required': ['value'], 'properties': {'value': {'enum': ['R134a', 'R22', 'R32', 'R410A', 'R407C', 'R1234yf', 'R1234ze(E)', 'Ammonia', 'NH3', 'CarbonDioxide', 'CO2'], 'type': 'string'}}, 'description': 'Refrigerant name. Supported: R134a, R22, R32, R410A, R407C, R1234yf, R1234ze(E), Ammonia(=NH3), CarbonDioxide(=CO2)'}, 'C_unit': {'type': 'string', 'default': 'J/kg-K', 'description': 'Desired Cp output unit'}, 'H_unit': {'type': 'string', 'default': 'J/kg', 'description': 'Desired Enthalpy output unit'}, 'L_unit': {'type': 'string', 'default': 'W/m-K', 'description': 'Desired Conductivity output unit'}, 'M_unit': {'type': 'string', 'default': 'g/mol', 'description': 'Desired Molecular Weight output unit'}, 'O_unit': {'type': 'string', 'default': 'J/kg-K', 'description': 'Desired Cv output unit'}, 'P_unit': {'type': 'string', 'default': 'Pa', 'description': 'Desired Pressure output unit'}, 'S_unit': {'type': 'string', 'default': 'J/kg-K', 'description': 'Desired Entropy output unit'}, 'T_unit': {'type': 'string', 'default': 'K', 'description': 'Desired Temperature output unit'}, 'U_unit': {'type': 'string', 'default': 'J/kg', 'description': 'Desired Internal Energy unit'}, 'V_unit': {'type': 'string', 'default': 'Pa-s', 'description': 'Desired Viscosity output unit'}, 'rho_unit': {'type': 'string', 'default': 'kg/m3', 'description': 'Desired Density output unit'}}}
SOLVE
Solve nonlinear equations with unknown variables using fsolve
Input schema
{'type': 'object', 'required': ['INPUT', 'FORMULA', 'OUTPUT'], 'properties': {'INPUT': {'type': 'object'}, 'OUTPUT': {'type': 'object'}, 'FORMULA': {'type': 'object'}}}
STEAM
Calculate thermodynamic and transport properties of steam based on IAPWS
Input schema
{'type': 'object', 'required': ['P', 'T'], 'properties': {'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Temperature'}, 'H_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'Btu/lb', 'description': 'Enthalpy unit'}, 'S_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'Btu/lb-F', 'description': 'Entropy unit'}, 'U_unit': {'enum': ['Btu/lb', 'Btu/lbm', 'J/g', 'J/kg', 'cal/g', 'cal/kg', 'kJ/g', 'kJ/kg', 'kcal/g', 'kcal/kg'], 'type': 'string', 'default': 'Btu/lb', 'description': 'Internal energy unit'}, 'k_unit': {'enum': ['Btu/hr-ft-F', 'Btu/hr-ft-R', 'Kcal/m-hr-C', 'Kcal/m-hr-K', 'W/m-C', 'W/m-K'], 'type': 'string', 'default': 'Btu/hr-ft-F', 'description': 'Thermal conductivity unit'}, 'Cp_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'Btu/lb-F', 'description': 'Cp unit'}, 'Cv_unit': {'enum': ['Btu/lb-F', 'Btu/lb-R', 'Btu/lbm-F', 'Btu/lbm-R', 'J/g-C', 'J/g-K', 'J/kg-C', 'J/kg-K', 'cal/g-C', 'cal/g-K', 'cal/kg-C', 'cal/kg-K', 'kJ/g-C', 'kJ/g-K', 'kJ/kg-C', 'kJ/kg-K', 'kcal/g-C', 'kcal/g-K', 'kcal/kg-C', 'kcal/kg-K'], 'type': 'string', 'default': 'Btu/lb-F', 'description': 'Cv unit'}, 'mu_unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string', 'default': 'lbm/h-ft', 'description': 'Viscosity unit'}, 'rho_unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string', 'default': 'lb/ft3', 'description': 'Density unit'}, 'Psat_unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string', 'default': 'psia', 'description': 'Saturation pressure unit'}, 'Tsat_unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string', 'default': 'F', 'description': 'Saturation temperature unit'}}}
STEAMFLASH
Calculate flash steam flow from pressure reduction
Input schema
{'type': 'object', 'required': ['Mc', 'Pc', 'Ps'], 'properties': {'Mc': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Condensate flow rate'}, 'Pc': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Condensate pressure'}, 'Ps': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Steam header pressure'}, 'Ms_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'lb/hr', 'description': 'Output flash steam flow unit'}}}
STEAMLEAK
Calculate steam leak mass flow and flow condition (CHOKED / SUBCRITICAL) based on upstream and downstream conditions
Input schema
{'type': 'object', 'required': ['P1', 'P2', 'T1', 'T2', 'h'], 'properties': {'h': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pin-hole Diameter'}, 'Cd': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string', 'default': ''}, 'value': {'type': 'number', 'default': 0.8}}, 'description': 'Discharge coefficient (default: 0.80)'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream Pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream Pressure'}, 'T1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream Temperature'}, 'T2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Downstream Temperature'}, 'M_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'lb/hr', 'description': 'Output mass flow unit'}}}
STEAMPH
Calculate mass flow from pin-hole on the steam piping
Input schema
{'type': 'object', 'required': ['P', 'T', 'h'], 'properties': {'P': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pressure'}, 'T': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Temperature'}, 'h': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'pin-hole D'}, 'Cd': {'type': 'object', 'required': ['value'], 'properties': {'unit': {'type': 'string', 'default': ''}, 'value': {'type': 'number', 'default': 0.8}}, 'description': 'Discharge coefficient (default: 0.80)'}, 'M_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'lb/hr', 'description': 'Output mass flow unit'}}}
STGEFF
Calculate multistage steam turbine isentropic efficiency
Input schema
{'type': 'object', 'required': ['M1', 'P1', 'T1', 'P2', 'T2', 'E'], 'properties': {'E': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MW'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Actual generator output'}, 'M1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Main steam flow'}, 'M2': {'type': 'object', 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Extraction steam flow #1'}, 'M3': {'type': 'object', 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Extraction steam flow #2'}, 'M4': {'type': 'object', 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Extraction steam flow #3'}, 'M5': {'type': 'object', 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Extraction steam flow #4'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage pressure #1'}, 'P2': {'type': 'object', 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage pressure #2'}, 'P3': {'type': 'object', 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage pressure #3'}, 'P4': {'type': 'object', 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage pressure #4'}, 'P5': {'type': 'object', 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage pressure #5'}, 'T1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage temperature #1'}, 'T2': {'type': 'object', 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage temperature #2'}, 'T3': {'type': 'object', 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage temperature #3'}, 'T4': {'type': 'object', 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage temperature #4'}, 'T5': {'type': 'object', 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Stage temperature #5'}, 'Eff_unit': {'enum': ['%'], 'type': 'string', 'default': '%'}}}
STMDEPRESS
Calculate depressurization steam volumn and hold time for steam accumulator
Input schema
{'type': 'object', 'required': ['V1', 'P1', 'P2', 'M2'], 'properties': {'M2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Steam consumption rate'}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Initial pressure'}, 'P2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Final pressure'}, 'V1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['L', 'cm3', 'ft3', 'in3', 'm3', 'mL'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Accumulator volume'}, 'H_unit': {'enum': ['days', 'hours', 'minutes', 'seconds', 'years'], 'type': 'string', 'default': 'hours', 'description': 'Required hold time unit'}, 'V2_unit': {'enum': ['g', 'kg', 'klb', 'lb', 'oz', 'ton', 'ton(long)', 'ton(short)', 'tonne'], 'type': 'string', 'default': 'klb', 'description': 'Available steam amount unit'}}}
TBNEFF
Calculate steam turbine isentropic efficiency
Input schema
{'type': 'object', 'required': ['Pi', 'Ti', 'Po', 'To'], 'properties': {'Pi': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet pressure'}, 'Po': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Outlet pressure'}, 'Ti': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Inlet temperature'}, 'To': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['C', 'F', 'K', 'R'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Actual outlet temperature'}, 'Eff_unit': {'enum': ['%'], 'type': 'string', 'default': '%', 'description': 'Output efficiency unit'}}}
VENTURIGAS
Gas Venturi tube sizing / differential pressure / flow rate calculation based on ISO 5167 Venturi meter (as cast convergent venturi tube). Exactly ONE of [M, dP, D2] must be set to '?' — that variable will be calculated.
Input schema
{'type': 'object', 'required': ['M', 'dP', 'D2', 'P1', 'D1', 'rho', 'mu'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {}}, 'description': "Gas mass flow rate. Set value='?' to calculate."}, 'k': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Heat capacity ratio (Cp/Cv), default 1.4'}, 'D1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe inside diameter'}, 'D2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {}}, 'description': "Venturi throat diameter. Set value='?' to calculate."}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream (operating) pressure'}, 'dP': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {}}, 'description': "Differential pressure across Venturi meter. Set value='?' to calculate."}, 'mu': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Dynamic viscosity'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fluid density'}}}
VENTURILIQ
Liquid Venturi tube sizing / differential pressure / flow rate calculation based on ISO 5167 Venturi meter (as cast convergent venturi tube). Exactly ONE of [M, dP, D2] must be set to '?' — that variable will be calculated.
Input schema
{'type': 'object', 'required': ['M', 'dP', 'D2', 'P1', 'D1', 'rho', 'mu'], 'properties': {'M': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string'}, 'value': {}}, 'description': "Liquid mass flow rate. Set value='?' to calculate."}, 'D1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Pipe inside diameter'}, 'D2': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['cm', 'ft', 'in', 'm', 'micron', 'miles', 'mm'], 'type': 'string'}, 'value': {}}, 'description': "Venturi throat diameter. Set value='?' to calculate."}, 'P1': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Upstream (operating) pressure'}, 'dP': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MPa', 'MPag', 'N/m2', 'N/m2g', 'atm', 'atmg', 'bar', 'barg', 'cmH2O(4C)', 'cmH2O(4C)g', 'inH2O(60F)', 'inH2O(60F)g', 'inHg(32F)', 'inHg(32F)g', 'inHg(60F)', 'inHg(60F)g', 'kPa', 'kPag', 'kg/cm2', 'kg/cm2g', 'lbf/ft2', 'lbf/ft2g', 'mmH2O', 'mmH2Og', 'mmHg(0C)', 'mmHg(0C)g', 'psi', 'psia', 'psig', 'torr', 'torrg'], 'type': 'string'}, 'value': {}}, 'description': "Differential pressure across Venturi meter. Set value='?' to calculate."}, 'mu': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['P', 'Pa-s', 'cP', 'lb/ft-sec', 'lb/h-ft', 'lbf-s/ft2', 'lbm/h-ft', 'lbm/s-ft', 'mP', 'microP', 'poundals/ft2', 'slug/h-ft'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Dynamic viscosity'}, 'rho': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['API', 'SG_H2O4', 'SG_H2O60api', 'SG_H2O60nbs', 'g/cm3', 'g/cm^3', 'kg/m3', 'kg/m^3', 'lb/ft3', 'lb/ft^3', 'lbm/ft^3'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Fluid density'}}}
VtoM
Convert volumetric flow rate to mass flow rate at standard condition and normal condition Sm3/hr, Nm3/hr, SCFH
Input schema
{'type': 'object', 'required': ['V', 'MW'], 'properties': {'V': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['MSCFH', 'Nm3/hr', 'SCFH', 'Sm3/hr', 'kNm3/hr', 'kSCFH', 'kSm3/hr'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Volumetric flow rate'}, 'MW': {'type': 'object', 'required': ['value', 'unit'], 'properties': {'unit': {'enum': ['g/gmol', 'g/mol', 'kg/kgmol', 'kg/kmol', 'lb/lbmol', 'lb/mol'], 'type': 'string'}, 'value': {'type': 'number'}}, 'description': 'Molecular weight'}, 'M_unit': {'enum': ['kg/day', 'kg/hr', 'kg/min', 'kg/sec', 'klb/hr', 'lb/day', 'lb/hr', 'ton/day'], 'type': 'string', 'default': 'lb/hr', 'description': 'Output mass flow unit'}}}
Added
advECONOMIC
Sept. 17, 2026, 12:34 p.m.
Added
ECONOMIC
Sept. 17, 2026, 12:34 p.m.
Added
SOLVE
Sept. 17, 2026, 12:34 p.m.
Added
FORMULA
Sept. 17, 2026, 12:34 p.m.
Added
BALANCE
Sept. 17, 2026, 12:34 p.m.
Added
advDVR
Sept. 17, 2026, 12:34 p.m.
Added
DVR
Sept. 17, 2026, 12:34 p.m.
Added
CTWRCAPADSNTST
Sept. 17, 2026, 12:34 p.m.
Added
CTWRCAPA
Sept. 17, 2026, 12:34 p.m.
Added
CTWRNTU
Sept. 17, 2026, 12:34 p.m.
Added
CTWRLG
Sept. 17, 2026, 12:34 p.m.
Added
CTWREVAPOR
Sept. 17, 2026, 12:34 p.m.
Added
STMDEPRESS
Sept. 17, 2026, 12:34 p.m.
Added
LN2DEPRESS
Sept. 17, 2026, 12:34 p.m.
Added
GN2DEPRESS
Sept. 17, 2026, 12:34 p.m.
Added
HPADEPRESS
Sept. 17, 2026, 12:34 p.m.
Added
DESUPERHEATER
Sept. 17, 2026, 12:34 p.m.
Added
STEAMFLASH
Sept. 17, 2026, 12:34 p.m.
Added
LMTD
Sept. 17, 2026, 12:34 p.m.
Added
HEXRF
Sept. 17, 2026, 12:34 p.m.
Added
HTRLOSSEFF
Sept. 17, 2026, 12:34 p.m.
Added
HTRINOUTEFF
Sept. 17, 2026, 12:34 p.m.
Added
STGEFF
Sept. 17, 2026, 12:34 p.m.
Added
TBNEFF
Sept. 17, 2026, 12:34 p.m.
Added
COMPPOLYEFF
Sept. 17, 2026, 12:34 p.m.
Added
PUMPBHP
Sept. 17, 2026, 12:34 p.m.
Added
PSVLIQ
Sept. 17, 2026, 12:34 p.m.
Added
PSVSTEAM
Sept. 17, 2026, 12:34 p.m.
Added
PSVGAS
Sept. 17, 2026, 12:34 p.m.
Added
VENTURILIQ
Sept. 17, 2026, 12:34 p.m.