Стокс Купить Справка Контакты
Справка Алгоритм увязки кольцевых сетей и сетей с несколькими источниками

Алгоритм увязки кольцевых сетей и сетей с несколькими источниками


Общий принцип расчёта
Подготовка данных для итеративного расчёта
Линейная аппроксимация сопротивления трубопроводов
Составление и решение матрицы


Для примера в этой статье будет использоваться вот такая схема:

Слева кольцевая сеть, справа её тупиковый эквивалент, в котором кольцо разорвано и расход потребителя 9 разделён на 2 потребителя — 27 и 28 (выделены циановым цветом). Таким образом можно проверять корректность балансировки колец в Стоксе и других аналогичных программах — давление на входе в узел 5 должно совпадать с давлением в узлах 23 и 29.

Вы можете скачать stks-файл примера и открыть его в Стоксе. В бесплатной версии Стокса выделите и удалите правую половину (эквивалентную тупиковую сеть), тогда объектов станет меньше 25 и их можно будет передвигать и редактировать. Фоновую подложку с надписями можно скрыть, нажав Ctrl+B.


Общий принцип расчёта


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

  1. расход распределяется по полукольцам в произвольной пропорции,
  2. начало цикла
  3. считается падение давления исходя из этих раходов,
  4. считается невязка в точках слияния потоков,
  5. если невязка в допустимых пределах, расчёт считается завершённым, выходим из цикла
  6. с перегруженных участков часть расхода перебрасывается на недогруженные,
  7. возвращаемся на п.2

Невязка — это разница между максимальным и минимальным давлением на входе в точку слияния потоков со стороны разных полуколец/источников. Согласно СП 42-101-2003 допустима невязка до 10%, но программы для гидравлических расчётов (в т.ч. Стокс) обычно продолжают балансировку, пока она не станет гораздо меньше 1%.


Подготовка данных для итеративного расчёта


Начальные значения расходов распределяются так же, как и в тупиковых сетях — последовательным проходом от каждого потребителя в сторону источников. Разница лишь в том, что если на пути встречается точка слияния потоков (которых в тупиковых сетях не бывает), то расход делится поровну между всеми входящими в неё трубами.

В рассматриваемой в качестве примера сети в начальном состоянии точкой слияния потоков является узел 4. Его расход 10 м3/ч распределяется поровну по 5 м3/ч между трубами со стороны узлов 3 и 5. Начальные расходы и их направления показаны на схеме оранжевым цветом.


Линейная аппроксимация сопротивления трубопроводов


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

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

Если же свести решение к системе линейных уравнений, то её можно решить, например, методом Гаусса. Линейные уравнения будут иметь такой вид:

∆PL = ∆Pfix + R Q (1)

где
∆Pfix – не зависящая от расхода фиксированная потеря давления, Па,
R – сопротивление трубопровода, Па / (м3/c),
Q – расход, м3/c.

R и ∆Pfix считаются по следующим формулам с использованием результатов предыдущих итераций:

R(n) = (∆PL(n-1) - ∆PL(n-2)) / (Q(n-1) - Q(n-2)) (2.1)

∆Pfix(n) = ∆PL(n-1) - R(n-1) Q(n-1) (2.2)

Для первой итерации результатов предыдущих итераций ещё нет. Поэтому для первой итерации и для некоторых промежуточных (об этом ниже) считаем по формулам:

R(n) = ∆PL(n-1) / Q(n-1) (3.1)

∆Pfix(n) = 0 (3.2)

В формулах (n), (n-1) и (n-2) обозначают номер итерации: n – значения, использующиеся и полученные в n-ой итерации. Если n=0, имеются в виду значения, полученные при предварительном распределении расходов.

В графическом виде эти два варианта линейной аппроксимации можно представить таким образом:

Зелёным цветом показана линейная аппроксимация, полученная по формулам 2.1 и 2.2; фиолетовым – по формулам 3.1 и 3.2; синим – реальная зависимость ∆P от Q, посчитанная по формуле Дарси-Вейсбаха. Q0 – расход после предварительного распределения, Q1 – после первой итерации. Фиолетовая R используется для 1-й итерации, зелёные R и fix – для 2-й.


Составление и решение матрицы


Для дальнейшего решения составляется квадратная матрица (система линейных уравнений). Количество уравнений равно количество труб в подсети. Каждой трубе соответствует строка и столбец. Неизвестные – Q соответствующих труб, коэффициенты матрицы и вектора (столбца свободных членов) описаны ниже.

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

В строке труб, ведущих к разветвителю (но не в точку слияния потоков), коэффициенты соответствующего столбца 1, коэффициенты столбцов, соответствующих трубам, вытекающим из этого разветвления, -1, остальные 0. Вектор 0 – сумма входящих расходов = сумме выходящих.

Для труб, ведущих к точке водораздела, составляются два вида уравнений:

На самом деле помимо R и ∆Pfix(n) учитываются ещё давления источников и разности высот, но для упрощения описания эти нюансы опущены.

Дальше:

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