Библиотека
Главная

Водоснабжение. Проектирование систем и сооружений. Том 3


14.5. ПРИМЕНЕНИЕ ЭВМ ДЛЯ ГИДРАВЛИЧЕСКОГО РАСЧЕТА
КОЛЬЦЕВОЙ ВОДОПРОВОДНОЙ СЕТИ

Постановка задачи

Для алгоритмов расчета водопроводной сети с использованием вычислительной техники принимаются следующие условия и ограничения:

  • - сеть должна быть плоской;
  • - сеть может содержать не только кольца, но и тупики; давление в сети не оказывает влияние на узловые отборы воды;

47

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

В ходе расчета сети должны быть определены:

  • - расходы, потери напора, скорости на участках и оптимизированные (экономически наивыгоднейшие) диаметры,
  • - величины свободного напора в узлах сети с учетом заданного необходимого напора.

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

Реализация алгоритмов расчета может быть выполнена в виде программы WaterRings. Описание подпрограмм, входящих в основную программу, приведено в табл. 14.27.

Таблица 14.27

Основные подпрограммы, используемые в программе

НазваниеОписание
FillingAФормирование матрицы линейных уравнений для начального потокораспределения
BeginStreamAllocationРешение задачи начального потокораспределения
UvjazkaУвязка расходов на участках по методу Лобачева-Кросса
OptimizeОптимизация диаметров труб на участках
CalcHРасчет свободных напоров в узлах

Переменные и константы

В табл. 14.28 и 14.29 описаны переменные и константы, доступные всем алгоритмам расчета водопроводной сети. Материалы труб и сортамент диаметров взят из /14/. В табл. 14.30 приведены коды труб, используемые в программе, и формулы для расчета удельного гидравлического сопротивления для 13-ти различных видов труб /14/. Табл. 14.31 содержит коэффициенты и показатели степени, взятые в расчетах предельных расходов /15/ (alfa и п - показатели степени, характеризующие режим работы труб; К и р - коэффициент и показатель степени в формуле, определяющей потери напора на единицу длины трубопровода; R - сумма амортизационных отчислений, включая затраты на капитальный ремонт и отчислений на текущий ремонт; b - коэффициент, зависящий от условий строительства). Расчетные диаметры /14/, которые были использованы в компьютерной программе, приведены в табл. 14.32.

Таблица 14.28

Переменные, используемые в алгоритмах и программе

ПеременнаяОписание
12
Простые переменные 
CountAreasколичество участков в сети
CountRingsколичество колец в сети
CountNodesколичество узлов в сети
MaxCountAreasмаксимальное количество участков в одном кольце

48

Продолжение табл. 14.28

12
MinHнеобходимый напор в узлах, м
MinDiamминимальный диаметр при оптимизации, мм
TypeOptimшифр вида оптимизации
Kdayкоэффициент суточной неравномерности водопотребления
Khourкоэффициент часовой неравномерности водопотребления
Sigmaстоимость электроэнергии, руб./(кВт·ч)
Srokсрок окупаемости, годы
Массивы 
Nodesдвухмерный массив узлов сети, состоящий из CountAreas строк (каждая строка описывает один участок) и двух столбцов: первый столбец содержит номера подающих узлов, второй - номера принимающих узлов в участках
Ringsдвухмерный массив колец сети, состоящий из CountRings строк (по количеству колец) и MaxCountAreas столбцов (по максимальному количеству участков в кольце). Каждый элемент этого массива содержит номер участка
SigmaDHодномерный массив, содержащий CountRings значений сумм потерь напора по каждому кольцу (т.е. невязку), м
Aдвухмерный массив, реализующий в матричной форме систему линейных уравнений для решения задачи начального потокораспределения
Одномерные массивы, содержащие данные об узлах (длина каждого массива - CountNodes) 
Rashodрасход в узле (узловой расход), л/с
Zгеодезическая отметка узла, м
Hсвободный напор в узле, м
Одномерные массивы, содержащие данные об участках (длина каждого массива - CountAreas) 
Qрасход на участке (участковые расходы), л/с
Lдлина участка, м
Vскорость воды на участке, м/с
Sудельное сопротивление труб на участке, с26
Materкод материала труб на участке
NomerDкод диаметра труб на участке
DHпотери напора на участке, м
Efactorэкономический фактор для трубопровода на участке

Таблица 14.29

Константы, используемые в алгоритмах и программе

КонстантаОписание
Epsilonдопустимая невязка в кольцах (0,05 м)
EtaКПД насосных агрегатов, подающих воду (0,7)
К0коэффициент, учитывающий возможный рост водопотребления по годам (1,02)
KoeffOptimDiamодномерный массив, содержащий 5 элементов - записей с коэффициентами n,K,p,alfa,R и b для расчета предельных расходов
MatPipesодномерный массив, содержащий 13 строковых констант - названий труб и ГОСТов
Diamдвухмерный массив, содержащий 13 строк и 33 столбца. Номер строки соответствует определенному материалу труб, первый столбец (индекс 0) - содержит количество диаметров по сортаменту, все остальные элементы массива содержат величину внутреннего диаметра в миллиметрах (или 0)
PipeDiamдвухмерный массив, по структуре и размерам совпадает с Diam, однако содержит строковые константы - условные диаметры труб

49

Таблица 14.30

Формулы для расчета удельного сопротивления

ТрубыФормула
Стальные водогазопроводные и электросварные новые (коды материалов - 1 и 3)S0 =
0,001314(1 +0,84)0,226
d5,226ν
Чугунные напорные новые (код - 5)S0 =
0,00119(1 +2,36)0,284
d5,284ν
Стальные водогазопроводные и электросварные неновые, чугунные напорные неновые (коды- 2, 4, 6)S0 =
0,0014782(1 +0,867)0,3
d5,3ν

(ν < 1,2 м/c)
S0 =
0,001735
d5,3
 (ν < 1,2 м/c)
Асбестоцементные (код - 7)S0 =
0,00091(1 +3,51)0,19
d5,19ν
Железобетонные виброгидропрессованные и со стальным сердечником (коды - 8, 9)S0 =
0,001301(1 +3,51)0,19
d5,19ν
Полиэтиленовые напорные (код - 10)S0 =
0,00111
d5,226 ν5,226
Стеклянные (код - 11)S0 =
0,001208
d5,226 ν5,226
Стальные и чугунные с цементно-песчаным покрытием (коды -12, 13)S0 =
0,001016(1 +3,51)0,19
d5,19ν

Таблица 14.31

Коэффициенты для расчета предельных расходов

ТрубыпКРalfaRb
Стальные1,90,0017905,11,44,653
Чугунные1,90,0017905,11,63,3107
Асбестоцементные1,850,0011804,891,957,378
Железобетонные1,850,0016884,891,303,3100
Пластмассовые1,7740,0010524,7741,954,6150

Таблица 14.32

Соответствие условных проходов и расчетных диаметров (мм)1

12345678910
Трубы стальные водогазопроводные ГОСТ 3262-75
Dусл6810152025324050
Dpacч6,29,112,615,721,227,235,941,053,3
(5,2)(8,1)(11,6)(14,7)(20,2)(26,1)(34,9)(40,0)(52,0)
Dусл658090100125150   
Dpacч67,580,593,3105,0131156   
(66,5)(79,5)(92,3)(104,0)(130)(155)   
Трубы стальные электросварные ГОСТ 10704-76 и ГОСТ 8696-74
Dусл50607580100125150175200
Dpacч65718496115134159171210
(64)(70)(83)(95)(114)(133)(158)(170)(209)
Dусл250300350400450500600700800

50

Продолжение табл. 14.32

12345678910
Dpacч261311363412466516616706804
(260)(311)(363)(412)(466)(516)(616)(706)(804)
Dyсл90010001200140015001600   
Dpacч90410041202140015001600   
(904)(1004)(1202)(1400)(1500)(1600)   
Tрубы чугунные напорные ГОСТ 9583-75
Dусл6580100125150200250300350
Dрасч67,683,6103,0128,2153,4203,6254,0304,4352,4
(66,6)(82,6)(102,0)(127,2)(152,4)(202,3)(253,0)(304,4)(352,4)
Dусл4004505006007008009001000 
Dpacч401,4450,6500,8600,2699,4799,8899,2998,4 
(401,4)(450,6)(500,8)(600,2)(699,4)(799,8)(899,2)(998,4) 
Трубы асбестоцементные ГОСТ 539-80, класс ВТ9, тип 1
Dусл100150200250300350400500 
Dрасч100141188234275323368456 
Трубы железобетонные виброгидропрессованные ГОСТ 12586-83
Dусл5006008001000120014001600  
Dpacч5006008001000120014001600  
Трубы железобетонные со стальным сердечником ГОСТ 26819-86
Dусл250300400500600    
Dрасч230293394461590    
Трубы полиэтиленовые напорные ГОСТ 18599-83
Dнаруж101216202532405063
Dpacч6,08,012,016,020,426,233,041,151,5
DHaруж7590110125140160180200225
Dрасч61,373,589,8102,6114,3130,7147,3163,7184,0
Dнаруж250280315355400450500560630
Dpacч204,5229,0280315355400462517582
DHaруж71080090010001200    
Dpacч6567388309211106    
Трубы стеклянные ГОСТ 8894-86
Dусл405080100150200   
Dpacч36,056,079,5106,0148,0195,5   
Трубы стальные с цементно-песчаным покрытием ГОСТ 10704-76 и 8696-74
Dусл200250300350400450500600700
Dрасч198249297349396450500598688
Dусл80090010001200140015001600  
Dрасч7848829801176137414721572  
Трубы чугунные с цементно-песчаным покрытием ГОСТ 9583-75
Dусл200250300350400450500600700
Dpacч204,6255,0292,9340,9389,9439,1489,3588,7687,9
Dусл8009001000      
Dpacч786,3863,2982,4      

Примечание. * - в скобках приведены расчетные диаметры для неновых труб

Ввод исходных данных

Перед вводом данных следует пронумеровать все узлы, участки и кольца на сети. Для проведения расчета требуются следующие исходные данные:

  • - общее число участков в сети (CountAreas)

51

  • - общее число узлов в сети (CountNodes);
  • - общее число независимых колец (контуров), имеющихся в сети (CountRings);
  • - наибольшее число участков в одном кольце (MaxCountAreas);
  • - массив конфигурации сети Nodes: в первый столбец этого массива вводятся узлы начала каждого участка, во второй - узлы конца;
  • - массив конфигурации колец Rings: в каждую строку массива (соответствующую одному кольцу) последовательно вводятся номера участков, составляющих это кольцо, причем номера участков, не совпадающие по направлению с движением воды в кольце по часовой стрелке, должны быть со знаком минус;
  • - узловые расходы (массив Rashod), причем расход, направленный в узел (т.е., например, подача от НС), должен быть со знаком минус;
  • - геодезические отметки узлов (массив Z);
  • - длины участков (массив L);
  • - коды материалов труб на участках (массив Mater);
  • - коды диаметров труб на участках (массив NomerD);
  • - необходимый свободный напор в узле (MinH);
  • - минимальный диаметр при оптимизации (MinDiam);
  • - шифр вида оптимизации (TypeOptini);
  • - коэффициент суточной неравномерности водопотребления (Kday);
  • - коэффициент часовой неравномерности водопотребления (Khour);
  • - стоимость электроэнергии (Sigma);
  • - срок окупаемости (Srok).

Начальное потокораспределение1

Метод, который часто применяется для компьютеризированного решения задачи начального потокораспределения, заключается в упрощении системы нелинейных уравнений баланса потерь напора в кольцах - замене их линейными и последующем решении системы /24/.

Линеаризованная модель описывается системой линейных алгебраических уравнений. Первые CountNodes уравнений системы строятся в соответствии с первым законом Кирхгофа для узлов, в соответствии с которым алгебраическая сумма расходов в каждом узле равна нулю:

j
 Qi= Rashodj,         j = 1, 2,..., CountNodes.
(14.63)

Здесь Qi- расходы участков, связанных j-тым узлом.

Для решения системы из указанных уравнений можно использовать не все, а только CountNodes-1, поскольку одно из уравнений линейно зависит от остальных.

Другая группа уравнений, описывающих работу сети, базируется на втором законе Кирхгофа, в соответствии с которым сумма потерь напора на каждом из колец равна нулю:

j
SiQjβ = 0,           j = 1, 2,..., CountRings,
(14.64)

где Q - расходы участков, входящих в j-тое кольцо; Si - гидравлическое сопротивление i-того участка; β - показатель степени, равный 2.

Таких уравнений можно составить столько, сколько выделено колец, т.е. CountRings.

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

52

линеаризованный вариант уравнении:

j
Si · Qi = 0, j = 1, 2,..., CountRings.
(14.65)

Так как для вычисления величин удельных гидравлических сопротивлений нет данных о скоростях на участках, значения Si принимаются равными единице. Начальная цель расчета состоит в определении значений Qiдля всех участков, т.е. для i = 1,2,..., CountAreas. Первые (CountNodes-1) уравнений строятся на использовании соотношения (14.63), а недостающие CountAreas-(CountNodes-1) уравнений - из соотношения (14.65).

Общий вид системы линейных алгебраических уравнений в матричной форме таков:

A · Q = B, (14.66)

Элементы свободных членов вектора В равны либо значениям расходов Rashodi(для первых CountNodes-1 уравнений), либо равны нулю для последних CountAreas-(CountNodes-1) уравнений. Элементы матрицы А формируются по массиву конфигурации Nodes и массиву колец Rings.

Для первых CountNodes-1 уравнений элементы матрицы А определяются по формулам:

Ai,j= -1,  при i = Nodesj,1(14.67)Ai,j= 1, при i = Nodesj,2(14.68)Ai,j= 0, при Nodesj,1Nodesj,2(14.69)

где i = 1, 2,...; CountNodes-1;j = 1, 2,..., CountAreas.

Первое условие соответствует участкам, по которым вода притекает к i-ому узлу, второе - участкам, по которым вода уходит от узла, третье - участкам, не связанным с узлом.

Для последних CountAreas-(CountNodes-1) уравнений элементы матрицы А равны:

Ai,j = 1, при j = Ringsk,jи Ringsk,j>0(14.70)Ai,j = -1, при j = Ringsk,jи Ringsk,j<0(14.71)Ai,j = 0, при jRingsk,j(14.72)

Здесь:

k= 1, 2,..., CountRings (номер кольца);

i = CountNodes, CountNodes+1,..., CountAreas;

j = 1, 2,..., CountAreas.

Уравнение (14.70) выполняется тогда, когда направление обхода по k-ому кольцу и ток j-том участке совпадают, уравнение (14.71) - когда направления и ток противоположны, наконец, последнее уравнение соответствует участкам, которые не принадлежат k-тому кольцу.

По окончании формирования матрицы А выполняется решение системы линейных алгебраических уравнений (14.63 и 14.65). Такое решение всегда существует, поскольку матрица А хорошо обусловлена. Решение можно проводить любым из известных методов (Гаусса, Гивенса, Хаусхолдера).

Формирование матрицы и решение системы линейных уравнений производится с помощью двух подпрограмм - FillingA и BeginStreamAllocation.

Увязка сети методом Лобачева-Кросса

В результате решения системы (14.66) получаем вектор значений участковых расходов Q с точным балансом расходов в узлах, однако, поскольку в системе использовались

53

линеаризованные уравнения баланса потерь напора на кольцах, а в действительности эти уравнения нелинейны относительно расходов баланс потерь напора не соблюдается.

Для выполнения условия баланса потерь напора на кольцах производится перераспределение балансовых расходов - увязка расходов. Наиболее известным и простым методом увязки расходов по кольцам является метод Лобачева-Кросса /19/.

Увязка проводится в следующем порядке. Последовательно для каждого из контуров k = 1, 2,..., CountRings вычисляются невязки потерь напора на кольце (в идеальном случае сумма потерь напора на кольце должна равняться нулю, но в действительности это не так, поскольку расчет расходов проводился для линейной зависимости потери напора от участкового расхода):

Δhk =
j=L
Sj · Qj2
(14.73)

Вычисляется поправка невязки k-того кольца:

ΔQk = - 
Δhk
2
j=L
Sj · Qj
(14.74)

В формулах (14.73) и (14.74) L - элементы кольца, для которого выполняется увязка; Δhk соответствует массиву SigmaDH. Теперь вычисленные поправки включаются в соответствующие участковые расходы:

Qi = Qi - ΔQk при Ringsk,i>0.(14.75)Qi = Qi + ΔQk при Ringsk,i<0.(14.76)

Процесс увязки имеет итерационный характер: каждый раз использование преобразований участковых расходов по формулам (14.73-14.76) уменьшает невязку потерь напора в каждом из колец. Итерационный процесс уменьшения невязок прерывается, как только будет выполнено условие:

maxhk) < ε,

где ε - абсолютная погрешность увязки (константа Epsilon).

Реализация алгоритма увязки сети реализована в виде подпрограммы Uvjazka, которая, в свою очередь, разбита еще на 5 подпрограмм:

CaseD - функция, возвращающая величину диаметра труб при заданном коде материала и номере диаметра в сортаменте;

CalcSO - функция, возвращающая удельное гидравлическое сопротивление труб при заданном коде материала и величине диаметра, а также скорости течения воды в трубе;

CalcDH - процедура, в которой вычисляются значения потерь напора на каждом участке;

ChangeConfig - процедура, в которой изменяется направление движения потоков на участках сети;

ChangeQ - процедура, в которой вычисляются поправочные расходы и происходит правка участковых расходов.

Блок-схема алгоритма подпрограммы Uvjazka приведена на рис. 14.16.

Оптимизация диаметров

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

54

На практике не совсем удобно рассчитывать диаметры по этой формуле, так как после вычисления их приходится округлять до ближайшего сортаментного диаметра. Более целесообразно пользоваться предельным расходом для данного диаметра - это наибольший расход, при котором выбранный диаметр оказывается экономически равноценен следующему сортаментному диаметру. Предельный расход можно рассчитывать по следующей формуле /14/:

Qпред =
(b)
1
n+1
·(d2α - d1α)
1
n+1
β1/d1α - 1/d2α
(14.77)

где b - коэффициент (табл. 14.31); d1 и d2 - меньший и больший смежные сортаментные диаметры; α и n - показатели степени, характеризующие режим работы труб; Р -коэффициент, определяемый по формуле /14/:

β = 
24 · 365 ·103
σγK
102η(1/T + R/100)
(14.78)

здесь σ - стоимость электроэнергии (переменная Sigma); η - КПД насосных станций (константа Eta); R - сумма амортизационных отчислений (табл. 14.31); К - коэффициент (табл. 14.31); Т - срок окупаемости (переменная Srok); γ - коэффициент неравномерности расходования электроэнергии, определяемый по формуле (18.7.19).

Условия строительства и эксплуатации характеризует экономический фактор,

рассчитываемый по формуле:

Э =
pβ
αβ
(14.79)

где p - показатель степени (табл. 14.31).

Рис. 14.16. Алгоритм увязки сети
Рис. 14.16. Алгоритм увязки сети

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

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

Таким образом, цикл "оптимизация-увязка" повторяется до тех пор, пока все диаметры труб после последней по времени оптимизации не останутся постоянными, и поэтому цель расчета - приведение в соответствие диаметров и предельных расходов -считается достигнутой.

Диаметры, с которых начинается оптимизация, могут задаваться тремя различными способами:

55

  • - начальные диаметры на участках выбирает сам пользователь (переменная TypeOptim =1);
  • - начальные диаметры на всех участках приравниваются к минимальным для данного вида труб (переменная TypeOptim = 2);
  • - начальные диаметры на всех участках приравниваются к максимальным для данного вида труб (переменная TypeOptim = 3).
Рис. 14.17. Алгоритм оптимизации диаметров
Рис. 14.17. Алгоритм оптимизации диаметров

Указанная последовательность действий легла в основу алгоритма подпрограммы Optimize, которая разбита еще на 3 подпрограммы:

ChangeDiam - функция, которая производит изменение диаметров на всех участках сети в соответствии с предельным расходом и возвращающая логическое значение

FALSE (ложь), если хотя бы на одном участке диаметр был изменен, или TRUE (правда), если такого изменения не было;

MakeMinDiam -процедура, приводящая диаметры на всех участках сети к минимальным;

MakeMaxDiam - процедура, приводящая диаметры на всех участках сети к максимальным.

Алгоритм подпрограммы Optimize приведен на рис. 14.17.

Определение свободных напоров в узлах*

Для определения свободного напора j-том узле, который связан с i-тым узлом участком, следует воспользоваться формулой:

Рис. 14.18. Схема для расчета свободных напоров.
Рис. 14.18. Схема для расчета свободных напоров.

56

Hj = Hi + ΔHi-j + Zi - Zj(14.80)

где Hj и Hi - свободный напор в узлах; Zj и Zi - отметки поверхности земли в этих узлах; ΔHi-j - потери напора в трубопроводе на участке i-j.

Схема, иллюстрирующая формулу (14.80), приведена на рис. 14.18.

Для расчета свободных напоров во всех узлах сети предлагается следующий общий алгоритм: в узле номер 1 свободный напор первоначально принимается равным О, затем в соответствии с формулой (14.80) рассчитываются значения напоров во всех остальных узлах (без учета разности Zi - Zj). Следующий шаг - поиск наименьшего значения напора Т во всех узлах с учетом геодезических отметок, и, наконец, суммирование Т и необходимого напора MinH со свободными напорами узлов сети. Эта схема послужила основой алгоритма подпрограммы CalcH.

Общая часть программы WaterRings и дополнение к алгоритмам.

Алгоритм общей части программы WaterRings (рис. 14.19) начинается с ввода всех необходимых данных, затем следует обращение к подпрограммам формирования матрицы уравнений начального потокораспределения FillingA и решения этой системы BeginStreamAllocation (блоки 2, 3). В зависимости от выбранного пользователем метода оптимизации диаметров (блок 4) выполняется подпрограмма увязки участковых расходов Uvjazka или подпрограмма оптимизации Optimize (блоки 5, 6). Алгоритм заканчивается подпрограммой расчета свободных напоров CalcH и выводом на печать рассчитанных результатов.

Дополнение к алгоритмам

Как указано выше, при решении задачи

Рис. 14.19. Алгоритм расчета водопроводной кольцевой сети
Рис. 14.19. Алгоритм расчета водопроводной кольцевой сети

57

начального потокораспределения была принята линеаризованная модель распределения расходов по участкам, причем значения удельных сопротивлений S трубопроводов приравнивались к единице из-за неопределенности скорости на участках. Если же рассчитать значение S при условной начальной скорости (например, 1 м/с), то линеаризованная модель еще больше приблизится к реальной и необходимое количество итераций при увязке сети уменьшится.

Примером создания компьютерной программы, реализующей указанные алгоритмы, служит программный комплекс PLUMBING, разработанный на кафедре водоснабжения и водоотведения Вологодского государственного технического университета. Пример расчета водопроводной кольцевой сети с двумя точками подачи воды и тупиком при помощи программы PLUMBING приведен в приложении 18.5.

58


1 - в скобках приведены расчетные диаметры для неновых труб.
1 В разделе использовались алгоритмы доцента (В.К. Королёнка)
© Национальная Библиотека
© Национальная Библиотека