From: 微信公众号ANSYS结构院 http://mp.weixin.qq.com/s/nt59jUExXTCgobfoUghSsw
何为路径映射
有限元法最后求得的结果是节点解,例如节点上的位移、内力、应力等内容,而单元内部某点的结果则是通过假定的形函数插值获得。然而,我们在有限元建模的时候,最让我们关心的是结构的构造特点以及边界条件,属于前处理模块,往往不会顾及结构的提取。由此带来的问题便是,如果我们需要提取模型中某些点、线或者面上的结果,但这些点、线和面不在节点位置,也与单元的形心、积分点不重合,这该怎么办呢?
这时候,便要用到我们的路径映射技术了。
所谓路径映射,其实是基于插值运算的一种后处理技术,它能够虚拟映射任何结果数据到模型的任何路径上。在使用时,我们可以设定路径,将关心的结果映射到该路径上,然后对该路径进行一些数学运算,从而得到更有意义的结果。其特点如下:
1)可以同时设定多个路径,一条路径上的结果其实就是一列数据,多个路径形成一个矩阵,可进行多个矩阵运算。
2)结果映射之后,还能以图形、列表、文件等方式观察或者保存结果。
路径操作步骤
- 1)定义路径
定义路径包括两个方面,一个是定义结果坐标系,另外一个便是定义具体路径。
主要命令流如下:
!step1.路径定义(定义结果坐标系,定义具体路径)
!RSYS,KCN(定义结果坐标系)
!PATH,NAME,nPts,nSets,nDiv(定义路径)
!PPATH,POINT,NODE,X,Y,Z,CS(定义路径上的点)
!/PBC,Item,--,Key,MIN,MAX,ABS(显示边界条件符号和数值)
!/PBC,PATH,,1
-
- 映射路径结果
ANSYS能够虚拟映射任何结果数据到模型的任何路径之上,例如原始数据(DOF节点解)、派生数据(应力、通量、梯度等)、单元数据表等等。映射过程为:指定某个路径为当前路径、指定本次映射的结果坐标系、映射结果。
常用命令流如下:
- 映射路径结果
!step2.映射路径结果(指定某个路径为当前路径、指定本次映射的结果坐标系、映射结果)
!PATH,name(指定某个路径为当前路径)
!RSYS,KCN(指定本次映射的结果坐标系)
!PDEF,Lab,Item,Comp,Avglab(将数据影射到路径上)
!PDEF,STAT(查看路径所包含的数据项)
!PDEF,CLEAR(清除所有用户定义的数据项)
- 3)观察路径
当我们映射结果后,我们可以直接观察结果沿路径的分布情况。我们可以指定路径点的某一坐标分量为X轴,当路径为一条空间曲线时,显示的则是伸展开后的结果。PLPATH、PRPATH 可采用追加方式,在一个图形中显示多个变量曲线。
常用命令流如下:
!PRANGE,LINC,VMIN,VMAX,XVAR(定义曲线图X轴数据变量及范围)
!PLPATH,Lab1,Lab2,Lab3,Lab4,Lab5,Lab6(绘制路径上一数据项关于另一数据项的变化曲线图)
!PRPATH,Lab1,Lab2,Lab3,Lab4,Lab5,Lab6(沿路径列表显示数据项)
!PLPATH、PRPATH 可采用追加方式,在一个图形中显示多个变量曲线。
!例子:
!Prange,1,,,XG !选取路径点的X坐标为X轴
!PLPATH,uz !显示UZ-X曲线
!PLPATH,SZ,SX !显示SZ-X和SX-X曲线
- 4)对路径执行数学运算
路径结果可以看为一列列向量,相互之间可以进行各种数学运算,例如简单的算术运算和求幂、微积分等高级预算。 - 5)将数据存入数组
如果我们想导出数据,利用第三方软件例如Matlab进行运算,这时候需要将路径结果存入数组。
命令流如下:
PAGET,PATHR2,Tabl
案例
某钢筋混凝土悬臂梁,截面尺寸为250X500,C30,长度2000,顶端承受2KN/m的均布荷载。采用实体单元186进行弹性分析。要求:绘制顶部和底部中线,各个主应力随Z方向坐标的变化关系曲线。
!!完整案例悬臂梁-路径映射*************************************************************
!===============================
finish
/clear
/filname,xuanbiliang_neili
!单位:N,mm
!单元,截面,材料===============================
/prep7
et,1,solid186
!
mp,ex,1,3e4 !混凝土
mp,prxy,1,0.2
mp,dens,1,2500e-12
!建模===============================
blc4,,,250,500,2000
!加荷载,划分网格===============================
asel,s,loc,y,500
SFA,all,1,PRES,2e3/250
allsel,all
esize,50
vmesh,all
!加荷约束,求解===============================
/solu
asel,s,loc,z,0
da,all,all,0
allsel,all
acel,,9800
solve
!绘制顶部和底部中线=======================
!各个主应力随Z方向坐标的变化关系曲线。========
!==================
!step1.路径定义(定义结果坐标系,定义具体路径)
!CSYS,KCN(定义结果坐标系)
!PATH,NAME,nPts,nSets,nDiv(定义路径)
!PPATH,POINT,NODE,X,Y,Z,CS(定义路径上的点)
!/PBC,Item,--,Key,MIN,MAX,ABS(显示边界条件符号和数值)
!/PBC,PATH,,1
/post1
Path,dibu,5 !路径名为dibu,需要的点数为5
Ppath,1,,125,,0 !路径上的1点,x/y/z坐标为125,,0
Ppath,2,,125,,500
Ppath,3,,125,,1000
Ppath,4,,125,,1500
Ppath,5,,125,,2000
!
Path,dingbu,5 !路径名为dingbu,需要的点数为5
Ppath,1,,125,500,0 !路径上的1点,x/y/z坐标为125,500,0
Ppath,2,,125, 500,500
Ppath,3,,125, 500,1000
Ppath,4,,125, 500,1500
Ppath,5,,125, 500,2000
!==================
!step2.映射路径结果(指定某个路径为当前路径、指定本次映射的结果坐标系、映射结果)
!PATH,name(指定某个路径为当前路径)
!RSYS,KCN(指定本次映射的结果坐标系)
!PDEF,Lab,Item,Comp,Avglab(将数据影射到路径上)
!PDEF,STAT(查看路径所包含的数据项)
!PDEF,CLEAR(清除所有用户定义的数据项)
Path,dibu !指定某个路径为当前路径
Pdef,yingli1,s,1 !将数据影射到路径上,数据名yingli1,主应力1
Pdef,yingli2,s,2
Pdef,yingli3,s,3
Pdef,dengxiao,s,eqv !等效应力
!==================
!step3.绘图观察路径:直接观察结果沿路径的分布情况
!指定路径点的某一坐标分量为X轴,当路径为一条空间曲线时,显示的则是伸展开后的结果。
!PRANGE,LINC,VMIN,VMAX,XVAR(定义曲线图X轴数据变量及范围)
!PLPATH,Lab1,Lab2,Lab3,Lab4,Lab5,Lab6(绘制路径上一数据项关于另一数据项的变化曲线图)
!PRPATH,Lab1,Lab2,Lab3,Lab4,Lab5,Lab6(沿路径列表显示数据项)
!PLPATH、PRPATH 可采用追加方式,在一个图形中显示多个变量曲线。
!例子:
!Prange,1,,,XG !选取路径点的X坐标为X轴
!PLPATH,uz !显示UZ-X曲线
!PLPATH,SZ,SX !显示SZ-X和SX-X曲线
!底部中线绘制==================
!绘图
Prange,1,,,ZG !以Z坐标为X轴
Plpath,yingli1,yingli2,yingli3,dengxiao
!列表显示
Prpath,yingli1,yingli2,yingli3,dengxiao
!顶部中线绘制==================
Path,dingbu
Pdef,yingli1,s,1
Pdef,yingli2,s,2
Pdef,yingli3,s,3
Pdef,dengxiao,s,eqv
!绘图
Prange,1,,,ZG !以Z坐标为X轴
Plpath,yingli1,yingli2,yingli3,dengxiao
!列表显示
Prpath,yingli1,yingli2,yingli3,dengxiao
!==================
!step4.对路径执行数学运算
!路径结果可以看为一列列向量,相互之间可以进行各种数学运算,例如简单的算术运算和求幂、微积分等高级预算。
!step5.将数据存入数组
!PAGET,PARRAY,POPT(将路径数据保存到预先定义好的数组中)
结果
-
底部
-
顶部