ilang

расчет сопла Лаваля

220 posts in this topic

Здравствуйте.

При расчете солпа Лаваля столкнулась со следующей проблемой.

Была посчитана задача сверхзвукового истечения газа из сопла Лаваля. Параметры газа на входе давление 20атм, температура 590К. Давление фоновое 10^(-3)ммрт ст. на выходе необходимо получить значение числа маха =2.

граничные условия:

На левой стороне расчетной области задавалось граничное условие вход со скоростью набегающего потока, определенной давлением Pin =2000000 Па ,температурой Tin =590 К.

На верхней стороне установлено граничное условие стенка. Температура определяется нулевым градиентом, скорость условием прилипания.

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

На правой стороне установлено граничное условие свободный выход. Температура была задана значением, 0 К. На скорость накладывалось условие-сверхзвуковой выход.

Задача рассматривалась в двумерной осесимметричной постановке, без учета турбулентности.Сетка 100 на 35, без адаптации.

Данный проект прилагаю с названием<noindex> сопло</noindex>. И <noindex>отчет</noindex> по нему небольшой.

Затем была поставлена похожая задача, где условие выхода ставилось уже не на сопло, а на сферическую поверхность. Хотелось посмотреть чем будут отличаться результаты, однако при тех же настройках данная задача у меня разваливается. Проект прилагаю с названием <noindex>сопло_сфера</noindex>.

Быть может кто-нибудь подскажет в чем может быть причина или как бороться с данной проблемой?

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

Share this post


Link to post
Share on other sites


Ребята, ну подскажите же что-нибудь,пожалуйста.

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Мы обычно делаем так - задаем давление в камере на ГУ.

Задаем НУ с тем же давлением в объеме, который простирается до критического сечения.

И т.о. сразу начинаем решать истечение потока из критики и изменение условий до критики.

Обычно работает.

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

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

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

Выход: или это место проадаптировать локально, чтобы градиент по сетке размазать, или задать распределение в этом месте более монотонное.

И не забывайте, что работать нужно в версии как можно более свежей.

Share this post


Link to post
Share on other sites

сопло_сфера_17.rarЗдравствуйте, спасибо огромное за ответ!

Сделала адаптацию на стенке. задала НУ в пространстве с большим давлением( 1000000Па), сначала решение было вполне адекватным..невязки в -7 степени, число Маха на выходе 1,5..так было где-то на 1000 шагов, затем оставила решалку на ночь, встала с утра..а там все развалилось((((.

Проект с результатами прилагаю.

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

Мы обычно делаем так - задаем давление в камере на ГУ.

Задаем НУ с тем же давлением в объеме, который простирается до критического сечения.

И т.о. сразу начинаем решать истечение потока из критики и изменение условий до критики.

Обычно работает.

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

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

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

Выход: или это место проадаптировать локально, чтобы градиент по сетке размазать, или задать распределение в этом месте более монотонное.

И не забывайте, что работать нужно в версии как можно более свежей.

Share this post


Link to post
Share on other sites

Какая версия FV?

Share this post


Link to post
Share on other sites

Я в постановке кое что поправил.

1. Убрал адаптацию.

2. Поигрался сеткой начального уровня, чтобы сделать неравномерную сетку - сгустить в районе сопла и струи. Сделал поперек одну ячейку.

3. Задал еще парочку областей для адаптации - не только в боксе, но еще в конфузорной части и цилиндрической.

4. В ограничителях для скорости убавил диапазон.

5. Вместо физического шага задал число Куранта=1. Добавил ограничитель по шагу интегрирования 1e-8, а потом ограничитель снял, чтобы шел по явному шагу расчет.

6. Можно еще задать на границе Всободного выхода подусловие для Скорости - Сверхзвуковой выход. Т.к. слишком выход близко от сопла задан... уже стоит. :)

Запустил у себя на предрелизной версии. Поглядим что да как.

Если упадет после 1000 итерации, то одам разработчикам.

Share this post


Link to post
Share on other sites

Запустил у себя на предрелизной версии.

это которая пре.8.2?

не ожидал, что в архиве файл к FV3...

просто у меня мое сопло еще пока не пересчитано,

которое тоже валилось раньше - и от развала я ушел через расчет на шаге ~0.5 CFL или меньше.

еще поступали рекомендации - отключать турбулентность, но пока не пробовал.

Share this post


Link to post
Share on other sites

1500 итераций, полет нормальный.

Шаг интегрировани 3e-7

Турбелентности тут нет.

Порядок первый.

В задаче заданы опорные характеристики атмосферы близкие к вакууму.

Для меня это экзотический ход, т.к. я обычно подбираю опорыне величины ближе к рабочим..

Сейчас переключю на второй порядок.

Share this post


Link to post
Share on other sites

2000 итераций на втором порядке. Полет нормальный.

Share this post


Link to post
Share on other sites

Здравствуйте!

Спасибо, что не забываете))).

1)Версия 3.08.01, насколько я понимаю это самая свежая из всех, что сейчас доступны.

2) Переделала проект, следуя вашим советам.

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

Адаптация у меня и была на всей стенке сопла, поэтому я её оставила..

Задала число CFL =1. Ограничила шаг интегрирования до 1e-8.

На условие выхода стоит сверхзвук по -прежнему.

Плюс ещё я поменяла нач условия. В боксе давление 2000000, температура 590( как в гран условие входа), во всей остальной области давление 0,13 (как в вакууме), температура комнатная 300К. Решение сразу разваливается, как же у вас все вышло правильно?В прошлый раз я делала давление в нач усл для пространства выше..порядка тоже 2000000 и все по началу шло хорошо, но затем разваливалось.

Ещё у меня задачка очень медленно считается и компьютеру тяжело постоянно, но я думаю это из-за измельчения сетки произошло.

Проект прилагаю.

soplo_sphera_18.rar

Share this post


Link to post
Share on other sites

Сетка

post-1864-1334818825_thumb.jpg

Объекты внутри которых задаются начальные условия

post-1864-1334818961_thumb.jpg

Share this post


Link to post
Share on other sites

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

Плюс - устойчивость решения при таком НУ гораздо выше, минус - решение сходится медленнее.

Share this post


Link to post
Share on other sites

Собственно это мы и делаем задавая НУ с высоким давлением до критического сечения. Задача с этого момента и начинает развиваться фактически от границы.

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

Возможно, что у автора какой-то косяк в решалке, просто и всего.

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

post-1864-1334901814_thumb.jpg

post-1864-1334901818_thumb.jpg

Share this post


Link to post
Share on other sites

ID: 15   Posted (edited)

Собственно это мы и делаем задавая НУ с высоким давлением до критического сечения. Задача с этого момента и начинает развиваться фактически от границы.

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

Возможно, что у автора какой-то косяк в решалке, просто и всего.

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

Если я правильно понял задачу то у ТС истечение в вакуум (0.13Па) а на ваших картинках внешнее давление близко к атмосферному. При истечении в атмосферу вообще никаких проблем быть не должно у любого решателя.

Edited by HFL

Share this post


Link to post
Share on other sites

Нет, у него только опорное давление задано маленькое, а НУ большие.

В процессе решения, учитывая ГУ и их близость, получается то, что получается.

При работе именнно в вакууме мы обычно стенки подальше отодвигали.

Share this post


Link to post
Share on other sites

Для данной задачи можно разделить ГУ, чтобы было св/зв и обычное.

Но можно не фантазиоровать, и если все сходится нормально, то задать везде на выходе просто Своодный выход с нулевым давлением, относительно опорного.

Share this post


Link to post
Share on other sites

Если жы мы хотим считать задачу, не дожидаясь, когда там НУ рассосется, а убрать все НУ и считать с момента вакуума, то главный фикусовый пикус этой задачи это большой перепад давления между ГУ и областью. Из-за этого, если задавать большой шаг интегрирования, то получится "проскок" - около ГУ будет область с очень высокой скоростью и очень низким давлением, после нее уже сформируется область с другими характеристиками. Эта зона прилипнет у входу и будет давать нефизичное поведение.

Чтобы удрать зону "проскока" нужно в начале задать очень маленький шаг интегрирования.

Потом уже можно будет ослаблять ограничитель и получить нормальное распределение давление от входа в область..

Share this post


Link to post
Share on other sites

а насколько всё это шаманство может ускорить счет по сравнению с заданием давления на входе по формуле в зав-ти от времени?

Т.е. если решать нестационар с вакуума во всем объеме, постепенно поднимая давление на входе.

Тогда этих моментов с проскоками и пр. можно 100% избежать.

Share this post


Link to post
Share on other sites

Самое лучшее шаманство это поставить массовый расход на входе.

Если ставить давление, то всегда придется тараканов лечить.

Я на выходные оставил свою постановку на расчет. Там проблема именно из-за гуляния волны внутри камеры движка. С выхлопом проблем вообще нет никаких.

Если не получится, буду делать как ты говоришь - запускать движок подкручивая подсос.

:)

Share this post


Link to post
Share on other sites

Занятная задачка.

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

Сейчас новый решатель все это проглатывает не кашляя.

В чем проблема. Проблема в том, что волна давления доходит до сужения сопла, где площадь сечения критики меньше по площади чем оставшаяся часть сечения. ВОЛна отражается от стенки конфузора и идет обратно. Доходит в виде ударной волны до входа, где задано давление и с этого места начинается "Страх и ненависть в Лас-Вегасе".

Все существующие методики, которые были тут перечислены, годятся для дозвукового истечения с ГУ.

Тут же я не готов целовать крест какая скорость у нас в реальности получается на Входе.

Если есть оценка этой скорости, то нужно вместо ГУ Давление задаь Давление с Нормальной скоростью. И не забыть указать скорость.

Продожаем считать.

Share this post


Link to post
Share on other sites

всё-таки я бы не отказывался от ГУ "давление"...

просто поднять его надо плавно - P=P(t)

поднять настолько плавно, чтоб не было ударной волны

Share this post


Link to post
Share on other sites

Поднимал уже.

Попробую конечно же другую зависимость, но судя по поведению - не поможет.

Share this post


Link to post
Share on other sites

Все, я зашел в тупик.

А что вообще за устройство? Можно по подробнее описать, как осуществляется подача газа в сопло?

Share this post


Link to post
Share on other sites

А что вообще за устройство? Можно по подробнее описать, как осуществляется подача газа в сопло?

...посмотри файл-отчет, который я посылал в конце года (Сопло.pdf)...

Не думаю, что это сопло от моего принципиально отличается.

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

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

Share this post


Link to post
Share on other sites

Проект прилагаю.

в этом проекте мне бросилось в глаза:

1) температура вакуума = 300К .... многовато. поставил 3К

2) вернул опорные значения в 300К@100000Па (соотв-но в пространстве заданы -99999,8Па@-297К)

3) свободный выход : заменил сверхзвук на статическое давление (равное НУ). статическое давление автоматом переключится на сверхзвук в нужных ячейках.

4) вход/выход - Статическое давление на входе заменил на Полное давление. Статику можно задать только на входе (т.е. если вдруг пойдет за обратной волной масса, то ничего хорошего не будет). И еще момент - статика там меняется (на мой взгляд) хитрее, чем полное давление, поэтому, по идее, полное - корректнее.

5) перекроил геометрию, т.к. выглядела странно...

попробую посчитать)

UPD по п.4.:

"Статическое давление на входе" и "Полное давление" - это дозвуковые ГУ.

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

либо шаманить, меняя тип ГУ.

Вариантом тут является Нормальная скорость с давлением. Это ГУ допускает и вход и выход, на сверхзвуке близко к прибиванию скорости и давления, на дозвуке близко к прибиванию давления. В целом, логика зашита странная (не очевидная) - через массовую скорость, но в д.с. это может сыграть на руку.

в общем, пока оставил на нем считать. поставил маленькую скорость и рост давления.

Share this post


Link to post
Share on other sites

4) вход/выход - Статическое давление на входе заменил на Полное давление.

Это можно делать, только если вход дозвуковой.

Все остальное я уже пробовал.

в общем, пока оставил на нем считать. поставил маленькую скорость и рост давления.

Я уже пробовал.

:)

Share this post


Link to post
Share on other sites

Здравствуйте, извините пожалуйста, уезжала из города по неожиданным обстоятельствам. Сегодня вечером вернусь с работы и отпишусь подробно.

Share this post


Link to post
Share on other sites

Я уже пробовал.

А плотность таблично задавать?

Начальная плотность очень высокая получается.

М.б. стоит её понизить, задав таблично?

Share this post


Link to post
Share on other sites

Я пока сделал финт ушами.

Поднял опорное давление до 10 Па, а шаг сверху ограничили 1e-9.

Картина течения другая. Теперь поток плавно доходит до конфузора и от него не отражается, а вдоль него образуется особая пристеночная зона течения.

Сейчас снял ограничение по шагу интегрирования и он вырос до 5e-8.

как получу струю, то опорное давлению опущу до исходного и посмотрим что получилось.

Share this post


Link to post
Share on other sites

А разве можно менять опорное давление между шагами??

Мне говорили, что так нельзя делать.

а то, что шаг надо ограничивать - это понятный момент. я бы еще рекомендовал CFL 0.45 ставить.

и еще - там сужение резкое. в итоге у стенки вектор направлен вниз. Но ячейки вытянуты вдоль Х.

Поэтому считаю, что ячейки надо квадратные делать, чтоб шпв в ячейках был примерно одинаковый

Share this post


Link to post
Share on other sites

Сетку я уже давно переделал. Она у меня внутри сопла везде квадратная - выше изображение приводил.

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

Если перестало считать, то значит звоночек.

P.S. Да нет, один хрен отражается и бьет во вход.

post-1864-1335445262.jpg

Share this post


Link to post
Share on other sites

P.S. Да нет, один хрен отражается и бьет во вход.

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

post-26004-1335446343_thumb.png

Share this post


Link to post
Share on other sites

Это нормально. Как раз раньше мы тут сетку адаптировали.

Сейчас решалка все это проглатывает.

Share this post


Link to post
Share on other sites

Это нормально. Как раз раньше мы тут сетку адаптировали.

Сейчас решалка все это проглатывает.

фишка в том, что на эти несколько ячеек не подействовала, например, установка переменной.

в общем, они стремные...

пробую одновременно поднимать давление на входе и сразу во всем докритическом объеме (с помощью установки переменной)

т.е. и там, и там одна и та же формула стоит.

тогда, по идее, не будет волны.

Share this post


Link to post
Share on other sites

Мы не знаем какой режим должен быть на входе.

Мальчики ждут девочек - показаний автора.

Share this post


Link to post
Share on other sites

Мы не знаем какой режим должен быть на входе.

Мальчики ждут девочек - показаний автора.

формально, да.

реально нужен стационар выхода )

иначе присутствовала бы более подробная схема докритической части.

по идее, это баллон с клапаном.

Share this post


Link to post
Share on other sites

Это нормально. Как раз раньше мы тут сетку адаптировали.

Сейчас решалка все это проглатывает.

... но ведь получается, что эта ячейка рулит шагом по времени....

скорость большая, ячейка маленькая => наименьший шаг по времени там.

И что - можно множитель шага поднимать?

И всё-таки сомнительно, то там не срабатывает установка переменной.

Занулить бы там модификатором скорость и считать дальше спокойно.

Share this post


Link to post
Share on other sites

Если не срабатывает модификатор, то это повод для разбора.

В этом месте решалка должна прокашляться и поскакать дальше.

Share this post


Link to post
Share on other sites

Если не срабатывает модификатор, то это повод для разбора.

В этом месте решалка должна прокашляться и поскакать дальше.

модификатор на таком месте вроде бы сработал 1 раз из трех.

И такие точки - они мигрируют и/или появляются в новых местах....(см.картинку) (скорость там упирается в ограничитель).

Правда, это дело происходило на 1м порядке точности. я этот момент не отследил в проекте, который скачал.

Сейчас поставил 2й порядок и 128 бит - лаги эти сдуло. Правда, они очень скоро и в более жестком развальном виде проявились в других местах ))

жесть )

post-26004-1335474118_thumb.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.



  • Сообщения

    • BSV1
      Плохо быть толстым котом https://www.m24.ru/news/obshchestvo/12112019/96966?utm_source=yxnews&utm_medium=desktop&utm_referrer=https%3A%2F%2Fyandex.ru%2Fnews
    • Isten21
      Спасибо за ваш ответ, сплайны я не использовал в построении, только простую геометрию, но все равно в итоге построения получаются сложные кривые (прикрепил базовые эскизы к этому сообщению), за пояснение по команде "развернуть" и "повторное сворачивание" отдельное вам спасибо, как то раньше не сталкивался с этими инструментами, очень помогло преобразить кромки!!! А по поводу поверхностных тел и "толщины", я пробовал этот вариант, но там мне не понравилось большое количество ошибок возникающих в местах предполагаемых сопряжений, но наверное тут больше моя вина, надо еще проработать это направление. Спасибо вам огромное за ваши дельные советы, вы очень помогли !
    • jango
      Добрый вечер!!
      При экспорте в снсКАД 16 из SW18 выдает такую ошибку
        Подскажите куда копать, как исправить эту ошибку?
    • denis3122
      Скачай komodo и протестируй, это будет лучше всего.  { ![info exists mom_from_pos($mom_cycle_spindle_axis)] &&\  [info exists mom_sys_home_pos($mom_cycle_spindle_axis)] } ![info exists mom_from_pos($mom_cycle_spindle_axis)] info exists mom_from_pos($mom_cycle_spindle_axis) - функция возвращает true если элемент массива mom_from_pos($mom_cycle_spindle_axis) - существует   [info exists mom_sys_home_pos($mom_cycle_spindle_axis)] - аналогично 
    • Борман
    • denis3122
      Моя автоматизация создания ТП. Буду рад если получу какой нибудь feedback.
    • Tajfunchik
      Простите, а можно поподробнее? пост вполне нормально делает уп для 4-х осевой обработки, уже проверял на станке, все вроде даже корректно делает. А вот индексную не пойму как сделать. то есть солидкам показывает что фреза относительно детали меняет положение, но когда я через "Ctrl+кнопка мыши" выбираю три операции с MAC-1 с каждой из позиций, и пришу сделать УП, он делает УП на три операции, но без поворота оси.  При этом если написать вместо вот этого: ... N206 Y-41.48 F1000.
      N207 G00 Z60.
      N208 (FM-facemill2)
      N209 Z250.
      N210 G54 X-122.28 Y53.
      N211 Z60.
      ... вот это: ... N206 Y-41.48 F1000.
      N207 G00 Z60.
      N208 (FM-facemill2) A90
      N209 Z250.
      N210 G54 X-122.28 Y53.
      N211 Z60.
      ... То мач3 вполне себе все правильно выполняет.   Мне кажется это я что-то не так делаю при создании УП, а не в посте дело.
    • denis3122
        Кого заинтересует буду рад поделится исходным кодом
    • zelinder
      Есть два вида САПР-ов: ... и все остальные.
      Точка! :)
    • Metal_Cutter
      @kamaz  У меня нет такой программы, составить ее в ближайшие дни нет возможности. В вашей программе приращение по X работает корректно, по Z - нет.  Могу Вам скинуть макрос на торцевую канавку, там тоже есть проходы по глубине и ширине. Как пример, нужно?