当前位置:文档之家› ANSYS自适应网格划分教程

ANSYS自适应网格划分教程

自适应网格划分何为网格自适应划分?ANSYS程序提供了近似的技术自动估计特定分析类型中因为网格划分带来的误差。

(误差估计在ANSYS Basic Analysis Procedures Guide第五章中讨论。

)通过这种误差估计,程序可以确定网格是否足够细。

如果不够的话,程序将自动细化网格以减少误差。

这一自动估计网格划分误差并细化网格的过程就叫做自适应网格划分,然后通过一系列的求解过程使得误差低于用户指定的数值(或直到用户指定的最大求解次数)。

自适应网格划分的先决条件ANSYS软件中包含一个预先写好的宏,ADAPT.MAC,完成自适应网格划分的功能。

用户的模型在使用这个宏之前必须满足一些特定的条件。

(在一些情况下,不满足要求的模型也可以用修正的过程完成自适应网格划分,下面还要讨论。

)这些要求包括:标准的ADAPT过程只适用于单次求解的线性静力结构分析和线性稳态热分析。

模型最好应该使用一种材料类型,因为误差计算是根据平均结点应力进行的,在不同材料过渡位置往往不能进行计算。

而且单元的能量误差是受材料弹性模量影响的。

因此,在两个相邻单元应力连续的情况下,其能量误差也可能由于材料特性不同而不一样。

在模型中同样应该避免壳厚突变,这也可能造成在应力平均是发生问题。

模型必须使用支持误差计算的单元类型。

(见表3-1)模型必须是可以划分网格的:即模型中不能有引起网格划分出错的部分。

表3-1 自适应网格划分可用单元2-D Structural SolidsPLANE2 2-D 6-Node Triangular SolidPLANE25 Axisymmetric Harmonic SolidPLANE42 2-D 4-Node Isoparametric SolidPLANE82 2-D 8-Node SolidPLANE83 Axisymmetric Harmonic 8-Node Solid3-D Structural SolidsSOLID45 3-D 8-Node Isoparametric SolidSOLID64 3-D Anisotropic SolidSOLID73 3-D 8-Node Solid with Rotational DOFSOLID92 3-D 10-Node Tetrahedral SolidSOLID95 3-D 20-Node Isoparametric Solid3-D Structural ShellsSHELL43 Plastic quadrilateral ShellSHELL63 Elastic Quadrilateral ShellSHELL93 8-Node Isoparametric Shell2-D Thermal SolidsPLANE35 2-D 6-Node Triangular SolidPLANE75 Axisymmetric Harmonic SolidPLANE55 2-D 4-Node Isoparametric SolidPLANE77 2-D 8-Node SolidPLANE78 Axisymmetric Harmonic 8-Node Solid3-D Thermal SolidsSOLID70 3-D 8-Node Isoparametric SolidSOLID87 3-D 10-Node Tetrahedral SolidSOLID90 3-D 20-Node Isoparametric Solid3-D Thermal ShellsSHELL57 Plastic Quadrilateral Shell如何使用自适应网格划分:基本过程进行自适应网格划分的基本过程包括如下步骤:1.象其他线性静力分析或稳态热分析一样,先进入前处理器(/PREP7或Main Menu>Preprocessor)。

然后指定单元类型,实参和材料特性,要满足上面提到的条件。

2. 用实体建模过程建立模型,用可以划分网格的面或体建模。

用户不需指定单元大小也不用划分网格,ADAPT宏会自动划分网格。

(如果要同时划分面和体网格,生成ADAPTMSH.MAC用户子程序-见后。

)3. 在PREP7中或在SOLUTION(/SOLU或Main Menu>Solution)中指定分析类型,分析选项,载荷和载荷步选项。

在一个载荷步中仅施加实体模型荷载和惯性荷载(加速度,角加速度和角速度)。

(通过ADAPTBC.MAC用户子程序可以施加有限单元载荷,固连和约束方程。

通过ADAPTSOL.MAC用户子程序可以加入多个载荷步。

这些子程序在后面还要讨论。

)4. 如果在PREP7中,退出前处理器[FINISH]。

(可以在SOLUTION或在初始状态下激活ADAPT宏)。

5. 用下列方法激活自适应求解。

Command: ADAPTGUI: Main Menu>Solution>Adaptive Mesh注意,可以在热或结构分析中使用ADAPT宏,但不能在一次自适应分析中同时进行这两种不同类型的计算。

在自适应网格划分的迭代过程中,单元的大小将作调整(在FACMN和FACMX指定的范围内)以减小或增加单元能量误差,直到误差满足指定的数值(或指定的最大求解次数)为止。

6. 当自适应网格计算收敛时,程序自动将单元形状检查打开[SHPP,ON]。

然后返回SOLUTION或初始状态,这取决于激活ADAPT的状态。

接下来可以进入POST1用标准操作进行后处理。

修改基本过程选择自适应性如果用户清楚某个部分网格划分的误差相对影响较小时(如应力水平较低且变化较小),可以将这些区域从自适应网格划分中排除以加快分析速度。

同样,用户也许想将接近应力奇异点的部分(如集中载荷)排除掉。

选择逻辑操作可以解决这类问题。

图3-1 选择自适应能改进有应力集中的模型如果用户选择了一个关键点集,ADAPT宏仍将包含进所有的关键点(在选择的和未选择的关键点都作网格改动),除非将ADAPT命令(Main Menu>Solution>Adaptive Mesh)中KYKPS设为1。

如果用户选择了一个面或体集,ADAPT宏将只在选择的区域调整网格大小。

此时必须在激活ADAPT宏之前在PREP7中对整个模型进行网格划分。

用用户子程序定制ADAPT宏标准的ADAPT宏并不能满足特定的分析需要。

例如,用户可能想同时对面和体进行网格划分,这在标准宏当中是不可以的。

对于这种或其他一些类似情况,可以对ADAPT宏进行修改使之适用于特定的分析。

ANSYS程序用宏这种方式完成自适应网格划分,本身就使得用户可以对其进行相应的修改以适应不同的要求。

方便的是,用户不用总是通过修改ADAPT代码的方式来定制宏。

宏的三个部分可以用用户子程序的方法来修改,这个方法将ADAPT宏和用户文件分开,用户可以生成子程序由ADAPT宏来调用。

这三个部分是:网格划分命令序列,边界条件命令序列和求解命令序列。

相应的用户子程序名为ADAPTMSH.MAC,ADAPTBC.MAC和ADAPTSOL.MAC。

下面看一下这三个子程序的功能:生成用户网格划分子程序(ADAPTMSH.MAC)缺省情况下,如果模型中包含一个或多个体时,ADAPT宏将只对体划分网格而不对面进行划分。

如果当前选择集中没有体,宏才对面进行划分。

如果要同时对面和体进行划分的话,就要生成用户子程序ADAPTMSH.MAC来提供相应的操作。

在重新划分网格之前要清楚所有这些实体中划分过网格的实体。

子程序大致如下:C*** Subroutine ADATMSH.MAC-Your name-Job Name-Data CreatedTYPE,1 !指定划分网格的单元类型属性ACLEAR,3,5,2 !清除本程序中要重新划分网格的面和体的网格VCLEAR,ALLAMESH,3,5,2 !对面3和5划分网格(ADAPT不对其他面划分网格)TYPE,2 !改变单元类型,划分体VMESH,ALL !对所有体划分网格请查阅TYPE,ACLEAR,VCLEAR,AMESH和VMESH命令得到更详细的解释。

我们建议将C***行包含在文件中以区别不同的宏。

这一行将在任务的输出中出现,就可以确认ADAPT宏正确地调用了用户子程序。

生成用户边界条件子程序(ADAPTBC.MAC)ADAPT宏在每次求解循环时都要清除并重新划分网格,因此模型的结点和单元也要不断的改变。

这就使得所有的有限单元载荷,自由度固连,约束方程等施加在结点和单元的边界条件都不能使用。

如果要包含这些有限单元约束时,就要使用用户子程序,ADAPTBC.MAC。

在这个子程序中,可以选择结点然后定义有限单元载荷,自由度固连和约束方程。

下面是一个ADAPTBC.MAC的例子:C*** Subroutine ADAPTBC.MAC-Your name-Hob Name-Data CReatedNSEL,S,LOC,X,0 !选择X坐标为0的结点D,ALL,UX,0 !令选择的所有结点UX为0NSEL,S,LOC,Y,0 !选择Y坐标为0的结点D,ALL,UX,0 !令选择的所有结点UY为0NSEL,ALL !选择所有结点生成用户求解子程序(ADAPTSOL.MAC)ADAPT宏中的求解命令序列很简单:/SOLUSOLVEFINISH这个缺省的命令序列只能求解单个载荷步。

用户可以将其他的命令序列加入用户子程序ADAPTSOL.MAC中。

关于用户子程序的一些其他说明用户可以象生成其他文件一样生成这些子程序。

就是说可以用APDL语言的*CREATE命令(Utility Menu>Macro>Create Macro)和APDL的*END命令,也可以用外部的文件编辑器。

当ADAPT宏调用这些子程序时,软件先搜索ANSYS根目录,再搜索用户根目录,最后是当前目录。

因此,要确保其他目录中不包括与所用文件同名的文件。

解释行(C***)会在输出文件中出现,可以通过它来检查是否使用了正确的文件。

另外,通过在运行ADAPT宏之前用/PSEARCH,OFF(UtilityMenu>Macro>Macro Search Path)指定软件只搜索ANSYS根目录和用户当前目录可以从某种程度上减少文件混用的可能。

不管这些子程序在什么位置,它们都能被找到,除非将ADAPT命令的KYMAC选项设为1。

定制ADAPT宏(UADAPT.MAC)有些情况下用户需要修改ADAPT宏但不能通过单独的用户子程序的方式,那么就需要直接修改ADAPT宏的主体。

但是,因为某些原因,我们不推荐直接对ADAPT宏进行修改。

相关主题