libICEpost.src.thermophysicalModels.thermoModels.ThermoModel ============================================================ .. py:module:: libICEpost.src.thermophysicalModels.thermoModels.ThermoModel .. autoapi-nested-parse:: @author: F. Ramognino Last update: 12/06/2023 Classes ------- .. autoapisummary:: libICEpost.src.thermophysicalModels.thermoModels.ThermoModel.ThermoModel Module Contents --------------- .. py:class:: ThermoModel(mixture: libICEpost.src.thermophysicalModels.thermoModels.thermoMixture.ThermoMixture.ThermoMixture, *, mass: float = None, pressure: float = None, volume: float = None, temperature: float = None, density: float = None) Bases: :py:obj:`libICEpost.src.base.Utilities.Utilities` Base class for handling a thermodynamic model ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. py:attribute:: _state :type: libICEpost.src.thermophysicalModels.thermoModels.ThermoState.ThermoState The current thermodynamic state .. py:attribute:: _ThermoStateClass :type: libICEpost.src.thermophysicalModels.thermoModels.ThermoState.ThermoState The ThermoState class used for this engine model .. py:property:: mixture :type: libICEpost.src.thermophysicalModels.thermoModels.thermoMixture.ThermoMixture.ThermoMixture Reference to the mixture in the system :returns: thermodynamic mixture :rtype: ThermoMixture .. py:property:: state :type: libICEpost.src.thermophysicalModels.thermoModels.ThermoState.ThermoState return current state of the system (read-only) :returns: dataClass for the thermodynamic state of the system :rtype: ThermoState .. py:attribute:: _mixture .. py:method:: initializeState(/, *, mixture: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture = None, mass: float = None, pressure: float = None, volume: float = None, temperature: float = None, density: float = None) -> ThermoModel Initialize the state of the system through a StateInitializer. :param mixture: The mixture composition in the system. Defaults to None. :type mixture: Mixture, optional :param mass: [kg]. Defaults to None. :type mass: float, optional :param pressure: [Pa]. Defaults to None. :type pressure: float, optional :param volume: [m^3]. Defaults to None. :type volume: float, optional :param temperature: [K]. Defaults to None. :type temperature: float, optional :param density: [kg/m^3]. Defaults to None. :type density: float, optional :returns: self :rtype: ThermoModel .. py:method:: update(/, *, mixture: libICEpost.src.thermophysicalModels.specie.specie.Mixture.Mixture = None, pressure: float = None, volume: float = None, temperature: float = None, dQ_in: float = 0.0, dm_in: float = 0.0) -> tuple[float, float] Update state of the system based on control variables through keyword arguments. :param mixture: The mixture composition in the system. Defaults to None. :type mixture: Mixture, optional :param pressure: [Pa]. Defaults to None. :type pressure: float, optional :param volume: [m^3]. Defaults to None. :type volume: float, optional :param temperature: [K]. Defaults to None. :type temperature: float, optional :param dQ_in: Entering heat. Defaults to 0.0. :type dQ_in: float, optional :param dm_in: Entering mass. Defaults to 0.0. :type dm_in: float, optional :param TODO: dQ_in, dm_in :returns: dQ_in and dm_in :rtype: tuple[float,float]