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

Подскажите по Ansys'у...


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

22.10.2022 в 23:00, статист сказал:

Не знаю в эту тему писать или какую.

Оказывается в Kate есть встроенная подсветка синтаксиса Ansys https://kate-editor.org/

Может кому пригодиться.

Еще там можно прикрутить подсветку Code_Aster https://github.com/psicofil/Code_Aster_Kate_Syntax

,GMSH https://www.pling.com/p/1220774/ (правда у меня пока не заработал), и я так понял, чего угодно, только искать нужно.

 

Обычно прописаны правила организации синтаксиса для подсветки. В Notepad++ и Textpad я для себя сам настраивал. В notepad++ есть, скажем 8 групп ключевых слов, на которые настраиваются цвета, как комментарии выделяютя, операторы и т.д. Важно, например, выставлять опцию заменять табуляцию на пробелы, иначе в apdl полезут грабли, причем не сразу это поймешь даже, а также кодировку windows. Вот пример  настройки синтаксиса в notepad++ 

image.png

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


5 часов назад, Flint_ru сказал:

Обычно прописаны правила организации синтаксиса для подсветки. В Notepad++ и Textpad я для себя сам настраивал.

Я знаю, что в sublime text можно установить подсветку apdl. https://packagecontrol.io/packages/APDL (ANSYS) Syntax Highlighting Я раньше пользовался им. Также Вы показали, что можно напрямую задать в notepad++.

Я уверен, что у каждого опытного пользователя уже найден способ своего написания apdl. Преимущество Kate в том, что синтаксис ansys идет из коробки. Поставил и пользуйся. Думаю начинающим пользователям это будет подспорье.

 

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

Доброго времени суток. Вопрос в следующем. При написании макросов, при построении геометрии с разными переменными параметрами (размерами), после overlap часто происходит перенумерация V, A, L, KP. Частям модели присваиваются новые номера и ANSYS встаёт, вылетает с ошибками. Как правило не может разбить модель. Может есть какая возможность это победить? Предполагаю, что нумерация производится "в зависимости от положения центров" объёмов, поверхностей и т.д. от начала глобальной CSYS. Есть, конечно, в Main Menu компресс нумерации, но это не панацея. Ansys древний уже, v12.0.

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

@benevolent

можно интерактивно определить номер нужного элемента геометрии, только нужно приблизительно знать положение его цт.

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

@benevolent

можно интерактивно определить номер нужного элемента геометрии, только нужно приблизительно знать положение его цт.

Да, можно, предполагаю Вы имеете ввиду через SEL по by location, затем LIST. Но это очень усложняет и вряд ли будет работать при моделировании с плавающими параметрами. В общем виде сложно определить положение ц.т., к тому же часто требуется разбиение V заданием числа делений L. Если их тоже определять через SEL... это, мягко говоря, очень сложно реализуемо. Сложно поймать ц.т., например сферу в сфере, дуги/цилиндры разных радиусов с одним центром и т.д. Их и руками иногда ловить приходится несколько минут.

В идеале, для макросов было бы лучше иметь возможность присваивать объекту (объёму) метку, и все below имели признак этой метки. Но как бы это выглядело после overlap... )))

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

Но это очень усложняет и вряд ли будет работать при моделировании с плавающими параметрами

А вы огонь кремнием разжигаете или сухим трением?

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

А вы огонь кремнием разжигаете или сухим трением?

Вы применяете такой подход при написании макросов? У Вас это работает, и работает всегда? У меня магнитостатика, необходимо учитывать большое окружающее воздушное пространство, окружающее конструкцию. Бывает по несколько сотен объёмов на модель.

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

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

Как бы и не проблема. Есть достаточное количество приемов с использования известных характерных длинн, диапазонов координат, известных величин объемов. В общем инструментов хватает что бы не праиться и решить вопрос в автоматическом режиме.

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

логики в этом нет ни какой

Спасибо, немного успокоили.

4 часа назад, dronm сказал:

Как бы и не проблема...

Видимо альтернатив нет. Буду отрабатывать предложенный вариант решения. Ещё раз спасибо.

4 часа назад, dronm сказал:

логики в этом нет ни какой

Спасибо, немного успокоили.

4 часа назад, dronm сказал:

Как бы и не проблема...

Видимо альтернатив нет. Буду отрабатывать предложенный вариант решения. Ещё раз спасибо.

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

Бывает по несколько сотен объёмов на модель

Количество по идее не при чем.

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

 

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

 

Ну ладно, я не так спрашивал, соррян.

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

Единственный раз, когда я был вынужден использовать апдл для построения параметрической геометрии вместо нормального када,

Я выполнял подобную задачу, только исключительно в ANSYS, и не только построение геометрии, а с выводом результата решения. Т.е. оператор только задаёт параметры модели и на выходе готовый результат. Понятно, что туда входит и присвоение материалов, и разбиение на элементы, и т.д., включая многоуровневые *IF-ы и *DO. Потом, в достаточно простых задачах, при использовании макросов наблюдались описанные выше неприятные вещи. При этом достаточно было немного изменить размер одного или нескольких элементов модели , даже на 1-3%, и макрос продолжал исправно работать. Поэтому и задал вопрос, так как для меня проблема насущная и в моём представлении сталкиваться с ней должны были многие.

Ссылка на сообщение
Поделиться на других сайтах
06.02.2023 в 15:11, benevolent сказал:

Доброго времени суток. Вопрос в следующем. При написании макросов, при построении геометрии с разными переменными параметрами (размерами), после overlap часто происходит перенумерация V, A, L, KP. Частям модели присваиваются новые номера и ANSYS встаёт, вылетает с ошибками. Как правило не может разбить модель. Может есть какая возможность это победить? Предполагаю, что нумерация производится "в зависимости от положения центров" объёмов, поверхностей и т.д. от начала глобальной CSYS. Есть, конечно, в Main Menu компресс нумерации, но это не панацея. Ansys древний уже, v12.0.

В вашем посте сразу несколько проблем.  Давайте попробуем последовательно разобраться.

1.      «Как правило не может разбить модель».    Да, действительно булевы операции с геометрическими примитивами ANSYS выполняет  отвратно.  Очень часто не может выполнить. Бороться с этим сложно.  Из своего опыта могу порекомендовать попробовать: 1) Изменить точность (команда btol). По умолчанию 1е-5. Попробуйте 1е-4, 1е-3,.. Иногда 1е-6 у меня помогало. 2) Надо, например, разделить объем поверхностью. Вместо булевой операции я  иногда удаляю объем (оставляя поверхности) и затем собираю два новых объема по поверхностям, включая ту поверхность, которой надо было разделить. Но это все работа ручками…

2.      «Часто происходит перенумерация. Частям модели присваиваются новые номера»  В общем случае – задача не простая и универсального способа, думаю, нет. Если интересует overlap для поверхностей, то возможны варианты.  Если перекрываются 2 поверхности, а после операции образуется 3 – тут все просто: задача сводится  к определению трех следующих свободных номеров поверхностей.

image.png

Но в общем случае две поверхности могут давать очень много новых. И какие номера конкретно будут у поверхности, думаю, не так важно.  Для инженера важнее логика и принцип, какую конкретно поверхность надо взять. Это конкретная задача и кроме вас никто не скажет. Вот пример пересечения:

image.png

Какая из общих поверхностей вас интересует? И нумерация вам тут не поможет.  Есть общий принцип: нумерация присваивается в порядке доступных свободных номеров. Сначала тем поверхностям, которые общие. Следующий свободный номер  - для наименьшего номера из исходных двух пересекающихся. И, наконец, следующий свободный номер  - для наибольшего номера из исходных двух пересекающихся.  Это все относится только к  перекрытию ДВУХ поверхностей!

3.      Наконец, последняя проблема, вытекающая из вашего топика: а как найти следующий доступный номер (для точки, поверхности, объема,….)  С одной стороны  есть стандартные функции arinqr(0,16), vlinqr(0,16), lsinqur(0,16)…  т.е. next_available_area= arinqr(0,16) присвоит вашей переменной следующий доступный номер. Все хорошо, но есть баг ANSYS. Для точек работает нормально,  но для остальных - после этой команды ANSYS считает, что этот самый номер уже занят (для линий, поверхностей, объемов…). Получается, что толку от этой функции нет.  

4.      Если нужно – во вложении мой макрос, который выдает следующие свободные номера для поверхностей. Входной параметр  arg1 – сколько таких номеров надо извлечь. Разобраться не сложно. И можно переделать для объемов или линий. Эти номера уже можно использовать, они действительно будут использованы, как следующие.

5.      Если у кого нет – выкладываю также файл с описанием функций inquire.  Полезная штука.

next_av_a.mac inquiry_sheet.pdf

Ссылка на сообщение
Поделиться на других сайтах
16.02.2023 в 21:52, Flint_ru сказал:

Для инженера важнее логика и принцип, какую конкретно поверхность надо взять. Это конкретная задача и кроме вас никто не скажет.

Вангую - положения поверхности достаточно в 90% случаев.

Изменено пользователем soklakov
Очепятка
Ссылка на сообщение
Поделиться на других сайтах
16.02.2023 в 22:52, Flint_ru сказал:

В вашем посте сразу несколько проблем.  Давайте попробуем последовательно разобраться.

Вы правильно и логично описали суть проблемы, и варианты её решения. Добавлю следующее.

По 1.: Булевы операции действительно выдают ошибку, с рекомендациями поправить значение в BTOL. Добавлю, что ошибка вылетает (часто, но не всегда) при overlap объёмов с малыми линиями, при условии, что вся модель на порядок (несколько порядков) больше. Например, объём некоторый объём с линией 1 мм, максимальный размер модели  10 м. Решение, это поэтапный overlap объёмов с малыми линиями, с постоянным добавлением более крупных объёмов. (Одним словом частями.) После overlap желательно провести GLUE по всем объёмам, иначе могут быть казусы в решении.

По 2.: Механизм нумерации примерно такой, предполагаю, что здесь ещё участвует центр масс поверхности/объёма, и если бы этот алгоритм ВСЕГДА чётко работал, то с этим не возникло бы проблем. Нумерация при близких параметрах не нарушалась бы.  Однако, при определённых сочетаниях геометрических размеров эта схема нарушается, и, в частности, объёмы, и соответственно below, получают другие номера, даже при близком соотношений размеров объёмов. Если есть сомнения, могу предоставить макрос с командами работающими и вылетающими в ошибки из-за перенумерации.

За предоставленные рекомендации и макросы спасибо.

 

 

Ссылка на сообщение
Поделиться на других сайтах
22.02.2023 в 11:39, benevolent сказал:

Как выбрать V зная его объём, подскажите?

Например так

def_v.mac

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

Спасибо! Вчера сам свой вариант наколхозил.

 

А нельзя просто шагать по телам, дергать у каждого объем, и искать нужный ?

Чисто последовательным алгоритмом, а не ворочать всеми объемами сразу ? 

Ссылка на сообщение
Поделиться на других сайтах
28.02.2023 в 16:25, benevolent сказал:

Спасибо! Вчера сам свой вариант наколхозил.

Что-то я сомневаюсь, что у вас это будет работать нормально: сравнивать по 10 знакам после запятой - это из области фантастики. Вычисление объема или площади - процедура еще та! Простую геометрию - легко, а сложную - тут и начинается свистопляска. У меня было, что результат отличался в 2 раза от истинного. Большая ошибка для вытянутых поверхностей и тонких вытянутых объемов. Само значение зависит, как от параметров тесселации как в команде ASUM, VSUM, так и /FACET.  Наглядный пример - во вложенном файле. Запустите его и на экране увидете результат. Детали -  в начале макроса. Я когда выкладывал макрос - неспроста был второй параметр - точность, чтобы компенсировать ошибки вычислений.

a_test.mac

Ссылка на сообщение
Поделиться на других сайтах
28.02.2023 в 16:39, Борман сказал:

А нельзя просто шагать по телам, дергать у каждого объем, и искать нужный ?

Чисто последовательным алгоритмом, а не ворочать всеми объемами сразу ? 

Когда два объема - можно просто повторить два раза один кусок. Когда объемов много - уже цикл, причем не от 1 до последнего номера, а  по количеству объемов, определяя следующий номер. Условно два объема с номером 1 и 1000. Цикл должен быть от 1 до 2, а не от 1 до 1000, как написано у @benevolent.  Можно использовать и  *if - *go, но это уж самый дурной тон в программировании. В APDL  одно из лучших - матричные операции. Это работает быстрее всего.  В простых задачах  не почувствовать разницы, но когда последовательно проверяется, например, более 1000 объемов, да все это крутится в оптимизации - лучше от циклов вообще отказаться, тем более, что через матричные операции делается не сложно.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • david1920
      нет время нет заниматься да и информации новой нет Это я на других станках делал
    • gudstartup
      @david1920 имеется ввиду платы на системах с сертификацией опций фалом oprminf старые в расчет не принимаются вы свой 18i восстановили?
    • gudstartup
      очень даже спрашивают как обязательную информацию для проверки вашей компании налоговый идентификатор должен быть указан. на myfanuc не спрашивают а вот на портале к сожалению просто так не зарегаться. 
    • david1920
      На 0I-TC mate менял плату управления приводами На 18i-TB менял для диагностики платы процессоров (один был от Spinner другой простой) процы были одинаковые Всё работает
    • brigval
      Браком 1.04В версии 1.04Добавлено: Автоуменьшение высоты шрифта многострочного наименования в ОН чертежа.Добавлено: Переименование поверхностей, баз, размеров в порядке их следования на чертеже.Добавлено: Переименование изображений по ГОСТ: сначала виды, затем разрезы, сечения, выносные элементы.Добавлено: Выравнивание неассоциативных видов.Добавлено: Ручной ввод шага и угла наклона штриховки.Добавлено: Перемещаются в макроэлемент компоненты, исключаемые из спецификации.Добавлено: Выбор количества значащих цифр в значении площади поверхности детали для вставки в ТТ.Добавлено: Возможность не авторазмещать ТТ перед конвертацией чертежа в PDF.Добавлено: Добавлены кнопки «Выделить все включенные в расчет» и Выделить все исключенные из расчета».Добавлено: Версия КОМПАС-3D Home показывается в программе со словом Home.Добавлено: Улучшен алгоритм считывания и вставки ТТ чертежа.Добавлено: При конвертации чертежа в PDF удаляется старый файл с таким же обозначением в начале имени, как обозначение в начале имени нового файла.Добавлено: Улучшено считывание номеров позиций из 3D-модели сборки.Исправлено: Иногда скрытые и потом показанные объекты чертежа отображались не серым цветом.Исправлено: Иногда после ручного заполнения графы «Масса» ОН чертежа в окне программы масса могла отображаться не правильно.Исправлено: В некоторых случаях из ОН чертежа могла не считываться литера.Исправлено: В некоторых окнах программы неправильно показывался заголовок окна программы.Исправлено: Другие замеченные мелкие ошибки и неточности кода.Скачать
    • boomeeeer
      Не помню чтобы у меня такое спрашивали при регистрации.
    • Snake 60
      @eljer0n  Откройте макрос SaveDRW.swp редактором VBA Найдите вот эти строки: Поменяйте выделенную цифру на нужную вам 3 или 4 - это количество символов которое останется от имени конфигурации. PS При сохранении в PDF тоже ругается на неправильное название чертежа, т.к. тоже обрезает название конфигурации до двух знаков, там тоже надо править при желании...
    • eljer0n
      @malvi.dp в общем порядок следующий (на каждое исполнение свой чертеж и позиция в спецификации):   Для исполнения с 2мя знаками. 1. Есть деталь с именем формата ХХ-01.01-01 (последнее -01 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации (как у вас на картинке). Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с корректным именем. 5. В спецификации сборки все отображается корректно.     Для исполнения с 3мя знаками. 1. Есть деталь с именем формата ХХ-01.01-011 (последнее -011 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации. Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с некорректным именем, а именно - с обрезанным до двух знаков исполнением (-01). 5. В спецификации сборки шифр отображается (внезапно! может какой глюк был: у солида или у меня ) корректно, как и у вас на рисунке.     Выходит, загвоздка все-таки только в сохранялке чертежа.
    • gudstartup
      да информация о решенной проблеме очень важна так что будем ждать хороших новостей!
    • mrVladimir
      @gudstartup Спасибо Вам за помощь. Теперь дело в приобретении платы. Как что-то получится (сперва приобрести, потом поставить) обязательно отпишусь.
×
×
  • Создать...