ANSYS耦合
目录
参考网址:[https://wenku.baidu.com/view/39a85f948e9951e79a8927b8.html]
定义
耦合:当需要迫使两个或多个自由度取得相同(但未知)值,可以将这些自由度耦合在一起。耦合自由度集包含一个主自由度和一个或多个其它自由度。
典型的耦合自由度应用包括:
1.模型部分包含对称;
2.在两重复节点间形成销钉、铰链、万向节和滑动连接;
3.迫使模型的一部分表现为刚体。
如何生成耦合自由度集
1.在给定节点处生成并修改耦合自由度集
命令:CP
GUI: Main Menu>Preprocessor>Coupling / Ceqn>Couple DOFs
在生成一个耦合节点集之后,通过执行一个另外的耦合操作(保证用相同的参考编号集)将更多节点加到耦合集中来。也可用选择逻辑来耦合所选节点的相应自由度。用CP命令输入负的节点号来删除耦合集中的节点。要修改一耦合自由度集(即增、删节点或改变自由度标记)可用CPNGEN命令。(不能由GUI直接得到CPNBGEN命令)。
2.耦合重合节点。
CPINTF命令通过在每对重合节点上定义自由度标记生成一耦合集而实现对模型中重合节点的耦合。此操作对“扣紧”几对节点(诸如一条缝处)尤为有用。
命令:CPINTF
GUI: Main Menu>Preprocessor>Coupling / Ceqn>Coincident Nodes
3.迫使节点有相同的表现方式
除耦合重复节点外,还可用下列替换方法迫使节点有相同的表现方式:
o如果对重复节点所有自由度都要进行耦合,常用NUMMRG命令(GUI:Main Menu>Preprocessor>Numbering Ctrls>Merge Items)合并节点。
o可用EINTF命令(GUI:Main Menu> Preprocessor>Create> Elements >At Coincid Nd)通在重复节点对之间生成2节点单元来连接它们。
o用CEINTF命令(GUI:Main Menu>Preprocessor> Coupling/Ceqn >Adjacent Regions)将两个有不相似网格模式的区域连接起来。这项操作使一个区域的选定节点与另一个区域的选定单元连接起来生成约束方程。
生成更多的耦合集
一旦有了一个或多个耦合集,可用这些方法生成另外的耦合集:
1. CPLGEN
用下列方法以相同的节点号但与已有模式集不同的自由度标记生成新的耦合集。
命令:CPLGEN
GUI: Main Menu>Preprocessor>Coupling / Ceqn>Gen w/Same Nodes
2.CPSGEN
用下列方法生成与已有耦合集不同(均匀增加的)节点编号但有相同的自由度标记的新的耦合集:
命令:CPSGEN
GUI: Main Menu>Preprocessor>Coupling / Ceqn>Gen w/Same DOF
使用耦合注意事项
1.每个耦合的节点都在节点坐标系下进行耦合操作。通常应当保持节点坐标系的一致性。
2.自由度是在一个集内耦合而不是集之间的耦合。不允许一个自由度出现在多于一个耦合集中。
3.由D或共它约束命令指定的自由度值不能包括在耦合集中。
4.在减缩自由度分析中,如果主自由度要从耦合自由度集中选取,只有主节点的自由度才能被指定为主自由度。
5.在结构分析中,耦合自由度以生成一刚体区域有时会引起明显的平衡破坏。不重复的或不与耦合位移方向一致的一个耦合节点集会产生外加力矩但不出现在反力中。
约束方程
约束方程提供了比耦合更通用的联系自由度的方法。有如下形式:
这里U(I)是自由度,N是方程中项的编号。
如何生成约束方程
1.直接生成约束方程
直接生成约束方程:
命令:CE
GUI: Main Menu>Preprocessor>Coupling / Ceqn>Constraint Eqn
下面为一个典型的约束方程应用的例子,力矩的传递是由BEAM3单元与PLANE42单元(PLANE42单元无平面转动自由度)的连接来完成的:
图--建立旋转和平移自由度的关系
如果不用约束方程则节点2处表现为一个铰链。下述方法可在梁和平面应力单元之间传递力矩,自由度之间满足下面的约束方程:
ROTZ2 = (UY3 - UY1)/10
0 = UY3 - UY1 - 10*ROTZ2
相应的ANSYS命令为:
CE,1,0,3,UY,1,1,UY,-1,2,ROTZ,-10
修改约束方程
在PREP7或SOLUTION中修改约束方程中的常数项:
命令:CECMOD
GUI: Main Menu>Preprocessor>Coupling / Ceqn>Modify ConstrEqn
Main Menu>Preprocessor>Loads>Other>Modify ConstrEqn
Main Menu>Solution>Other>Modify ConstrEqn
如果要修改约束方程中的其它项,必须在求解前在PREP7中用使CE命令(或相应GUI途径)。
2.自动生成约束方程
生成刚性区域
CERIG命令通过写约束方程定义一个刚性区域。通过连接一主节点到许多从节点来定义刚性区。(此操作中的主自由度与减缩自由度分析的主自由度是不同的)
命令:CERIG
GUI: 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)。对由没有转动自由度单元组成的模型,应当考虑增加一个虚拟的梁单元以在主节点上提供旋转自由度。
将疏密不同的已划分网格区域连在一起
可将一个区域(网格较密)的已选节点与另一个区域(网格较稀)的已选单元用CEINTF命令(菜单途径Main Menu>Preprocessor>Coupling / Ceqn>Adjacent Regions)连起来生成约束方程。
这项操作将不相容网格形式的区域“系”在一起。在两区域的交界处,从网格稠密的区域选择节点A,从网格粗糙区域选择单元B,用区域B单元的形函数,在相关的区域A和B界面的节点处写约束方程。ANSYS允许这些节点位置使用两公差准则。节点在单元之外超过第一公差就认为节点不在界面上。节点贴近单元表面的距离小于第二公差则将节点移到表面上,见下图。
对CEINTF命令有些限制:应力或热通量可能会不连续地穿过界面。界面区域的节点不能指定位移。可用每节点有六个自由度的单元接合6自由度实体。
3.从已有约束方程集生成约束方程集
可用CESGEN命令从已有约束方程集生成约束方程。那么已有约束方程集内的节点编号将增加以生成另外的约束方程集。另外约束方程集的标记和系数保持与原集的一致。
命令:CESGEN
GUI: Main Menu>Preprocessor>Coupling / Ceqn >Gen w/same DOF
使用约束方程的注意事项
"所有的约束方程都以小转动理论为基础。因此,它应用在大转动分析中〔NLGEOM〕应当限制在约束方程所包含的自由度方向无重大变化的情况。
"约束方程的出现将产生不可预料的反力和节点力结果。
"由于相邻区域网格疏密不同,边界上的相容性仍然存在。但是当网格越密,这种不相容的危害就越小。
ANSYS耦合的更多相关文章
- Ansys Workbench热流固耦合仿真配置
1.Fluent-Thermal-Structural瞬态分析 此模块连接在fluent已实现流体和固体的热流耦合,传递至thermal实际上只是将流体表面温度作为热载荷施加在固体的液体通道表面,极大 ...
- ANSYS附加动水质量(westergarrd公式)
在水工结构的抗震计算中,不可避免的需要考虑动水压力的作用,当前规范中一般是要求将动水压力以附加质量的形式考虑,如果对压力用质量形式考虑有疑惑时,可以这样理解:结构发生振动时,会带动周围的水体发生运动, ...
- ansys 14.0
张建伟等.2012.12 人民邮电 一天一本书,这种感觉 真是爽啊. 但我觉得什么也没学到. 话说回来,此authors 确实书写得比较一般,实例不如百度文档上的WORD实例,理论不如我看的那本CFD ...
- ANSYS热分析简介1
目录 1. ANSYS热分析简介 1.1 传导 1.2 热载荷分类 1.2.1 载荷施加 1.3 热分析分类 1.3.1 稳态热分析 1.3.2 瞬态热分析 1.3.3 非线性分析综述 2. 热分析单 ...
- 代码的坏味道(20)——过度耦合的消息链(Message Chains)
坏味道--过度耦合的消息链(Message Chains) 特征 消息链的形式类似于:obj.getA().getB().getC(). 问题原因 如果你看到用户向一个对象请求另一个对象,然后再向后者 ...
- Effective前端5:减少前端代码耦合
什么是代码耦合?代码耦合的表现是改了一点毛发而牵动了全身,或者是想要改点东西,需要在一堆代码里面找半天.由于前端需要组织js/css/html,耦合的问题可能会更加明显,下面按照耦合的情况分别说明: ...
- Junit mockito解耦合测试
Mock测试是单元测试的重要方法之一. 1.相关网址 官网:http://mockito.org/ 项目源码:https://github.com/mockito/mockito api:http:/ ...
- 【FLUENT案例】06:与EDEM耦合计算
折腾了很久才把耦合模块搞定,用的还是网上别人编译好的UDF,不完美.自己编译的时候,老是提示无法找到fluent中的一些头文件,个人怀疑是操作系统和visual studio的问题,有时间换个系统和V ...
- iOS书写高质量代码之耦合的处理
原创 2016-12-26 MrPeak MrPeak杂货铺 耦合是每个程序员都必须面对的话题,也是容易被忽视的存在,怎么处理耦合关系到我们最后的代码质量.今天Peak君和大家聊聊耦合这个基本功话题, ...
随机推荐
- 一键清空Form表单数据
今天在工作项目调试bug当中,遇到这样的需求:页面上的数据太多,一个一个清空太繁琐,所以就采用全部清空的写法: $(':input','#myform').not(':button, :submit, ...
- Java使用Sockt进行通信(2)
使用TCP协议编写Sockt TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义. ...
- js 数组元素排序
字母排序 <html> <body> <script type="text/javascript"> ) arr[] = "Georg ...
- dropna(thresh=n) 的用法
thresh=n,保留至少有 n 个非 NA 数的行
- JavaScript中的label语句,及应用
label语句:可以在代码中添加标签,以便将来使用. 语法:label : statement 示例: start: for(var i=0;i<10;i++){ console.log(i); ...
- GANs用于文本生成
上学期期末老师给了我本杂志让我好好看看里面的Gans网络是如何应用在文本生成上的,文章里面也没有介绍原理性的东西,只是说了加入这个Gans模型后效果有多好,给出了模型架构图和训练时所用的语料例子,也没 ...
- 一天一点Zynq(1)xilinx-arm-linux交叉编译链 安装总结以及资源更新
结束了对xilinx-arm-linux交叉编译链安装后,总结一下整个过程,方便后来的研究者们,少走点弯路. 关于xilinx-arm-linux交叉编译链的安装,网上一搜一大把,可是有的资料中的资源 ...
- Django学习教程
教程link:https://code.ziqiangxuetang.com/django/django-install.html 最好用虚拟环境学习django,用pycharm时要注意所选的pyt ...
- python面向对象基本概念(OOP)
面向对象(OOP)基本概念 面向对象编程 —— Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 01. 面向对象基本概念 我们之前学习的编程方式就 ...
- UI自动化selenium
1.什么是UI自动化?模拟人用代码的方式去操作页面2.为什么要做UI自动化?后期迭代的时候,老功能比较多,人工维护成本较大,重复性工作较多,这个时候就考虑因为UI自动化3.什么时候做UI自动化?项目稳 ...