求助关于mpc的资料
最近开始学习nastran 对于mpc多点约束很是困惑啊 哪位大哥有资料 传一份看 千恩万谢了回复:(aishuijiao)求助关于mpc的资料
本帖最后由 wdhd 于 2016-5-9 09:57 编辑转一个帖子,来自中国机械CAD
Q:大家对mpc比较模糊,本人也不是很明白!
现在建议大家翻译或者总结mpc相关的单元和约束方法,例如(r-type)单元
翻译手册也可以,自己聚例子也可以,每种类型按照理解深度,我至少给加两分
希望大家踊跃参与,谢谢
A:
先抛砖引玉了。
MPC(Multi-point constraints)即多点约束,在有限元计算中应用很广泛,它允许在计算模型不同的自由度之间强加约束。在不同的求解器模版下可以在patran中定义不同的MPC,比较常用的有rbe2,rbe3,explicit,rbar,rrod等,具体的使用根据计算模型来定。MPC通用类型explicit(显式)MPC可以在一个从(dependent)自由度和一个或者多个主(independent)自由度之间创立,具体方程如下所示:
U0 = C1U1 + C2U2 + C3U3 + ... + CnUn + C0
式中U0为从自由度,Ui为主自由度,C0为常数项,举例说明,
UX(Node 4) = 0.5*UX(Node 5) - 0.5*UY(Node 10) + 1.0
A:我也来谈谈。MPC主要使用在以下几个方面:
1。描述非常刚硬的结构单元。假定结构模型中包括一个或多个比其他元件硬得多的元件,如汽车模型中的发动机,这时候刚硬元件可以传递载荷,但它的变形要小的多,和柔软元件比,它是“刚性”的。如果用大刚度的弹性单元模拟刚硬单元,会造成病态解,原因是,刚度矩阵中对角系数差别太大,引起矩阵病态。研究指出,应该用适当的约束方程来代替刚硬的弹性单元,以创建更为合理的有限元模型。
2.在不同类型的单元间传递载荷。如果有限元模型中,包含三维实体单元和壳体单元。模型看来成功,没异常。但是求解在矩阵分解时失败了,因为缩减刚度矩阵是奇异的。原因是模型中包含了一个“机构”。无法将壳体单元上的力偶传递到实体单元上,因为实体单元没有转动自由度。为了消除这种奇异性,必须建立一种连接,作用是在实体中建立一个耦合,以承受壳体力偶。
3。任意方向的约束。当某节点可以沿着不平行于坐标轴的某个边界运动时,就需要定义一个约束方程,这个方程反映垂直于此边界的运动的约束
4。刚性连杆
A:RBE1和RBE2约束单元都是PABR和RTRPLT单元的推广,后者允许连接任意数量的几何格点。这些刚性约束单元在用户必须定义的集合n内有六个刚体自由度。RBE1和RBE2刚性单元的形式显示于卡片图形9.13中。
1 2 3 4 5 6 7 8 9 10
RBE1 EID GN1 CN1 GN2 CN2 GN3 CN3 +1
+1 CN4 GN5 CN5 GN6 CN6 +2
+2 ‘UM’ GM1 CM1 GM2 CM2 GM3 CM3 +3
+3 GM4 CM4 etc. +4
一般刚性单元的另一种形式
1 2 3 4 5 6 7 8 9 10
RBE2 EID GN CM GM1 CM2 GM3 CM4 GM5 +1
+1 GM6 GM7 etc.
其中
GNi——定义有属于集合n的自由度的格点;
CNi——包括在集合n中的格点GNi处的自由度代码;
UM——约束集合n说明的字符串;
GMi——定义属于集合m的自由度的格点;
CMi——包括在集合m中的自由度代码。
RBE1和RBE2具有同样的功能,但有下列区别:
RBE1允许用户在集合n内定义能表示刚体运动的六个自由度。自由度代码的总数必须为六,最多可以在六个格点上定义。如果在三个或三个以上的格点处定义集合m,则不需要第一张继续卡片。相关自由度是在字段‘UM’之后由整数对(GMi,CMi)定义的。其中,GM是格点号,CM是一个自由度代码。
RBE2在GN字段定义的格点处取六个属于集合n的自由度。因此,在格点GMi处(这时包括在集合m内),CM字段最多包含六个自由度代码。
RBE1和RBE2约束单元都是PABR和RTRPLT单元的推广,后者允许连接任意数量的几何格点。这些刚性约束单元在用户必须定义的集合n内有六个刚体自由度。RBE1和RBE2刚性单元的形式显示于卡片图形9.13中。
1 2 3 4 5 6 7 8 9 10
RBE1 EID GN1 CN1 GN2 CN2 GN3 CN3 +1
+1 CN4 GN5 CN5 GN6 CN6 +2
+2 ‘UM’ GM1 CM1 GM2 CM2 GM3 CM3 +3
+3 GM4 CM4 etc. +4
一般刚性单元的另一种形式
1 2 3 4 5 6 7 8 9 10
RBE2 EID GN CM GM1 CM2 GM3 CM4 GM5 +1
+1 GM6 GM7 etc.
其中
GNi——定义有属于集合n的自由度的格点;
CNi——包括在集合n中的格点GNi处的自由度代码;
UM——约束集合n说明的字符串;
GMi——定义属于集合m的自由度的格点;
CMi——包括在集合m中的自由度代码。
RBE1和RBE2具有同样的功能,但有下列区别:
RBE1允许用户在集合n内定义能表示刚体运动的六个自由度。自由度代码的总数必须为六,最多可以在六个格点上定义。如果在三个或三个以上的格点处定义集合m,则不需要第一张继续卡片。相关自由度是在字段‘UM’之后由整数对(GMi,CMi)定义的。其中,GM是格点号,CM是一个自由度代码。
RBE2在GN字段定义的格点处取六个属于集合n的自由度。因此,在格点GMi处(这时包括在集合m内),CM字段最多包含六个自由度代码。
A:多点约束(MPC,Multi-Point Constraint)是对节点的一种约束,即将某节点的依赖自由度定义为其它若干节点独立自由度的函数。例如,将节点1的X方向位移定义为节点2、节点3和节点4X方向位移的函数。
多点约束常用于表征一些特定的物理现象,比如刚性连接、铰接、滑动等,多点约束也可用于不相容单元间的载荷传递,是一项重要的有限元建模技术。但是,建立明确的、能够正确描述各种现象的多点约束方程是非常不容易的。
对应于不同的分析解算器和分析类型,Patran支持的多点约束类型是不同的。以Nastran的结构分析为例,则共有12种类型的多点约束.其中Explicit:用于定义某节点的位移与其它若干节点位移的函数关系,该函数是一个一次多项式。
A:小弟刚学有限元,主要以MSC产品为主,把自己了解的关于MPC的一点见解写出共享,有错之处还望各位大虾指点:
1、加载的时候用到MPC比如扭矩,初始位移等,我现在常用的是RBE2
2、从所了解的资料说RBE2对常用的刚性连接就可用了。
3、有时候约束的添加必须用MPC,以期望近似模拟实际工况,常用的也是RBE2
A:“RBE1,RBE2 的主要区别是,RBE2的Independent 只需定义节点,不必指出自由度,因为它包括了节点的6个自由度,但RBE2的Independent 要定义节点自由度! ”说的是否不妥,“但RBE2的dependent 要定义节点自由度!”
A:RBAR:表示刚性连接两个网格节点。
属性:
1、最大的共同点就是把所有的非独立自由度固定在一个网格上,把所有的独立自由度固定在其他网格上。
2、在网格间混合或者匹配非独立的自由度,但是使用的非常少。
3、这些独立自由度必须能够描述刚体单元的运动。
使用举例:
1、"焊接"两个模型到一起。
2、铰链接附属零件。
RBE2:刚性连接一个节点和一个网格,个人认为网格受节点影响。
它与RBE3 的最大区别是RBE3允许连接的被影响网格单元变形,RBE2则不会。
应用举例:
1、可以用于RBAR使用的场合。
2、“Spider” 或者 “wagon wheel”的连接
3、大质量或者base-drive连接
刚性单元假定刚体运动自由度和所连接的自由度之间保持刚体运动约束,
包括:RROD,RBAR,RTRPLT,RBE1和RBE2等。
而RSPLINE 和RBE3称为约束单元更为恰当,
因为自由度之间的关系是基于一些假象而不是基于刚体运动。
RSPLINE假设三次样条插值, RBE3假设指定自由度间的加权平均。
A:MPC是为了将某点的位移(Um,也称主自由度点)用其它几点(Un,也称从自由度点)的位移的线性组合来表示。其一般表示形式为:
AMi.UMi+ΣANj.UNj=0
其中,AMi----从自由度的比例因子
ANj----主自由度的比例因子
UMi----从自由度的位移
UNj----主自由度的位移
在nastran的BULK DATA中用如下的语法来定义MPC:
MPC SID G1 C1 A1 G2 C2 A2
G3 C3 A3 etc...
SID---序列号
Gj----网格点或标量点的序号
Cj----集合序号(1到6的任意整数来表示网格点,空或0表示标量点)
Aj----系数(A1不能为0)
MPC提供了一种刚性建模和建立刚性约束的方法,在Nastran中共有9种刚性单元(R-element),分别如下:
RROD----1个自由度,在延伸方向是刚性的;
RBAR----刚性杆,不同于RROD的是在杆的端点有6个自由度;
RJOINT----刚性铰,铰的每个端点有6个自由度;
RTRPLT----刚性三角形平板,每个顶点具有6个自由度;
RBE2----用于一个刚性体连接到任意数目的网格节点上,其主自由度是某个节点的6个方向的运动;
RBE1----同样是用于将刚性体连接到任意数目的节点上,其主自由度和从自由度可由用户任意选取;
RBE3----用于定义某个节点的运动是其他节点运动的加权平均;
RSPLINE----其系数(即AMi)是由连接到参考节点上的梁单元的斜率确定的,这种R-element一般用于改变mesh的大小;
RSSCON----在shell和Solid单元之间加约束;
MPC----用户选择的节点自由度线性组合,系数由用户输入。
RJOINT:
RJOINT的语法如下:
RJOINT EID GA GB CB
其中,EID为element ID;
GA为主节点(所有6个自由度也是主自由度);
GB为从节点(即其自由度由其他节点自由度确定);
节点GA和GB之间的长度必须为0。如果CB=123456或者为空,则节点GB将随着网格节点GA一起移动。如果CB上所有的自由度都被释放,则RJOINT成为一个机械铰(两个物体在某点铰接,两个物体可以互相绕着局部坐标系的某一个轴,两个或三个轴转动)
例如:
铰链----CB=12356,CB=12346或者CB=12345;
平面铰----CB=1234,1235 or 1236;
球铰----CB=123;
移动副----CB=23456,13456 or 12456;
圆柱副----CB=2356,1346 or 1245。
A:Surface”类:与其它所有的多点约束类型创建界面都很类似,每个面板上都有【Define Terms】按钮,单击它,可打开不同的【Define Terms】面板,用于不同多点约束的定义,该【Define Terms】面板用于将一个节点某方向上的位移定义为若干个节点位移的一次多项式函数。
有“Dependent Terms”、“Independent Terms”项、“Coefficient”项、“Node List”项、“DOFs”项和四个操作项(“Create Dependent”、“Create Independent”、“Modify”和“Delete”),自由度项“DOFs”有六个选项:“UX”、“UY”、“UZ”、“RX”、“RY”和“RZ”,分别表示节点的六个位移自由度。使用时,一般先选定“Create Dependent”项,输入一个节点及其某个方向的位移自由度,表示要建立该节点该方向上位移的函数,所选定的节点和位移方向会显示在“Dependent Terms”项中;接着,系统会自动选定“Create Independent”项,即输入一些节点的位移作为函数的变量,在“Coefficient”项中输入位移变量的系数,在“Node List”项中输入作为变量的节点,在“DOFs”中选择位移自由度,单击APPLY,则函数的一个变量定义完成。这时,在“Independent Terms”项中可以看到。有几个变量,就重复操作几次,直到所有作为变量的节点位移都输入。如果某个节点输入有误,可用“Modify”和“Delete”项修改和删除。当所有的输入都完成之后,单击APPLY,就完成了一个多点约束的建立,屏幕上将以一个紫红色的小圆和若干条连接依赖节点和独立节点的线段表示出来。
A:RBE3主要是用来分配质量和载荷的,如集中力或集中质量
A:呵呵,这里有一个,不知道算不算哦:
Cyclic Symmetry:在两个不同的区域之间,建立一组柱面对称的多点约束边界条件(轴对称的多点约束边界条件)。
从patran的相应界面中可见,需要选择一个柱坐标系,该坐标系的Z轴作为对称轴,在“Dependent Region”和"Independent Region"文本框中,输入依赖节点和独立节点,依赖节点和独立节点必须成对出现,而且,各节点对的角度差应该相等。
A:explicit的形式为:
U0 = C1U1 + C2U2 + C3U3 + ... + CnUn + C0
U0为非独立自由度(the dependent degree-of-freedom),Ui为独立自由度(the independent degree-of-freedom),Ci是常数,C0是独立的常数项.
例如:
UX(Node 4) = 0.5*UX(Node 5) - 0.5*UY(Node 10) + 1.0 意为 结点4 X方向的位移等于结点5X方向的位移的0.5倍减去结点10Y方向的位移的0.5倍再加上1.0
MPC可以用来定义一些不方便用有限元元素描述的物理现象,例如刚性杆、运动付等,MPC也允许在不兼容的网格之间传递载荷。
但是通常情况下,定义一个可以很准确的描述实际物理现象的explicit方程是很难的。
RSSCON SURF-Vol
在线性二维板单元的一个非独立结点和线性三维实体单元的两个独立结点之间建立MPC,把板单元连接到实体单元上。可以指定一个非独立项和两个独立项,每一项包括一个单独结点。
A:RROD,RBAR,RTRPLT,RBE1,RBE2 是刚性单元,所定义的Dependent自由度和
Independent 自由度之间保持刚体运动约束。 RBE3是柔性单元,指定的Dependent自由度是Independent 自由度的加权平均。
RBE1,RBE2 的主要区别是,RBE2的Independent 只需定义节点,不必指出自由度,因为它包括了节点的6个自由度,但RBE2的Independent 要定义节点自由度!
另外, RBE3的Independent自由度最好不要有旋转自由度!
A:还有一个:
Sliding Surface :在两个相一致的区域的节点之间,定义一个滑动曲面。对应节点间的移动自由度(即垂直于该曲面方向)被约束,但其他方向上保持自由。
Rigid(Fixed):固定的多点约束。其将若干个依赖节点与某个独立节点相互固定,从而使依赖节点的所有自由度与独立节点保持一致,包括位移也保持一致。这种多点约束在用曲面模拟板状实体时,可以连接不同的平面,从而可以使不同的曲面连接起来。
Explicit:用于定义某节点的位移与其他若干节点的位移的函数关系,该函数是一个一次多项式。在patran对应的界面中(element:create:MPC:Explicit),可以明确看到其对应的分析解算器是“MSC.Natran”,而分析类型是“Structural” 。除了“Cyclic Symmetry” 和“ Sliding Surface”,其他所有的多点约束类型的创建界面都很类似,每个面板上都有“Define Terms...”按钮,单击可以 打开不通的〔Define Terms〕面板,用于不同多点约束的定义 ,“Explicit”对应的〔Define Terms〕面板用于将一个节点某方向上的位移定义为若干个节点位移的一次多项式函数。
从对应的〔Define Terms〕面板可见,有“Dependent Terms”,“Independent Terms”项,“Coefficient”项,“Node List”项,“DOFs”项和4个操作项(Create Dependent,Create Independent,Modify和Delete),自由度项“DOFs”有6个选项:UX,UY,UZ,RX,RY和RZ,分别表示节点的6个位移自由度。使用时,一般先选定“Create Dependent”项,输入一个节点及其某个方向的位移自由度,表示要建立该节点该方向上位移的函数,所选定的节点和位移方向会显示在“Dependent Terms”项中;接着,系统会自动选定“Create Independent”项,即输入一些节点的位移作为函数的变量,在“Coefficient”项中输入位移变量的系数,在“Node List”项中输入作为变量的节点,在“DOFs”中选择位移自由度,单击“Apply ”按钮,则函数的一个变量定义完成。这时,在“Indenpendent Terms”项中可以看到有及格变量,就重复操作几次,知道所有作为变量的 节点位移都输入。如果某个节点输入有误,可用“Modify”和“Delete”项修改和删除。当所有的输入都完成之后,单击“Apply ”按钮,就完成了一个多点约束的建立,屏幕上将以一个紫红色的小圆和若干条连接依赖节点和独立节点的线段表示出来。
回复:(AaronSpark)回复:(aishuijiao)求助关于mp...
本帖最后由 wdhd 于 2016-5-9 09:57 编辑我谢谢您了 我一直是看那个帮助里面的东西 也看不太明白 这样就好多了
回复:(aishuijiao)求助关于mpc的资料
2楼届时的基本上正确,还有patran2005r2中新增加的一些Connector和Weld,大体上定义差不多,主要是DOF的关系。新的连接在工程项目中比较实用。
页:
[1]