для аспирантов и студентов старших курсов.

Эта статья написана в середине 90-х, а опубликована несколько лет назад. Формулы хлопотно переносить, кому интересно - пишите в личку.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

На принципах, изложенных в этой статье (в действительности, статья написана по материалам лекций, которые я прочитал в 90-е годы студентам 5-х курсов строительных специальностей) в 80-е годы была написана компьютерная программа HYDRA в вариантах HYDRA_W и HYDRA_G. Там одна математика, поэтому она не устаревает.

Эта программа использовалась (а может и используется) во многих проектных и других организациях:

 

УкркоммунНИИпроект (Харьков),

УкрНИИИнжПроект (Киев),

БелкоммунПроект (Минск),

УзНПО Кибернетика (Ташкент),

Трест "Оргтехстрой" ГлавТЭУ г. Ленинград,

"Управление водоканализационного хозяйства Киева,

ХарьковГаз,

Управление газового хозайства Ленинграда (было такое),

Львов,

Одесса (УкркоммунЮжПроект, кажется),

Вспомню - еще допишу. Все это оформлялось официально.

 

Что может программа:

-выполнять проверочные расчеты (то, что в электротехнике называется метод контурных токов),

-выполнять технико-экономические расчеты (тут никакой науки, но очень хлопотное программирование),

-решать задачу выбора диаметров участков (фантастически быстро, несмотря на то, что это сложная оптимизационная задача).

 

В середине 90-х я отошел от этой темы и все было заброшено.

Недавно скачал бесплатный компилятор GFortran. Думаю расчетный модуль удастся восстановить быстро. А оболочку можно будет создать на базе какой-нибудь СУБД без программирования. Во всяком случае заинтересованные аспиранты, готовые помочь, уже есть.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Построение математической модели
инженерной сети для её реализации на Персональном Компьютере

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

Процесс проектирования трубопроводных (в данном случае – газовых) сетей в конечном итоге сводится к решению систем уравнений (линейных и нелинейных). От эффективности способов формирования и хранения этих систем уравнений во многом зависит эффективность реализуе-мых расчетных задач на сетях.
 
Сеть состоит из узлов. Узел - это источник газа или потребитель. Не-важно откуда поступает газ: из резервуара, от компрессорного агрегата, из сети более высокого давления через регуляторный пункт. Важно, что через какие-то точки (узлы) газ поступает в сеть (будем называть эти точки ис-точниками), а через какие-то точки (узлы) газ выбирается из сети. Точки отбора будем называть потребителями. Узлы характеризуются двумя величинами: расходом Qi  и давлением Pi  (i - номер узла). Узлы, которые не являются ни источниками ни потребителями - просто точки соединения трубопроводов, нас не интересуют. Узлы соединены между собой участками трубопроводов. Участок имеет какую-то длину l и диаметр d. Через него в единицу времени протекает какое-то количество газа q. В процессе транспортировки газа на участке происходит потеря (падение) давления. Перепад давлений на участке - это разность между давлением в узле из которого участок выходит и давлением в узле в который участок входит h=Pi-Pj. С изменением расхода газа на участке q меняется и потеря давления h (записывается h=f(q) или h(q)). Расход q и потеря давления h на участке могут быть положительными - газ протекает от узла, который является началом участка к узлу, который является концом участка. q и h могут быть и отрицательными - направление движения газа противоположно направлению участка.
Простейшая газовая сеть - участок трубопровода - рис. 1.

Рис. 1

 

Стрелка направленная к сети, обозначает, что узел 1 - источник,  стрелка, направленная от сети, обозначает, что узел 2 - потребитель. Узлы можно нумеровать произвольно, например 2, 7, 1005 и т. д. В этой сети газ однозначно протекает от узла 1 к узлу 2.

Возьмем сеть немного сложнее - рис. 2.

Рис. 2

 

Узел 4 - источник. Узлы 1, 2, 3 - потреби¬тели. Узлы пронумеро¬ваны произвольно. Для удобства участки тоже пронумерованы. Хотя участки однозначно опре¬деляются узлами, которые он соединяет.
На рисунке направление участков обозначено стрелками. Для участка 2 направление стрелки указывает, что это участок 4 - 3, а не 3 - 4. Причем, без предварительных расчетов трудно определить, протекает газ от узла 1 к узлу 2 или наоборот. Это тот случай, когда расход q и потеря давления h могут быть и положительными и отрицательными.
 
Мысленно представим себе, что существует резервуар с газом, давление в котором P=0. Представим себе, что газ поступает в сеть из этого резервуара и уходит из сети в этот же резервуар. На схеме, изображающей газовую сеть резервуар изобразим узлом и присвоим ему номер 0 (ноль), соединим все входы и выходы сети с этим узлом (рис. 3).

Рис. 3


Реально существующие участки трубопроводов будем называть в дальнейшем реальными, а те, которыми мы мысленно соединили узел 0 с сетью - фиктивными. Узел 0 - тоже фиктивный узел.
С точки зрения физических процессов, происходящих в распределительной сети ничего не изменилось, но сеть из открытой превратилась в замкнутую.
В связи с изменившейся схемой сети уточним некоторые обозначения.


q6 = q0-4 = Q4 ;                                (1)
q7 = q1-0 = Q1 ;                                (2)
q8 = q1-2 = Q2 ;                                (3)
q9 = q3-0 = Q3 ;                                (4)
h6 = h0-4 = P0 - P4 = -P4 ;                (5)
h7 = h1-0 = P1 - P0 =  P1 ;                 (6)
h8 = h2-0 = P2 - P0 =  P2 ;                 (6)
h9 = h3-0 = P3 - P0 =  P3 ;                 (8)

 

Узловые расходы мы заменили расходами на фиктивных участках. Давления в узлах - перепадами давлений на фиктивных участках. В дальнейшем про узлы, номера узлов, параметры узлов мы забываем, будем иметь дело только с участками и номерами участков. Что это нам дает?
Во-первых, единообразие (мы преобразовали характеристики узлов в характеристики фиктивных участков). Что при этом произошло? А ничего. Мы не увеличили число переменных и не усложнили задачу. Мы просто заменили одни переменные другими, т.е. упростили систему обозначения переменных, уменьшили количество типов переменных (были расходы узлов и расходы участков, остались только расходы на участках, хотя их стадо больше). Упростилось понимание задачи, ниже мы покажем, что упростился также алгоритм решения задачи.
Во-вторых, для такой замкнутой сети справедливы законы, аналогичные законам электрических сетей [1]. А именно:
 
- Первый закон Кирхгофа: Алгебраическая сумма токов в любом узле равняется нулю. Или сумма токов, втекающих в узел равна сумме токов, вытекающих из узла. Это достаточно очевидно, рис. 4.

Рис. 4

 

- Второй закон Кирхгофа: Сумма падений напряжений по любому замкнутому контуру сети равняется нулю.

Напряжение на источнике питания равно сумме падений напряжений на реостате и на лампочке, или -U1+U2+U3=0. В сложной многоконтурной сети, для любого контура справедливо то же самое.


Закон, аналогичный закону Ома, который гласит: ток, протекающий через линейный участок электрической цепи пропорционален приложенному напряжению и обратно пропорционален сопротивлению участка.


   (9)  

или

U = I×R. (10)


Для газовой сети это означает, что при протекании газа через участок трубопровода, на нем происходит потеря давления h = Pн - Pк которая зависит от количества газа, протекающего через участок q, длины l и диаметра d трубопровода и некоторых других факторов. Конкретные формулы можно поза­имствовать, из соответствующих нормативных документов. Например для газовой сети низкого давления в критическом режиме (число Рейнольдса Re = 2000 ¸ 4000) [3].


                                              (11)

В общем виде, для участка с номером i будем записывать этот закон так:

hi=f(qi) (12).

Эти уравнения называются уравнениями связи т.к. они устанавливают взаимосвязь между потерей напора h и расходом q на конкретном участке. Естественно, можно предположить, что существует и другая форма записи уравнений связи    

qi = j(hi).   (13).

Разобравшись с законами построим математическую модель газовой сети. Для примера построим математическую модель газовой сети, изображенной на рис. 3.

Математическая модель газовой сети - это система уравнений, состоящая из какого-то количества уравнений, соответствующих первому закону Кирхгофа, какого-то количества уравнений, соответствующих второму закону Кирхгофа и какого-то количества уравнений связи.

Определим, сколько всего уравнений будет содержать математическая модель нашей сети. Для этого сначала определимся с количеством переменных.


Обозначим общее количество узлов в сети - v; общее количество участков (реальных и фиктивных) - e, e=l+m+n, где - m - количество реальных участков; l - количество фиктивных участков, соответствующих источникам; n - количество фиктивных участков, соответствующих потребителям.

Каждый реальный участок характеризуется тремя независимыми переменными: расходом qi потерей напора hi и гидравлическим сопротивлением ci = f(li,di) - всего 3m переменных. Каждый из фиктивных участков характеризуется только двумя переменными: qi и hi. Для фиктивных участков понятие гидравлического сопротивления не определено, т.е. какой-либо функциональной зависимости между qi и hi для этих участков нет.

Таким образом общее количество переменных: 3m + 2(l+n) или 2e+m. По условию задачи на каждом из участков задана одна из переменных: для реальных участков это ci = f(li,di), для фиктивных участков это qi или hi. Из общего количества 2e+m переменных e переменных заданы, неизвестными остаются e+m переменных. Для того, чтобы задача была разрешимой, количество уравнений математической модели должно соответствовать количеству неизвестных переменных.

Математическая модель газовой сети должна содержать e+m переменных. e+m = 9+5=14 (уравнений).

Для начала запишем уравнения связи. Тут всё просто. Сколько участков (реальных), столько уравнений


h1 = f(q1) ;     (14)
h2 = f(q2) ;     (15)
h3 = f(q3) ;     (16)
h4 = f(q4) ;     (17)
h5 = f(q5).      (18)

 

Запишем уравнения, соответствующие первому закону Кирхгофа. Если в сети v узлов, то можно записать v - 1 уравнение. Почему? Возьмем сеть, состоящую из двух узлов (рис. 6).

Рис. 6

 

Для узла A  q1 - q2 + q3 = 0 ;  для узла B  -q1 + q2 - q3 = 0 ; т.е. уравнение для узла B никакой новой информации не несет [3]. Но и в более сложных сетях последний узел (неважно, с каким он номером окажется) никакой дополнительной информации не несет. Правильно будет сказать: уравнение, вы¬ражающее первый закон Кирхгофа для последнего узла является линейной комбинацией уравнений для предыдущих v - 1 узлов.

 

Для узла  0     q6 + q7 + q8 + q9 = 0 ;          (19)
Для узла  1     q4 + q5 - q7  = 0 ;                 (20)
Для узла  2     q1 - q3 - q4 - q8 = 0 ;            (21)
Для узла  3     q2 + q3 - q5 - q9 = 0             (22)


Мы записали m+v-1 уравнение. Осталось записать (e+m)-m-(v-1) = e-v+1 уравнений. Обозначим = e-v+1. Ниже мы покажем, что можно записать ни больше, ни меньше, а только   линейно-независимых уравнений, соответствующих второму закону Кирхгофа. Число   называется цикло-матическим числом графа сети. = e-v+1= 9-5+1 = 5. На схеме сети рис. 3 выделим пять контуров (обозначены римскими цифрами - рис. 7) и будем осуществлять обход контуров по часовой стрелке.


Тогда
    для I             h6 +  h1 + h8 = 0 ;                (23)
    для II            -h1 + h2  - h3 = 0 ;                (24)
    для III            h3 +  h5  - h4 = 0 ;                (25)
 
    для IV           h4 +  h7  - h8 = 0 ;                (26)
    для V           -h5 +  h9  - h7 = 0 ;                (27)

Рис. 7

Четырнадцать уравнений  (14) - (27)  образуют математическую модель газораспределительной сети рис. 3, рис. 7. Они содержат двадцать три переменных. Задав девять из которых (по условию задачи) мы получим разрешимую систему уравнений, решая которую можно получать ответы на вопросы типа: а что будет, если на потребителе с номером i . Qi расход увеличится до величины  Qi’  или, а что будет, если диаметр участ-ка di заменить на  di’  и т.д.
Из четырнадцати уравнений системы (14) - (27) только пять (14) - (18) являются нелинейными, а остальные - линейные. Решение задачи значительно упрощается, если упростить исходную модель (14) - (27). А т.к. существует два способа выражения функциональной зависимости hi и qi  (14) - (18) и  (14а) - (18а), то существует также два метода решения этой модели. Рассмотрим метод, аналогичный методу контурных токов для электрических цепей.
- В уравнениях (23) - (27) переменные  h1 - h5  в соответствии с (14)  -  (18) выражаем через q1 - q5


          h6 + f(q1) + h8 = 0 ;                   (28)
        - f(q1) + f(q2) - f(q3) = 0 ;             (29)
          f(q3) + f(q5) - f(q4) = 0 ;             (30)
          f(q4) + h7 - h8 = 0 ;                    (31)
        - f(q5) + h9 - h7 = 0 ;                    (32)


Вернемся к уравнениям (19) - (22). Уравнений  v - 1 = 4, а переменных e = 9. Разбиваем переменные q1 - q9  на две группы. Первая группа будет содержать (v-1) переменную в соответствии с количеством уравнений. Во вторую группу войдут оставшиеся e-v+1 уравнения (напомним что мы обозначили e-v+1 = ). При этом нужно следить за тем, чтобы ни одна из комбинаций участков, соответствующих переменным первой группы не образовывала замкнутый контур. Тогда переменные первой группы при помощи уравнений (19) - (22)  можно выразить через переменные второй группы. Конечная система уравнений еще более упростится, если во вто-рую группу включим также значения qi , которые заданы по условию зада-чи (q7, q8, q9) и не будем включать значения qi , соответствующие участкам, в которых заданы  hi   (это q6). Остальные переменные (нетрудно заметить, что это расходы на реальных участках q1 - q5) разделяются на группы дей-ствительно произвольно. Например


I         (q6, q1, q2, q4);        II      (q3, q5, q7, q8, q9)

 

Получаем

Из (21, 20)     q1 = q3 + q4 + q8= q3 - q5 + q7 + q8;        (33)
Из (22)        q2 = -q3 + q5 + q9 ;                                        (34)
Из (20)        q4 = -q5 + q7 ;                                                (35)
Из (19)        q6 = q7 + q8 + q9 ;                                         (36)

 

Подставляем (33) - (36)  в (28) - (32)


     h6 + f(q3 - q5 + q7 + q8) + h8 = 0 ;                                      (37)
    - f(q3 - q5 + q7 + q8) + f(-q3 + q5 + q9) - f(q3) = 0 ;             (38)
      f(q3) + f(q5) - f(-q5 + q7 ) = 0 ;                                            (39)
      f(-q5 + q7 ) + h7 - h8 = 0 ;                                                   (40)
    - f(q5)+ h9 - h7 = 0 ;                                                               (41)

 

Так как переменные h6, q7, q8, q9  заданы по условию задачи (т.е. они превращаются в константы), то система (37 - 41), из пяти уравнений ( = 5) и пяти неизвестных переменных (q3, q5, h7, h8, h9) разрешима. Более того, в ней можно выделить уравнения, в которых среди неизвестных нет hi - (38), (39). Эти уравнения соответствуют контурам II и III, они не содержат фик-тивных участков. Перепишем их еще раз


    - f(q3 - q5 + q7 + q8) + f(-q3 + q5 + q9) - f(q3) = 0 ;        (42)
      f(q3) + f(q5) - f(-q5 + q7 ) = 0 ;                                      (43)


Получили два уравнения с двумя неизвестными - q3 и q5. Таким обра-зом исходная система уравнений (14) - (27), состоящая из четырнадцати уравнений продуманной последовательностью подстановок упростилась до системы из двух уравнений. Она нелинейна и решается одним из нью-тоновских методов.
Получив значения неизвестных q3 и q5 остальные двенадцать пере-менных вычисляем исключительно подстановкой уже вычисленных зна-чений в сформированные ранее уравнения


- подставив q3 и q5 в (33) - (36) получаем q1, q2, q4 ,q6;
- подставив q1, q2, q3, q4, q5  в (14) - (18) получаем h1, h2, h3, h4, h5 ;
- подставив q3 и q7  в (37), (40), (41) или, что то же самое, подставив h1, h4, h5  в (23) -  (27) получаем h7, h8, h9 .


На основе проведенных исследований разработаны алгоритмы, реализованные в виде программных продуктов, которые успешно применялись при выполнении проверочных и других расчетов сетей газо- и водоснабжения различных городов.

1. Евдокимов А.Г. и др. Рациональная эксплуатация и развитие систем водоснаб-жения и водоотведения – Харьков, ХТУРЭ. 2002, - 264с.
2. Евдокимов  А.Г.,  Гринчак  Н.В.,  Жалилов  У.  Особенности расчета инженер-ных сетей в интерактивном режиме. В сб.: - АСУ и приборы автоматики. г.Харьков 1999. вып. 90.
3. Оре О. Теория графов. - М.: Наука, 1980. - 336 с.