MagicDPD | CAE магия
1.7K subscribers
1.34K photos
8 videos
8 files
1.98K links
Кто-то думает, что это волшебство - для нас же это просто работа. Тут рассказывают о развитии CAE технологий, HPC вычислительных комплексов и прочей магии позволяющей разрабатывать хорошие продукты.
Welcome to Magic-Driven Product Development!
Download Telegram
Как корректно остановить решатель на ходу
Есть очень часто встречающаяся задача - запуск решателя в консольном/пакетном режиме для выполнения расчета на рабочей станции или кластере. С этой задачей сталкиваются многие опытные инженеры. Как запускать консольные расчеты хорошо описано в документации, много рассказано на форумах.
Однако мало кто знает, что практически любой решатель, работающий в фоне, можно корректно остановить с запуском точки рестарта/чекпоинта. Как правило, необходимо создать особый файл в особом месте. Когда решатель его обнаружит, он сам все поймет. Особый файл будет удалён сразу после его обработки. Давайте посмотрим, как это сделать для основных решателей ANSYS.
Mechanical/APDL:
В рабочей директории решателя надо создать файл с именем jobname.abt, где jobname - имя проекта. Файл должен содержать только одно слово: nonlinear
Fluent:
Для записи файла рестарта (а это просто обычный набор из cas и dat) необходимо создать файл check-fluent в директории /tmp для Linux или check-fluent.txt в директории C:\temp для Windows. Корректно завершить решатель можно, создав в этих директориях файл exit-fluent или exit-fluent.txt соответсвенно.
CFX:
C этим решателем все сильно проще. У него есть специальный исполняемый файл cfx5stop, предназначенный для корректной остановки расчета. Таким образом, для проекта mixer_001, достаточно выполнить команду cfx5stop -directory mixer_001.dir в его рабочей директории - там mixer_001.dir будет являться временной рабочей директорией.
LS-DYNA:
У этого решателя есть такая штука как SWITCH CONTROLS - в ходе расчета вы можете нажать комбинацию клавиш Control+C и ввести определнный код. Вот те ключевые коды, которые относятся к нашей теме:
sw1 - записать файл рестарта
sw2 - вывести оценку оставшегося времени расчета
sw3 - записать файл рестарта
Если консоль вам недоступна (расчет идет в фоне), то необходимо создать в рабочей директории решателя файл d3kil (или jobid.d3kil, если вы используете идентификаторы расчетного проекта), содержащий соответсвующий код.
Autodyn
Для этого решателя надо создать файл savenow.dat для записи файла рестарта в конце текущей итерации, а файл endbat.dat завершит расчет после окончания текущей итерации.
Решатели семейства AEDT (ANSYS Electronics Desktop) - бывший Ansoft
Знающие люди подсказали, что решатели можно спокойно убивать на лету - они сами смогут рестартовать остановленный таким образом расчет с последней записанной итерации.
ANSYS Workbench
Если вы пользуетесь ANSYS RSM, то там для всех поддерживаемых решателей уже есть стандартная кнопка Interrupt, которая делает всю вышеописанную магию за вас. Настраивайте RSM и наслаждайтесь :-)

#AEDT #ANSYS #Autodyn #CFX #Checkpont #Fluent #HPC #Longread #LSDYNA #Restart #RSM #Workbench
http://bit.ly/2u3rrhp
Настройка использования лицензий при работе RSM
ANSYS RSM (Remote Solve Manager) - отличное средство по выполнению расчетов как на кластерах, так и на соседних рабочих станциях коллег, которые ушли в отпуск. Однако его надо уметь готовить.
Иногда при отсутствии тонкой настройки может сложиться впечатление, что система "поджирает" лицензии на Mechanical. На самом деле, при выполнении фонового расчета в Mechanical по умолчанию RSM берет сразу 2 лицензии:

одна лицензия используется для проверки корректности постановки задачи в проекте (в логе сервера лицензий отображается как mech_struct)
еще одна уходит непосредственно на расчет (в логе сервера лицензий отображается как ans_solve)

Такое распараллеливание по лицензиям позволяет ускорить расчетный процесс - не надо ждать ответа от сервера лицензий. Однако, если лицензий мало, то неплохо бы их экономить.
На этот случай есть одна интересная тонкая настройка, скрытая в главном меню Workbench>  Tools> Options> Mechanical. Там есть список "Release License for Pending Jobs" со следующими опциями:

On Demand - работа по умолчанию с задействованием двух лицензий. Одну из лицензий можно попросить назад через опцию контекстного меню "Release License" на ячейке Solution.
Always - заставляет решатель автоматически отдавать лицензию при фоновом/пакетном расчете, когда работа идет на уровне ячейки Solution.
Design Point Run Only - аналогично предыдущему, но только для проектов, содержащих параметрические исследования или перебор вариантов.

Таким образом, переключив настройки системы на Always или Design Point Run Only, мы немного усмиряем аппетит Mechanical за счет небольшого падения производительности.

#HPC #Longread #Mechancial #RSM
http://bit.ly/2NJa1j3
Включаем Implicit решатель в Workbench LS-DYNA
Если очень надо, то можно и Workbench LS-DYNA заставить работать в Implicit режиме. При этом выводятся очень симпатичные невязки. Хотя графики на первых порах были бы приятнее.
Далее код командного объекта, что включает хороший нелинейный расчет. Будьте очень аккуратны при копировании: даже несмотря на freeformat стиль записи, есть вероятность, что web форматирование может повредить командный блок. Лучше сначала проверьте его в LS-PrePost. Командный объект подготвлен на основе материалов ARUP, найденных в сети в 2017 году.

*CONTROL_ACCURACY
$
$ OSU – 2nd order objective stress update
$ = 0 -> Off (default)
$ = 1 -> On
$
$ INN – Invariant node numbering
$ = 2 -> On for shell and thick shell elements (default for implicit)
$
$ IACC – Implicit accuracy flag, turns on some specific accuracy considerations in implicit analysis at an extra CPU cost.
$ = 0 -> Off (default)
$ = 1 -> On
$
1,2,0,1
*CONTROL_IMPLICIT_AUTO
$
$ IAUTO – Automatic time step control
$ = 0 -> constant time step size (default)
$ = 1 -> automatically adjusted timestep size
$
$ DTMIN – Minimum allowable timestep size (default = DT0/1000)
$ Simulation stops with error termination, if time step falls below DTMIN
$
$ DTMAX – Maximum allowable timestep (default = DT0*10)
$
1,11,5,0.0002,0.02
*CONTROL_IMPLICIT_GENERAL
$
$ IMFLAG – Implicit/ Explicit analysis type flag
$ = 1 -> Implicit analysis
$
$ DT0 – Initial time step size for implicit
$ (default – none)
$
$ IMFORM:= Element formulation switching flag
$ EQ.1: switch to fully integrated formulation for implicit springback
$ EQ.2: retain original element formulation (default).
;
1,0.02,1,1,2
*CONTROL_IMPLICIT_SOLUTION
$
$ NSOLVR – Solution method for implicit analysis
$ = 2 -> Nonlinear with BFGS updates (obsolete)
$ = 12 -> (new default from 9.0.1) Nonlinear with BFGS updates
$ + optional arc length
$ + different line search and integration schemes compared to solver 2.
$
$ DCTOL – Displacement relative convergence tolerance (default = 0.001)
$
$ ECTOL – Energy relative convergence tolerance (default = 0.01)
$
$ NLPRINT – Nonlinear solver print flag
$ = 3 -> print iteration, norm and line search info.
$
$ D3ITCTL – Controls D3ITER database (default = 0)
$
12,11,15,0.001,0.01,1e+010,0.9,1e-010
2,1,1,3,2
0,,,1,2
4,2
*DATABASE_EXTENT_BINARY
$
$ RESPLT – Output of translational and rotational residual forces to d3plot & d3iter.
$ = 1 -> Output residual
$
,,,1,1,1,1,1
,,,1,1,1,2
,,,,2,,,
,1

#ACT #ANSYS #ARUP #Implicit #Longread #LSDYNA #SommandSnipet #Workbench
http://bit.ly/2OwQJgD
Как получилась DASSAULT SYSTEMES
Большая биографическая статья про то, как Франсису Бернару (Francis BERNARD) удалось стать отцом такой мощной и влиятельной компании, как Dassault Systemes. Рассказана история развития, партнерства с IBM и конкуренции на рынке PLM. Однако, большой уклон сделан на бизнес стратегии, а не на техническую часть. Напомню, что компания основана в 1981, и сейчас у нее есть очень вкусный набор решений почти для всего.
http://isicad.ru/ru/articles.php?article_num=14122

#DassaultSystemes #Longread
http://bit.ly/2BTVUpr
Работа с CAE на удаленке
#ANSYS #CAE #HPС #longread #NVIDIA #RDP #RDSH #VDI
by GlukRazor