modelPartialTurboComponent
Partial model of turbo component
Extends from Interfaces.SISOFlow (Base Model with basic flow eqautions for SISO).
Information
This model has an inlet and an outlet, representing a single fluid stream, as well as a flange to exchange mechanical work, an optional heatport to dump heat that the fluid cannot take on, and an optional output for a measureable quantity.
The component does the following:
- Compute the pressure differential and the moment on the flange, that would result in static operation from characteristic curves (static moment). These curves differ for different components.
- Regularize dh for low mass-flows. If the fluid is receiving energy, the heat that cannot be given to the fluid, is given to an accessible heatport. If the fluid is giving away energy, the static moment is reduced until dh is small enough within the regularization.
- Compute mechanics of system if omega is not direct input of the system. The ifference between the static moment and the moment at the flange leeds to angular acceleration against the inertia of the system.
An output can be enabled that measures one of multiple selectable quantities. Different initial conditions and state selections for the component can be selected.
Useful hints:
- The optional output might be useful for simplifying the overall model in a control loop, since no additional sensor is required.
- If one wants to prescribe a speed of the component, instead of being interested in the omega dynamics, enable omegaFromInput.
- The heatport is only of interest, if the overall energy of the system must be conserved.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| String | instanceName (from DropOfCommonsPlus) | getInstanceName() | Instance name |
| Boolean | omega_from_input | false | = true, if omega input connector is enabled |
| Boolean | enableAccessHeatPort | false | = true, if heatPort is enabled |
| Layout | |||
| Boolean | displayInstanceName (from DropOfCommonsPlus) | dropOfCommons.displayInstanceNames | = true, if instance name is displayed |
| Boolean | displayParameters (from DropOfCommonsPlus) | dropOfCommons.displayParameters | = true, if displaying parameters is enabled |
| Advanced | |||
| Boolean | considerInertance (from SISOFlow) | dropOfCommons.considerInertance | =true, if transient momentum (inertance) term is considered; disable only for advanced use |
| Utilities.Units.Inertance | L (from SISOFlow) | dropOfCommons.L | Inertance |
| StateSelect | m_flowStateSelect (from SISOFlow) | StateSelect.default | State selection for mass flow rate |
| Boolean | clip_p_out (from SISOFlow) | = false, if dr_corr=0 (correction of inertial pressure difference) | |
| Medium.AbsolutePressure | p_min (from SISOFlow) | dropOfCommons.p_min | Minimum steady-state output pressure |
| StateSelect | omegaStateSelect | if omega_from_input then StateSelect.default else StateSelect.prefer | State select for angular velocity |
| Initialization › Mass flow rate | |||
| InitializationMethods | initM_flow (from SISOFlow) | ThermofluidStream.Utilities.Types.InitializationMethods.none | Initialization method for mass flow rate |
| SI.MassFlowRate | m_flow_0 (from SISOFlow) | 0 | Initial value for mass flow rate |
| Utilities.Units.MassFlowAcceleration | m_acceleration_0 (from SISOFlow) | 0 | Initial value for derivative of mass flow rate |
| Parameters | |||
| SI.MomentOfInertia | J_p | 5e-4 | Moment of inertia |
| Output | |||
| Boolean | enableOutput | false | = true, if selectable quantity output connector is enabled |
| Quantity | outputQuantity | Quantity.m_flow_kgps | Output quantity |
| Advanced › Regularization | |||
| SI.AngularVelocity | omega_reg | dropOfCommons.omega_reg | Normalization angular velocity |
| SI.MassFlowRate | m_flow_reg | dropOfCommons.m_flow_reg | Normalization mass flow rate |
| Medium.Density | rho_min | dropOfCommons.rho_min | Minimum density (relevant at p=0) |
| Initialization › Angular velocity | |||
| InitializationMethods | initOmega | ThermofluidStream.Utilities.Types.InitializationMethods.none | Initialization method for angular velocity |
| SI.AngularVelocity | omega_0 | 0 | Initial value for angular velocity |
| SI.AngularAcceleration | omega_dot_0 | 0 | Initial value for der(omega) |
| Initialization › Angle | |||
| Boolean | initPhi | false | = true, if angle is initialized |
| SI.Angle | phi_0 | 0 | Initial value for angle |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Inlet | inlet (from SISOFlow) | ||
| Outlet | outlet (from SISOFlow) | ||
| Modelica.Mechanics.Rotational.Interfaces.Flange_a | flange | Flange | |
| Modelica.Blocks.Interfaces.RealInput | omega_input | omega | Angular velocity input connector [rad/s] |
| Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a | heatport | HeatPort | |
| Modelica.Blocks.Interfaces.RealOutput | output_val | getQuantity(inlet.state, m_flow, outputQuantity, rho_min) | Quantity output connector |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| SI.MassFlowRate | m_flow (from SISOFlow) | inlet.m_flow | Mass flow rate |
| SI.Pressure | dr_corr (from SISOFlow) | Correction of inertial pressure difference | |
| SI.Pressure | dp (from SISOFlow) | Pressure difference | |
| Medium.AbsolutePressure | p_in (from SISOFlow) | Medium.pressure(inlet.state) | Inlet pressure |
| Medium.SpecificEnthalpy | h_in (from SISOFlow) | Medium.specificEnthalpy(inlet.state) | Inlet specific enthalpy |
| Medium.MassFraction[Medium.nXi] | Xi_in (from SISOFlow) | Medium.massFraction(inlet.state) | Inlet mass fractions |
| Medium.AbsolutePressure | p_out (from SISOFlow) | Outlet pressure | |
| Medium.SpecificEnthalpy | h_out (from SISOFlow) | Outlet specific enthalpy | |
| Medium.MassFraction[Medium.nXi] | Xi_out (from SISOFlow) | Outlet mass fractions | |
| SI.Power | W_t | Power (technichal work flow rate) | |
| SI.Power | Q_t | Heat flow rate | |
| SI.Torque | tau_st | Steady-state torque |
Contents
| Name | Description |
|---|---|
| Function to compute a selectable quantity |