Jump to content

Как вырастить сетку 2D-airfoil правильно?


Recommended Posts

zerganalizer

Я сделал работающую версию генератора 2D-сетки для пакетного CFD-анализа профилей. Она полностью на питоне и строит сетку через API GMSH 4.13.1. Пока это гибридная сетка, но с настройками пограничного слоя, загущения по кривизне, в районе хвостика и следа профиля.

 

Более того - заставить ее считаться в SU2 - было для меня сложно. Заработал расчёт только после указания 'MGLEVEL': '2' и создания в сетке ещё одной физического маркера nearfield и назначить 'MARKER_EULER': '( nearfield )' как границы между прямоугольного пограничного слоя и остальной треугольной сеткой.

 

И вот общий вид - вертикальная линия и хвост просто выведены для вопросов, на сетку не влияют.

mesh_all1.png

 

 

Крупнее:

mesh_all+1.png

Район носа:

mesh_lob1.png

Хвост:

mesh_hvost1.png

У меня в настройки вынесено - на сколько сдвинуть профиль относительно лобовой полудуги farfield. Сейчас Move_airfoil=1.1 - это значит носик задвинут вперёд на хорду + 10%, и я не знаю, насколько это правильно. Вы видите - airfoil слева от вертикальной линии "нуля" центра дуги. А вдруг он должен быть справа, посредине или ещё как?

 

Вот базовые настройки:

 

# base mesh sizes
fact = 1                               #Мастштаб ячеек
lc1 = 0.01 * fact                  #Минимальная ячейка
lc2 = 1 * fact                       #Максимальная ячейка
LenNET=50                         #Удаление farfield от профиля, хорд
Move_airfoil=1.1                #Сдвиг профиля от нуля полудуги
Загущение_профиля = 5  #Загущение профиля по кривизне - соотношение размеров max/min ячеек
Загущение_сетки = 90     #Загущение профиля и сетки спереди - сколько точек на 360 градусов дуги.
Thickness=0.01*fact          #Толщина погранслоя профиля
Ratio=1.3                           #Коэффициент роста погранслоя
Size=2.7e-4                       #Начальная толщина ячейки погранслоя

 

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

 

Вот интересный вопрос - Загущение_сетки = 90, если сделать 720, то лобовая часть перехода от полудуги к носику профиля станет гораздо плотнее, от этого есть профит???

mesh_all1-720d.png

Но меня мучит вопрос - я сделал не по образцам обучалок мешер - им вообще можно пользоваться в SU2 и других CFD? Я видел подобные вопросы про гибридные сетки на CFD-форуме, но информации мало.

 

Или вообще лучше сразу делать упорядоченную трансфинитную, как в родном мешере SU2_EDU? Её гораздо сложнее делать - как по мне. А ещё куча вопросов по соотношению настроек продувки и настроек мешера сетки. Я уже упоминал - для пакетной продувки под разные скорости и углы атаки для точности нужно делать сетку "на лету" и под текущие режимы продувки.

 

Edited by zerganalizer

Автоматизирую все, что логично.

Link to post
Share on other sites
  • 4 months later...


UnPinned posts
a_schelyaev
29.10.2025 в 19:58, zerganalizer сказал:

И под занавес - поправил и сетку, и настройки под неё так, что сходимость втрое быстрее, и работает в широком диапазоне. И странно - но скорость расчёта раньше в низких скоростях была существенно дольше, а теперь выравнялась. Сходимость этой сетки просто потрясающая при скромном размере чуть менее 1Мб.

 

изображение.png

Интересно, верхняя дужка профиля вашего насколько близка к дуге окружности?

С уважением

Link to post
Share on other sites
zerganalizer
40 минут назад, a_schelyaev сказал:

Интересно, верхняя дужка профиля вашего насколько близка к дуге окружности?

Приложил дугу по трём точкам профиля, тут, скорее, нечто похожее на спираль Архимеда с мелким шагом подъёма:

 

изображение.png

В-целом, профиль нуждается в реставрации через распознавание конфигуратором, анализ кривизны у него не очень и нос "дизайнерское скругление G3 class A", а не часть моей формулы аэродинамического сплайна, на продувках под углами это заметно. Есть его продвинутый мод - по версии XFLR5 там +10% качества.

 

И попутно вопрос - в баттл чего вам включать? Этот профиль с точек из XFLR5 я включил, но есть профили куда мощнее в этом Re. Правда, почти все они толще. Прикола ради я добавляю Bartini и Kluvik, упомянутые в ветке, а также, возможно, чемпиона баттла NewJ. Последний меня мало привлекал в XFLR5 - туннель средний, профиль чудной, как и вся серия на базе "MegaTOP", он "жирный", с большой подъёмной силой, правда, поляру его и mGAW, которым вы давно интересуетесь, я приводил на совсем другой скорости.

 

изображение.png

Также планирую в баттл добавить NACA 2412 и его аппроксимированную конфигуратором 1-го поколения версию - по некоторым предварительным тестам, такая процедура даёт неотличимые различия в XFLR5 и около 10% в SU2.

 

Fit_2412.png

 

Так что определитесь точнее - какие тесты вам интересны. Пока вроде последняя версия мешера + конфиг на максимально точный расчёт (в пределах возможностей сетки в 1 Мб) нормально устаканивает разные профили очень гладко, ваш GAW по ссылке даёт в-среднем RMS_DENSITY 8+. 

 

ALL_polars_GAW.txt

 

Предыдущие попытки посчитать тут мой туннельник с кодовым именем "mGAW" провалились и выдавались горбатые зубчатые поляры CMx. Текущий конфиг, походу, очень силён и стабилен, хотя время на расчёт угла чаще в районе 50 секунд на рабочем ноуте в 12 потоков. Вот что вышло на данный момент - этот профиль жирным на фоне ваших по ссылкам. Поставил считать оригинальный NACA 2412 и мою модификацию. Посмотрим что даёт "сглаживание и ламинаризация" конфигуратором на питоне. На поляре видно, что текущий конфиг расчёта на особо проблемных профилях, остроносых, плохо считает большие положительные углы атаки, это видно на поляре моего туннельника в солянке. GAW посредине.

 

polars_ALL.gif

 

Но уже в процессе тест обновлённого конфига на этот же тип сетки, он втрое быстрее, и я уже позволяю ему сойтись до конца. Текущая версия урезана по числу проходов - примерно в момент, когда девиации расчёта уходят в сотки. Однако, на больших углах девиация оказалась больше. Новая версия успевает в 2000 проходов посчитать в полную сходимость, но накрайняк можно увеличить лимит: организация расчёта такова, что в первые 1000 проходов расчёт достигает 99% от показателей в финале, и ловит сотки и микроны ещё 500+ проходов, в зависимости от профиля. Следующий баттл, видимо, будет на нём - я выложу отличия в расчётах текущего и нового конфига, они крайне близки по полярам.

Автоматизирую все, что логично.

Link to post
Share on other sites
a_schelyaev

Сравнение должно быть при прочих равных:

1. Число Re. Взять три числа: 100000, 500000, 1000000.

2. Высота полета H=0.

3. Величина хорды профиля.

4. Относительная толщина.

 

Прочие профиля приветствуются при соблюдении выше озвученных пунктов.

С уважением

Link to post
Share on other sites
zerganalizer
1 час назад, a_schelyaev сказал:

4. Относительная толщина.

Чтобы попасть точно в ту же толщину - нужно делать профиль на конфигураторе, там в последних версиях можно точно задавать толщину. Собственно - вся песня с профилями затевалась для подбора под проект крыла нужного по длине хорды, толщине, я бы даже сказал - распределению толщин от хорды вверх и вниз. Более того - немаловажно попадать в те же camber positions, и под ними я понимаю не одноименный параметр профилей NACA, где этим именем задано положение экстремума срединной линии, а положения экстремумов верхней и нижней дужки в других местах, это видно на картинке ниже. 

 

Вот скрин фичи, которая делает следующее:

 

1. Читает файл с точками. Не все файлы с точками имеют построение от единичной хорды - я видал полно "Кларков", построенных целиком выше хорды.

2. Надо указать плоскость размещения прочитанного - можно сразу в крыло ткнуть (плоскость профиля) либо выбрать XY. 

3. Нужно указать линию-хорду в этой плоскости. Я построил единичную хорду от нуля до 1 м.

4. Специальный анализ ищет экстремум профиля в оси X, считая его началом хорды назначения (0,0).

5. Ищутся первая и последняя точки (читает только Selig), и находится точка точно посредине.

6. По этим 2-м точкам профиль вписывается (поворот + масштаб) в начало и конец хорды места назначения.

7. По построенному и вписанному профилю находятся и строятся его экстремумы, их проекции на хорду, высоты и строительная высота. И в виде графических фич, и в виде параметров в дереве - легко анализировать параметры профиля

 

изображение.png

 

После такой "стандартизации" профиля можно приступать к его распознаванию - верхняя/нижняя дужки или во 2-м поколении - 4 куска: "лоб", "спинка", "шея" и "животик". И по ним накладываются загущённые или не очень точки, по которым вписываются кривые по моим формулам.

 

Я подумаю, как лучше сделать профиль нужной толщины, да чтоб ещё и туннельный. Придётся под такую задачу создавать ветку с баттлами профилей, но сначала лучше бы оптимизировать по максимуму соотношение "производительность/точность" расчёта + достаточно широкий диапазон скоростей, и желательно, рабочие +/- 90 градусов. Это чтобы делать быстро многочисленные просчёты.

 

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

 

Когда мне это надоело - пытаться старыми формулами попасть в "МегаТОПа" снова - я решил придумать принципиально другую формулу, ныне это первое поколение конфигуратора дужки. В семействе формул под него их несколько десятков, от 7-й до 36 степени. И только когда я сделал приличную аппроксимацию "МегаТОПа" формулой сначала 9-й степени, чутка превзойдя оригинал, улучшил результат на 11-й, 13-й и рекорд вышел на 26-й, только тогда стало ясно - формулы "умеют бурить туннели", после чего я наделал всяческих "жЫвотных", "линз", даже решил по схожей с формулой Бартини запилить "Bartini". А вот  mGAW так и остался нераспознанным, просто старый набор точек.

 

И тут я вынес всё это на форум, где меня сразу задрали, из-за чего для подтверждения "туннельного эффекта" я запилил безо всякой помощи (прям, все как-то "по-Туртински" -только вредили) весь этот софт, включая последний писк - 2-е поколение конфигуратора дужки профиля и весь этот ИИ-CFD. И фреймворк для работы с профилями, я постил возможности:

 

Present_AutoCATsys welcome.png

Present_AutoCATsys profile.png

 

А теперь подходит время научиться задавать входные данные в виде набора точек и параметра camber position + его высоту и научиться наверняка строить самые продвинутые "туннельные профили", которые у меня изначально вышли случайно.

 

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

 

А пока я досчитал сравнение NACA 2412 и его распознанной гладкой версии. По итогу - качество то же, но мой меньше "проваливается" на отрицательных углах атаки. Собственно, чисто сглаживание ничего не даёт в моей версии расчёта, но можно создать схожий профиль с другими характеристиками.

 

Я решил для теста сравнить эти 2 варианта  "NACA 2412" в широком диапазоне скоростей и сделать наглядную мультяшку, чтобы и самому понять - какие изменения приносит "гладкое аэродинамичное вписание" питоновским конфигуратором 1-го поколения. Заодно новые настройки продувки опробую, пока мне они нравятся, поляра на них сделана, жирным - оригинал.

 

Figure 2025-10-18 225044.png

Edited by zerganalizer

Автоматизирую все, что логично.

Link to post
Share on other sites
zerganalizer

изображение.png

Добавил NACA 2412 и пока - топ на текущий момент - упомянутый мод mGAW+. Кстати - веду доработку программы отрисовки для выгрузки поляр в редактируемый вариант. Чтобы раскрашивать, легенды менять и прочее.

Edited by zerganalizer

Автоматизирую все, что логично.

Link to post
Share on other sites
green_fly

Однажды я забыл настроить параметры построения сетки и запустил задачу на расчет с настройками по умолчанию. Результаты расчета достаточно быстро сошлись до уровня 1e-13 и даже до 1e-15. Повторение - мать учения, поэтому решил воспроизвести результаты и поделиться ими с заинтересованными людьми.

 

res2.png

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

res22.png

Внимание, вопрос. Тот RMSE, которым Вы оперируете, он как-то с качеством Ваших расчетов коррелирует? Или результаты, полученные на 16 ячейках, на несколько порядков качественнее, чем Ваши?

Link to post
Share on other sites
zerganalizer

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

 

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

 

Я подогнал параметры мешинга и загущения концов так, чтобы пофиксить такие аномалии - и моя формула (настройки CFD, использованная в баттле) уже не стала требовать разгона по скорости, какой был при баттле. Теперь разгон умеренный, почти привычный, а там, где на моем mGAW расчёт условно сходился с критерием 5+ на больших углах и 6+ на остальных теперь рисует такое:

 

Запуск расчета: Mach=0.0167175, AOA=-10.0
CEff = -3.101922854, Итераций: 1305, RMS_DENSITY = -8.838601213, 
время расчета: 27.4 сек
RE_NUMBER = 399999.17845350836
Режим RANS (Mach = 0.02)

Запуск расчета: Mach=0.0167175, AOA=-9.0
CEff = -2.821753552, Итераций: 1255, RMS_DENSITY = -8.696583158, 
время расчета: 24.2 сек
RE_NUMBER = 399999.17845350836
Режим RANS (Mach = 0.02)

Запуск расчета: Mach=0.0167175, AOA=-8.0
CEff = -2.26674638, Итераций: 1231, RMS_DENSITY = -9.011513922, 
время расчета: 23.3 сек
RE_NUMBER = 399999.17845350836
Режим RANS (Mach = 0.02)

Запуск расчета: Mach=0.0167175, AOA=-7.0
CEff = -1.393437619, Итераций: 1386, RMS_DENSITY = -8.779676851, 
время расчета: 25.6 сек
RE_NUMBER = 399999.17845350836
Режим RANS (Mach = 0.02)

Я не получал доселе подобных цифр при моих расчётах. На простом для расчёта GAW по ссылке из баттла и на старом мешере расчёт хорошо сходился. И большинство других, вроде NACA 2412. Но остроносые и с подгибом внутрь всегда глючили.

 

И теперь, собственно, можно перефразировать местного Деда Мороза - все проблемы в сетке. И регенерация ранее перемешивала аномальные загущения, меняя сходимость. Пока я не заметил этого эффекта от "перемЕшивания" сетки для улучшения сходимости, пока всё стабильно.

 

И второе. Я заметил такую особенность - подгон параметров мешинга меняет по итогу максимум CL/CD на этой скорости аж в диапазоне 14-22 при том, что в баттле у профиля вылезло 16+. Подгоняя коэффициенты роста ячеек и прочие, я получал в топе цифру в указанном диапазоне 14-22, но с разными RMS_DENSITY, причем чем ближе к краю диапазона, тем ниже критерий. Я оптимизировал и оптимизировал настройки, стараясь получить плавный рост ячеек и цифру в топе, которая посчитается с максимально возможным критерием. Таким способом я получил настройки мешера, который на моём mGAW выдаёт почти -9 RMS_DENSITY, оно проскакивает в промежуточной итерации и расчёт сходится на 8.8 или около.

 

К чему я про эту эпопею? А к тому, что такими тонкими настройками, во-первых, я получил параметры мешера, при которых проверенный по надёжности расчёт выдаёт максимум (минимум) RMS_DENSITY и, одновременно, получил максимально быструю и надёжную сходимость. Возможно, не зная, какие цифры выйдут при натурном испытании, но я выжал максимум надёжности из своих расчётов. Поляры от старого расчёта из баттла в фоне в сравнительной поляре ниже, все перемены наглядно. Кстати, размер сетки упал до 600 Кб.

 

Figure 2025-10-18 225044.png

 

Мне придётся протестировать мешер + CFD на остальных скоростях и профилях, но на данный момент это самый быстрый и точный расчёт. По идее, после некоторого количества тестов я буду готов создать ветку про баттлы профилей. Приложил цыферьки расчёта mGAW: ALL_polars_mGAW_Re400000_FIN.txt

 

А вот баттл на новых настройках и пример сетки в формате MSH (смотреть в GMSH) на участника баттла GAW. GAW.zip

 

изображение.png

 

Автоматизирую все, что логично.

Link to post
Share on other sites
zerganalizer
01.11.2025 в 14:23, green_fly сказал:

Внимание, вопрос. Тот RMSE, которым Вы оперируете, он как-то с качеством Ваших расчетов коррелирует? Или результаты, полученные на 16 ячейках, на несколько порядков качественнее, чем Ваши?

После множества мешингов и пакетных продувок я физически понял что это. Просчёт ведётся как множество путей от отрезка на профиле между соседними ячейками до соответствующего ближайшего аналогичного на farfield. Путей проложить этот маршрут несколько плюс это надо сделать для всех отрезков профиля в сетке. Если размеры растут более-менее плавно в каждом пути - сходимость будет высокая и быстрая. У меня в предыдущем мешере только в одном профиле возникали проблемы сходимости, я долго не мог понять, настройки CFD менял, но толку было мало - на больших углах атаки задачка долго сходилась, RMS_DENSITY был аномально низкий на этих углах. Я полез сетку смотреть, сравнивать распределение ячеек в разных профилях, и увидел аномальное загущение, я писал ранее - под хвостом. Оно на пути от ячеек профиля снизу к farfield создаёт "бутылочные горлышки" под хвостом - как раз тогда, когда на угле атаки 15+ там образуется стойкий вихрь, который слишком долго решается. Я переделал настройки мешера, чтобы ячейки распределялись равномерно, и всё решилось.

 

RMS_DENSITY падает, когда общее число ячеек меньше, а сетка неравномерно загущённая, и растёт, когда ячеек много и равномерно распределены. Он растёт и падает в процессе расчёта, являясь индикатором процесса сходимости. Когда всё прекрасно - он стойко растёт, и число проходов до сходимости будет минимально, цифры не будут сначала плавно расти, а потом плавно опускаться, они будут отрисовывать быстро затухающую синусоиду, промодулированную импульсами вверх/вниз. И когда расчёт "теребится" вокруг найденных значений, которые синусоидой сходятся правильно, критерий быстро становится больше 6. Предел ему определяет сетка с её общим числом ячеек. Более плотные сетки у меня сходятся теперь и в критерий 9+ даже при размере в 1Мб. А полуметровые не дают выше 7-8. Сами определите - что это за параметр. Как по мне - это плотность попадания в результат, "кучность стрельбы".

 

На вашей сетке из картинки расчёт вообще вряд ли запустится, будет NaN или дивергент. Или расходимость, когда расчёт застрянет в прыжках между значениями с низким RMS_DENSITY,. Или он будет ниже 3-х, если сойдётся. По форуму CFD в ветках SU2 пишут, расчёту можно начинать доверять, если RMS_DENSITY>6.

 

Если вам интересно попробовать продуть мои сетки - сообщите, в каком формате из GMSH я мог бы вам их сохранить.

 

И последнее откровение про настройки SU2 я обнаружил на днях - ну тут я сам виноват, что так поздно. В шаблоне конфига, где перечислены все параметры, эта цыферька была именно такая, а вот ИИ написал, что так неправильно. А на самом деле, для наилучшей надёжности в сходимости расчёта - было правильно. "Болтанка" в цифрах при высоких углах атаки этим параметром решилась, воплотив мою давнюю мечту - в одной настройке меняем параметр точности сходимости - и получаем и точную версию расчёта, и быструю, на доли процента отклонений от результатов точной версии.

 

Более того - баттл я делал на опциях SST, понижающих вихри, размазывая их и занижая показатели. Для быстрого сравнения и так сойдёт - но последнее откровение даёт возможность включить точный просчёт вихрей, имея те же сходимость и время расчёта. Цифры в пике выросли с 13 до 17 единиц. После тщательного теста можно будет баттлы начинать.

Автоматизирую все, что логично.

Link to post
Share on other sites
green_fly
1 час назад, zerganalizer сказал:

Если вам интересно попробовать продуть мои сетки - сообщите, в каком формате из GMSH я мог бы вам их сохранить.

UbYBSV604J0.jpg

Link to post
Share on other sites
zerganalizer

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

Автоматизирую все, что логично.

Link to post
Share on other sites
green_fly
3 часа назад, zerganalizer сказал:

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

Тема очень нравится. Она прекрасно раскрывает Ваши твердые и мягкие навыки.

Link to post
Share on other sites
a_schelyaev
15 часов назад, zerganalizer сказал:

После множества мешингов и пакетных продувок я физически понял что это. Просчёт ведётся как множество путей от отрезка на профиле между соседними ячейками до соответствующего ближайшего аналогичного на farfield. Путей проложить этот маршрут несколько плюс это надо сделать для всех отрезков профиля в сетке. Если размеры растут более-менее плавно в каждом пути - сходимость будет высокая и быстрая. У меня в предыдущем мешере только в одном профиле возникали проблемы сходимости, я долго не мог понять, настройки CFD менял, но толку было мало - на больших углах атаки задачка долго сходилась, RMS_DENSITY был аномально низкий на этих углах. Я полез сетку смотреть, сравнивать распределение ячеек в разных профилях, и увидел аномальное загущение, я писал ранее - под хвостом. Оно на пути от ячеек профиля снизу к farfield создаёт "бутылочные горлышки" под хвостом - как раз тогда, когда на угле атаки 15+ там образуется стойкий вихрь, который слишком долго решается. Я переделал настройки мешера, чтобы ячейки распределялись равномерно, и всё решилось.

 

RMS_DENSITY падает, когда общее число ячеек меньше, а сетка неравномерно загущённая, и растёт, когда ячеек много и равномерно распределены. Он растёт и падает в процессе расчёта, являясь индикатором процесса сходимости. Когда всё прекрасно - он стойко растёт, и число проходов до сходимости будет минимально, цифры не будут сначала плавно расти, а потом плавно опускаться, они будут отрисовывать быстро затухающую синусоиду, промодулированную импульсами вверх/вниз. И когда расчёт "теребится" вокруг найденных значений, которые синусоидой сходятся правильно, критерий быстро становится больше 6. Предел ему определяет сетка с её общим числом ячеек. Более плотные сетки у меня сходятся теперь и в критерий 9+ даже при размере в 1Мб. А полуметровые не дают выше 7-8. Сами определите - что это за параметр. Как по мне - это плотность попадания в результат, "кучность стрельбы".

 

На вашей сетке из картинки расчёт вообще вряд ли запустится, будет NaN или дивергент. Или расходимость, когда расчёт застрянет в прыжках между значениями с низким RMS_DENSITY,. Или он будет ниже 3-х, если сойдётся. По форуму CFD в ветках SU2 пишут, расчёту можно начинать доверять, если RMS_DENSITY>6.

 

Если вам интересно попробовать продуть мои сетки - сообщите, в каком формате из GMSH я мог бы вам их сохранить.

 

И последнее откровение про настройки SU2 я обнаружил на днях - ну тут я сам виноват, что так поздно. В шаблоне конфига, где перечислены все параметры, эта цыферька была именно такая, а вот ИИ написал, что так неправильно. А на самом деле, для наилучшей надёжности в сходимости расчёта - было правильно. "Болтанка" в цифрах при высоких углах атаки этим параметром решилась, воплотив мою давнюю мечту - в одной настройке меняем параметр точности сходимости - и получаем и точную версию расчёта, и быструю, на доли процента отклонений от результатов точной версии.

 

Более того - баттл я делал на опциях SST, понижающих вихри, размазывая их и занижая показатели. Для быстрого сравнения и так сойдёт - но последнее откровение даёт возможность включить точный просчёт вихрей, имея те же сходимость и время расчёта. Цифры в пике выросли с 13 до 17 единиц. После тщательного теста можно будет баттлы начинать.

Параметры сетки это прямое следствие ограничений и особенностей алгебры в решателе. Статей не находили на тему исследования качества сетки для решателя авторов?

С уважением

Link to post
Share on other sites
zerganalizer
12 часов назад, a_schelyaev сказал:

Параметры сетки это прямое следствие ограничений и особенностей алгебры в решателе. Статей не находили на тему исследования качества сетки для решателя авторов?

На форуме CFD-forum меня огорчил рассказ и просьбы одного из опытных тестеров SU2 о возрождении разработки SU2_EDU. Он шёл в составе старой 3-й версии от 2015 года (вроде), это облегченная версия  - я постил уже:

 

изображение.png

 

В его составе был хороший мешер, встроенный (трансфинитный), и в последней версии SU2_EDU (я с трудом его нашёл) была возможность сохранения сетки, по которой он вел расчет.  В полном SU2 до версии примерно 7.5 была возможность отмешить профиль по точкам, но позже её удалили, ссылаясь на какую-то нерешаемую в нём проблему, и это очень огорчило того бета-тестера и меня. Так что по теме мешинга я в потёмках. Видел типа сплетни, что чувак, делавший мешер, ушёл к конкурентам, а его детище изъяли из дистриба вместе с именем из списка разработчиков.

 

Бета-тестер хотел, чтобы разрабы доделали SU2_EDU и его мешер (сетки не сходились на углах атаки больше 20-30 градусов), а он хотел +/- 90 (как и я) и поддержки LES/DES. Меня вообще удивила ситуация, когда формат сетки проприетарный (нестандартный), но своего мешера, в отличие от OPEN-FOAM, вдруг не стало.

 

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

 

изображение.png

 

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

 

И я немного разобрался с настройками просчёта - что на что влияет и как работает. Расчёт стал более "цифровым", мало зависящим от сетки. Те же попугаи, хоть на тощих, хоть на жирных сетках, только дольше. Хотя на скоростях ниже 0.1 МАХА влияние сетки больше. И бродит желание доделать трансфинитный мешер со своей идеей - с погранслоем с одним ростом ячеек, а в остальной части - с другой.

 

В приведённой выше сетке пофиксены косяки с неравномерностью ячеек в вогнутых участках профилей (но не абсолютно) - буду пробовать снова квады отключать, сохранив остальные параметры. Экспоненциальные поля загущений хвоста и носа сильно улучшили и стабилизировали сходимость.  Так сетка выглядит без квадов, пробую в пакете, исследуя один из модов МегаТОПА (форма всех модов засекречена):

 

изображение.png

P.S. Уже сравнил - верхняя сетка на скоростном просчёте даёт 4-5+ RMS, треугольная ниже - сразу 6+. И вдвое быстрее.

 

Edited by zerganalizer

Автоматизирую все, что логично.

Link to post
Share on other sites
a_schelyaev

Он доступен в исходных кодах?

С уважением

Link to post
Share on other sites
zerganalizer
5 часов назад, a_schelyaev сказал:

Он доступен в исходных кодах?

Если вы про SU2 и его моды - да, можно качнуть компиленные, но поддержка продвинутых расчётов там неполная. Поэтому есть инструкция - как при компиляции "добавить технологий". А SU2_EDU v1.1 был доступен в бинарниках, но не сохранял создаваемую расчётную сетку, в версии 1.2 они позволили сохранять ее и продвинули сообразно последним достижениям, привели в порядок - и забыли. Эту версию можно только в исходниках взять, я себе компилил (точнее - сын).

 

Офсайт находится легко, с примерами. Но спешу предупредить - расчёт в SU2_EDU дико медленный: мы не смогли откомпилить под многопоточность.

Edited by zerganalizer

Автоматизирую все, что логично.

Link to post
Share on other sites
zerganalizer

Пока гоняю пакетный расчёт на пробу на самом сложном "туннельнике" наподобие mGAW, я доделал до неплохой кондиции программу визуализации. Кстати - косяк в конфиге уже виден в виде аномального всплеска на более высокой скорости (жёлтым), но показываю чисто красиво и наглядно оформленную сравнительную поляру.

 

изображение.png

 

Для анимашки нужно просчитать заново NACA 2412 на тот же диапазон, потому сравнение видео неполное.

 

polar_animation_ALL.gif

Автоматизирую все, что логично.

Link to post
Share on other sites
zerganalizer

А вот опционально включаемый вариант отрисовки всей портянки + то, что есть в сравнительных файлах. Но главное в этих полярах, помимо удобства обозрения, факт, что очередной тестируемый "туннельник" не имеет провала в отрицательное качество при отрицательных углах, как мы видим у NACA 2412 и всех профилей из баттла. И второй факт для меня - простая сетка без аномальных загущений просто и считается.

 

polar_animation_ALL.gif

Edited by zerganalizer

Автоматизирую все, что логично.

Link to post
Share on other sites
zerganalizer

Снова шаманил с мешингом. Сходимость резко возросла, заработали практически все схемы обдува, какие-то традиционно с форсажем, какие-то традиционно плохо его переносят, но работают.  Все! Кроме того - сетка позволила с трудом, но сходиться в похожие цифры NAVIER_STOKES - особенно если включить сетку погуще, то можно любоваться вихрями в качестве фотки пламени костра.

 

Схема пакетного расчёта неплохо заработала в диапазоне 0.1-1 МАХа. Словом, магия Хогвартса. Я допилил в-основном визуализатор данных - ГДЕ ДОСТАТЬ ДАННЫЕ ПРОДУВОК в понятном формате??? -->

 

Mach    AOA            CL                    CD                   CEff                  CMz   
0.01    -30.0    -1.909819888    1.020595403    -1.87128012    -0.1432591126    

 

 

Автоматизирую все, что логично.

Link to post
Share on other sites
zerganalizer

Нашёл материалы продувок (скан книжки древней по NACA 2412) - для подстройки CL (угол 15 градусов, 0.13 МАХа), а CL/CD взял на другой скорости из пробного расчёта SU2_EDU (0.3 МАХа, 8 градусов) и предварительно откалибровал попадание сеточным тюнингом под расчёты со включёнными расчётами вихрей при SLAU2. Сетку долго "утрясал" для такого (как оказалось) двойного противоречивого попадания. Попал, поляры стали более гладкими и стабильными, подросли RMS_DENSITY: для 0.3 МАХа и такого угла атаки так вообще норм, особенно если сетка весит 370Кб.


 

Запуск расчета: Mach=0.1, AOA=15.0
CEff = 25.37274049, Итераций: 1740, 
RMS_DENSITY = -6.265524321, 
время расчета: 24.9 сек
RE_NUMBER = 2392697.3438223917
Режим RANS (Mach = 0.10)

Запуск расчета: Mach=0.1, AOA=16.0
CEff = 22.24779253, Итераций: 2112, 
RMS_DENSITY = -6.325863921, 
время расчета: 30.2 сек
RE_NUMBER = 2392697.3438223917
Режим RANS (Mach = 0.10)

Запуск расчета: Mach=0.1, AOA=17.0
CEff = 19.19283636, Итераций: 2573, 
RMS_DENSITY = -6.481870386, 
время расчета: 37.1 сек
RE_NUMBER = 2392697.3438223917
Режим RANS (Mach = 0.10)

Запуск расчета: Mach=0.1, AOA=18.0
CEff = 16.56265656, Итераций: 2822, 
RMS_DENSITY = -6.206487765, 
время расчета: 40.4 сек
RE_NUMBER = 2392697.3438223917
Режим RANS (Mach = 0.10)

 

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

15 минут назад, a_schelyaev сказал:

Искать отчеты NASA.

Я скачал отчёт о продувке NASA - там о нужных параметрах ни слова. Мой знакомый авиатор говорил, что те сырые данные как-то ещё и пересчитывают для получения нужного. А если вы про поляры на сайте с профилями NASA - так там они посчитаны на низких скоростях в том самом XFLR5, это я и сам могу...

Автоматизирую все, что логично.

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.

  • Сообщения

    • gudstartup
      Это за хранение на секретном складе и рытье тоннеля для скрытной поставки из Германии! Я бы назвал это PilZ эффект!
    • brigval
      Тексель 1.69   В версии 1.69  Добавлено: Вставка очередной литеры в ОН (для системы Брадок).  Добавлено: На панель добавлена кнопка «Сформировать и создать PDF».  Добавлено: В графе «Перв. примен.» создается гиперссылка на спецификацию в этом файле.  Добавлено: В разделе «Сборочные единицы» создается гиперссылка на новую спецификацию.  Добавлено: Перевод степени в обозначении единиц измерения в надстрочный вид в графе «Наименование» спецификации и ведомости покупных изделий.  Добавлено: Над ОН сформированного документа вставляется и однострочная запись и двустрочная.  Добавлено: В спецификации улучшена корректировка названий разделов и форматов документов.  Добавлено: При экспорте документа в формат PDF дата не вставляется в ОН, если нет фамилии.  Добавлено: База данных. Вставка СПМ в строку с выделенной ячейкой, а не под заголовок раздела.  Исправлено: В добавляемых строках могло оставаться выравнивание текста посередине.  Исправлено: «Размножать по указанию» смещается ниже, если в графе «Формат» стоит «*)».  Исправлено: В листе «список» запись новой спецификации иногда размещалась последней, а не по возрастанию обозначений.  Исправлено: Не создавался PDF-файл, если в его имени присутствовали символы, запрещенные для имен файлов.  Исправлено: База данных. Не работала вставка многострочной записи СПМ.  Исправлено: База данных. При заполнении БД из спецификации могло появляться сообщение об ошибке.  Исправлено: База данных. Изделия с классом в обозначении 76 попадали в раздел Сборочные единицы, а не Детали.  Исправлено: База данных. Иногда в окне базы данных не отображались СПМ.  Исправлено: База данных. При добавлении записи в БД она попадала в «Другие…» вместо выделенной группы.  Исправлено: База данных. Была не активна кнопка «Добавить в БД» при добавлении первой записи в пустую группу.   Скачать  
    • Guhl
      В вашем случае однозначная покупка нового Если что-то произойдёт и выяснится, что реле ремонтированное, то эффект будет сильным и негативным
    • rangerover
      возможно в каких-то случаях придется так и поступить будет и бюджетнее. только ручками поработать. нам блок встал в 200тр в моем же случае- однозначное НЕТ гильотина с ножем 3,2метра и с гидравлическим прижимом материала добавляем сюда руки девочки которые под ним находятся постоянно в течении смены + почти 20 лет безукоризненной работы + именитый надежный бренд (если реально пройдусь по станкам то кругом будет пильц и лишь немного ReeR и шнайдер и только эпизодически нечто иное)  + необходимость восстановления оборудования в самые кратчайшие сроки когда на раскачку, настройку, проверку, корректировку- нет нужного времени   немного оффтопа   по сути его и не глючило сдохла память что простительно железяке, верой и правдой прослужившей столько лет не могу судить сколько циклов чтения могла бы пройти энергонезависимая память наверное не добрала ресурса... но претензий не имею к Pilz reer и шнайдер дохли куда чаще. особливо шнайдер мне по жизни солил.... еще в оборудовании постоянно встречаю- ставят какие то очень специфичные девайсы нераспространенные, с особенностями... которые нафиг не нужны и не используются как будто склады очищают поставщики оборудования, сливая залежалое это зачастую очень осложняет жизнь нам, эксплуатантам... особливо в текущих реалиях...и тут как раз немцы в лидерах до недавнего времени немецкие станки- всё из немецких комплектующих дороже-не важно, хуже-не важно- главное, немецких! и вот тут их зондер аусфюрунг (SS- спец.исполнение) часто показывает себя во всей красе был опыт замены гибридного сервошагового за 284тр, сервы за 1,2млн (буква Q в маркировке сделала девайс настолько трудноотыскиваемым...поставку ставили 1 год! ну и добавила к цене 1млн))))   ну ничего... сложности закаляют.... лишь бы не перекалиться....  
    • Guhl
      Может потратить эти силы на вырезание с корнем реле "безопасности", которое само глючит, что представляет опасность само по себе? И заменить его на обычное реле хорошего качества
    • a_schelyaev
      Ну тогда зачем вам второй порядок на турбулентности? Чем подробнее сетка, тем первый порядок ко второму ближе. Вся интрига у вас в зоне погранслоя, а там сетка хорошая.
    • gudstartup
      Если прижмет то выучите!
    • rangerover
      Богатый инструментарий! Респектую! В некотором роде мне такое (о счастье!) как правило не требуется. Вникать в программно-аппаратную суть каждой коробки и учить софт... тут емкости моей большой (в смысле размера) головы явно не хватит.... есть шнур... есть софт... добавляем голову и этого хватает прописать порт... слить проект или заменить прошивку... но с каждым днем все труднее... взять этот же шнайдер... от возраста у меня летят IGBT на сервопаках, somove и прошивки теперь качать ну очень весело с официального сайта... и если раньше все ненужное с рабочего компа удалял, то теперь комп просто свалка прошивок, драйверов, софта.... некий итог гильотина Kuper, умерла внутренняя память на блоке Pilz Pnoz m0p (прошивка 5.01, проект 2007года, год выпуска не выяснен) для полнозенного (ИМХО) восстановления (работоспособность оборудования+ слитый для возможных проблем в будущем проект+ запасная карта памяти с записанным проектом) необходимы (использованы) нульмодемный кабель+ RS232-usb + Pnozmulti configurator 10 версии грохнутый (возможно пододет 11 версия с лицензией Basic в открытом доступе) + пароли к проекту (запрос производителю) либо скрипт для их перебора (он и выручил) + новый блок + новая карта памяти   все прошло гладко и довольно быстро из шероховатостей было лишь единожды- скрипт прерывал свою работу (это никто не описывал), также такое наблюдалось и на станционарном компе на котором велась подготовка и пробные прогоны предстоящих действий   проект слит! карта памяти записана!   спасибо форуму и форумчанам!  
    • Борман
      Ого, да вы типа расчетчик...   Начни вот этого... для вот этого а потом.       Вот же, сначала я сказал а потом дипсик
    • Игорь_212
×
×
  • Create New...