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

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


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

9 минут назад, benevolent сказал:

сейчас задача поставлена выводить данные по узлам.

Вам нужно сделать цикл по выделенным узлам или что ?

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


Вопрос в том, есть ли возможность ИЗБАВИТСЯ от циклов и получать данные для выбранных узлов не используя их перебор. Вручную делается моментально NLIST - выдаёт координаты, PRNSOL - требуемые физические величины, но для сохранения требуются действия оператора, в автомате получается только через циклы, что долго для большой БД. 

1 час назад, Борман сказал:

Вам нужно сделать цикл по выделенным узлам или что ?

В итоге, есть ли возможность избавится от циклов для вывода данных по узлам, что бы сразу обратится ко всем имеющимся "отфильтрованным" узлам или их сборке (Component Manager). В выходных данных координаты узла и компоненты магнитного поля и суммарное поле.

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

для вывода данных по узлам, что бы сразу обратится ко всем имеющимся "отфильтрованным" узлам или их сборке

Сразу ко всем нельзя. Можно по очереди, но для этого нужен цикл. Может быть вам нужен перебор по выделенному множеству? Но выглядеть это будет как цикл :)

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

Вопрос в том, есть ли возможность ИЗБАВИТСЯ от циклов и получать данные для выбранных узлов не используя их перебор. Вручную делается моментально NLIST - выдаёт координаты, PRNSOL - требуемые физические величины, но для сохранения требуются действия оператора, в автомате получается только через циклы, что долго для большой БД. 

В итоге, есть ли возможность избавится от циклов для вывода данных по узлам, что бы сразу обратится ко всем имеющимся "отфильтрованным" узлам или их сборке (Component Manager). В выходных данных координаты узла и компоненты магнитного поля и суммарное поле.

Для этого надо использовать матричные операции и маску.

Ниже пример извлечения для селектированных  узлов номера, координат, компонент напряжений для последнего шага решения и записи в  файл. Лучше оформить макросом.

!*************************************************************************!
!                                                                         !
!  Назначение:                                                            !
!                                                                         !
!     Извлечение для селектированых узлов:                                !
!     номер узла                                                          !
!     X,Y,Z координата в CSYS,0                                           !
!     компонеты напряжения X,Y,Z,XY,YZ,XZ,1,2,3,INT,EQV                   !
!     и запись в файл ss.xlsx                                             !
!                                                                         !
!  Входные параметры:                                                     !
!   Нет, но надо селектировать необходимые узлы                           !
!   Читается последний set                                                !
!                                                                         !
!  Выходные параметры:                                                    !
!   Нет. Все записывается в файл                                          !
!                                                                         !
!*************************************************************************!
                                      
csys,0 
! array initialization                                                                         
mask=
ss=
stress_0=
*get,ar21,node,,count
*GET,ar22,NODE,,NUM,MAXD  
*DIM,mask,array,ar22
*DIM,ss,array,ar21,15
*DIM,stress_0,array,ar22,15
!nplot 
/post1
rsys,0
set, last                         !--------------------------->  последний  set
*VGET,mask(1),NODE,1,NSEL         ! mask of selected nodes
*vfill,stress_0(1,1),ramp,1,1     ! # node
*vmask,mask(1)        
*VGET,stress_0(1,2),NODE,1,loc,x  ! x
*vmask,mask(1)        
*VGET,stress_0(1,3),NODE,1,loc,y  ! y
*vmask,mask(1)        
*VGET,stress_0(1,4),NODE,1,loc,z  ! z
*vmask,mask(1)        
*VGET,stress_0(1,5),NODE,1,S,X    ! Sx
*vmask,mask(1)        
*VGET,stress_0(1,6),NODE,1,S,Y    ! Sy
*vmask,mask(1)        
*VGET,stress_0(1,7),NODE,1,S,Z    ! Sz
*vmask,mask(1)        
*VGET,stress_0(1,8),NODE,1,S,XY   ! Sxy
*vmask,mask(1)        
*VGET,stress_0(1,9),NODE,1,S,YZ   ! Syz
*vmask,mask(1)        
*VGET,stress_0(1,10),NODE,1,S,XZ  ! Sxz
*vmask,mask(1)        
*VGET,stress_0(1,11),NODE,1,S,1   ! S1
*vmask,mask(1)        
*VGET,stress_0(1,12),NODE,1,S,2   ! S2
*vmask,mask(1)        
*VGET,stress_0(1,13),NODE,1,S,3   ! S3
*vmask,mask(1)        
*VGET,stress_0(1,14),NODE,1,S,INT ! S Int
*vmask,mask(1)        
*VGET,stress_0(1,15),NODE,1,S,EQV ! S Mises

!----------------------------------!

!       compress array             !

*do,ar50,1,15
        *vmask,mask(1)
        *vfun,ss(1,ar50),comp,stress_0(1,ar50)
*enddo

mask= 
stress_0=

!---------------------------------! write in file
*cfopen,'Stress_components','txt'                                       
        *vwrite,ss(1,1),ss(1,2),ss(1,3),ss(1,4), ss(1,5),ss(1,6),ss(1,7),ss(1,8),ss(1,9), ss(1,10),ss(1,11),ss(1,12),ss(1,13),ss(1,14), ss(1,15)
        (f9.0,TL1,' ',14(g20.12,' '))        
        ! #node,x,y,z,Sx,Sy,Sz,Sxy,Syz,Sxz,S1,S2,S3,SInt,SMises  !        
*cfclos 
/eof 

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

Для этого надо использовать матричные операции и маску.

Ниже пример извлечения для селектированных  узлов номера, координат, компонент напряжений для последнего шага решения и записи в  файл. Лучше оформить макросом.

Спасибо. Буду разбираться.

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

Допустим, есть оболочка в 3д произвольной формы (не факт что цилиндр, или конус, или окружность, или сфера, и прямоугольник и т.п. привычные формы). Для каждого элемента оболочки требуется задать корректную ЛСК. Процесс примерно такой: есть прямоугольное анизотропное одеяло с одинаково направленными в элементах ЛСК материала по одеялу. Одеяло как заплата на велокамеру нашлёпывается на кривую оболочку, получаем некоторое распределение ЛСК элементов одеяла по оболочке. И вот для такого бутерброда хотелось бы чтобы ЛСК элементов одеяла совпали с ЛСК ближайших элементов оболочки. Собсна, такое кто-нибудь пытался провернуть? И вопрос второй, если каждую ЛСК элемента вращать вручную - это сильно трудозатратно? Мне не нравится сама идея для каждого элемента создавать ещё одну ЛСК и потом их приравнивать.

Тогда как в LS-Prepost я легко могу вращать ЛСК элемента как угодно без лишних команд, но только вручную.

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

Собсна, такое кто-нибудь пытался провернуть?

судя по описанию, кажется, это это драпировка в Ansys Composite Prepost

8 часов назад, AlexKaz сказал:

И вопрос второй, если каждую ЛСК элемента вращать вручную - это сильно трудозатратно?

вручную - это код написать или мышкой тыкать?

8 часов назад, AlexKaz сказал:

Мне не нравится сама идея для каждого элемента создавать ещё одну ЛСК и потом их приравнивать.

после драпировки почти у каждого элемента будет своя ЛСК для задания ориентации свойств (исключая случи простых форм). эта ориентация - результат расчета процесса драпировки.

 

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

Делаю модальный анализ DAMP решателем, и пытаюсь выдернуть частоту и еще там второе число есть. Для этого по очереди проваливаюсь в действительную и в мнимую часть решения и делаю *GET. Когда пытаюсь провалиться в мнимую часть, то сиса ругается, но, тем не менее, исполняет GET как надо (надо согласиться со всеми ошибками). Что сисе мешает работать без ошибки ?

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



finish
/clear,start
        
/prep7
block,0,1,0,1,0,1
et,1,30
keyopt,1,2,1
mp,sonc,1,10
mp,dens,1,100
vmesh,1
asel,s,,,1
nsla,s,1
sf,all,inf
allsel,all

/solu
antype,2
modotp,damp,10
solve   

finish
/post1

*cfopen,res.txt

*do,i,1,10,1
	set,1,i,,0
	*get,stab,active,0,set,freq
	set,1,i,,1						!<< тут ругается.
	*get,freq,active,0,set,freq		!<< срабатывает как надо.

	*vwrite,i,freq,stab
(F4.0,'	',F8.4,'	',F8.4)	
*enddo
*cfclose

*uilist,res,txt


 

 

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

Вопрос к опытным пользователям.

Есть лив Ансис модуль расчет сварки, сварных конструкций?

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

@mamomot Раскройте более подробно - что вы хотите считать? Моделировать процесс сварки, определять НДС деталей после сварки (коробление) или вы хотите проверять сварные соединения на прочность (чтобы нажать одну кнопку и Ансис вам сказал - проходит соединение или нет)?

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

Есть лив Ансис модуль расчет сварки, сварных конструкций?

Ни того ни другого нет, что бы за этим ни скрывалось.

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

Ни того ни другого нет, что бы за этим ни скрывалось.

Некоторые пользовательские приложения выполняют проверки сварных швов.

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

Некоторые пользовательские приложения выполняют проверки сварных швов.

Малая практическая ценность от этой программы. В моей практике большинство сварных швов между сложными поверхностями идут и никакой сварщик не будет вести подготовку кромок с целью сопряжения геометрии деталей.

Лично я себе программу на Python'e написал и вывожу отчет в Excel. Cварные швы мне строить не надо. Просто контакты задал, реакции получил и вперед считать по сопромату. Profit!

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

Ни того ни другого нет, что бы за этим ни скрывалось.

А что же есть?

18 часов назад, karachun сказал:

@mamomot Раскройте более подробно - что вы хотите считать? Моделировать процесс сварки, определять НДС деталей после сварки (коробление) или вы хотите проверять сварные соединения на прочность (чтобы нажать одну кнопку и Ансис вам сказал - проходит соединение или нет)?

Уточняю:

1. Желательно импортировать геометрию из другой системы (Парасолид, Тифлекс).

2. Задать сварные швы.

3. Первая задача: определение деформаций из-за действия сварки.

4. Вторая задача (не всегда) определение прочности сварной конструкции.

Вот, типичная сварная конструкция, с которыми приходится иметь дела каждый день:

 

210817_1.png

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

. Первая задача: определение деформаций из-за действия сварки.

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

Такое делают, например вот так.

https://www.researchgate.net/publication/283490285_ANSYS_Simulation_of_Residual_Strains_in_Butt-welded_Joints

 

По расчету сварных швов уже рассказали.

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

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

Такое делают, например вот так.

https://www.researchgate.net/publication/283490285_ANSYS_Simulation_of_Residual_Strains_in_Butt-welded_Joints

 

По расчету сварных швов уже рассказали.

Я уже много дней изучаю рынок САПР по этому вопросу. Есть, например, такие модули, где, на мой взгляд все уже реализовано:

https://sapr.ru/article/21522

https://sapr.ru/article/21948

https://interprocom.ru/products/msc-software/msc-add/msc-simufact-welding/

https://www.cadmaster.ru/magazin/articles/cm_84_15.html

Особенно тут:

http://docs.mscsoftware.ru/conf/forum2015/2day/12_TYAZHMASH_simufact_welding_Salienko.pdf

*****

Есть практически все, что нужно:

1. Сварные швы.

2. Температурные деформации от сварки.

3. Имитация прижимов.

4. Коробление без прижимов и с прижимами.

5. Коробление после снятия прижимов.

Поскольку на нашем предприятии часть технологических служб сидят на Юниграфиксе, а расчетный сектор работает в Ансисе, я и спросил местных знатоков насчет расчета сварки...

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

@mamomot , я весьма стороне представляю процессы сварки. На мой взгляд, всякие деформации и прижимы имеет смысл вычислять лишь при роботизированном производстве, где есть четкая воспроизводимость режим варения. Или иметь первоклассные сварщиков с большой буквы, которые будут работать как роботы.

Подозреваю, параметры, которые вбиваются в программу, в любом случае определяются эмпирически на конкретном производстве. Раз так и раз у вас есть целая технологическая служба, вообще не понимаю зачем вам что-то вычислять. По идее технологи уже и так должны говорить как варить и сварится ли это. Это все мое дилетантское мнение в области сварки.

Интересно было бы, если бы вы потом похвалились результатами.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • 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 Спасибо Вам за помощь. Теперь дело в приобретении платы. Как что-то получится (сперва приобрести, потом поставить) обязательно отпишусь.
    • gudstartup
      а как вы taxid фирмы нашли?
    • gudstartup
      все что я написал в цитате выше по теме полная фигня в связи с вновь приобретённой информацией. можно менять любые компоненты в пределах серии чпу если только не меняете по или записываете oprminf но  всегда могут быть нюансы  @mrVladimir все должно получиться извините за то что выдал непроверенную информацию за мнение типа знающего эксперта оказывается я 
    • malvi.dp
      Какое у детали имя файла и как формируете Обозначение и Наименование? Вы каждое исполнение сохраняете в новый чертеж? Или это групповой чертеж? Если групповой-то имя конфигурации в нем быть не должно. Стоит ли галочка "Исполнение" "Из конфигурации"? На сколько мне не изменяет память макрос сохраняет файл чертежа с тем же именем что и файл модели в папке модели. В спецификации все правильно отображается, даже если знаков исполнений больше трех  
    • gudstartup
      и главная деталь чтобы на системе была remote option system а именно файл oprminf.000 c сертификатами и были ли проблемы с ними после замены компонентов.
    • boomeeeer
      с него родимого
    • Grundick
×
×
  • Создать...