- •14.2. Что такое apdl?
- •14.3. Параметры
- •14.3.1. Рекомендации по выбору имен параметров
- •14.3.2. Задание параметров
- •14.3.3. Вывод списка параметров
- •14.3.4. Удаление параметров
- •14.3.5. Использование символьных параметров
- •14.3.6. Подстановка значений числовых параметров
- •14.3.7. Подстановка значений символьных параметров
- •14.3.8. Динамическая подстановка значений параметров
- •14.3.9. Выражения, содержащие параметры
- •14.3.10. Функции параметров
- •2. /Prep7 – /solu – /post1 – finish
- •3. Type – mat – real – secnum
- •5. Emodif
- •8. Nsel – esel
- •9. Nsle – esln
- •10. Allsel
- •13. Csys – local – rsys
- •14: Nrotate
- •18. /Output
- •19. /Show
- •20. Etable
14.3.8. Динамическая подстановка значений параметров
Динамическая подстановка значений происходит при использовании следующих команд: /TITLE, /STITLE, *ABBR и /TLABEL. Такая подстановка дает возможность исправить значение параметра, даже не обращаясь вновь к команде, использующей это значение параметра.
Пример:
XYZ='CASE 1'
/TITLE,This is %XYZ%
APLOT
В результате на графике появится заголовок "Случай 1".
Теперь можно изменить значение параметра XYZ, и на следующем графике появится новый заголовок, даже если не обращаться к команде /TITLE.
XYZ='CASE 2'
На следующем графике появится заголовок "Случай 2".
14.3.9. Выражения, содержащие параметры
Выражения с параметрами содержат, кроме параметров и чисел, символы таких операций, как сложение, вычитание, умножение и деление. Примеры выражений с параметрами:
X=A+B
P=(R2+R1)/2
D=-B+(E**2)-(4*A*C) ! Присвоение D = -B + E2 - 4AC
XYZ=(A<B)+y**2 ! Присвоение XYZ = A + Y2, если A меньше B; иначе XYZ = B + Y2
INC=A1+(31.4/9)
M=((X2-X1)**2-(Y2-Y1)**2)/2
Полный перечень символов операций включает: +, -, *, /, **, <, >. Для большей ясности и выделения операций используются круглые скобки. Порядок, в котором программа ANSYS обрабатывает выражение, следующий:
1. операции в скобках, начиная с самых внутренних;
2. экспоненцирование (в порядке появления, справа налево);
3. умножение и деление (в порядке появления, слева направо);
4. унарные операции (такие как +А или -А);
5. сложение и вычитание (в порядке появления, слева направо);
6. логические операции (в порядке появления, слева направо).
Таким образом, выражение Y2=A+B**C/D*E будет выполняться в таком порядке: сначала B**C, затем /D, в третью очередь *E и, наконец, +А. В подобных выражениях следует использовать скобки. Число вложенных скобок может достигать четырех, внутри каждой скобки может выполняться до девяти операций. Как правило, нужно избегать пробелов между операторами выражения. В частности, никогда не следует делать пробел перед символом *, так как остальная часть строки будет интерпретироваться как комментарий и, следовательно, игнорироваться.
14.3.10. Функции параметров
Функция параметров представляет собой запрограммированную последовательность математических операций, после обращения к которой возвращается единственное значение. Примеры функций: SIN(X), SQRT(B) и LOG(13.2). Полный перечень функций, доступных в настоящей версии программы ANSYS, приведен в таблицах 14.1 и 14.2
Табл. 14.1. Стандартные функции языка FORTRAN
ABS(x) |
Абсолютная величина х. |
SIGN(x,y) |
Абсолютная величина х со знаком у (при у=0 знак результата положительный). |
LWCASE (CPARM ) |
Написание параметра CPARM строчными буквами. |
Одна из сильнейших сторон в ANSYS Mechanical – это создаваемый входной файл, который посылается в ANSYS Mechanical APDL (MAPDL) на решение. И это действительно замечательно потому, что вы, как пользователь, имеете полный доступ ко всем глубинам и всем возможностям классического ANSYS. MAPDL – это хорошая старомодная программа, способная считывать команды и последовательно их исполнять. Так что единственное, что вам нужно сделать, чтобы добраться до любой опции – это просто ввести нужные команды.
Для множества пользователей со стажем это не является проблемой потому, что они «выросли» на текстовых командах. Однако у новых пользователей, как правило, возникают проблемы при желании ощутить всю мощь APDL (ANSYS Parametric Design Language) т.к. добраться до всех расширенных возможностей нелегко.
Порой, при оказании помощи пользователям или проведении обучения, нужно рассказать, как, например, изменить тип конечного элемента (Mechanical по умолчанию использует наиболее общую формулировку, но у пользователя есть возможность использовать и другие) и иногда попадаются люди, которые признаются, что не только не работали с командами APDL, но и никогда их не встречали.
Таким образом, чтобы помочь пользователям ANSYS Mechanical ступить на эту дорогу любви к APDL командам, мы выпустили список 20 APDL команд, которые следует знать каждому. Правда, по факту их тут больше, чем 20 потому, что некоторые из них мы объединили в группы. Здесь не будет приведено много подробностей по использованию каждой из них, т.к. в APDL help все превосходно расписано.
Основы APDL
APDL был разработан еще во времена перфокарт. Он был гораздо проще других программ в использовании, поскольку вводимые команды не требовалось раскидывать по столбцам. Вместо этого аргументы в командах разделяются запятыми. Поэтому, при задании узла, вместо вот этого:
345 12.456 17.4567 0.0034
(обратите внимание, что расположение запятой имеет решающее значение) нужно написать строку:
N,345,12.456,17.4567, 0.0034
По тем временам это был большой шаг вперед. Главное, что вам нужно знать об APDL командах – это то, что они начинаются с ключевого слова и далее продолжаются аргументами, назначение каждого из которых подробно расписано в разделе ANSYS help/Command Reference. Например, по команде для создания узла там написано следующее:
Рис.1 Описание команды N в ANSYS help.
Документация последовательная и вы довольно быстро разберетесь с нужными опциями для вашей задачи. Принцип компоновки и изложения этих статей также объясняется в help: // Command Reference // 3. Command Dictionary.
Другой ключевой момент в командах MAPDL – это автоматическое присвоение большинству созданных вами объектов (кроме нагрузок и граничных условий) ID номера. К объектам нужно обращаться по этому ID номеру. Это ключевое понятие зачастую неизвестно людям, «выросшим» только на GUI’s. Таким образом, если вы захотите создать систему координат и использовать ее в последствии, то вам необходимо присвоить ей ID и далее на него ссылаться.
То же самое касается определения элементов (Element Types), свойств материала, и т. д… Запомните - на этом «горит» множество пользователей. Для того, чтобы использовать MAPDL команды их нужно просто ввести строками в командный объект (command object) в дереве проекта.
Идея выбора объектов имеет фундаментальное значение для APDL. Выше было сказано, что все объекты имеют свой ID. Вы можете взаимодействовать с каждым объектом, указав его ID. Но если у вас их очень много, например, узлов и элементов, то в таком взаимодействии будет огромное количество тупой и скучной работы. APDL справляется с этим, предоставляя пользователю право выбирать группы объектов определенного типа и делать их “выбранными” или “невыбранными”. После этого при вводе команд, вместо конкретного ID, можно указывать “ALL” и тогда будут использоваться только все выбранные объекты. Иногда мы ссылаемся на объекты как на выбранные «selected», а иногда - как на активные “active.” Основная концепция в том, что любой объект в ANSYS Mechanical APDL может быть в двух состояниях: active/selected или inactive/unselected. Inactive/unselected объекты не используются ни в каких командах.
Если вы захотите посмотреть на все команды APDL, которые записывает ANSYS Mechanical, то просто выберите ветвь setup и далее Tools-> Write Input File. Просмотреть его можно в любом текстовом редакторе.
Перед тем как мы перейдем непосредственно к списку команд, обозначу последнее важное замечание: старый интерфейс GUI для MAPDL можно использовать для изменения и создания моделей так же, как и ANSYS Mechanical. Любое действие, которое вы производите в старом интерфейсе GUI конвертируется в команду и сохраняется в лог файле с названием проекта (например, jobname.log). Иногда имеет смысл сначала провести необходимые операции там, а потом скопировать получившиеся команды из log файла.
И еще одно замечание: на данный момент эти команды необходимы, но с каждым релизом все больше и больше возможностей решателя переносится в интерфейс ANSYS Mechanical и все меньше требуется APDL скриптов. Так что всякий раз перед написанием скрипта сначала убедитесь, что интерфейс ANSYS Mechanical этого пока не умеет.
Команды
1. !
Восклицательный знак является комментарием в APDL. Любой текст справа от него игнорируется программой. Регулярно используйте эту команду и оставляйте частые подробные комментарии, чтобы другие люди и вы сами всегда могли понять, что именно в вашем файле происходит.
