电磁与热耦合分析中的结果提取问题,请教版主和各位朋友。
我所做的电磁与热耦合分析,用的是间接的顺序耦合法,磁场和温度场循环进行。目的是查看工件的温度变化和分布。耦合循环结束于温度场。但我想得到某个时刻与温度分布相对应的涡流、HGEN等的分布,也就是想在循环中提取磁场的计算结果。假如我想获得 t 时刻的HGEN,可以用*VGET命令提取并放入预先定义的数组中,命令如下:*DO,I,1,FTIME/TINC 开始LOOP
TIME=TIME+TINC
PHYSICS,READ,EMAG 读取磁物理环境
/SOLU
........
........
........
........
.........
SOLVE 求解磁场
*if,time,eq,t,then
*get,nummin,elem, ,num,min 提取(所关心的部分)的最小单元编号 赋予“nummin”
*get,numelem,elem, ,num,max 提取(所关心部分)的最大单元编号赋值给“numelem”
*dim,re, ,numelem,1,1 定义数组“re”, 维数numelem x1 x1
*vget,re(1),elem,nummin,hgen 提取所选单元的“hgen”,赋给数组“re”
*endif
finish
PHYSICS,READ,THERMAL 读取热场并求解
/ASSIGN,ESAV,THERM,ESAV
/ASSIGN,EMAT,THERM,EMAT
.......
.....
......
finish
提取结果到指定的数组后,下一步如何做才能在循环结束后的后处理中查看t时刻的hgen分布,或者查看某路径上的HGEN分布???是要储存这个数组吗,储存在哪?映射路径的时候再调用吗?弄不懂了,请版主和各位朋友赐教! 数组不是定义了么,存储的数组直接plot就行了
某一时刻路径上的分布是一条曲线,很多时刻就是很多曲线了,我觉得可以也存数组,不过因为路径上的点可能是差值的,最好modeling的时候把路径做成线,结果里面就可以套用你的*get命令了
回复 #2 perch88 的帖子
perch88,你好.我定义了数组后,是把被加热体的全部单元的HGEN值存进了数组。那么数组存储后,可以直接PLOT它吗?具体操作我不会,是不是PLOT前先恢复(restore)此数组,再直接PLOT?关于某条路径上的分布,既然整个加热体的HGEN值都存储了,就没有办法直接映射一路径上的值?斑竹所说的意思是不是,在建模时把要路径的地方直接做成图元line(不用再定义路径了,直接用line代替?),然后把此line上的计算结果存进数组,再直接PLOT?问的问题较多,希望版主不要嫌烦。有空的话,请赐教! 记得有个命令可以plot的,嫌不好看就导出
可以映射路径,不过是差值的,有时候不光滑,要是发文章还是直接作line的比较好
就着俩问题似乎
回复 #4 perch88 的帖子
恩,只要存储后的数组能够PLOT和映射路径就行,我去查查这个命令。谢谢perch88的指点。半年前,你激励过我。现在虽说在ANSYS上仍是个菜鸟,但毕竟会了不少东西。再次表示感谢!还有个问题就是,用数组数据映射的路径是插值的,曲线可能不光滑。但modeling时做line,那meshing时划分这line吗?把路径做成line,那是个怎样的路径操作啊?版主能不能说一下简单步骤。我看过的几本教程没有讲这个的。 mesh当然划分线了
比如原来一个矩形,现在做两个矩形,线是两矩形的分界线
回复 #6 perch88 的帖子
perch88你好。我弄了好几天了,这个问题还是解决不了。首先,我要纠正问题中的一个错误。那就是, *vget,re(1),elem,nummin,hgen( 提取所选单元的“hgen”,赋给数组“re”)这个命令,"hgen"是命令不识别的标签。我改成在每次计算磁场时先把jheat(焦耳热)存入单元表aa中,然后用 *vget,re(1),elem,nummin,ETAB,aa命令再把jheat从表中存入数组,然后储存数组文件。但耦合循环结束后,我还是不会解决。直接PLOT数组的命令我也没找到。其实把所有单元的值存入数组只是个中间步骤,我主要想知道某路径上的jheat变化情况。怎样才能得到某路径上jheat值的变化曲线呢。路径定义了之后,映射MAP的时候,Restore数组,但能被映射的量里都是热分析的结果啊,怎么也映射不了数组中的存有的磁分析的值啊。
还有个问题:磁场分析的涡流,或涡流生成的焦耳热,都是element results,所以映射路径时只能映射单元表,我试了好几次,也没能把数组里的值导入单元表中。
这只是我不完整的思路,显的比较麻烦,还有没有别的办法达到目的呢?思考这问题半个月了,是在是不会,恳请版主悉心赐教! 我做的是三维的,被加热体是个带开口的金属管,关心的路径如图所示。 *vplot绘制表或数组,但是数组只能是一道一道的水平的线,一般庸vput把他转换成variable,绘制变量。
表可以自动插枝。
回复 #9 北极熊甲 的帖子
首先,谢谢版主的回答。我看了看绘制数组的命令,*vplot命令只能绘制柱状图,而不是象一般的路径曲线图那样,而且它绘制的是数组中的所有量。(因为我存到数组中的是整个被加热体的单元jheat值),而我最终关心的是路径那部分。是不是用数组提取结果时只需提取路径所通过的单元的结果值,而非全部。那么,怎样知道所定义的路径通过哪些单元呢?
vput命令转换成变量,再绘制,是不是在/post26中?? linlin2001450 发表于 2007-5-22 21:26
我做的是三维的,被加热体是个带开口的金属管,关心的路径如图所示。
请问您这个问题是如何解决的? 请问一下,怎么能将数组施加到模型上
页:
[1]