声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 5194|回复: 2

[综合讨论] [分享]将面载荷转化为等效节点力施加的方法

[复制链接]
发表于 2006-3-22 21:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
在进行分析时,有时候需要将已知的面载荷按照节点力来施加,比如载荷方向及大小不变的情况(ANSYS将面力解释为追随力,而将节点力解释为恒定力),那么,在只知道面力的情况下,如何施加等效于该面力的等效节点力呢?可以通过如下步骤给有限元模型施加与已知面载荷完全等效的节点力:
<P>1、在模型上施加与已知面力位置、大小相同但方向相反的面力。<BR>Main Menu-&gt;Solution-&gt;Apply-&gt;Pressure-&gt;。(注意:所施加面力要与已知力反号)。<BR>2:将模型的所有节点自由度全部约束。<BR>Main Menu-&gt;Solution-&gt;Apply-&gt;Displacement-&gt;On Nodes<BR>3:求解模型。<BR>Main Menu-&gt;Solution-&gt;Current LS(这一步会生成结果文件Jobname.rst)<BR>4:开始新的分析:<BR>Main Menu-&gt;Solution-&gt;New Analysis<BR>5:删除前两步施加的面力和约束。<BR>Main Menu-&gt;Solution-&gt;Delete-&gt;Pressure-&gt;<BR>Main Menu-&gt;Solution-&gt;Delete-&gt; Displacement-&gt;On Nodes<BR>6:从Jobname.rst中保存的支反力结果施加与已知面力完全等效的节点力。<BR>Main Menu-&gt;Solution-&gt;Apply-&gt;Force/Moment-&gt;From Reaction<BR>7:施加其它必要的载荷和约束,然后求解。</P>
<P>这个方法基于ANSYS计算的支反力。由于第二步将模型的所有自由度全部约束,所以通过第三步的求解,模型内不会产生任何的应力,为了保持载荷作用面上节点的平衡,这些节点上将产生与第一步施加面力大小完全等效但方向相反的节点支反力。由于第一步所施加面力与实际的已知面力方向相反,所以,该支反力即为和已知面力完全等效的节点力。<BR>以上过程相应的典型命令流为(使用时根据具体情况进行补充修改):<BR>……         ! 建模过程<BR>/SOLU<BR>SFA,         ! 施加面力,与已知面力反向(或SFE, SFL, SF)<BR>D,ALL,ALL,0      ! 约束所有节点自由度<BR>ANTYPE,STATIC<BR>SOLVE        <BR>FINISH<BR>/SOLU<BR>ANTYPE,        ! 选择新的分析类型<BR>SFADELE,       ! 删除面力(或SFEDELE, SFLDELE, SFDELE)<BR>DDELE,ALL,ALL     ! 删除所有约束<BR>LDREAD,REAC,     ! 从支反力施加等效节点力<BR>……         ! 其它载荷、约束及求解过程</P>
<P>单元死活应用中改变材料特性的方法<BR>使用单元死活功能时,有时需要单元激活后具有与杀死前不同的材料特性(比如模拟山体隧洞开挖后,采用与山体不同的材料回填的施工过程),这种行为可以通过如下两种方法去模拟:<BR>方法一:单元激活后,在求解器中修改激活单元的材料特性。<BR>Main Menu-&gt;Solution-&gt;Other-&gt;Change Mat Props-&gt;Change Mat Num<BR>此应用的典型命令流为(使用时根据具体情况进行补充修改):<BR>……     ! 建模过程<BR>/SOLU<BR>ESEL,    ! 选择杀死单元<BR>EKILL,ALL  ! 杀死单元<BR>ALLSEL<BR>……     ! 一系列其它分析过程<BR>ESEL,    ! 选择激活单元<BR>EALIVE,ALL ! 激活单元<BR>MPCHG,    ! 修改激活单元材料特性<BR>ALLSEL<BR>……     ! 其余分析过程</P>
<P>如果执行上述操作后出现警告信息,这属于正常,程序只是提醒用户在求解过程中修改材料需要慎重,如果确认无误,可以继续。</P>
<P>方法二:生成有限元网格时在死活单元改变材料部位生成具有不同材料特性的重叠单元,分别代表将要杀死和激活的单元。可以用如下GUI路径在已有的所选出的单元上重叠一层与这些单元共用节点的单元。<BR>Main Menu-&gt;Preprocessor-&gt;Copy-&gt;Element-Auto Numbered,并令控制参数ITIME=2,NINC=0,DX、DY、DZ=0,MINC=M2-M1(M1、M2分别为杀死和再激活单元的材料号)。<BR>执行此操作后会出现一个警告信息,告诉用户由于节点号增量为0,将在相同位置产生重叠单元,关闭该警告即可。<BR>用此方法进行单元死活分析的典型命令流为(使用时根据具体情况进行补充修改):<BR>    …… ! 建模过程,包含M1材料单元,但没有重叠单元<BR>    ESEL, ! 选择应用死活并改变材料特性的单元<BR>    EGEN,2, ,ALL, , ,M2-M1, ! 在这些单元上生成重叠单元,设改变前后材料为M1,M2<BR>  ALLSEL<BR>   ESEL,S,MAT,,M2  ! 选择材料为M2的单元<BR>   EKILL,ALL    ! 并杀死这些单元,因为初始情况这些材料并不存在<BR>   ALLSEL<BR>   ……       ! 初始状态求解<BR>   ESEL,      ! 选择需要杀死的材料号为M1的单元<BR>   EKILL,ALL    ! 并杀死这些单元,模拟M1材料去除<BR>   ALLSEL<BR>   ……       ! 求解<BR>   ESEL,S,MAT,,M2 ! 选择要激活的材料号为M2的单元<BR>   EALIVE,ALL    ! 激活这些单元,模拟M2材料回填<BR>   ALLSEL<BR>   ……    ! 求解</P>
回复
分享到:

使用道具 举报

发表于 2006-3-30 15:49 | 显示全部楼层
但是当要加的分布力是与面平行时,就需先统计出这个面上的节点数,算出整个面的受力,然后平均分配给每个节点,请问楼主有这方面的经验吗?有没有简单的统计一个面上的节点数,或者是更简单的方法??
发表于 2006-3-31 06:40 | 显示全部楼层

回复:(kkkttt)[分享]将面载荷转化为等效节点力施加...

使用命令:*GET,NDNUM,NODE,0,COUNT <BR>                 *GET,ELMNUM,ELEM,0,COUNT <BR>就可分别得到节点和单元数目,在UTILITY&gt;SCALAR PARAMETER &gt;中查看NDNUM、ELMNUM就行。 <BR>若要看部分节点和单元数目,先用ASEL,VSEL,LSEL,等选择那一部分,再用以上命令。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-4-29 00:24 , Processed in 0.099178 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表