
FLST 和 FITEM 是在 GUI 方式中,为某一命令选择操作实体时产生的,反映在 log 文件中是一条 FLST 命令,跟着一条或几条 FITEM 命令,再跟着一条带有一个 P51X 的操作命令;
或者是一条 FLST 命令和若干条 FITEM 命令,跟着一条 FLST 命令和若干条 FITEM 命令,再跟着一条带有两个 P51X 的操作命令。
根据 ANSYS 的帮助文件,对 FLST 和 FITEM 的用法说明如下:
1 FLST 命令
FLST, NFIELD, NARG, TYPE, Otype, LENG
其中各参数说明如下:
NFIELD - 所选择实体对应操作命令的第几个参数 (field),注意操作命令的第一个域是命令本身,因此 NFIELD=2,表示是命令的第1个参数; NFIELD=3,表示是命令的第2个参数.....等。
NARG - 后续列表中的项数 (即后续 FITEM 命令行数)
TYPE - 所选择的实体类型,定义为:
1 - 节点编号;
2 - 单元编号;
3 - Keypoint 编号;
4 - Line 编号;
5 - Area 编号;
6 - Volume 编号;
7 - Trace points;
8 - 总体直角坐标系中的坐标值;
9 - 屏幕坐标选择 (在屏幕 X, Y 坐标中,值 (-1 to 1))
Otype - 数据排列方式,有两种方式:
NOOR - 数据是无序的 (默认);
ORDER - 数据是个有序的表 (例如对于 E,P51X 和 A,P51X 命令,其中数据的顺序与用 pick 方式选择时的顺序一致)。
LENG - 数据表长度 (后续 FITEM 命令的个数。如果 Otype = NOOR,LENG 应等于 NARG)
2 FITEM 命令
FITEM, NFIELD, ITEM, ITEMY, ITEMZ
其中各参数说明如下:
NFIELD - 所选择实体对应操作命令的第几个参数 (field),注意操作命令的第一个域是命令本身,因此 NFIELD=2,表示是命令的第1个参数; NFIELD=3,表示是命令的第2个参数;等。
ITEM - 所选择实体的编号;负值表示它与上一个 FITEM 组成一个范围,例如相连两个 FITEM 的 ITEM 值分别为 4 和 -8,则表示 4,5,6,7,8 全被选中。
ITEMY, ITEMZ - 当所选实体为坐标值时,分别为 Y 和 Z 坐标,此时 ITEM 为 X 坐标。
注意:对于给定的实体类型,如果 ITEM 的值大于该类实体的最大值,可能导致不可预料的后果。
例如:
/TITLE,2D SHAPE OPTIMIZATION EXAMPLE
/PREP7
ANTYPE,STATIC
ET,1,PLANE82
KEYOPT,1,3,3
R,1,1
MP,EX,1,210000
MP,NUXY,1,0.3
MP,DENS,1,1
!INPUT KEYPOINTS
K,1,1560.000000,320.000000,0.000000
K,2,1540.000000,300.000000,0.000000
K,3,1500.000000,300.000000,0.000000
K,4,1439.992000,279.996700,0.000000
K,5,1160.041000,280.005000,0.000000
K,6,920.000500,279.997500,0.000000
K,7,699.9700,280.015100,0.000000
K,8,600.006800,300.005700,0.000000
K,9,460.003500,299.998500,0.000000
K,10,400.000400,319.999800,0.000000
K,11,360.000000,360.000000,0.000000
K,12,0.000000,0.000000,0.000000
K,13,360.000000,720.000000,0.000000
K,14,360.000000,0.000000,0.000000
K,15,0.000000,720.000000,0.000000
K,16,1560.000000,0.000000,0.000000
K,17,1920.000000,0.000000,0.000000
K,18,1920.000000,360.000000,0.000000
K,19,1560.000000,360.000000,0.000000
flst,2,11,3,orde,2
FITEM,2,1
FITEM,2,-11
SPLINE,P51X
FLST - - 选择结果用于后续命令的第 2 个域,共 11 个实体,实体类型为关键点编号,共有2行 FITEM 命令;
接着 2个 FITEM 命令选择了关键点 :1~11
最后是样条曲线(SPLINE)命令,所选的11个关键点以 P51X 代表,位于SPLINE 命令的第2个域.
例子:
FLST,2,3,4, ORDE,2 指定按顺序选取3条线
FITEM,2,1选取编号为1的线
FITEM,2,-3选取线的编号范围为3,编号3前面加了负号表示选择的编号的范围(Negative entity numbers are used to indicate a range of entities)
LCOMB,P51X, , 0把前面选取的线连起来
其实以上命令在命令流中就等效于如下的命令流:
lsel,,,,1,3,1
lcomb,all
FLST,2,3,4, ORDE,2
其中:第一个 2 表示使用由该 FLST 和后续的 FITEM 语句提供的实体数据进行操作的命令 (这里是 LCOMB 命令) 中与实体数据有关的域的个数 (对于 LCOMB 命令,与实体数据的域有两个 - LCOMB, NL1, NL2, KEEP 中的 NL1 和 NL2);数值 3 表示本组命令涉及 3 个实体;数值 4 表示涉及的是 Line 实体的编号;ORDE 表示这些 Line 的编号是按顺序排列的 (升序);最后的 2 表示本 FLST 后面跟有 2 个 FITEM 语句。FITEM 语句的个数 (这里是 2) 可以小于涉及实体的个数 (这里是 3) 。
后续的 FITEM 命令有两条,都有 3 个域:
第一个是命令 FITEM,第二个值与前面 FLST 命令的第二个值相同,第三个值为实体编号,所有 FITEM 语句中的实体编号 (绝对值) 必须是升序排列的。如果实体编号是正的,表示选中该实体;如果实体编号是负值,则表示选取一个范围中的所有实体,该范围的起始实体编号是上一 FITEM 语句中的实体编号值 (必须是正的),最后一个编号是本 FITEM 语句中的实体编号值的绝对值。本例中:
FITEM,2,1 表示选取编号为 1 的实体 (这里是 Line 1)
FITEM,2,-3 表示选取编号为 1~ |-3| 的实体 (这里是 Line 1~3 )
所有被选中的实体将在后续命令中以 P51X 表示,如本例中:
LCOMB, P51X, , 0
表示将 Line 1~3 组合为一条 Line
