reactord.kinetic package

Module contents

Kinetic module.

class reactord.kinetic.CompositionalArgument(names: List[str])[source]

Bases: object

Class to define kinetic compositional argument object.

Parameters:

names (List[str]) – List with the name of the substances.

class reactord.kinetic.Kinetic(mix: AbstractMix, reactions: dict, kinetic_constants: dict, rates_argument: str = 'concentration')[source]

Bases: object

Kinetic object builder.

Parameters:
  • mix (AbstractMix) – Mixture object.

  • reactions (dict) – Dictionary with kinetic reaction function. Example: reactions={“r1”: {“eq”: a + b > c + d, “rate”: r1_rate}} where “r1” is the reaction name, “eq” is the chemical equation and r1_rate is defined function of concentration of a and b (in this case) callable(composition: CompositionalArgument, temperature: float, constants: dict) –> rate: float

  • kinetic_constants (dict) – Dictionary with kinetic constants. There are two keys for each reaction. “a” key is pre-exponential number and “e” key is activation energy. This dictionary is passed to the reaction rates functions. Example: kinetic_constants= {“a”: 10, “e”: 10000}

  • rates_argument (str) – This argument is used to define how to evaluate the composition of the reactive mixture inside the reactor. Options: ‘concentration’: substance concentration. [mol/m^3] ‘partial_pressure’: substance partial pressure. [Pa]

property user_r_dh

Introduce enthalpy reaction.

Method to user input enthalpy reactions

evaluate(mole_fractions: ndarray[Any, dtype[float64]] | float, temperature: ndarray[Any, dtype[float64]] | float, pressure: ndarray[Any, dtype[float64]] | float) ndarray[Any, dtype[float64]][source]

Evaluate reaction rates.

Parameters:
  • mole_fractions (Union[NDArray[np.float64], float]) – moles of each substance

  • temperature (Union[NDArray[np.float64], float]) – Temperature [K]

  • pressure (Union[NDArray[np.float64], float]) – Pressure [Pa]

Returns:

The rate for each reaction.

Return type:

NDArray[np.float64]

dhs_evaluate(temperature: ndarray[Any, dtype[float64]] | float, pressure: ndarray[Any, dtype[float64]] | float)[source]

Evaluate reactions’ enthalpies.

Parameters:
  • temperature (Union[NDArray[np.float64], float]) – Temperature [K]

  • pressure (Union[NDArray[np.float64], float]) – Pressure [Pa]

Returns:

The enthalpy for each reaction.

Return type:

NDArray[np.float64]

set_dh_function()[source]

Set enthalpy function.

Check if all enthalpy are specified.

property irepr

Represent kinetics equations.

Latex format representation of kinetics equation for use en jupyer notebook

reactord.kinetic.stoichiometry_matrix_builder(mix: AbstractMix, equations: List[Symbolic]) ndarray[Any, dtype[float64]][source]

Build stoichiometry matrix.

Parameters:
Returns:

Stoichiometry matrix

Return type:

ndarray

reactord.kinetic.dh_not_specified(kinetic: Kinetic, temperature: ndarray[Any, dtype[float64]] | float, pressure: ndarray[Any, dtype[float64]] | float) ndarray[Any, dtype[float64]][source]

Calculate the reaction enthalpies.

Uses standard formation enthalpies and heat capacities to calculate the reaction enthalpies.

Parameters:
  • kinetic (Kinetic) – kinetic object

  • temperature (Union[NDArray[np.float64], float]) – Temperature [K]

  • pressure (Union[NDArray[np.float64], float]) – Pressure [Pa]

Returns:

array of enthalpies of reactions set by methods in mix class.

Return type:

NDArray

reactord.kinetic.dh_specified(kinetic: Kinetic, temperature: ndarray[Any, dtype[float64]] | float, pressure: ndarray[Any, dtype[float64]] | float) ndarray[Any, dtype[float64]][source]

Return the user specified reaction enthalpies.

Parameters:
  • kinetic (Kinetic) – kinetic object

  • temperature (Union[NDArray[np.float64], float]) – Temperature [K]

  • pressure (Union[NDArray[np.float64], float]) – Pressure [Pa]

Returns:

array of enthalpies of reactions set by user.

Return type:

NDArray