Здравствуйте, сейчас я занимаюсь задачей исследования ндс-состояния бака с жидкостью при различных сейсмических нагрузках.
Моделирование воды происходит с помощью элемента fluid80, бак моделируется shell-элементами.
В transient анализе граничным условием является гармоническое движение дна бака с частотой = собственным частотам воды в этом баке ( исследование было проведено ранее).
Контакт между водой и стенкой бака задавал двумя разными способами, сперва bonded, но при нем нельзя анализировать плескание жидкости, потому что край жидкости преклеен к стенкам бака.
Пробовал поставить контакт типа no separation, что по сути должно соответсвовать тому, что вода сможет скользить по стенкам бака. Но при такой постановке контакта ansys не решает эту задачу, выдавая сообщение о том, что не достиг сходимости.
Вопрос в том, можно ли как-то в WB поставить условия на узлы воды, чтобы они могли двигаться относительно узлов стенок по z, но не имели права двигаться по x, y?
Примерно представляю, как сделать эту задачу в классическом Ansys, необходимо просто объединить (coupled) узлы воды и стенок бака в каком-то направлении, но плохо знаю APDL и думаю, что его изучение займет много времени, поэтому вдруг, если есть способ сделать это в WB, то поделитесь, пожалуйста.
Спасибо.
Conditions - Coupling, там выберете геометрию и степень свободы которую надо связать, для двух направлений придётся повторить еще раз. Ради интереса скажите какие у вас габаритные размеры бака и уровень жижи.
Радиус бака - 5 м, высота - 18 м, бак заполнен на половину.
Извините, но случается что-то странное, в transient в вкладке conditions горит только строка Contraint equation, coupling для выбора недоступен.
Можно ли в transient анализе как-то воспользоваться этим?
Радиус бака - 5 м, высота - 18 м, бак заполнен на половину.
Извините, но случается что-то странное, в transient в вкладке conditions горит только строка Contraint equation, coupling для выбора недоступен.
Можно ли в transient анализе как-то воспользоваться этим?
Все отлично решается, если учесть комментарии к этому типу элемента. Контакт между жидкостью конструцией только No Separation, Large Deflection = off. Поскольку контакт только no separation, колебания зеркала жидкости должны быть небольшими
И все элементы Fluid80 должны быть строго hexa. Также удостоверьтесь что задаваемые параметры материала жидкости, верно учитываются в расчете, если вы задаете их в командной вставке
Спасибо большое за ответ.
Вроде бы от части получилось, поставил контакт No Separation и в нем Derection Method - Nodal Normal to Target, чтобы вода скользила по стенке бака, а не проникала в материал.
Но есть некоторые проблемы в том, что при увелечении частоты колебаний бака на одном из шагов решатель начинает выдавать Warning типа "Contact element 20469 (real ID 6) status changes abruptly from contact (with target element 17077) -> no-contact." + пишет "THERE IS TOO MUCH PENETRATION AT 965 CONTACT POINTS OF THE 3D CONTACT ELEMENTS".
Как я понимаю, это из-за слишком сильного деформирования воды в процессе движения? Можно ли с этим что-то сделать?
Вы неправильно понимаете смысл настройки Detection Method " Nodal Normal to Target". Оставьте Program Controlled. Вообще элемент довольно капризный и специфический -- именно поэтому ANSYS признал его устаревшим.
Современными и робастными элементами для решения подобных задач являются элементы типа FLUID30, FLUID220, FLUID221. Поскольку они в отличие от того же FLUID80 имеют в узлах степень свободы "давление", а не перемещения, то напрямую стыковать их обычными элементами нельзя. Для удобной работы с данными элементами я рекомендую использовать бесплатное ACT-расширение Acoustics, которое вы можете скачать с ANSYS Customer Portal.
Современные элементы позволяют быстро и существенно решать задачи динамики резервуаров -- можно выполнять модальный анализ, Response Spectrum (актуально если у вас сейсмическое воздействие задано с помощью спектра), и Transient. Ограничения те же самые -- колебания зеркала жидкости должны быть относительно небольшими.
Ну а если у вас "серьезное" плескание -- воспользуйтесь продуктами явной динамики, например LS-DYNA
Просто без Detection Method получается нечто подобное + решение срывается, см. картинку 1, а если учитывать, то зеркало воды хорошо отклоняется и имеет вид, картинка 2.
Спасибо большое за совет на счет ACT - расширения, постараюсь использовать.
Я пытался использовать продукты явной динамики, а именно Ls - Dyna, в котором старался реализовать sph метод, но к сожалению с столкнулся там с рядом сложностей.
Например, я не понял как задать там график функции, с помощью Curve Function, но с помощью него как-то так ничего и не получилось.
Но даже если просто построить рандомный график от времени в инструменте curve и задать, как граничное условие на стенки сосуда, то решатель отказывается все это делать со словами, что initial kinetic energy = 0. Но движение задано.
"Вы просто не умеете их готовить", тем более что задание ГУ через кривую это достаточно простая операция. Приходите на обучение http://cae-expert.ru/education_courses
Странно, у меня наоборот. У вас какая версия?
Добавить комментарий