libICEpost.src.thermophysicalModels.thermoModels.CombustionModel ================================================================ .. py:module:: libICEpost.src.thermophysicalModels.thermoModels.CombustionModel .. autoapi-nested-parse:: @author: Last update: DD/MM/YYYY Combustion models Content of the package: CombustionModel (class) #TODO StoichiometricCombustion (class) #TODO Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/libICEpost/src/thermophysicalModels/thermoModels/CombustionModel/CombustionModel/index /autoapi/libICEpost/src/thermophysicalModels/thermoModels/CombustionModel/NoCombustion/index /autoapi/libICEpost/src/thermophysicalModels/thermoModels/CombustionModel/PremixedCombustion/index Classes ------- .. autoapisummary:: libICEpost.src.thermophysicalModels.thermoModels.CombustionModel.CombustionModel libICEpost.src.thermophysicalModels.thermoModels.CombustionModel.PremixedCombustion libICEpost.src.thermophysicalModels.thermoModels.CombustionModel.NoCombustion Package Contents ---------------- .. py:class:: CombustionModel(/, *, reactants: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture, reactionModel: str = 'Stoichiometry', state: libICEpost.src.thermophysicalModels.thermoModels.ThermoState.ThermoState = ThermoState(), **kwargs) Bases: :py:obj:`libICEpost.src.base.BaseClass.BaseClass` Class handling combustion ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. attribute:: air ThermoMixture The thermodynamic mixture of air .. py:attribute:: _freshMixture :type: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture The mixture of reactants .. py:attribute:: _combustionProducts :type: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture The mixture of combustion products .. py:attribute:: _mixture :type: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture The current mixture .. py:attribute:: _reactionModel :type: libICEpost.src.thermophysicalModels.specie.reactions.ReactionModel.ReactionModel.ReactionModel The reaction model .. py:property:: freshMixture :type: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture The current fresh (unburnt) mixture :returns: Mixture .. py:property:: combustionProducts :type: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture The combustion products :returns: Mixture .. py:property:: mixture :type: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture The mixture at current state :returns: Mixture .. py:property:: reactionModel :type: libICEpost.src.thermophysicalModels.specie.reactions.ReactionModel.ReactionModel.ReactionModel The reaction model :returns: ReactionModel .. py:method:: update(*, reactants: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture = None, state: libICEpost.src.thermophysicalModels.thermoModels.ThermoState.ThermoState = None, **kwargs) -> bool :abstractmethod: Update the state of the system. To be overwritten in child classes. :param reactants: update reactants composition. Defaults to None. :type reactants: Mixture, optional :param state: the state variables of the system (needed to update the combustion model - e.g. equilibrium) :type state: ThermoState, optional :returns: if something changed :rtype: bool .. py:class:: PremixedCombustion(/, *, xb: float = 0.0, **kwargs) Bases: :py:obj:`libICEpost.src.thermophysicalModels.thermoModels.CombustionModel.CombustionModel.CombustionModel` Premixted combustion model ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Attributes: .. py:attribute:: _xb :type: float .. py:method:: fromDictionary(dictionary: dict | libICEpost.src.base.dataStructures.Dictionary.Dictionary) :classmethod: Create from dictionary. :param dictionary: The dictionary from which constructing, containing: reactants (Mixture): The reactants composition xb (float, optional): The initial progress variable. Defaults to 0.0. reactionModel (str, optional): Model handling reactions. defaults to "Stoichiometry". Dict (dict, optional): the dictionary for construction of the specific ReactionModel. state (ThermoState, optional): Giving current state to manage state-dependend reaction models(e.g. equilibrium). Defaults to empty state ThermoState(). :type dictionary: dict .. py:method:: update(xb: float = None, *args, **kwargs) -> bool Update mixture composition based on progress variable, fuel, and reactants composition. :param xb: the burned mass fraction. Defaults to None (no update). :type xb: float, None :param reactants: update reactants composition. Defaults to None. :type reactants: Mixture, optional :param state: Giving current state to manage state-dependend reaction models(e.g. equilibrium). Defaults to None. :type state: ThermoState, optional :returns: if something changed :rtype: bool .. py:class:: NoCombustion(/, *, reactants: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture, **kwargs) Bases: :py:obj:`libICEpost.src.thermophysicalModels.thermoModels.CombustionModel.CombustionModel.CombustionModel` No combustion (inhert) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Attributes: .. py:method:: fromDictionary(dictionary: dict | libICEpost.src.base.dataStructures.Dictionary.Dictionary) :classmethod: Create from dictionary. :param dictionary: The dictionary from which constructing, containing: reactants (Mixture): The reactants composition :type dictionary: dict .. py:method:: update(*args, **kwargs) -> bool Update mixture composition :param reactants: update reactants composition. Defaults to None. :type reactants: Mixture, optional :returns: if something changed :rtype: bool