/POST1 ALLSEL CMSEL,S,LIANGTI,VOLU ESLV,S PLNSOL,U,X !上部结构位移 PLNSOL,U,Y
时间: 2023-10-07 08:13:01 浏览: 100
这是一个ABAQUS的输入文件中的命令,用于定义分析步骤。其中ALLSEL命令用于选择所有实体,CMSEL用于选择单元集合,S表示选择单元集合的方式为通过序号。LIANGTI表示使用几何非线性和材料非线性,VOLU表示使用体积效应。ESLV定义了一个步骤,PLNSOL定义了一个平面应变状态下的求解器,U,X表示求解X方向上的位移,U,Y表示求解Y方向上的位移。
相关问题
请解释下列代码finish /clear !前处理 /title,shiled tunnel /nopr keyw,pr_set,1 keyw,pr_struc,1 /com /com,preferences for GUI filtering have been set to display: /com,structural !定义材料及相关物理量 /prep7 et,1,beam3 !用bean3模拟衬砌 et,2,link10 !用link10模拟弹簧 keyopt,2,3,1 !使弹簧只受压不受拉,因此无需删除弹簧 R,1,0.525,0.005359,0.35 !输入管片常数,从第二个数字依次是截面面积、惯性矩、管片厚度 R,2,1 mp,ex,1,34.5e9 !弹性模量 mp,prxy,1,0.2 !泊松比 mp,dens,1,2500 !密度 mp,ex,2,5e7 mp,prxy,2,0.2 !建立圆环 k,1000,0,0,0 circle,1000,2.95 !2.95是管片半径 Lsel,all LESIZE,all,0.5, , , , , , ,1 Type,1 Mat,1 Real,1 Lmesh,all !建立弹簧 CSYS,1 wpcsys,-1 nsel,s,loc,x,3,4 !选择半径3到4的点进行复制 NGEN,2,100,all, , ,1 , , ,1, !选择半径3到4的点进行复制 allsel,all *do,i,1,40 type,2 real,2 mat,2 e,i,i+100 !弹簧命令 *enddo !施加约束 nsel,s,loc,x,3.5,4.5 !约束半径3.5到4.5的点的所有位移 d,all,all !约束圆环左右端点的竖向位移,上下端点的水平位移 nsel,s,,,22 D,all, , , , , ,UX, , , , , nsel,s,,,2 D,all, , , , , ,UX, , , , , nsel,s,,,12 D,all, , , , , ,UY, , , , , nsel,s,,,1 D,all, , , , , ,UY, , , , , allsel,all csys,0 wpcsys,-1 /solu acel,0,7.5,0 !施加自重荷载 !在此位置施加计算得到的等效节点荷载 !计算 esel,,,,1,40,1 !选择单元1到40进行查看,忽略弹簧 solve !绘制内力表 ETABLE,NI,SMISC,1 ETABLE,NJ,SMISC,7 ETABLE,QI,SMISC,2 ETABLE,QJ,SMISC,8 ETABLE,MI,SMISC,6 ETABLE,MJ,SMISC,12
这是一段ANSYS的命令代码,用于模拟和分析圆环结构的受力情况。以下是各个命令的解释:
- finish /clear:清除当前会话并结束ANSYS程序。
- !前处理:注释,不影响程序运行。
- /title: 设置标题。
- shiled tunnel:建立隧道结构。
- /nopr keyw,pr_set,1 keyw,pr_struc,1:设置关键字和属性。
- /com:注释,不影响程序运行。
- /com,preferences for GUI filtering have been set to display: /com,structural:设置ANSYS GUI过滤器的首选项。
- /prep7:进入前处理模式。
- et,1,beam3:定义单元类型为beam3,即梁单元。
- et,2,link10:定义单元类型为link10,即弹簧单元。
- keyopt,2,3,1:设置弹簧单元只受压不受拉。
- R,1,0.525,0.005359,0.35:定义管片相关物理量,如截面面积、惯性矩、厚度等。
- R,2,1:定义弹簧相关物理量。
- mp,ex,1,34.5e9 mp,prxy,1,0.2 mp,dens,1,2500:定义管片材料的弹性模量、泊松比和密度。
- mp,ex,2,5e7 mp,prxy,2,0.2:定义弹簧材料的弹性模量和泊松比。
- k,1000,0,0,0 circle,1000,2.95:建立圆环并指定管片半径和弹簧数量。
- Lsel,all LESIZE,all,0.5, , , , , , ,1 Type,1 Mat,1 Real,1 Lmesh,all:设置单元大小和类型,生成圆环网格。
- CSYS,1 wpcsys,-1:设置全局坐标系。
- nsel,s,loc,x,3,4 NGEN,2,100,all, , ,1 , , ,1:选择半径3到4的点进行复制。
- allsel,all *do,i,1,40 type,2 real,2 mat,2 e,i,i+100 *enddo:对弹簧进行命令操作。
- nsel,s,loc,x,3.5,4.5 d,all,all nsel,s,,,22 D,all, , , , , ,UX, , , , , nsel,s,,,2 D,all, , , , , ,UX, , , , , nsel,s,,,12 D,all, , , , , ,UY, , , , , nsel,s,,,1 D,all, , , , , ,UY, , , , , allsel,all csys,0 wpcsys,-1:施加约束。
- /solu acel,0,7.5,0:施加自重荷载。
- esel,,,,1,40,1:选择单元1到40进行查看,忽略弹簧。
- solve:进行求解。
- ETABLE,NI,SMISC,1 ETABLE,NJ,SMISC,7 ETABLE,QI,SMISC,2 ETABLE,QJ,SMISC,8 ETABLE,MI,SMISC,6 ETABLE,MJ,SMISC,12:生成内力表,包括节点编号、支反力、弯矩等信息。
/post1 *dim, bdyline, array, 10, 1 bdyline(1,1)=21,22,25,37,1,36,40,2,38,39 *cfopen,1_bdyor,txt *do,j,1,10 ALLSEL,ALL lsel,s,LINE,,bdyline(j), , ,1 bonline= numline= *get,nlnod,node,0,count *get,nlmin,node,0,num,min *dim,bonline,array,nlnod *dim,numline,array,nlnod n0=nlmin bonline(1)=n0 numline(1)=bdyline(j) *do,i,2,nlnod n0=ndnext(n0) bonline(i)=n0 numline(i)=bdyline(j) *enddo *vwrite,sequ,bonline(1),numline(1) (F8.0,2F10.0) ALLSEL,ALL *enddo *cfclose ALLSEL,ALL FINISH 该段程序每条语句是什么意思
这段程序是用于在ANSYS APDL中提取边界节点的代码。让我逐条解释每个语句的含义:
1. `*dim, bdyline, array, 10, 1`:定义了一个名为`bdyline`的1维数组,长度为10。
2. `bdyline(1,1)=21,22,25,37,1,36,40,2,38,39`:给数组`bdyline`的元素赋值,这些值表示边界线上的节点编号。
3. `*cfopen,1_bdyor,txt`:打开一个名为`1_bdyor.txt`的文本文件,用于输出结果。
4. `*do,j,1,10`:开始一个循环,循环变量为`j`,从1到10。
5. `ALLSEL,ALL`:选择所有实体、节点和单元。
6. `lsel,s,LINE,,bdyline(j), , ,1`:选择包含在数组`bdyline`的第`j`个元素(边界线上的节点编号)定义的线。
7. `bonline=`:清空名为`bonline`的数组。
8. `numline=`:清空名为`numline`的数组。
9. `*get,nlnod,node,0,count`:获取当前选择集中节点的数量,并将其存储在变量`nlnod`中。
10. `*get,nlmin,node,0,num,min`:获取当前选择集中节点的最小编号,并将其存储在变量`nlmin`中。
11. `*dim,bonline,array,nlnod`:定义一个名为`bonline`的数组,长度为`nlnod`。
12. `*dim,numline,array,nlnod`:定义一个名为`numline`的数组,长度为`nlnod`。
13. `n0=nlmin`:将变量`nlmin`的值赋给变量`n0`。
14. `bonline(1)=n0`:将变量`n0`的值赋给数组`bonline`的第一个元素。
15. `numline(1)=bdyline(j)`:将数组`bdyline`的第`j`个元素的值赋给数组`numline`的第一个元素。
16. `*do,i,2,nlnod`:开始一个循环,循环变量为`i`,从2到`nlnod`。
17. `n0=ndnext(n0)`:获取节点`n0`的下一个节点编号,并将其存储在变量`n0`中。
18. `bonline(i)=n0`:将变量`n0`的值赋给数组`bonline`的第`i`个元素。
19. `numline(i)=bdyline(j)`:将数组`bdyline`的第`j`个元素的值赋给数组`numline`的第`i`个元素。
20. `*enddo`:结束循环。
21. `*vwrite,sequ,bonline(1),numline(1)`:将序列号、数组`bonline`的值和数组`numline`的值写入文件。
22. `(F8.0,2F10.0)`:指定写入文件时的格式。
23. `ALLSEL,ALL`:选择所有实体、节点和单元。
24. `*enddo`:结束循环。
25. `*cfclose`:关闭输出文件。
26. `ALLSEL,ALL`:选择所有实体、节点和单元。
27. `FINISH`:结束ANSYS APDL会话。
请注意,这段代码是根据您提供的代码片段进行解释的,可能会根据完整的代码和具体模型的要求进行修改和调整。
阅读全文