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

Связь Ansys APDL с системами вне


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

Здравствуйте. Может кто-нибудь видел, читал или занимался такими вещами, как связь решения и в принципе скриптового языка apdl с языками программирования или другими системами вне? В общих чертах идея такая. В процессе расчета мне необходимо (если возможно все-таки), чтобы ansys посылал некоторые данные в нужную мне систему, там эти данные обработались и получили ответ, который отправили обратно в ansys и он продолжил решать дальше. Наверное слово "система" громкое, мне нужно, чтобы в параллельно запущенный код (маленькая программка, которая должна будет обрабатывать данные, как мне нужно, пусть будет на С или С#, не важно) посылались данные и принимались из нее же. Или же, чтобы через APDL можно было запустить мой код на каком-либо языке, он выполнился внутри каким-то образом и решение пошло дальше. Все решение будет в цикле (моя задача решается несколько раз), соответственно нужно каждый раз посылать данные и каждый раз получать ответ. Интересует работа соответственно только в Mechanical, Workbench не предлагать, пожалуйста. Спасибо!

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


UnPinned posts

Давно хотел попробовать, но руки дошли только сейчас.

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

Безымянный2.jpg

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

Безымянный3.jpg

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

Безымянный1.jpg

 

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

На питоне точно будет работать все что угодно в APDL. Связка Ansys + Python считайте почти официальная. Есть предметные вопросы - обращайтесь.

Согласен, что в APDL можно запустить все, что угодно. Для этого есть команды /sys, /syp, которые посылают команду для ОС, а также средствами TCL ( командой ~eui,'source .....'). API TCL для APDL знаю. Но разве существует в APDL API для Python?  Как вы запускаете программу на Python из APDL? Хотелось бы увидеть пример. Python работает в связке с Workbench. Разве нет?

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

Согласен, что в APDL можно запустить все, что угодно. Для этого есть команды /sys, /syp, которые посылают команду для ОС, а также средствами TCL ( командой ~eui,'source .....'). API TCL для APDL знаю. Но разве существует в APDL API для Python?  Как вы запускаете программу на Python из APDL? Хотелось бы увидеть пример. Python работает в связке с Workbench. Разве нет?

 Передал официалу поддержки ваш вопрос, ответом было вот это https://magicdpd.ru/scripting-for-ansys-mechanical-2021r2/

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

Передал официалу поддержки ваш вопрос, ответом было вот это https://magicdpd.ru/scripting-for-ansys-mechanical-2021r2/

В ссылках видео нет никакого упоминания о вызове Python из APDL. Речь идет только о workbench Mechanical.  Думаю, что заявление, что теперь на Phyton можно писать в APDL подразумевает, что можно в PyMAPDL записать команду APDL, а потом конвертируется в файл APDL.  Как написать в  APDL  команду Python что-то не видно.

Скорее речь идет об этом:

Here’s a brief example of how PyMAPDL works:

>>> from ansys.mapdl.core import launch_mapdl
>>> mapdl = launch_mapdl()
>>> print(mapdl)

Product:             ANSYS Mechanical Enterprise
MAPDL Version:       RELEASE  2021 R1           BUILD 21.0
PyMAPDL Version:     Version: 0.57.0
Copy to clipboard

MAPDL is now active and you can send commands to it as a genuine a Python class. For example, if we wanted to create a surface using keypoints we could run:

mapdl.run('/PREP7')
mapdl.run('K, 1, 0, 0, 0')
mapdl.run('K, 2, 1, 0, 0')
mapdl.run('K, 3, 1, 1, 0')
mapdl.run('K, 4, 0, 1, 0')
mapdl.run('L, 1, 2')
mapdl.run('L, 2, 3')
mapdl.run('L, 3, 4')
mapdl.run('L, 4, 1')
mapdl.run('AL, 1, 2, 3, 4')
Copy to clipboard

MAPDL interactively returns the result of each command and it is stored to the logging module or can be immediately printed out with print(mapdl.run). Errors are caught immediately and pythonically.

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

В ссылках видео нет никакого упоминания о вызове Python из APDL

А на гитхабе вы не пробовали вопрос задать в пайансис? 

Я так понял вы скорее про кодовую часть а не саму сису

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

Это APDL конвертируют в Python. 

These examples are used to demonstrate how to convert an existing ANSYS APDL script to a python PyMAPDL script. You could also simply use the built-in convert_script() within ansys-mapdl-core to convert an existing input file:

>>> from ansys.mapdl import core as pymapdl
>>> inputfile = 'ansys_inputfile.inp'
>>> pyscript = 'pyscript.py'
>>> pymapdl.convert_script(inputfile, pyscript)
16.12.2021 в 08:11, KorovnikovAV сказал:

Есть предметные вопросы - обращайтесь.

Нет, только у вас спросил.

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

Как написать в  APDL  команду Python

Нафига тащить днище в нормальный язык? Питон - это внешний интерпретатор и прослойка до математических сишных и фортрановских библиотек... и таки не поверите, вызывается оно командой "pythonxxx.exe name.py" Не зря питон назвали в честь Монтипайтон - каша в головах как в том цирке по ящику...

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

Просто пихают питон туда, где он не всегда уместен. Если всё, ради чего вызывается питон, это подсчитать сумму строк в матрице или как-нибудь её трансформировать, что APDL иногда (особенно если работать с матрицами не векторно, а поэлементно) вызывает тормоза, не проще накитать простой экзешник хоть на том же питоне, собранном в бинарник? Работать будет заметно быстрее чем дёргать любой интерпретатор.

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

и таки не поверите, вызывается оно командой "pythonxxx.exe name.py" 

Конечно не поверю. Потому, что в APDL нет такой команды pythonxxx.exe name.py. Есть, как я писал выше /sys , /syp , ~eui,'source ....'

 

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

Потому, что в APDL нет такой команды pythonxxx.exe name.py. Есть, как я писал выше /sys , /syp , ~eui,'source ....'

Если нет разницы, зачем платить больше?

Вы хоть вникните в смысл и цель питона - это обработка строковых данных на серверах. 

Теперь вникните в смысл APDL... Это разные скриптовые языки.

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

Вы хоть вникните в смысл и цель питона - это обработка строковых данных на серверах

Да мне этот Python и даром не нать.  Успешно использую APDL  и TCL.  И вы совершенно правы, считаю лучшим в APDL - матричные операции, а также команду *get, ~eui

Я как раз и начал задавать вопрос, потому что утверждали, что из APDL можно вызвать Python. 

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

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

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

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

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

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

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

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

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

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

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




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