8.1. Гидравлический расчет

Алгоритм гидравлического расчета, реализованный в Aerosym, базируется на постоянстве направлений потоков во всех элементах. Гидравлический решатель запускает итерации обычных расчетов, изменяя степени свободы и наблюдая невязки уравнений в элементах. Для схем без замкнутых контуров обычный расчет заключается в последовательном расчете элементов. Порядок элементов определяется простой сортировкой вершин ориентированного графа – элемент не считается, пока не посчитаны все входящие в него потоки. Расчет температур и составов выходных потоков происходит непосредственно при расчете элементов, поэтому для простых схем не требуется дополнительных итераций. Гидравлический расчет подразумевает наличие некоторое количество уравнений, и соответствующее ему количество степеней свободы – переменных, значения которых находятся для выполнения уравнений

fjx1,,xn=0, j=1,,n

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

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

Jij= fjx1,,xi+δxi,,xn- fjx1,,xi,,xnδxi

Вектор

x=J-1f

определяет направление поиска для вектора степеней свободы следующей итерации.

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

- в ориентированном графе расчетной схемы определяются такие связи, разрыв которых переводят схему в схему без контуров. Потоки таких связей называются далее реверсными (обозначены кругом, рис.8.1.1).

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

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

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

Описанный выше итерационный расчет соответствует решению системы уравнений вида

y=G(y)

где \(y\) – параметры реверсных потоков. В реверсных потоках сохраняется результаты нескольких последних итераций, что используется для применения метода Вегстейна для ускорения сходимости.

Рис.8.1.1 Схема с замкнутыми контурами, реверсные потоки

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

Гидравлический расчет реализован в ядре Aerosym. В стандартном потоке есть флаг, указывающий решателю, что расход этого потока является степенью свободы. Гидравлические элементы, то есть те, которые задают степень свободы или уравнение, располагаются в отдельных библиотеках (.dll), загружаемых автоматически при запуске программы. Пользователь имеет возможность создавать новые гидравлические элементы путем написания собственных библиотек на C++. Для этого необходимо переопределить виртуальные функции базового класса:

- получить количество степеней свободы элемента,

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

- задать степень свободы,

- получить количество уравнений,

- рассчитать невязки уравнений.

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

Рис.8.1.2 Гидравлическая схема