Грамматика ADPL
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Расчетные программы > ANSYS > Грамматика ADPL

Грамматика ADPL

Ответ
Поиск в этой теме
Непрочитано 01.03.2012, 17:44 #1
Грамматика ADPL
metalirk
 
Регистрация: 11.07.2010
Сообщений: 173

Сразу извиняюсь, если Вы этот вопрос уже читали на ansysclub.ru.
Требуется соединить элементом все узлы, координаты х которых равны, а координаты z отличаются ровно на 0,01, помогите найти что не так делаю...
Код:
[Выделить все]
*get,nmax,node,,num,max
*do,n,1,nmax
*do,i,1,nmax
*get,a,node,i,loc,x
*get,b,node,n,loc,x
*get,c,node,i,loc,z
*get,d,node,n,loc,z
e=c-d
*if,a,eq,b,and,e,eq,0.01,then
E,i,n
*end if
*end do
*end do
Заранее спасибо.

Последний раз редактировалось metalirk, 13.03.2012 в 18:13.
Просмотров: 3116
 
Непрочитано 01.03.2012, 22:01
1 | #2
СергейД

расчеты МКЭ и CFD. ктн
 
Регистрация: 11.05.2005
Подмосковье
Сообщений: 2,172


а если проcто
eintf,.01?
СергейД вне форума  
 
Автор темы   Непрочитано 02.03.2012, 08:23
#3
metalirk


 
Регистрация: 11.07.2010
Сообщений: 173


eintf,.01 объединит все узлы, расстояние между которыми 0.01 и меньше, по-моему. А мне надо объединить именно те, между которыми ровно 0.01 и только те, у которых "х" совпадает...
metalirk вне форума  
 
Непрочитано 02.03.2012, 08:33
1 | #4
MrWhite


 
Регистрация: 18.09.2011
Нахабино
Сообщений: 1,040


Во-первых, думаю нужно все-таки не e сравнивать с 0.01, а abs(e)
Во-вторых, по опыту рекомендую проверку a,eq,b заменить на проверку аналогичную проверке с и d. Сравнивать при этом со скажем 1e-5. Но необходимость это зависит от того как вы построили сетку.
В-третьих, рекомендую для контроля выполнения использовать /COM, многие вопросы отпадут сами собой. Скажем проходят или нет условия можно выяснить вот так:
Код:
[Выделить все]
*if,a,eq,b,and,e,eq,0.01,then
    /COM, Условие выполнено!
    E,i,n
 *end if
MrWhite вне форума  
 
Непрочитано 06.03.2012, 11:00
1 | #5
Карлсон


 
Регистрация: 28.04.2009
Сообщений: 302


Offtop: Код очень желательно выделять соответствующими тегами.
Проблемы могут быть возникать если нумерация узлов в выборке не от единицы до NMAX, а в общем случае это так.
Я в таких случаях пользуюсь следующим подходом:
Код:
[Выделить все]
get,NMAX,node,,count
NN=ndnext(0)
*do,i,1,NMAX
  .......
  NN=ndnext(NN)
*enddo
Кроме того, у вас *enddo написано с пробелом, и короме того в именах переменных (по карайней мере N, E) использованы имена команд APDL.
Карлсон вне форума  
 
Автор темы   Непрочитано 14.03.2012, 18:43
#6
metalirk


 
Регистрация: 11.07.2010
Сообщений: 173


Цитата:
Сообщение от СергейД Посмотреть сообщение
а если проcто
eintf,.01?
Спасибо, Вы были правы. В конце концов серией выборок и eintf с правильными kcn и dx,dy,dz вопрос решился в сотни раз быстрее, всё-таки перебор всех комбинаций узлов в схеме дело долгое. Как говорил Маркс "усложнять просто, упрощать сложно"
metalirk вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Расчетные программы > ANSYS > Грамматика ADPL

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск