.ThermofluidStream.Processes.Internal.TurboComponent.dp_tau_const_isentrop

Information

This is a model of isentropic expansion or compression of an ideal gas with a fixed isentropic efficiency.

The isentropic exponent (kappa) by default is retrieved from the media model at the inlet. It can be set to a fixed value to allow compressor operation in two-phase region.


The computation is as follows:

  1. with the scaling factors omega_ref, m_flow_ref and the scewness factor skew, the pressure ratio pr=p_outlet/p_inlet is computed as quadratic function of omega/omega_ref, m_flow/m_flow_ref:
    pr  := abs(omega)*omega/(omega_ref^2)  - skew*omega*m_flow/(omega_ref*m_flow_ref)  - abs(m_flow)*m_flow/(m_flow_ref^2)  + 1;
  2. if the pressure ratio is smaller then 1 (expansion of gas), to limit it to 0 compute:
    pr := k^(pr-1);
  3. compute specific technical work w_t from pr using a isenthalpic process
  4. apply constant isentropic efficiency
  5. compute static moment by the following law: both are scaled so they are smooth at the border to nominal operation. Additionally for small omega, a small tau is added, so the standing pump can be pushed by the fluid.

omega_ref and m_flow_ref are supposed to be scaling factors for omega and m_flow respectiveley. omega_ref is the angular velocity that produces a pressure ratio of 2 at m_flow=0. m_flow_ref is the massflow, that produces a negative pressure ratio of 1 at omega=omega_ref. The skewness factor can be used to shape the characteristic curve inbetween (see fig. 1).

When pr < 1, the reciprocal pressure ratio 1/pr = p_inlet/p_outlet is more interesting. It can be seen for different values of skew in fig. 2.

Fig. 1: different skewness factors for omega/omega_ref=1. pressure ratio pr over m_dot/m_dot_ref

Fig. 2: different skewness factors for omega/omega_ref=1. Reciprocal pressure ratio 1/pr over m_dot/m_dot_ref

Interface

function dp_tau_const_isentrop
  extends partial_dp_tau;
  import R_m = Modelica.Constants.R "General gas constant";
  input Real omega_ref(unit = "rad/s") = 1000 "Reference speed, that produces pr=1" annotation(
    Dialog(group = "Pressure ratio curve", enable = true));
  input Real skew(unit = "1") = 0 "Scewness factor for mixed part of pr equation" annotation(
    Dialog(group = "Pressure ratio curve", enable = true));
  input Real m_flow_ref(unit = "kg/s") = 0.25 "Reference mass_flow, that produces pr=-1" annotation(
    Dialog(group = "Pressure ratio curve", enable = true));
  input Real eta(unit = "1") = 1 "Isentropic efficienty" annotation(
    Dialog(enable = true));
  input Real k(unit = "1") = 2 "Exponential factor used for pr<1" annotation(
    Dialog(tab = "Advanced", enable = true));
  input SI.Volume V_ref = 0.001 "Reference volume for chocke torque calculation" annotation(
    Dialog(tab = "Advanced", enable = true));
  input Boolean kappaFromMedia = true "Retrieve kappa from media model?" annotation(
    Dialog(group = "Isentropic exponent", enable = true));
  input Real kappa_fixed(unit = "1") = 1.4 "Fixed kappa value" annotation(
    Dialog(group = "Isentropic exponent", enable = not kappaFromMedia));
end dp_tau_const_isentrop;

Generated at 2024-10-30T19:25:41Z by OpenModelicaOpenModelica 1.24.0 using GenerateDoc.mos