ANSYS Surface
一、看一下GUI,有个感性认识:
|||
二、详解+例子
1.这是个8.0中介绍过的,9.0中正式搞定的功能。
你可以通过工作平面(而不是surface
上的节点或points)指定平面,球面,柱面surface。
一旦你定位好一个工作平面后,一个平面surface就搞定了,而对于柱面、球面surface你还需指定半径。
相应的命令是:
定义Surface的命令:SUCR, SurfName, SurfT ype, nRefine, Radius
SurfT ype:
CPLANE――surface由window1中的切平面(cutting plane in window one)来定义,这个切平面是通过工作平面来定义的,而不是用通过视矢量来定义的;
SPHERE――surface由一个中心在工作平面原点的球面来定义;
INFC――surface由一个中心在工作平面原点,且沿着Z轴正负向无限延伸的柱面来定义;
PS:切平面的定义用/CPLANE, KEY命令
1)/CPLANE,0――切平面垂直于视矢量(view vector用[/VIEW定义),且通过由/FOCUS命令指定的窗
口的中心点,即聚焦点(focus point);
2)/CPLANE,1工作平面就是切平面;
nRefine:
细化水平,用来控制surface上的“网格”的疏密(就是每个单元投射到surface上的facet的多少),具体来讲:
For SurfType = CPLANE
nRefine是0-3的一个整数,surface上的点(points)的个数,0表示points位于单元与切平面的相交处;For SurfType = SPHERE
nRefine=9~90,表示90°弧线的分割数,默认分割为9段;
For SurfType = INFC
nRefine=9~90,表示90°弧线的分割数,默认分割为9段;
nRefine没增加1,就会把原来的每个surface facet分割为4个subsurfacets,这就可供结果插值的点就会增多。
Radius:
合适的半径值:用于For SurfType = INFC、SPHERE
这个命令的用于存储已定义surface上的下面这些数据:
1).surface上每个点的总体直角坐标值(GCX, GCY, GCZ)
2).surface每个点的单位法线矢量(NORMX, NORMY, NORMZ)
3).每个点处的contributory area (DA)
在3D模型内部,定义的Surface常常穿过一些3D单元,这些单元会在穿过的Surface上留下3或4边的facet(汉语意思:多面体的面),然后ANSYS会根据refinement and /efacet 命令,来增加额外的facet。
一旦你创建好suface后,你就可以用SUMAP命令来在Surface上生成数据。
所有PLNSOL 支持的数据,你都可以用SUMAP把它们映射到Surface上。
例子,在同一个模型中给出了两个不同的surface,还利用surface上的z向应力数据进行积分得到这个面上的合力Fz
这个例子说明了,如何通过分布在surface上的应力数据对面积进行积分,从而得到这个面上的等效力。
BLOCK,-1,1,-1,1,0,10,
esize,.2
et,1,45
vmesh,all
ex,1,10e6
nuxy,1,.23
nsel,s,loc,z,0
d,all,uz
nsel,r,loc,x,0
d,all,ux,0
nsle,r,loc,y,0
d,all,uy,0
nsel,s,loc,z,10
sf,all,pres,250
nsel,all
finish
/solu
Solve
/post1
zval = 5
wplane,1,0,0,zval,1,0,zval,0,1,zval!定义工作平面
(WPLANE, WN, XORIG, YORIG, ZORIG, XXAX, YXAX, ZXAX, XPLAN, YPLAN, ZPLAN)
模型
第一个surface
sucr,srf1,cplane,2 !定义ANSYS 后处理用的Surface
sumap,sz,s,z !映射数据”s,z”到”sz”Surface上,把结果存入sz
sueval,szint1,sz,intg !对Surface上的数据做数学操作―积分积分结果为szint1(标量参数)
Fsum !对surface上的数据sz进行求和
*get,fsmfz,fsum,,item,fz !把以上的求和结果存入fsmfz
*msg,ui,szint1,fsmfz!把sz的和fsmfz、sz的积分值szint1制作成窗口信息Surface SZ Integration = %g,Force = %g
susel,u,srf1 !不选surface1
wplane,1,0,0,zval,1,1,zval,1,2,0 !重新定位工作平面,以生成新的surface
sucr,srf2,cplane,2 !生成新的surface-srf2
sumap,uz,u,z !把数据”u,z”映射到srf2上,并把数据存入uz中
supl,all,uz !绘制uz
第2个surface
三、一些提示:
你可以写个marco,通过一些坐标,节点,或模型的几何模数据来定位一个surface。
你只需要把工作平面移动+旋转到这些surface所在的位置上。
当你创建了一个surface后,被surface切割的那些单元会在surface上投射a faceted representation。
默认下,一个被切割的单元在surface上投射一个facet。
但是你可以通过SUCR命令的第3个argument(r efinement factor :0, 1, 2, or 3),来更加精确地显示surface上的数据,在大多数情况下,每个单元会在surface上产生1(factor=0),2(factor=1),4(factor=2),6(factor=3)个facets。
但是,如果你还用/efacet命令来进一步细化绘图质量(如:trying to get a surface on refined mesh w ith a factor of 3 and an /efacet of 3.),将会产生更多的facet。
surface commands和path commands有一个很大的不同,path commands作用于当前某个活动的path,而surface commands
作用于所有定义的surface。
所以你需要SUSEL来控制你想让surface commands作用的面。