Используя ANSYS APDL, я ищу быстрый и недорогой способ получить все текущие действительные числа, используемые в модели. Что-то вроде
*vget,real_numbers...
Лучшее, что я могу придумать, это
! Get a list of all element types
*get,elemCount,elem,,count
elemReals= $ *vget,elemReals,elem,,attr,real !Get list of elements real numbers
*get,maxReal,rcon,,num,max
realMask= $ *dim,realMask,array,maxReal
*vfill,realMask,data,0.0
!Create Mask Of Real Numbers and number of real of real numbers
realCount = 0
*do,i,1,elemCount,
*if,realMask(elemReals(i)),eq,0,then
realMask(elemReals(i)) = 1
realCount = realCount + 1
*endif
*enddo
!Fill out real number array
realNumbers = $ *dim,realNumbers,array,realCount
realIndex = 1
*do,i,1,maxReal,
*if,realMask(i),eq,1,then
realNumbers(realIndex) = i
realIndex = realIndex + 1
*endif
*enddo
Это работает, но если ваши действительные числа разнесены очень далеко друг от друга, это заканчивается циклом через нули в реальной маске ...
-Бен