jzhsh 发表于 2008-7-26 14:33

如何用命令把某一区域的磁场值保存为数组或表

请教:
      我在做磁场优化计算时,要把关心区域的磁感应强度值提取出来,以数组或表的形式保存,
这样方便以后进行数学计算,求它的均值和标准差
我试着通过若干条路径映射,得出了几条路径上的磁感应强度值(例如BY),但无法把这几条路径上的BY值组成为1个数组或表,
       有同学说,先选择区域内的单元,然后用ETABLE,再保存为数组,但感觉这时所提取出的不是节点的BY,而是各个单元质心点的BY,即使可以这样,如何把这些值赋给一个数组或表?GUI或命令都行
      如果通过节点的BY值来反映该区域的磁感应强度,把节点BY值取出来后,如何用命令把这些值赋给一个数组或表?
请各位不吝赐教!谢谢你的关注!

sxman 发表于 2008-7-26 19:26

我觉得你同学说的很正确,不过数组提取的数据不仅可以从单元表中提取,也可以从节点数据中提取,你可以在标准栏下找参数一栏,然后点击获取数组数据,选择从节点结果数据中提取,前提是你要提前选好你感兴趣的节点以及响应的数组。

jzhsh 发表于 2008-7-27 15:32

回复 2楼 的帖子

谢谢sxman,
   按照你的建议,我琢磨了下从节点数据中提取,先定义数组,用*GET命令。
对于矩形10×5节点上的50个点,利用两个DO循环,提取它们的BY值方法如下:

/post1             !后处理
g=0                     
*dim,A,,10*5,1,1   !定义数组,50*1*1,用来存放BY
*dim,B,,10*5,1,1    !定义存放节点号码的数组
*do,j,1,5,1
*do,k,1,10,1
xx=(j-1)*0.5e-3
yy=(k-1)*2e-3
n1=node(xx,yy,0)   !提取距坐标(xx,yy,0)最近的节点号
g=g+1
B(g)=n1
*get,A(g),node,n1,b,y      !提取n1节点的BY值
sum=sum+A(g)                  !求和,为求均值方差做准备
k=k+1
*enddo
j=j+1
*enddo

average=sum/50                     !求均值

dx=0                                             !求方差
*do,m,1,50,1
dx=dx+(A(m)-average)**2/50   
*enddo

[ 本帖最后由 jzhsh 于 2008-7-27 15:37 编辑 ]

sxman 发表于 2008-7-28 21:23

呵呵,我回答了问题不给我加分,抗议:lol,要知道我虽然是菜鸟,但是菜鸟也能吃bug的。big bug吃不了,little bug还是可以的。

[ 本帖最后由 sxman 于 2008-7-28 21:24 编辑 ]

jzhsh 发表于 2008-7-29 16:00

回复 3楼 的帖子

再次谢谢sxman和评分的16443,感谢振动论坛!
让问题在交流中得到解决,让技术水平在讨论中不断提升!
页: [1]
查看完整版本: 如何用命令把某一区域的磁场值保存为数组或表