SS.Chemistry 1.2.0
Owned species/formula data, conserved multireaction networks, coupled ideal equilibrium, positivity-preserving adaptive mass-action integration, temperature-adjusted network thermochemistry, reaction balancing and chemistry fundamentals
Language compatibility: >=1.0.0 <2.0.0
Runtime compatibility: >=1.0.0 <2.0.0
No package dependencies declared.
Public API
Chemistry.advanceMassAction
export function advanceMassAction(BalancedReaction reaction, double[] initialConcentrations, double forwardRate, double reverseRate, double timeStep, int steps)->KineticHistoryParameters: reaction: BalancedReaction, initialConcentrations: double[], forwardRate: double, reverseRate: double, timeStep: double, steps: int
export record BalancedReaction(public Species[] species, public int reactantCount, public int[] coefficients, public double conservationResidual, public string equation)Parameters: species: Species[], reactantCount: int, coefficients: int[], conservationResidual: double, equation: string
Chemistry.balanceReaction
export function balanceReaction(Species[] values, int reactantCount)->BalancedReactionParameters: values: Species[], reactantCount: int
Chemistry.chargeResidual
export function chargeResidual(double[] concentrations, int[] charges)->doubleParameters: concentrations: double[], charges: int[]
Chemistry.composition
export function composition(double[] componentMasses)->CompositionResultParameters: componentMasses: double[]
export record CompositionResult(public double totalMass, public double[] massFractions, public bool conserved)Parameters: totalMass: double, massFractions: double[], conserved: bool
export record CoupledEquilibriumResult(public double[] amounts, public double[] reactionExtents, public double[] logResiduals, public double conservationResidual, public int iterations, public bool converged, public string diagnostic)Parameters: amounts: double[], reactionExtents: double[], logResiduals: double[], conservationResidual: double, iterations: int, converged: bool, diagnostic: string
Chemistry.dilutionVolume
export function dilutionVolume(double initialConcentration, double initialVolume, double finalConcentration)->doubleParameters: initialConcentration: double, initialVolume: double, finalConcentration: double
Chemistry.element
export function element(string symbol, int atomicNumber, double molarMass)->ElementParameters: symbol: string, atomicNumber: int, molarMass: double
Chemistry.Element
export record Element(public string symbol, public int atomicNumber, public double molarMass)Parameters: symbol: string, atomicNumber: int, molarMass: double
export record EquilibriumResult(public double[] amounts, public double reactionExtent, public double reactionQuotient, public double logResidual, public double conservationResidual, public int iterations, public bool converged, public string diagnostic)Parameters: amounts: double[], reactionExtent: double, reactionQuotient: double, logResidual: double, conservationResidual: double, iterations: int, converged: bool, diagnostic: string
export record FormulaComposition(public string formula, public string[] elementSymbols, public int[] elementCounts, public double molarMass)Parameters: formula: string, elementSymbols: string[], elementCounts: int[], molarMass: double
Chemistry.idealGasAmount
export function idealGasAmount(double pressure, double volume, double temperature)->doubleParameters: pressure: double, volume: double, temperature: double
export function integrateKineticNetwork(ReactionNetwork network, double[] initialConcentrations, double[] forwardRates, double[] reverseRates, double timeStep, int steps)->KineticHistoryParameters: network: ReactionNetwork, initialConcentrations: double[], forwardRates: double[], reverseRates: double[], timeStep: double, steps: int
Chemistry.KineticHistory
export record KineticHistory(public double[] times, public double[] concentrations, public int speciesCount, public int steps, public double conservationResidual, public bool nonnegative, public string diagnostic)Parameters: times: double[], concentrations: double[], speciesCount: int, steps: int, conservationResidual: double, nonnegative: bool, diagnostic: string
Chemistry.limitingReactant
export function limitingReactant(double[] availableMoles, double[] stoichiometricCoefficients)->LimitingResultParameters: availableMoles: double[], stoichiometricCoefficients: double[]
Chemistry.LimitingResult
export record LimitingResult(public int limitingIndex, public double reactionExtent, public double[] remaining)Parameters: limitingIndex: int, reactionExtent: double, remaining: double[]
Chemistry.massFromMoles
export function massFromMoles(double amount, double molarMass)->doubleParameters: amount: double, molarMass: double
Chemistry.molarity
export function molarity(double amount, double volume)->doubleParameters: amount: double, volume: double
Chemistry.molesFromMass
export function molesFromMass(double mass, double molarMass)->doubleParameters: mass: double, molarMass: double
Chemistry.parseFormula
export function parseFormula(string formula, Element[] elements)->FormulaCompositionParameters: formula: string, elements: Element[]
Chemistry.reactionNetwork
export function reactionNetwork(Species[] species, double[] stoichiometry, int reactionCount, string provenance)->ReactionNetworkParameters: species: Species[], stoichiometry: double[], reactionCount: int, provenance: string
export record ReactionNetwork(public Species[] species, public double[] stoichiometry, public int reactionCount, public double conservationResidual, public string provenance)Parameters: species: Species[], stoichiometry: double[], reactionCount: int, conservationResidual: double, provenance: string
export record ReactionNetworkThermochemistry(public double[] enthalpy, public double[] entropy, public double[] gibbsEnergy, public double[] equilibriumConstants, public double temperature, public double referenceTemperature)Parameters: enthalpy: double[], entropy: double[], gibbsEnergy: double[], equilibriumConstants: double[], temperature: double, referenceTemperature: double
export function reactionThermochemistry(BalancedReaction reaction, double temperature)->ReactionThermochemistryParameters: reaction: BalancedReaction, temperature: double
export record ReactionThermochemistry(public double enthalpy, public double entropy, public double gibbsEnergy, public double equilibriumConstant, public double temperature)Parameters: enthalpy: double, entropy: double, gibbsEnergy: double, equilibriumConstant: double, temperature: double
export function reactionThermoFromProperties(ReactionNetwork network, double[] constantPressureHeatCapacities, double temperature, double referenceTemperature)->ReactionNetworkThermochemistryParameters: network: ReactionNetwork, constantPressureHeatCapacities: double[], temperature: double, referenceTemperature: double
export function solveCoupledEquilibrium(ReactionNetwork network, double[] initialAmounts, double volume, double[] equilibriumConstants, double tolerance, int maximumIterations)->CoupledEquilibriumResultParameters: network: ReactionNetwork, initialAmounts: double[], volume: double, equilibriumConstants: double[], tolerance: double, maximumIterations: int
Chemistry.solveIdealEquilibrium
export function solveIdealEquilibrium(BalancedReaction reaction, double[] initialAmounts, double volume, double equilibriumConstant, double tolerance, int maximumIterations)->EquilibriumResultParameters: reaction: BalancedReaction, initialAmounts: double[], volume: double, equilibriumConstant: double, tolerance: double, maximumIterations: int
Chemistry.species
export function species(string name, string formula, int charge, double standardEnthalpy, double standardEntropy, string provenance, Element[] elements)->SpeciesParameters: name: string, formula: string, charge: int, standardEnthalpy: double, standardEntropy: double, provenance: string, elements: Element[]
Chemistry.Species
export record Species(public string name, public string formula, public string[] elementSymbols, public int[] elementCounts, public int charge, public double molarMass, public double standardEnthalpy, public double standardEntropy, public string provenance)Parameters: name: string, formula: string, elementSymbols: string[], elementCounts: int[], charge: int, molarMass: double, standardEnthalpy: double, standardEntropy: double, provenance: string
Chemistry.strongAcidPh
export function strongAcidPh(double hydrogenConcentration)->doubleParameters: hydrogenConcentration: double
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.