?

Log in

No account? Create an account

Previous Entry | Next Entry

В заголовке короткое наименование, полностью же оно звучит так:
Расчет времени заполнения участка газопровода
при постоянном давлении в источнике газа
(с учетом длины перемычки или байпаса)

Тут методика несколько сложнее и не так очевидна, как при расчете времени стравливания участка газопровода, поэтому небольшая вводная часть. Конечно, это не для тех, у кого за плечами «нефтегаз» как базовое образование.
Кстати, по вводной части. Если Вы пришли в газодинамику из электроники, то некоторой аналогией происходящих с газом процессов, связанных с термином «критический», будет работа полупроводникового стабилитрона (если рассматривать только напряжения и оставить за рамками модели электрический ток).
Для реальных газов существует некоторая максимальная разница давлений между источником и приемником газа, превышение которой не приводит к увеличению объема стравливаемого (перетекаемого) газа, вернее, его весового расхода (в другой формулировке: весовой расход газа при критическом режиме истечения не зависит от давления в приемнике газа). Если считать давление в приемнике газа давлением «среды», тогда можно утверждать о наличии некоторого критического давления (в источнике газа, естественно), которое позволяет типизировать режим истечения (перетока) газа как критический или докритический. Соответственно, для каждого из режимов истечения (перетока) существует своя формула для расчета расхода газа.
Граница, которая разделяет режимы истечения газа, находится в точке равенства скорости звука в газе (в источнике) и скорости истечения газа (из источника в приемник):
sas_sound_speed
Приняв данное утверждение за истинное (а прикладники должны это делать по умолчанию, так как других зависимостей нет), достаточно просто рассчитать давление, при котором скорость истечения газа равна скорости звука. Для этого последовательно изменяем состояние системы (изменяем разницу давлений между источником и приемником газа), рассчитывая каждый раз искомые параметры и сравнивая их.
Скорость истечения газа рассчитывается по «голой» формуле Сен-Венана:
sas_sen_venan
Примечание. Если эта формула в результате расчета выдает скорость истечения в несколько «махов», это совсем не означает, что скорость истечения на самом деле в разы превышает скорость звука. Это теоретическая величина, которая, применительно к физическим реалиям нашей действительности, на самом деле будет ограничена неким критическим значением весового расхода газа.
Скорость звука в природном газе (работа того же автора, но из другого источника):
sas_sound_single
Вроде бы все точки над i расставлены, можно излагать алгоритм расчета.

1. Рассчитывается давление, при котором скорость звука в газе равна скорости истечения газа (при постоянном значении давления в источнике газа и повышающемся давлении в приемнике газа – заполняемом газопроводе):
fill_sound_speed
Примечание. Точка пересечения графиков – критерий, разделяющий зоны критического и докритического режимов истечения газа: при скорости истечения газа больше, чем скорость звука в газе, режим истечения – критический, в противоположном случае – докритический.
2.      Для критического режима истечения (в отображенном на графиках примере – в диапазоне давлений 0 – 32,6 кгс/см2 в приемнике газа) через степенную регрессию рассчитывается зависимость времени перетока 1000 м3 газа от запаса газа на заполняемом участке газопровода (то есть, сложная «цепочка» расчетных выражений преобразуется в функцию одной переменной). Аналогичный расчет выполняется и для выражения, определяющего пропускную способность перемычки или байпаса, но с использованием полиномиальной регрессии пятой степени.
Результат регрессионного анализа:
fill_crit
Примечание. При критическом режиме истечения газа весовой расход зависит только от давления газа в источнике и является постоянной величиной. Использование степенной регрессии для «оцифровки» прямой линии в данном случае явно избыточно, однако разрабатываемый алгоритм предполагается использовать как основу для расчета времени заполнения участка газопровода из другого участка, то есть, со снижением давления в источнике газа. Будем считать допущенное усложнение расчета «закладкой» для будущих разработок.
Расчетное выражение для степенной регрессии:
formula_powfit
Расчетное выражение для полиномиальной регрессии:
polynom_dynamic
3. Рассчитываются (для критического истечения - по первообразной выражения для степенной регрессии, то есть как определенный интеграл; для пропускной способности – по первообразной выражения для полиномиальной регрессии) время перетока газа:
formula_pow_integral
integral_dynamic

Примечание. Результатом расчета считается наибольшее из полученных значений времени.
4.      Повторяются расчеты п.п. 2 и 3, но для зоны докритического режима истечения газа и с использованием гамма-регрессии.
Примечание. Гамма-регрессия применительно к имеющимся исходным данным не позволяет получить корректный результат аппроксимации (резкое снижение объемов перетока газа для малых значений  разницы давлений источника и приемника приводит к «задиранию» ординаты):
fill_moveton
Однако, по контексту расчета нас интересует не сама функция, а ее определенный интеграл, то есть, в графической интерпретации, площадь фигуры под рассчитанным графиком. Это позволяет «инвертировать» значения ординаты относительно абциссы (резкий спад функции обрабатывается гамма-регрессией вполне корректно), при этом площадь фигуры под полученным графиком останется неизменной.
Результат регрессионного анализа:
fill_nocrit
Расчетное выражение (гамма-регрессия) для докритического режима истечения и пропускной способности перемычки (байпаса):
formula_gammafit
Время перетока газа для докритического режима истечения (и параллельно – для пропускной способности перемычки или байпаса) рассчитывается методом квадратур Гаусса-Лежандра для выражения:
formula_gamma_integral
Примечание. Результатом расчета считается наибольшее из полученных значений времени.
В итоге, время заполнения участка газопровода газом определяется как сумма интервалов времени, рассчитанных для зон критического и докритического режимов истечения газа.
Помимо времени заполнения участка газопровода, также выполняется расчет количества запаса газа на участке газопровода и объем его перетока из источника.
Ссылка на страницу с программой и проектом (Object Pascal, IDE CodeTyphon):


Используемые для расчета процедуры и функции

В юните uprocmod.pas проекта:
·        uprocmod.MGfillCalc – основная расчетная процедура;
·        uprocmod.SpeedFill – расчет точки равенства скорости звука и скорости истечения газа;
·        uprocmod.PowFitClear – процедура расчета коэффициентов степенной регрессии;
·        uprocmod.PolFitClear – процедура расчета коэффициентов полинома (полиномиальная регрессия);
·        uprocmod.GammaFitClear – процедура расчета коэффициентов гамма-регрессии;
·        uprocmod. GammaGausLeg – процедура расчета сложного определенного интеграла методом квадратур Гаусса-Лежандра.

В юните fmod.pas проекта:
·      fmod.Z(ro, p, t) – расчет коэффициента сжимаемости газа по процедуре Редлиха-Квонга;
·      fmod.CountGas(v, p, pприв, t, tприв, z) – расчет запаса газа в замкнутом геометрическом объеме;
·      fmod.ExpCritNew(azot, ro, d, p, pатм, tн, tк, time) – расчет объема стравленного газа при критическом режиме истечения;
·      fmod.ExpNoCrit(azot, ro, d, p, pатм, tн, tк, time) – расчет объема стравленного газа при докритическом режиме истечения;
·      fmod.QTheor(ro, pн, pк, pатм, tн, tк, tгрунт, L, D, h1, h2) – пропускная способность свечной линии;
·      fmod.Adiabata(azot, ro, p, t) – расчет показателя адиабаты по формуле Кобза;
·      fmod.RoFact(ro, p, t, z) – расчет фактической (рабочей) плотности газа;
·      fmod.SpeedSound(t, adiabata, z, ro) – расчет скорости звука в природном газе;
·      fmod.SpeedGas(adiabata, rofact, p, pатм) – расчет скорости истечения газа (формула Сен-Венана).

Примечание. Сборник газодинамических функций (юнит fmod.pas) можно скачать со страницы сайта:




Posts from This Journal by “транспорт газа” Tag

Latest Month

June 2018
S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930

Tags

Free counters!




Powered by LiveJournal.com
Designed by yoksel