
耦合和约束方程.docx
6页一 约束方程约束方程提供了比耦合更通用的联系自由度的方法有如下形式:这里 U(I )是自由度,N 是方程中项的总数1.如何生成约束方程1.1 直接生成约束方程(1) 直接生成约束方程命令:CEGUI: Main Menu > Preprocessor > Coupling/Ceqn > Constraint Eqn下面是一个典型的约束方程应用的例子,力矩是由 BEAM3 单元与 PLANE42 单元(PLANE42 单元无平面转动自由度) 的连接来完成传递的: 图 1-1 建立旋转和平移自由度的关系如果不用约束方程则节点 2 处表现为一个铰链下述方法可在梁和平面应力单元之间传递力矩,自由度之间满足下面的约束方程:ROTZ2 = (UY3 - UY1) / 100 = UY3 - UY1 - 10 * ROTZ2相应的 ANSYS 命令为:CE, 1, , 3, UY, 1, 1, UY, -1, 2, ROTZ, -10(2) 修改约束方程在 PREP7 或 SOLUTION 中可以修改约束方程中的常数项:命令:CECMODGUI:Main Menu > Preprocessor > Coupling / Ceqn > Modify ConstrEqnMain Menu > Preprocessor > Loads > Other > Modify ConstrEqnMain Menu > Solution>Other > Modify ConstrEqn如果要修改约束方程中的其它项,必须在求解前在 PREP7 中用使 CE 命令(或相应 GUI 途径) 。
1.2 自动生成约束方程(1) 生成刚性区域CERIG 命令通过写约束方程定义一个刚性区域通过连接一个主节点到许多从节点来定义刚性区 (注意:此操作中的主自由度与减缩自由度分析的主自由度是不同的)命令:CERIGGUI: Main Menu > Preprocessor > Coupling / Ceqn > Rigid Region将 CERIG 命令的 Ldof 设置为 ALL(缺省) ,此操作将为每对二维空间的约束节点生成三个方程这三个方程在总体笛卡尔空间确定三个刚体运动(UX、UY 、ROTZ) 为在二维模型上生成一个刚性区域,必须保证 X─Y 平面为刚性平面,并且在每个约束节点有 UX、UY 和 ROTZ 三个自由度类似地,此操作也可在三维空间为每对约束节点生成六个方程,在每个约束节点上必须有(UX 、UY、UZ 、ROTX 、 ROY 和 ROTZ)六个自由度输入其它标记的 Ldof 域将有不同的作用如果此区域设置为 UXYZ,程序在二维(X, Y)空间将写两个约束方程,而在三维空间(X 、Y、Z)将写三个约束方程这些方程将写成从节点的平移自由度和主节点的平移和转动自由度。
类似地,RXYZ 标记允许生成忽略从节点的平移自由度的部分方程其它标记的 Ldof 将生成其它类型的约束方程总之,从节点只需要由 Ldof 标记的自由度,但主节点必须有所有的平移和转动自由度(即二维的 UX、UY 和 ROTZ;三维的 UX、UY、UZ 、ROTX、ROTY、ROTZ) 对由没有转动自由度单元组成的模型,应当考虑增加一个虚拟的梁单元以在主节点上提供旋转自由度2) 将疏密不同的已划分网格区域连在一起可将一个区域(网格较密)的已选节点与另一个区域(网格较稀)的已选单元用 CEINTF 命令连起来生成约束方程菜单途径:Main Menu > Preprocessor > Coupling / Ceqn > Adjacent Regions 这项操作将不协调网格形式的区域“ 系”在一起在两区域的交界处,从网格稠密的区域选择节点 A,从网格粗糙区域选择单元 B,用区域 B 单元的形函数,在相关的区域 A 和 B 界面的节点处写约束方程ANSYS 允许这些节点位置使用两公差准则节点在单元之外超过第一公差就认为节点不在界面上节点贴近单元表面的距离小于第二公差则将节点移到表面上,见下图。
对 CEINTF 命令有些限制:应力或热通量可能会不连续地穿过界面界面区域的节点不能指定位移可用每节点有六个自由度的单元接合 6 自由度实体3) 从已有约束方程集生成约束方程集可用 CESGEN 命令从已有约束方程集生成约束方程那么已有约束方程集内的节点编号将增加以生成另外的约束方程集另外约束方程集的标记和系数保持与原集的一致命令:CESGENGUI: Main Menu>Preprocessor>Coupling/Ceqn >Gen w/same DOF1.3 使用约束方程的注意事项· 所有的约束方程都以小转动理论为基础因此,它应用在大转动分析中〔NLGEOM〕应当限制在约束方程所包含的自由度方向无重大变化的情况· 约束方程的出现将产生不可预料的反力和节点力结果· 由于相邻区域网格疏密不同,边界上的不协调性仍然存在但是当网格越密,这种不协调的危害就越小 二 耦合 当需要迫使两个或多个自由度取得相同(但未知)值,可以将这些自由度耦合在一起耦合自由度集包含一个主自由度和一个或多个从自由度,求解时将强迫从自由度与主自由度相等典型的耦合自由度应用包括:*模型部分包含对称;*在两重复节点间形成销钉、铰链、万向节和滑动连接;*迫使模型的一部分表现为刚体。
1.如何生成耦合自由度集1.1 在给定节点处生成并修改耦合自由度集命令: CPGUI: Main Menu>Preprocessor>Coupling / Ceqn>Couple DOFs在生成一个耦合节点集之后,通过执行一个另外的耦合操作(保证用相同的参考编号集)将更多节点加到耦合集中来也可用选择逻辑来耦合所选节点的相应自由度用 CP 命令输入负的节点号来删除耦合集中的节点要修改一耦合自由度集(即增、删节点或改变自由度标记)可用 CPNGEN 命令 (不能由 GUI 直接执行 CPNGEN 命令) 1.2 耦合重合节点CPINTF 命令通过在每对重合节点上定义自由度标记生成一耦合集而实现对模型中重合节点的耦合此操作对“扣紧”几对节点(诸如一条缝处)尤为有用命令: CPINTFGUI: Main Menu>Preprocessor>Coupling / Ceqn>Coincident Nodes除耦合重合节点外,还可用下列替换方法迫使节点有相同的表现方式:* 如果对重合节点所有自由度都要进行耦合,常用 NUMMRG 命令(GUI :Main Menu > Preprocessor > Numbering Ctrls > Merge Items)合并节点。
可用 EINTF 命令(GUI:Main Menu > Preprocessor > Create > Elements > At Coincid Nd)通过在重合节点对之间生成 2 节点单元来连接它们 用 CEINTF 命令(GUI:Main Menu > Preprocessor > Coupling/Ceqn > Adjacent Regions)将两个有不协调网格模式的区域连接起来这项操作使一个区域的选定节点与另一个区域的选定单元连接起来生成约束方程1.3 生成更多的耦合集一旦有了一个或多个耦合集,可用这些方法生成另外的耦合集:*用下列方法以相同的节点号但与已有模式集不同的自由度标记生成新的耦合集命令:CPLGENGUI: Main Menu > Preprocessor > Coupling/Ceqn > Gen w/Same Nodes*用下列方法生成与已有耦合集不同(均匀增加的)节点编号但有相同的自由度标记的新的耦合集:命令:CPSGENGUI: Main Menu > Preprocessor > Coupling / Ceqn > Gen w/Same DOF1.4 使用耦合注意事项* 每个耦合的节点都在节点坐标系下进行耦合操作。
通常应当保持节点坐标系的一致性 自由度是在一个集内耦合而不是集之间的耦合不允许一个自由度出现在多于一个耦合集中 由 D 或其它约束命令指定的自由度值不能包括在耦合集中 在减缩自由度分析中,如果主自由度要从耦合自由度集中选取,只有主节点的自由度才能被指定为减缩的主自由度 在结构分析中,耦合自由度以生成一刚体区域有时会引起明显的平衡破坏不重复的或不与耦合位移方向一致的一个耦合节点集会产生外加力矩但不出现在反力中三 关于节点耦合关于节点耦合,网上很多教程是关于如何耦合,怎样耦合,讲的很好很全面,但都是关于操作的,对于没有特定工程经验的朋友来说(比如学结构的要分析热结构耦合问题,又不了解热学理论) ,为什么耦合?才是真正的问题!知其然要知其所以然(本人总是做不到啊!)以下总结希望能对你有帮助,希望你能更容易的了解耦合!1. 耦合当生成模型时,典型地是用单元去连接节点以建立不同自由度间的关系,但是,有时需要能够刻划特殊细节(刚性区域结构的铰链连接,对称滑动边界,周期条件,和其他特殊内节点连接等) 这些仅用单元还不足以表达可用耦合和约束方程来建立节点自由度间的特殊联系,利用这些技术能进行单元做不到的自由度连接。
1)什么是耦合当需要迫使两个或多个自由度(DOFs)取得相同(但未知)值时,可以将这些自由度耦合在一起,耦合自由度集包含一个主自由度和一个或多个其他自由度 (从自由度)耦合只能将主自由度保存在分析的矩阵方程里,而将耦合集内的其他自由度删除计算的主自由度值将分配到耦合集内的所有其他自由度中典型的耦合自由度应包括:部分模型包含对称;在两个重复节点间形成销钉,铰链,万向节和滑动连接;迫使模型的一部分表现为刚体2)如何生成耦合命令:cpGUI:preprocessor -> coupl/ceqn -> couple DOF在生成一个耦合节点之后,通过执行一个另外的耦合操作(保证用相同的参考编号集)将更多节点加到耦合集中也可用选择逻辑来耦合所选节点的全部耦合可用 cp 命令输入负的节点号来删除耦合集合中的节点要修改一耦合自由度(即增、删节点或改变自由度标记)用 CPNGEN 命令(无 GUI 方式) CPINTF 命令通过在对每对重合节点上定义自由度标记生成一耦合集而实现对模型重合节点的耦合此操作对“扣紧” 几对节点(诸如一条缝)尤为有用命令: CPINTFGUI:preprocessor -> couple/ceqn -> coincident nodes除耦合重合节点外,还可用下列替换方法迫使节点有相同的变现方式:(1) 如果对重合节点所有自由度都要耦合,通常用 NRMMRG 命令合并节点:numbering -> mergeit将这些节点合并起来更方便;(2) 可用 EINTF 命令:create -> element -> at coincident在重合节点生成 2 节点单元连接;(3) 用 EINTF 命令preprocessor -> couple/ceqn -> adjacent rejoins将两个不相似网格模式的区域连接起来,这项操作自动将一个区域的选定节点与另一个区域的选定单元连接起来生成约束方程;(4) 用下列方法以相同的节点号但与已有模式集不同的自由度标记生成新的耦合集命令:CPSGENGUI: preprocessor -> couple/ceqn -> genw/sam node(5) 用下列方法生成与已有耦合集不同(均匀增加的)节点编号但有相同的自由度标记的新耦合集命令:CPSGENGUI: preprocessor -> couple/ceqn -> genw_samdof(6) 用下列方法对耦合自由度集列表命令:CPLISTGUI: Utilit。












