徐珂:建筑结构设计 建筑结构 一个普通结构工程师的建筑结构设计博客

ANSYS学习的疑问(一)

   大概一两年前我说过要学习使用ANSYS,以前用ANSYS都是请别人做的相关分析,当时很是下了一点决心,但是很遗憾我没有进展下去,理由是界面操作太麻烦了,主要是我的记性又特别差,又是拿着市面上几本以界面操作的书在学习,今天会了明天又忘了按钮在哪里放着,他们还提过命令流,这玩意没有多少中文解释,以我认识英文的能力,实在是个困难的事情,所以很快失去信心,毕竟做设计还是主要的事情,学习似乎永远都是可以放在以后再说的事情,于是就把这件事逐渐地扔下了,而且心安理得。


      不过事情在今年有了新变化,前一段时间跟清华的潘鹏学习ABQUS得使用,这事也是个很漫长的过程,不过他上来就讲了一下咋学习的思路,其实直接学命令流就可以,我有点明白了,但没联想到ANSYS,前几天又让一个同事用ANSYS做个双非线性分析,小伙子很负责地以为我很明白ANSYS,跟我全流程地介绍一下各命令流的用处,还让我检查有没有问题,于是忽然明白怎么回事了,一下子清楚该咋搞这玩意了,自己一高兴这两个星期已经编了好多段命令流来练习,比较爽。

      战略上清楚了,不意味着战术上就很清楚,很多命令还是不太理解咋回事,这个需要慢慢磨练,这几天一直在琢磨LATT命令到底咋回事,比如下面的命令流是王新敏的《ANSYS工程结构数值分析》一个例子,为什么要创建第4个关键点来定义LATT所赋予线的方向,而它的位置在很奇怪的地方,好像我不定义4节点也可以完成这个分析,这到底有啥区别?
!EX7.4

FINISH$/CLEAR$/PREP7

! 工字钢截面几何参数
L=9
W=0.320
H=0.924
TF=0.008
TW=0.012

! 单元、材料
ET, 1, BEAM189, 1
MP, EX, 1, 2.06E11
MP, GXY, 1, 7.9E10

! 定义梁截面
SECTYPE, 1, BEAM, I
SECDATA, W, W, H, TW, TW, TF
SECOFFSET, USER, 0, H
!SECOFFSET, CENT
!SECOFFSET, ORIGIN

! 定义节点
K, 1
K, 2, , , L/2
K, 3, , , L
K, 4, , L/2, L/2

! 定义线
L, 1, 2
L, 2, 3

! 线的属性和单元细分
LATT, 1, , 1, , 4, , 1     ! 这里的4到底是个什么概念?
LESIZE, ALL,  ,  , 30      ! 此处如果30改为10,计算结果出错。
LMESH, ALL

! 约束、荷载
DK, 1, UX, , , , UY, UZ, ROTZ
DK, 3, UX, , , , UY, ROTZ
FK, 2, FY, -1

! 显示
/ESHAPE, 1
EPLOT

FINISH

! 计算分析
/SOLU
PSTRES, ON
SOLVE
FINISH

/SOLU
ANTYPE, 1
BUCOPT, LANB, 1
SOLVE
FINISH

/POST1
SET, LIST
     我自己又建了个多节点模型,就次将这根梁分成十段,而不是上面分成二段,整个模型还是细分成60份,计算结果一致
!EX7.4改版

FINISH
/CLEAR
/PREP7

! 工字钢截面几何参数
L=9
W=0.320
H=0.924
TF=0.008
TW=0.012

! 单元、材料
ET, 1, BEAM189, 1
MP, EX, 1, 2.06E11
MP, GXY, 1, 7.9E10

! 定义梁截面
SECTYPE, 1, BEAM, I
SECDATA, W, W, H, TW, TW, TF
SECOFFSET, USER, 0, H
!SECOFFSET, CENT
!SECOFFSET, ORIGIN

! 定义节点
k, 1, 0, 0, 0
k, 2, 0, 0, L/10
k, 3, 0, 0, 2*L/10
k, 4, 0, 0, 3*L/10
k, 5, 0, 0, 4*L/10
k, 6, 0, 0, 5*L/10
k, 7, 0, 0, 6*L/10
k, 8, 0, 0, 7*L/10
k, 9, 0, 0, 8*L/10
k, 10, 0, 0, 9*L/10
k, 11, 0, 0, 10*L/10
K, 12, 0, L/2, L/2

! 定义线
L, 1, 2
L, 2, 3
L, 3, 4
L, 4, 5
L, 5, 6
L, 6, 7
L, 7, 8
L, 8, 9
L, 9, 10
L, 10, 11

! 线的属性和单元细分
LATT, 1, , 1, , 12, , 1
LESIZE, ALL,  ,  , 6      ! 此处如果6改为2,计算结果出错。
LMESH, ALL

! 约束、荷载
DK, 1, UX, , , , UY, UZ, ROTZ
DK, 11, UX, , , , UY, ROTZ
FK, 6, FY, -1

! 显示
/ESHAPE, 1
EPLOT

FINISH

! 计算分析
/SOLU
PSTRES, ON
SOLVE
FINISH

/SOLU
ANTYPE, 1
BUCOPT, LANB, 1
SOLVE
FINISH

/POST1
SET, LIST
   不过我又发现一个问题,如果整个模型细分成20份,计算是显示出错信息:EIGENVALUE EXTRACTION FAILED,POSSIBLY BECAUSE MASS MATRIX IS NON-DEFINITE(HAS BOTH POSITIVE AND NEGATIVE DEFINITE PARTS)。这是咋回事?

Tags: ansys

发布: 徐珂建筑结构设计 分类: 结构技术学习 评论: 2 浏览: 1771
留言列表
怕冷的冰棍
怕冷的冰棍 好厉害,我也自己在学ansys,但是主要就是学通过图形界面来操作了,命令流记不住额~~~~而且我发现,不同的人编的不同的教材,建模思路跟方式,还有分割的方式都不太一样~~可能就是这个原因吧,每个人用惯了一种自己的流程就总习惯性的做了~~
线属性定义命令中latt的定位点
线属性定义命令中latt的定位点 在分配线属性时,那个点4的作用是用来定义梁截面的方向的,因为梁单元只有两个节点定义其空间相对位置,但截面的方向是无法确定的(这和实体单元是不同的),所以需要有特殊的方式定义截面的方向,这里的点4就是其中的方法之一。当然,对于不同的单元类型也可以有其他的截面方向的确定方法。另外,在学习命令流的使用时,建议掌握一下相关的流程控制命令,如if语句、循环语句等等。
发表留言
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。