Общая информация

Библиотека Моделирования Потоков позволяет вам моделировать хранение и перенос жидкостей, объемного вещества или множества дискретных элементов, которые вы не хотите моделировать по отдельности.

Библиотека включает в себя такие блоки как Tank, Pipeline, Valve, FluidSource и FluidDispose. Есть также блоки для направления, объединения и разделения потока. Кроме того, имеется объект BulkConveyor, разработанный для моделирования переноса объемных веществ или конденсирующихся летучих веществ. Вы можете найти полный список блоков Библиотеки Моделирования Потоков здесь.

Библиотека Моделирования Потоков взаимодействует с Библиотекой Моделирования Процессов. Она может преобразовывать агенты в партии жидкости, и наоборот.

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

Линейная природа гидродинамики позволяет использовать LP-решатель (для линейного программирования), для того чтобы вычислять максимальную скорость потока жидкости. Решатель вызывается только в определенные моменты изменений, что делает скорость исполнения моделей из Библиотеки Моделирования Потоков намного выше, чем у моделей из Системной Динамики. Вместе с тем, LP вычисления намного более точны, так как в LP решателе не используются временные шаги. Мы рекомендуем использовать Библиотеку Моделирования Потоков в тех случаях, когда система линейна, а Системную Динамику использовать только в том случае, если система является нелинейной, то есть когда в модели присутствуют непрерывные циклы обратной связи или постоянное изменение скорости движения потока жидкости.

Увеличение скоростей потоков до максимума и приоритеты потоков

По умолчанию, данные блоки Библиотеки Моделирования Потоков заставляют LP решатель до максимума увеличить скорости их выходных потоков: FluidSource, AgentToFluid, Tank, и BulkConveyor. Кроме того, блоки FluidMerge и FluidSplit в режиме приоритетов формируют запросы на увеличения скорости потока до максимума на одном из входов или выходов. Это реализуется путем повышения приоритета (коэффициента) скорости движения соответствующего потока в целевой функции линейного программирования. По умолчанию, величина скорости этого потока получает приоритет 1, а всех остальных потоков - приоритет 0.

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

Максимальные и минимальные значения скоростей и уровней

Если значение скорости во время выполнения модели равняется Utils.MAXIMUM_RATE (1.0E10), модель остановится и появится сообщение об ошибке “Flow rate evaluated to the maximum value. You need to set a limit for this rate.”  Это происходит ввиду того, что максимальная скорость как правило не является нормальной величиной, чаще следствием того, что пользователь не указал где-либо ограничение скорости. Чтобы избежать подобной ситуации, необходимо указать ограничение максимальной скорости в свойствах блоков диаграммы процессов. 

Любой объем, скорость, длина или плотность меньше, чем 1.0E-6, считаются равными нулю, и партии такого размера или длины отбрасываются. Как правило, это остатки обычных партий, созданные ошибками арифметических вычислений.