Мы аналогичное ПО разрабатываем в России и я являюсь ведущим программистом в проекте. Приятно увидеть что кто то пишет про такие проблемы тут. Интересно было бы подробности: какие методы для гидравлики используете и для решения ОДУ при моделировании гидроприводов. Начинали тоже в Бауманке на кафедре Э7.
Для решения большинства задач (не только в гидравлике) хватает BDF. Для сильно жёстких систем отлично работает внешний решатель CVODE от SUNDIALS Suite. В этом случае модель автоматически экспортируется как c++ код и решается внешним компилятором (хоть от бесплатной Visual Studio). Получается в несколько раз быстрее в сравнении с обычным решателем. В новой версии сделали возможность считать BDF тоже через внешний компилятор, но я ещё не успел опробовать...
BDF мы в библиотеке электрики тоже применяли. В принципе хватает его там. При использовании CVOD метод решения СЛАУ на неявных методах интегрирования какой у вас лучше показал себя (прямой или итерационный) ? Для электрики тоже для ускорения тоже из модели си код генерировали при этом в самой модели использовали приведение ненаправленного графа к направленному и прямую запись коэффициентов матрицы проводимостей. А вот для реакторных задач использовали явные адаптивные методы Скворцова, они себя там хорошо показали когда есть медленная теплогидравлика и быстрая кинетика нейтронов. П.С. Давайте обсуждать технику, а не торговлю или политику, т.к. жизнь тут и в Германии разная совсем, работодатели тоже разные а вот интересы в данном случае общие.
Для CVODE по умолчанию используется неявный метод с эффективным расчётом якобиана и решателем разрешенных матриц. Ну и есть возможность методом Гаусса считать, если очень хочется) Подробнее сказать ничего не могу, т.к. я этим не занимаюсь и только транслирую что написано в помощи) В случае с гидравликой, жёсткость системы уравнений появляется преимущественно из-за введения объёмов для вычисления давлений, либо из-за учёта электромеханических процессов в электромеханических преобразователях. И того и другого, как правило можно избежать (для вычисления давлений перейти к системе алгебраических уравнений, а резонансы ЭМП, в реальности, как правило задемпфированы и нужно понять как это описать в модели). Поэтому проблема с жёсткими системами уравнений стоит не так остро как в случае с АЭС.
Хотя, вру) Есть класс задач, как раз с теми же пульсациями в трубопроводах и учётом взаимодействия с механической частью системы, когда хочется считать одновременно и частоты порядка сотен герц, и единиц герц (в килогерцы уходить уже не имеет особого смысла, т.к. тогда начинает играть роль динамика изменения свойств жидкости, которая не даст проявиться этим частотам на сколь бы то ни было заметных амплитудах).
Такой статистики у меня нет. Я работал с порядками, по ощущениям, сотни диф. уравнений (например, в задачах с трубопроводом, дискретизированным методом конечных разностей).
Reply
Reply
А вот для реакторных задач использовали явные адаптивные методы Скворцова, они себя там хорошо показали когда есть медленная теплогидравлика и быстрая кинетика нейтронов.
П.С. Давайте обсуждать технику, а не торговлю или политику, т.к. жизнь тут и в Германии разная совсем, работодатели тоже разные а вот интересы в данном случае общие.
Reply
Подробнее сказать ничего не могу, т.к. я этим не занимаюсь и только транслирую что написано в помощи)
В случае с гидравликой, жёсткость системы уравнений появляется преимущественно из-за введения объёмов для вычисления давлений, либо из-за учёта электромеханических процессов в электромеханических преобразователях. И того и другого, как правило можно избежать (для вычисления давлений перейти к системе алгебраических уравнений, а резонансы ЭМП, в реальности, как правило задемпфированы и нужно понять как это описать в модели). Поэтому проблема с жёсткими системами уравнений стоит не так остро как в случае с АЭС.
Reply
Reply
Reply
Reply
Leave a comment