Переход назад
Оглавление

"Kompressor" (адиабатный компрессор)
[Термодинамические объекты]

Kompressor.bmp


Адиабатный компрессор - элемент, описывающий адиабатное сжатие газового потока. Имеет два входа (потока газа и мощности на валу) и два выхода. Выходные параметры газа вычисляются по следующим формулам: где четный нижний индекс означает выходной параметр, а нечетный - входной, $ m_4 $ доля потерь мощности, значение которой задается переменной ShareExit2 на выходе мощности элемента, показатель степени $ \frac{k}{k-1} $ определялся как $ \frac{c_p}{R} $ , $ T_{oc} $ - температура окружающей среды (рассчитывается по параметрам элемента Исток), $ P_{oc} $ - давление окружающей среды (рассчитывается по параметрам элемента Сток).

Код программы для "Kompressor" (адиабатный компрессор)

//---------------------------------------------------------------------------
//Подпрограмма элемента "Компрессор для парогазовой смеси"
//---------------------------------------------------------------------------
double K = 0.3;
Input.GasIsobarHeat = K * Input.GasIsobarHeat + (1 - K) * 
  Input.TempGasIsobarHeat;
Input.TempGasIsobarHeat = Input.GasIsobarHeat;
Input.GasGasConst = K * Input.GasGasConst + (1 - K) * 
  Input.TempGasGasConst;
Input.TempGasGasConst = Input.GasGasConst;
Input.GasPressure = K * Input.GasPressure + (1 - K) * Input.TempGasPressure;
Input.TempGasPressure = Input.GasPressure;
Input.GasTemperature = K * Input.GasTemperature + (1 - K) * 
  Input.TempGasTemperature;
Input.TempGasTemperature = Input.GasTemperature;
Input.GasCharge = K * Input.GasCharge + (1 - K) * 
  Input.TempGasCharge;
Input.TempGasCharge = Input.GasCharge;
Input.ParIsobarHeat = K * Input.ParIsobarHeat + (1 - K) * 
  Input.TempParIsobarHeat;
Input.TempParIsobarHeat = Input.ParIsobarHeat;
Input.ParGasConst = K * Input.ParGasConst + (1 - K) * 
  Input.TempParGasConst;
Input.TempParGasConst = Input.ParGasConst;
Input.ParPressure = K * Input.ParPressure + (1 - K) * Input.TempParPressure;
Input.TempParPressure = Input.ParPressure;
Input.ParTemperature = K * Input.ParTemperature + (1 - K) * 
  Input.TempParTemperature;
Input.TempParTemperature = Input.ParTemperature;
Input.ParShareExit = K * Input.ParShareExit + (1 - K) *
  Input.TempParShareExit;
Input.TempParShareExit = Input.ParShareExit;
double d1;
d1 = Input.ParShareExit; // - абсолютная влажность
Input.ParCharge = Input.GasCharge * d1;
Input.TempParCharge = Input.TempGasCharge * d1;
InputCapacity.Capacity_FlowExergs = K * InputCapacity.Capacity_FlowExergs +
  (1 - K) * InputCapacity.TempCapacity_FlowExergs;
InputCapacity.TempCapacity_FlowExergs = InputCapacity.Capacity_FlowExergs;
//Теплоемкость смеси равна:
double Cs = (Input.GasIsobarHeat + Input.ParIsobarHeat *
  Input.ParShareExit) / (1 + Input.ParShareExit);
//Газовая постоянная смеси равна:
double Rs = (Input.GasGasConst + Input.ParGasConst *
  Input.ParShareExit) / (1 + Input.ParShareExit);
 
  // Выделяем переменную AK (обратите внимание на регистр) и присваиваем ей
  // отношение значения изобарной теплоемкости смеси к значению
  // газовой постоянной смеси: 

double AK = Cs / Rs;
//---------------------------------------------------------------------------
OutputCapacity.Capacity_FlowExergs = InputCapacity.Capacity_FlowExergs *
OutputCapacity.ShareExit12;
Output.GasPressure = Input.GasPressure * pow(1 + 
  (InputCapacity.Capacity_FlowExergs - OutputCapacity.Capacity_FlowExergs)/
  ((Input.GasCharge + Input.ParCharge) * Cs * Input.GasTemperature), AK);
Output.GasTemperature = Input.GasTemperature + 
  (InputCapacity.Capacity_FlowExergs - OutputCapacity.Capacity_FlowExergs)/
  ((Input.GasCharge + Input.ParCharge)* Cs);
Output.GasCharge = Input.GasCharge;
Output.GasIsobarHeat = Input.GasIsobarHeat;
Output.GasGasConst = Input.GasGasConst;
Output.ParPressure = Output.GasPressure;
Output.ParTemperature = Output.GasTemperature;
Output.ParIsobarHeat = Input.ParIsobarHeat;
Output.ParGasConst = Input.ParGasConst;
Output.ParShareExit = Input.ParShareExit;
//-------------------------------------------------------------
/*
  Объект 1-го уровня (наборы параметров для…):
    InputCapacity //- вход мощности
    OutputCapacity //- выход мощности
    Output //- выход парогазовой смеси
    Input //- вход парогазовой смеси
  Объект 2-го уровня (значения параметров):
    GasPressure: Double; //давление газа
    GasTemperature: Double; //температура газа
    GasCharge: Double; //расход
    GasIsobarHeat: Double; //изобарная теплоемкость газа
    GasGasConst: Double; //газовая постоянная газа
    GasCapacity_FlowExergs12: Double; //поток эксергии газа
    GasShareExit12: Double; //доля выхода газа
    ParPressure: Double; //давление пара
    ParTemperature: Double; //температура пара
    ParCharge: Double; //расход пара
    ParIsobarHeat: Double; //изобарная теплоемкость пара
    ParGasConst: Double; //газовая постоянная пара
    ParCapacity_FlowExergs12: Double; //поток эксергии пара
    ParShareExit: Double; //абсолютная влажность
    Capacity_FlowExergs: Double; //мощность на валу
    ShareExit12: Double; //доля выхода мощности на валу
/
//--------------------------------------------------

См. также:
"Source" (исток для газа) , "Drain" (сток для газа) , "Drossel" (изотермический дроссель) , "Amalgamator" (смеситель/разделитель потока газа) , "HeatExchange" (прямоточный идеальный газовый теплообменник) , "Kompressor" (адиабатный компрессор) , "Turbine" (адиабатная турбина) .
Документация по системе CAAM. © Все права защищены БайтериКС 2005-2015. BYTERIX.COM byterix