modelDryAirNASA

Extends from ThermofluidStream.Idealized.Examples.TUMExercisesThermodynamicCycles.Exercise3OttoEngine.BaseModel.

Information

Example of an Otto cycle engine model. See TUMExercisesThermodynamicCycles.Exercise3OttoEngine for the problem description.

This example makes use of the following components and settings:

  • DryAirNasa medium (ideal gas with temperature-dependent cp)
  • Adiabatic process model (which is only available for systemSpec = Flow)

The calculation of outlet pressure for given outlet density is achieved by the use of the InverseBlockConstraints model. An implicit nonlinear equation is introduced, which requires suitable start values.

The Adiabatic model defines isentropic efficiency based on shaft work (i.e., changes in specific enthalpy), whereas for a closed-cycle process the isentropic efficiency is commonly defined based on the net expansion work (i.e., changes in specific internal energy). In general both definitions are not equivalent and discrepancies can arise. The results will however be identical when the isentropic efficiency is equal to unity, or when the working fluid is an ideal gas with constant isentropic exponent.

This setup is based on the fact that the specific work of a thermodynamic cycle is given by the closed integral in the p–v diagram (pressure - specific volume). Therefore, integrating with respect to volume, p*dv (boundary work as typically transferred in a piston–cylinder system), and integrating with respect to pressure, v*dp (“artificial” shaft work of a dual stationary-flow process), yield the same net cycle work, even though the individual contributions of each process step differ.

Parameters

TypeNameDefaultDescription
Medium.AbsolutePressurep1 (from BaseModel)100000Pressure before compression
Medium.TemperatureT1 (from BaseModel)300Temperature before compression
RealcompressionRatio (from BaseModel)10Compression ratio
Medium.TemperatureT3 (from BaseModel)2200Temperature after combustion
SI.MassFlowRatem_flow (from BaseModel)1Mass flow rate
Medium.Densityrho1 (from BaseModel)Medium.density_pTX(p1, T1, Medium.X_default)Density before compression
Medium.Densityrho2 (from BaseModel)rho1*compressionRatioDensity after compression
SI.SpecificVolumev1 (from BaseModel)1/rho1Specific volume before compression
SI.SpecificVolumev2 (from BaseModel)1/rho2Specific volume after compression

Components

TypeNameDefaultDescription
ThermofluidStream.DropOfCommonsdropOfCommons (from BaseModel)
ThermofluidStream.Idealized.Processes.Adiabaticcompression
ThermofluidStream.Idealized.Processes.Isochoriccombustion
ThermofluidStream.Idealized.Processes.Adiabaticexpansion
ThermofluidStream.Idealized.Processes.IsochoricgasExchange
Modelica.Blocks.Sources.RealExpressiondensity1
Modelica.Blocks.Sources.RealExpressiondensity2
Modelica.Blocks.Math.InverseBlockConstraintsinverseBlockConstraints
Modelica.Blocks.Math.InverseBlockConstraintsinverseBlockConstraints1
ThermofluidStream.Sensors.SingleSensorSelectsensorDensity1
ThermofluidStream.Sensors.SingleSensorSelectsensorDensity2
ThermofluidStream.Idealized.Boundaries.LoopBreaker_mloopBreaker
ThermofluidStream.Idealized.EnergyFlow.Components.SumshaftPower
ThermofluidStream.Utilities.showRealValuemaximumPressure
ThermofluidStream.Utilities.showRealValueefficiency
ThermofluidStream.Utilities.showRealValuenetWork

Revisions

  • 2026, by Raphael Gebhart (raphael.gebhart@dlr.de):
    Initial version.