Перейти к публикации

Софт ЛОГОС - что за зверь? В наших краях не водится


Рекомендованные сообщения

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

Скрытый текст

 

Способ 0 - это не способ, а убогое признание, что генератор (как конкретный инструмент импортозамещения, как следствие) толком не работает:

- создать сетку в платных забугорных WB, Patran, Nastran, Abaqus etc., экспортировать в формат, который переварит препост. По факту, это не решение проблемы легальным способом, поскольку лицензий на эти софтины фирмам сегодня не купить. А кто купил бессрочные лицензии раньше, тому замещение вообще зачем?

 

Способ 1:

- создать объёмную сетку в бесплатных SALOME-Meca, GMSH, FreeCAD, LS-Prepost, OpenFOAM, импортировать в препост, в том числе через ряд конверсий. Кто понимает минимальный технический английский со словарём, тот уже разобрался. Кто не хочет использовать гуглтранслейт и моск, тот ноет что ничегонеполучаицца.

 

Способ 2, самый хитрожопый на текущий момент, поэтому нигде не описан:

- вариант 1) не самый хороший. Получить корректный замкнутый STL в любом CAD, затолкать в препост-прочность, затем "Инструменты -> Сетка -> Генерация объёмной сетки -> Генерация тетраэдральной сетки от поверхностной сетки". Проверить, заполнилось ли внутреннее пространство сетки элементами, использовать инструмент по Ctrl+F8. Затем удалять поверхностную сетку после создания объёмной. 

- вариант 2) лучше. Построить качественную замкнутую поверхностную сетку в SALOME-Meca, GMSH, FreeCAD, LS-Prepost, экспортировать в STL. Повторить вариант 1).

- вариант 3) почти идеальный, но работает не всегда. Импортировать в Аэрогидро-Препост геометрию, построить сетку поверхностную/объёмную, сохранить проект. В препост-прочность импортировать efr-сетку из подпапок проекта аэрогидро. При необходимости, повторить пункт 1). Способ плох тем, что Аэрогидро - отдельный платный модуль.

- вариант 4) разные комбинации вариантов 1-3 и способов 0 и 1.

 

Способ 3) самый спорный. Продолжать использовать только мэшер препоста. 

 

Наконец, кардинальный способ 4) посмотреть в сторону опенсорц. См. ремарку про гуглтранслейт и моск.

 

 

Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...


Подробнее про вариант 3) создания объёмной сетки в  прочность на очень сложной для препоста геометрии. Способ крайне сложный и многоэтапный, что только подтверждает, что в прочности надо конкретно улучшать ситуацию с мэшером.

Скрытый текст

 

1 сначала в Препост Аэрогидро импортируется геометрия; сложная геометрия как правило подгружается с дефектами, поэтому для неё применяется п.2 ниже
- отчасти дефекты, особенно связанные со скруглениями, могут быть устранены варьированием точности и размерности в настройках при импорте геометрии, но это не панацея в общем случае, к тому же может очень значительно увеличивать время импорта
- геометрию предпочтительнее подгружать по одному телу, и сетку соответственно строить только для одного редактируемого выбранного тела, но в целом на результат не сильно влияет, если учитывать точность при импорте

 

2 открытая в текущий момент в рабочем поле геометрия лечится:
- для начала, геометрия осматривается визуально на дефекты
- затем подгружается окно "Диагностика геометрии" (на панели зелёный кубик с жёлтым треугольником с восклицательным знаком)
- в окне наиболее значимые пункты по степени важности - это открытые контуры, затем перекрытия
- т.е. сначала пытаемся автоматикой (ПКМ по элементу дерева -> Автоисправление)  убрать все проблемные открытые контуры, затем все перекрытия - часто этого достаточно
- если недостаточно:
- удаляются битые поверхности
- при необходимости кривые (в т.ч. на поверхностях) разбиваются инструментом "разбить ребро" - очень удобная фича (в LS-PREPOST тоже имеется)
- создаются прямые/кривые/дуги/скругления по точкам
- по кривым и прямым создаются новые поверхности
- поверхности в ряде случаев требуется пересоздать: "Режим редактирования поверхностей -> Пересоздать грань". особенно это касается скруглений, которые требуется пересоздавать заново по соседним граням чтобы получить коррекную форму скругления


3 геометрия сшивается (жёлтая кнопка с молнией "Построение топологии", затем опционально на панели "Выбрать область выделения-> Прямоугольник" и выделить всю деталь) сначала с точностью по умолчанию, если не получается - вручную поварьировать параметр в сторону увеличения абсолютной величины
- делать это нужно даже если окажется, что проблем в "Диагностике геометрии" нет, а все поверхности кажутся сшитыми и автоматика не подсвечивает красных контуров (см. ниже), при этом сшивать желательно с параметром точности, выставленным вручную, значение выбрать побольше
- если геометрия не сшита - визуально наблюдаются красные контуры на геометрии; если они остаются даже при варьировании параметра при сшивке до большой величины и даже после перезапуска и обновления окна инструмента "Диагностика геометрии" - требуется вернуться на п.2. при этом, желательно долечить геометрию в окне "диагностика геометрии" по всем пунктам дерева. скорее всего, потребуется заново удалить и создать битые или некачественные поверхности, а также пересоздать их соответствующим автоматическим инструментом 
- если и сейчас не удаётся добиться сшивки - используется последний довод - поверхности нарезаются инструментами разрезки граней (их несколько) и всё возвращается на п.2 


4 создаётся регион:
- в этом пункте можно поступить двояко, либо выбрать в дереве геометрию, ПКМ -> создать регион
- либо выбрать в дереве геометрию -> извлечь тесселяцию с флагом автосшивки, что создаст в дереве новую деталь (фактически, голый stl) - выбрать её и создать для неё регион
- для тесселяции включаем видимость сетки stl - на панели "Стиль отображения геометрии -> Закрашенный с рёбрами"
- при создании региона выбрать "Разбиение региона на границы -> НЕ РАЗБИВАТЬ", что часто избавляет от генерации элементов с нулевой площадью, обнаружить которые можно только постфактум на этапе создание объемной сетки, при этом возникает ошибка "Обнаружена граница 'id=...,' с нулевым количеством треугольников - объемная сетка не может быть построена
- для тесселяции надо убедиться, что все поверхностные элементы stl сшиты, т.е. все грани стыкуются корректно по узлам; если этого где-то не произошло - возвращаемся на п.2. или используем корректировку stl инструментами работы с поверхностной сеткой ("режим редактирования фасеточной геометрии") - это крайне нежелательно делать, т.к. не позволит не вылечит саму геометрию, соответственно, и сохранить её можно будет только битой


5 строится поверхностная сетка (довольно плотная):
- в ветке генераторов отмечается "поверхностная сетка" и "ТЕТРАЭДРАЛЬНАЯ СЕТКА" (это важно)
- для выбора размера сетки необходимо определиться с размером геометрии - включить "Вид -> Масштабная линейка", затем задать ориентировочный размер элемента в "Блок генераторов -> Базовый размер"
- на панели выбирается кнопка "плоская сетка с молнией" - запуск генератора поверхностной сетки
- если поверхностная сетка не построилась, что бывает, возвращаемся на п.2.
- если поверхностная сетка построилась - ЗАПУСКАЕТСЯ ГЕНЕРАТОР ОБЪЁМНОЙ СЕТКИ
- если объёмная сетка построилась - вся мегаопупея с гарантией ~ 99.99% завершится хорошо


6 если поверхностная сетка построилась, но не построилась объёмная:
- либо тесселированная поверхностная сетка экспортируется в stl (ПКМ по названию тесселированной детали -> Экспортировать геометрию -> stl)
- либо проект Аэрогидро сохраняется, открывается Препост Прочность, в нём импортируется поверхностная сетка из подпапок проекта аэрогидро (efr-сетка с названием *surface*), затем сохраняется в stl
- сохранённый stl-файл загружается КАК ГЕОМЕТРИЯ в НОВОМ проекте Аэрогидро, затем сетка перестраивается, т.е. повторяется п.4 и 5


7 строится объёмная сетка в Препост Прочность:
- открывается Препост Прочность, в нём импортируется поверхностная сетка из подпапок проекта аэрогидро (efr-сетка с названием *surface*) либо импортируется поверхностный stl
- "Инструменты -> Сетка -> Генерация объёмной сетки -> Генерация тетраэдральной сетки от поверхностной сетки". Проверить, заполнилось ли внутреннее пространство сетки элементами, использовать инструмент по Ctrl+F8. Затем удалять поверхностную сетку после создания объёмной.

 

Как итог, получается сетка из линейных тетраэдров. Для неё в свойствах подобласти соответственно выбрать "тетраэдр, 4 узл", иначе результат расчёта задачи будет мягко говоря неправильным.

 

Дополнительно в процессе как вспомогательный инструмент можно использовать LS-PREPOST, например для проверки корректности stl-сетки, но в общём случае это не обязательно. В LS-Prepost удобно визуально наблюдать, есть ли в сетки незакрытые контуры, но корректировать, закрывая контуры, бесполезно - препосты логоса объёмную сетку строить всё равно не захотят, ссылаясь на свои непонятные проблемы.
Также в LS-PREPOST удобно строить объёмную сетку из тетраэдров по качественной поверхностной сетки из п.6, при этом удобно быстро понижать количество элементов (метод 2 при создании тетрасетки) при довольно хорошем сохранении границ сетки, но не идеально всё же; затем сохранить в k-файл и открыть объёмную сетку в Препост Прочность.
Также в LS-PREPOST в ряде случаев удаётся долечить геометрию и сшить поверхности до солида, если это всё же не получается в Аэрогидро-Препост.
Ещё один лайфхак - битая stl-сетка импортируется в SALOME-Meca, близкие узлы сшиваются, линейная сетка заменяется на квадратичную, сохраняется в stl и загружается в ls-prepost - далее можно получить объёмную сетку из тетраэдров.

 

 

Ранее в сериале:

Скрытый текст
07.11.2023 в 08:34, AlexKaz сказал:

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

 

Способ 0 - это не способ, а убогое признание, что генератор (как конкретный инструмент импортозамещения, как следствие) толком не работает:

- создать сетку в платных забугорных WB, Patran, Nastran, Abaqus etc., экспортировать в формат, который переварит препост. По факту, это не решение проблемы легальным способом, поскольку лицензий на эти софтины фирмам сегодня не купить. А кто купил бессрочные лицензии раньше, тому замещение вообще зачем?

 

Способ 1:

- создать объёмную сетку в бесплатных SALOME-Meca, GMSH, FreeCAD, LS-Prepost, OpenFOAM, импортировать в препост, в том числе через ряд конверсий. Кто понимает минимальный технический английский со словарём, тот уже разобрался. Кто не хочет использовать гуглтранслейт и моск, тот ноет что ничегонеполучаицца.

 

Способ 2, самый хитрожопый на текущий момент, поэтому нигде не описан:

- вариант 1) не самый хороший. Получить корректный замкнутый STL в любом CAD, затолкать в препост-прочность, затем "Инструменты -> Сетка -> Генерация объёмной сетки -> Генерация тетраэдральной сетки от поверхностной сетки". Проверить, заполнилось ли внутреннее пространство сетки элементами, использовать инструмент по Ctrl+F8. Затем удалять поверхностную сетку после создания объёмной. 

- вариант 2) лучше. Построить качественную замкнутую поверхностную сетку в SALOME-Meca, GMSH, FreeCAD, LS-Prepost, экспортировать в STL. Повторить вариант 1).

- вариант 3) почти идеальный, но работает не всегда. Импортировать в Аэрогидро-Препост геометрию, построить сетку поверхностную/объёмную, сохранить проект. В препост-прочность импортировать efr-сетку из подпапок проекта аэрогидро. При необходимости, повторить пункт 1). Способ плох тем, что Аэрогидро - отдельный платный модуль.

- вариант 4) разные комбинации вариантов 1-3 и способов 0 и 1.

 

Способ 3) самый спорный. Продолжать использовать только мэшер препоста. 

 

Наконец, кардинальный способ 4) посмотреть в сторону опенсорц. См. ремарку про гуглтранслейт и моск.

Изменено 7 ноября пользователем AlexKa

 

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...
UnPinned posts
2 часа назад, ДОБРЯК сказал:

И это вращение балки.

Нулевая энергия деформации. Вращение балки. 

Что вы пытаетесь доказать?

 Энергия деформации = 8.450397e-05 (КГ*ММ)  
 

1.png

1.png

Ссылка на сообщение
Поделиться на других сайтах
18 минут назад, Fedor сказал:

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

От количества подшагов не зависит. До этого было 10, сейчас 1000.

 

non ans.png

 

 

non ans mis.png

 

 

28 минут назад, Fedor сказал:

А если разбить погрубее или наоборот. О силе пока давайте забудем.  :)

 

Сетка тоже ничего не решает. Ну только напряжения скачут, понятное дело.

 

non ans rough.png

 

 

non ans rough mis.png

 

 

18 минут назад, Fedor сказал:

Кстати сколько итераций у Вас осуществлялось ?   Зависит ли это от их числа, то есть требуемой точности решения ?  

Да он сразу на подшаге сходится. На 1000 шагов в общем 1001 итераций

non ans rough.png

12 минут назад, ДОБРЯК сказал:

Нулевая энергия деформации. Вращение балки. 

Что вы пытаетесь доказать?

 Энергия деформации = 8.450397e-05 (КГ*ММ) 

 

А ИСПА геометрическую нелинейность посчитать может? Это же линейный расчет, я правильно понимаю?

Ссылка на сообщение
Поделиться на других сайтах

Интересно.  Без силы у меня за один шаг (итерацию) при нелинейной деформации строго поворачивалась...

Проблемы начинались с добавлением силы . А если квадратичные элементы использовать ?   

Изменено пользователем Fedor
Ссылка на сообщение
Поделиться на других сайтах
12 минут назад, статист сказал:

А ИСПА геометрическую нелинейность посчитать может? Это же линейный расчет, я правильно понимаю?

Вы о чем? Какая нелинейность, когда просто поворот?)

Ссылка на сообщение
Поделиться на других сайтах
Цитата

От количества подшагов не зависит

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

Ссылка на сообщение
Поделиться на других сайтах

Нулевые напряжения.

1.png

Только что, Fedor сказал:

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

Вы не только себе но еще и всем голову морочите нелинейностью.) 

Ссылка на сообщение
Поделиться на других сайтах

Тут фишка в том, какое расстояние стало между крайними точками.  Гипотенузу посчитайте . 

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

Вращение это нелинейное преобразование координат... 

 

 

image.png

Изменено пользователем Fedor
Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, Fedor сказал:

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

Я же ответил на этот вопрос.:biggrin:

 

45 минут назад, ДОБРЯК сказал:

Нулевая энергия деформации. Вращение балки. 

Что вы пытаетесь доказать?

 Энергия деформации = 8.450397e-05 (КГ*ММ)

 

7 минут назад, Fedor сказал:

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

Сколько раз вам нужно написать, что это просто поворот балки. Напряжения = 0.

Про какую нелинейность вы постоянно говорите?:biggrin:

Ссылка на сообщение
Поделиться на других сайтах
Цитата

Я же ответил на этот вопрос.

Видно пропустил. По рисунку вы сместили на 80 мм. Нарисуйте точно на 200 мм вертикальное смещение и увидите насколько изменилась длина балки после поворота без учета нелинейности ... 

Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, Fedor сказал:

По рисунку вы сместили на 80 мм. Нарисуйте точно на 200

По рисунку я задал перемещение 200 мм.

53 минуты назад, ДОБРЯК сказал:

Нулевая энергия деформации. Вращение балки. 

Что вы пытаетесь доказать?

 Энергия деформации = 8.450397e-05 (КГ*ММ)  
 

 

1.png

На рисунке перемещение по Y -200 мм.

Вы продолжаете отмечать день рождения?:biggrin:

Ссылка на сообщение
Поделиться на других сайтах

Энергия то понятно что будет нулевой при любых кососимметричных матрицах преобразования из-за нулевого тензора деформаций. Это легко получить приравнивая нулю  линейный тензор  деформаций и определив при каких перемещениях он будет нулевым. Частный случай - вращения :)  

Вы не цифирки, а картинку правильно нарисуйте. Я же показал что если горизонтальный размер остается 400, то вертикальный 80 мм :) 

Каждый может взять линейку и проверить угол :) 

Вот где должна проходить нижняя линия. 

C0.GIF

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

Изменено пользователем Fedor
Ссылка на сообщение
Поделиться на других сайтах
Цитата

Вы продолжаете отмечать день рождения?

Это праздник, который всегда со мной   :) 

Ссылка на сообщение
Поделиться на других сайтах
20 минут назад, Fedor сказал:

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

Это в любой программе так.:biggrin:

23 минуты назад, Fedor сказал:

Я же показал что если горизонтальный размер остается 400, то вертикальный 80 мм

Если меняется вертикальный размер, то будет энергия деформации.:biggrin:

 

Ссылка на сообщение
Поделиться на других сайтах

Как обычно удивительно небрежны. С точностью до наоборот как обычно  :) 

C0.GIF

Цитата

Если меняется вертикальный размер, то будет энергия деформации

Энергия деформации будет при нулевых деформациях.  https://ru.wikipedia.org/wiki/Тензор_деформации

Их несложно найти для ненулевых u, v, w в линейном случае   . Поупражняйтесь :) 

 

Цитата

image.png

Видимо вот в чем сермяжная правда. В материальной объективности... 

Изменено пользователем Fedor
Ссылка на сообщение
Поделиться на других сайтах
6 минут назад, Fedor сказал:

Энергия деформации будет

Я же вам объяснил, что энергия деформации равна нулю. А вы мне доказываете, что геометрические размеры должны измениться.

То вы говорите про какую-то нелинейность,) потом перескакиваете на изменение геометрии. Вы можете сформулировать свою мысль.

Или праздник всегда с вами?

Ссылка на сообщение
Поделиться на других сайтах

https://de.wikipedia.org/wiki/Verzerrungstensor  

 

Вам бесполезно что-то объяснять . Не стараетесь понять. Равенство нулю энергии говорит о нулевых деформациях в малом, но ничего не говорит о сохранении размеров. Проделайте упражнение на котором советовал поупражняться. Я такое проделывал еще на EC ЭВМ лет тридцать пять назад :) 

 

 

 

Изменено пользователем Fedor
Ссылка на сообщение
Поделиться на других сайтах

https://en.wikipedia.org/wiki/Finite_strain_theory#Finite_strain_tensors    много еще чего есть в механике непонятного ... :) 

Ссылка на сообщение
Поделиться на других сайтах
58 минут назад, Fedor сказал:

Равенство нулю энергии говорит о нулевых деформациях в малом

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

2 часа назад, Fedor сказал:

Без силы у меня за один шаг (итерацию) при нелинейной деформации строго поворачивалась...

Какая может быть нелинейная деформация, при нулевых деформациях.:biggrin:

2 часа назад, Fedor сказал:

А если квадратичные элементы использовать ?   

От типа КЭ результат не зависит. :biggrin:

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, Fedor сказал:

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

Вот вот вы таким образом пытаетесь решить кинематическую задачу. Кинематическая задача в статической поставке в МКЭ правильно не решается.

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

Вы уже 25 лет решаете эту задачу. И не можете правильно решить.:biggrin:

4 минуты назад, Fedor сказал:

По определению 

Деформации нулевые. Вы даже этого не понимаете?:biggrin:

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...