Skip to content
OFFICIAL SS DOCUMENTATION

SS.Thermodynamics 1.2.0

Thermal materials, qualified ideal-gas mixtures, entropy/exergy balances, vapor-liquid flash, closed-cycle diagnostics, saturation tables and Rankine cycles
API 1.2.0
MIT
source

Language compatibility: >=1.0.0 <2.0.0
Runtime compatibility: >=1.0.0 <2.0.0

No package dependencies declared.

Public API

Public signature
export function capacity(kg mass, specificHeatCapacity specificHeat) -> heatCapacity

Parameters: mass: kg, specificHeat: specificHeatCapacity


Public signature
export function diffusivity(ThermalMaterial material) -> thermalDiffusivity

Parameters: material: ThermalMaterial


Public signature
export function entropyAndExergyChange(ThermodynamicState initialState, ThermodynamicState finalState, double mass, double[] heatTransfers, double[] boundaryTemperatures, double ambientTemperature)->EntropyExergyChangeResult

Parameters: initialState: ThermodynamicState, finalState: ThermodynamicState, mass: double, heatTransfers: double[], boundaryTemperatures: double[], ambientTemperature: double


Public signature
export record EntropyExergyChangeResult(public double entropyChange, public double entropyTransfer, public double entropyGeneration, public double flowExergyChange, public double ambientTemperature, public bool secondLawConsistent, public string diagnostic)

Parameters: entropyChange: double, entropyTransfer: double, entropyGeneration: double, flowExergyChange: double, ambientTemperature: double, secondLawConsistent: bool, diagnostic: string


Public signature
export function idealGas(string name, double gasConstant, double specificHeatPressure, double referencePressure, double referenceTemperature, string provenance)->IdealGas

Parameters: name: string, gasConstant: double, specificHeatPressure: double, referencePressure: double, referenceTemperature: double, provenance: string


Public signature
export record IdealGas(public string name, public double gasConstant, public double specificHeatPressure, public double specificHeatVolume, public double heatCapacityRatio, public double referencePressure, public double referenceTemperature, public string provenance)

Parameters: name: string, gasConstant: double, specificHeatPressure: double, specificHeatVolume: double, heatCapacityRatio: double, referencePressure: double, referenceTemperature: double, provenance: string


Public signature
export function idealGasProcess(IdealGas gas, ThermodynamicState initialState, ThermodynamicState finalState, string kind, double mass, double tolerance)->ThermodynamicProcess

Parameters: gas: IdealGas, initialState: ThermodynamicState, finalState: ThermodynamicState, kind: string, mass: double, tolerance: double


Public signature
export function idealGasStatePT(IdealGas gas, double pressure, double temperature)->ThermodynamicState

Parameters: gas: IdealGas, pressure: double, temperature: double


Public signature
export function material(string name, density density, specificHeatCapacity specificHeat, thermalConductivity conductivity) -> ThermalMaterial

Parameters: name: string, density: density, specificHeat: specificHeatCapacity, conductivity: thermalConductivity


Public signature
export function mixtureSpecificHeat(kg[] masses, specificHeatCapacity[] specificHeats) -> specificHeatCapacity

Parameters: masses: kg[], specificHeats: specificHeatCapacity[]


Public signature
export function mixtureThermodynamicState(IdealGas[] components, double[] fractions, double pressure, double temperature, string equationOfState, string provenance)->MixtureThermodynamicStateResult

Parameters: components: IdealGas[], fractions: double[], pressure: double, temperature: double, equationOfState: string, provenance: string


Public signature
export record MixtureThermodynamicStateResult(public string[] components, public double[] fractions, public double gasConstant, public double specificHeatPressure, public double specificHeatVolume, public double heatCapacityRatio, public ThermodynamicState state, public string equationOfState, public string provenance)

Parameters: components: string[], fractions: double[], gasConstant: double, specificHeatPressure: double, specificHeatVolume: double, heatCapacityRatio: double, state: ThermodynamicState, equationOfState: string, provenance: string


Public signature
export record RankineCycle(public double condenserPressure, public double boilerPressure, public double pumpWork, public double turbineWork, public double netWork, public double heatInput, public double heatRejected, public double efficiency, public double isentropicExhaustQuality, public double exhaustQuality, public double turbineEntropyGeneration, public double energyResidual, public bool valid, public string diagnostic, public string provenance)

Parameters: condenserPressure: double, boilerPressure: double, pumpWork: double, turbineWork: double, netWork: double, heatInput: double, heatRejected: double, efficiency: double, isentropicExhaustQuality: double, exhaustQuality: double, turbineEntropyGeneration: double, energyResidual: double, valid: bool, diagnostic: string, provenance: string


Public signature
export function saturatedAtPressure(SaturationTable table, double pressure, double quality)->SaturationState

Parameters: table: SaturationTable, pressure: double, quality: double


Public signature
export record SaturationState(public double pressure, public double temperature, public double quality, public double specificVolume, public double enthalpy, public double entropy, public string phase, public string provenance)

Parameters: pressure: double, temperature: double, quality: double, specificVolume: double, enthalpy: double, entropy: double, phase: string, provenance: string


Public signature
export function saturationTable(double[] pressures, double[] temperatures, double[] liquidEnthalpies, double[] vaporEnthalpies, double[] liquidEntropies, double[] vaporEntropies, double[] liquidSpecificVolumes, double[] vaporSpecificVolumes, string substance, string provenance)->SaturationTable

Parameters: pressures: double[], temperatures: double[], liquidEnthalpies: double[], vaporEnthalpies: double[], liquidEntropies: double[], vaporEntropies: double[], liquidSpecificVolumes: double[], vaporSpecificVolumes: double[], substance: string, provenance: string


Public signature
export record SaturationTable(public double[] pressures, public double[] temperatures, public double[] liquidEnthalpies, public double[] vaporEnthalpies, public double[] liquidEntropies, public double[] vaporEntropies, public double[] liquidSpecificVolumes, public double[] vaporSpecificVolumes, public int count, public string substance, public string provenance)

Parameters: pressures: double[], temperatures: double[], liquidEnthalpies: double[], vaporEnthalpies: double[], liquidEntropies: double[], vaporEntropies: double[], liquidSpecificVolumes: double[], vaporSpecificVolumes: double[], count: int, substance: string, provenance: string


Public signature
export function sensibleEnergy(kg mass, specificHeatCapacity specificHeat, deltaK temperatureChange) -> J

Parameters: mass: kg, specificHeat: specificHeatCapacity, temperatureChange: deltaK


Public signature
export function simpleRankineCycle(SaturationTable table, double condenserPressure, double boilerPressure, double boilerOutletEnthalpy, double boilerOutletEntropy, double pumpEfficiency, double turbineEfficiency)->RankineCycle

Parameters: table: SaturationTable, condenserPressure: double, boilerPressure: double, boilerOutletEnthalpy: double, boilerOutletEntropy: double, pumpEfficiency: double, turbineEfficiency: double


Public signature
export record ThermalMaterial(public string name, public density density, public specificHeatCapacity specificHeat, public thermalConductivity conductivity)

Parameters: name: string, density: density, specificHeat: specificHeatCapacity, conductivity: thermalConductivity


Public signature
export function thermodynamicCycleState(ThermodynamicState[] states, double[] heatByLeg, double[] workByLeg, double[] entropyGenerationByLeg, double tolerance)->ThermodynamicCycleStateResult

Parameters: states: ThermodynamicState[], heatByLeg: double[], workByLeg: double[], entropyGenerationByLeg: double[], tolerance: double


Public signature
export record ThermodynamicCycleStateResult(public double netHeat, public double netWork, public double energyResidual, public double entropyGeneration, public int states, public bool closed, public bool phaseCompatible, public bool valid, public string diagnostic)

Parameters: netHeat: double, netWork: double, energyResidual: double, entropyGeneration: double, states: int, closed: bool, phaseCompatible: bool, valid: bool, diagnostic: string


Public signature
export record ThermodynamicProcess(public string kind, public double mass, public double work, public double heat, public double internalEnergyChange, public double enthalpyChange, public double entropyChange, public double entropyGeneration, public double firstLawResidual, public bool valid, public string diagnostic)

Parameters: kind: string, mass: double, work: double, heat: double, internalEnergyChange: double, enthalpyChange: double, entropyChange: double, entropyGeneration: double, firstLawResidual: double, valid: bool, diagnostic: string


Public signature
export record ThermodynamicState(public double pressure, public double temperature, public double density, public double specificVolume, public double internalEnergy, public double enthalpy, public double entropy, public string phase, public string provenance)

Parameters: pressure: double, temperature: double, density: double, specificVolume: double, internalEnergy: double, enthalpy: double, entropy: double, phase: string, provenance: string


Public signature
export function vaporLiquidFlash(double[] feedFractions, double[] equilibriumRatios, double tolerance, int maximumIterations)->VaporLiquidFlashResult

Parameters: feedFractions: double[], equilibriumRatios: double[], tolerance: double, maximumIterations: int


Public signature
export record VaporLiquidFlashResult(public double vaporFraction, public double[] liquidFractions, public double[] vaporFractions, public double materialBalanceResidual, public int iterations, public string phase, public bool converged, public string diagnostic)

Parameters: vaporFraction: double, liquidFractions: double[], vaporFractions: double[], materialBalanceResidual: double, iterations: int, phase: string, converged: bool, diagnostic: string


Documentation version

Language 1.0.0, compiler 1.0.0, runtime 1.0.0. This reference is generated from the official SS documentation so package and language details stay consistent with the release.