PFC3D命令说明
(COMMON COMMAND REFERENCE)
PFC3D是基于命令驱动模式(COMMAND-DRIVEN FORMAT)的软件,各种命令控制着程序的运行,这部分内容将介绍PFC3D软件的内嵌命令。
本说明文件译自PFC3D软件2.0版使用手册中的COMMAND REFERENCE部分,并补充了一些手册中没有的命令(如设置粘性阻尼、生成圆柱、螺旋壁面等,这些命令在更高版本的手册中有说明)。命令说明的顺序没有采用原手册中按字母排序的方式,而是根据创建PFC3D模型解决实际物理问题的一般过程,对相关命令加以说明。PFC3D手册中COMMON COMMAND REFERENCE只对每个命令的格式和基本功能做了简单介绍,本说明文件对每个命令做了更详细的解释,为保持文件的可读性,对命令的详细解释都以附录形式给出。
本文件介绍了PFC3D的基本功能,对初学者有较大帮助,但要进行高级应用,还需清楚了解DEM和PFC3D相关功能的基本原理以及软件的结构等。由于只关注使用PFC3D解决颗粒流的问题,涉及颗粒流的命令介绍的比较详细,而用于岩土工程等其他领域的命令,由于关注很少且专业知识缺乏,只是不求甚解。
1. 关于命令格式的说明:
PFC3D中每个命令基本包含3部分:命令名、必需关键词和可选关键词。本说明文件中,命令名和必需关键词写在第一行,尖括号<Keyword>表示该命令具有可选关键词,罗列于命令名的下一行次级列;带参数的关键词,参数紧随关键词之后用加粗斜体表示。名字较长的“命令”和“关键词”,PFC3D允许不写出全部字母,只需简写前面的一些字母,最短可简写名(即PFC3D能识别的最短简写“命令”和“关键词”名)用加粗字体表示。例如命令:
BALL            rad  r  <keyword>
                   
                    hertz   
                    id        id
                    x        x
                    y        y
                    z        z
说明:命令名为BALL的命令,具有必需关键词rad(参数r)和hertz、idxyz等可选关键词。其中hertz不带参数,最短可简写为hert;id、x、y、z的参数分别为id、x、y、z
另外,PFC3D默认对内嵌命令以及FISH函数中的命令名、关键词、参数等的字母大小写不敏感,也可设置为大小写敏感(使用SET case_sensitivity on命令),建议使用对字母大小写不敏感模式,可减少错误的产生。
2. 模型属性命令(MODEL-PROPERTY COMMANDS)
模型属性命令支持数值模型的创建与修改,主要包括表1所示的命令,这些命令可分为模型创建(或删除)和模型修改两大类
表1  模型属性命令
BALL
CLUMP
DELETE
GENERATE
JSET
WALL
FIXFREE
MODEL
PROPERTY & CHANGE & INITIALIZE
BALL            生成一个新颗粒;
CLUMP        生成一个新块体,或修改已有块体的属性;
DELETE        删除球、壁面、块体或历史(HISTORIES);
GENERATE    在特定空间内生成一组颗粒,其大小按指定方式分布;
JSET            以给某个接触分配一个“接点”ID号的方式生成一组“接点”;
WALL            生成一个新壁面或修改已有壁面的属性(包括修改物性和外加速度);
FIX            为颗粒设置固定速度标记
FREE            清除颗粒的固定速度标记
MODEL            在指定“接触”上使用用户自定义接触模型;
PROPERTY    修改已有颗粒(ball)、接点(joint)、粘结(bond)和接触(contact)的属性。球的属性包括物性、外加力和速度等;使用区域元素(range element)JSET,用户
可以修改特定接点附件的颗粒属性;对于“粘结”,接触粘结和平行粘结都可以被创建并修改其属性;对于“接触”,PROPERTY用于修改用户自定接触模型的修改。同义命令:CHANGE、INITIALIZE
2.1   模型创建命令:
WALL        keyword   
WALL命令有两个功能,生成一个新的壁面,或按指定的ID号修改已有壁面的属性参数。WALL不能使用RANGE逻辑,即不能给一个壁面的不同部分赋不同的属性参数。壁面只与球有相互作用,壁面之间没有相互作用,因此壁面可以相互重叠。壁面有两侧,有效侧(active side)与非有效侧(inactive side),只有与有效侧接触的球,才与壁面有相互作用。关于有效侧的定义,见附录1。
每个壁面都可以设置平移速度与转动速度。使用Theory and Background中的1.28公式,可更新构成壁面的每个顶点的位置,从而得到壁面的运动情况。 应当注意的是,转动速度的设定还与壁面转动中心有关,默认情况下,转动中心在坐标原点(0.0, 0.0, 0.0
两类壁面可以定义:(1)无限大壁面:由关键词origin和normal定义的一个无限大平面;(2)有限壁面:圆柱形或由一组凸面多边形组成,使用关键词face定义。
A. 无限大壁面(infinite wall):无限壁面由关键词normalorigin定义,前者定义壁面的单位法向向量,所指向的一侧是壁面的有效侧;后者定义壁面上的任意一点。
normal        nx, ny, nz
            无限壁面单位法向向量的分量;
origin        x0, y0, z0
            无限壁面上任意一点的坐标;
B. 圆柱壁面(cylinder):使用关键词type cylinder可以定义圆柱壁面,也可定义圆锥、圆台壁面等回旋壁面。
type cylinder    keyword
                end1    x1, y1, z1
                        回旋面的第一个端点;
                end2    x2, y2, z2
                        回旋面的第二个端点;
                radius    radius软件rl, ru
                        rl: 端点end1处的回旋半径;
                        ru: 端点end2处的回旋半径;
            type cylinder的几点说明:
1) end1, end2至多只能缺省一个,缺省时对应的参数都为0;
2) rlend1对应,ruend2对应;
3) radius值决定了回旋壁面的类型:
i. rl = ru,对应圆柱壁面;
ii. rl = 0.0,对应圆锥壁面;
iii. rl ru,对应圆台壁面;
例如:
Wall type cylinder end1 0 0 0, end2 0 0 1, radius 0.5,0.5, id=1, kn=1e6, ks=1e6, fric=0.2 ;生产半径为0.5的圆柱面;
Wall type cylinder end1 0 0 0, end2 0 0 1, radius 0.0,0.5, id=1, kn=1e6, ks=1e6, fric=0.2 ;生产地面半径为0.5的圆锥面;
Wall type cylinder end1 0 0 0, end2 0 0 1, radius 0.2,0.5, id=1, kn=1e6, ks=1e6, fric=0.2 ;生产上底面半径0.2,下底面半径为0.5的圆台面;
C. 螺旋壁面(spiral):使用关键词type spiral可以生产螺旋壁面。
type spiral    keyword
                end1    x1, y1, z1
                        螺旋面的第一个端点;
                end2    x2, y2, z2
                        螺旋面的第二个端点;
                radin    rin
                        rin: 螺旋面的内径;
                radout    rout
                        rout: 螺旋面的外径;
                pitch    pt
                        pt: 螺距。
说明:螺纹的个数由end1,end2之间的距离除以pitch得到的整数决定。如ed1-end2=10,pitch=3,则螺纹数等于3个。
例如:
Wall type spiral end1 0 0 0, end2 10 0 0, radius 0.5,1.0, pitch=1, id=1, kn=1e6, ks=1e6, fric=0.2 ;生产10个螺纹的螺旋面;
D. 凸面多边形壁面(convex polygons):使用关键词face可以构造由若干有限平面(face)组成的有限壁面(wall),每个平面(face)必须是由一组按顺序连接的顶点(vertices)组成的多边形(polygon);有限壁面的有效侧按右手法则确定,详见附录1。
face            x1, y1, z1  x2, y2, z2    xn, yn, zn
x1, y1, z1  x2, y2, z2    xn, yn, zn为平面多边形的顶点坐标,它们的位置顺序代表着顶点的连接顺序,决定了有效侧的位置。
使用具有相同ID号的WALL命令,可以在已有壁面上增加若干多边形平面,如下列命令定义了一系列有限壁面:
wall id=1 face (1,1,1) (1,0,1) (6,0,1) (6,1,1)
wall id=2 face (6,0,1) (6,0,6) (6,1,6) (6,1,1)
wall id=3 face (1,0,6) (1,1,6) (6,1,6) (6,0,6)
wall id=4 face (1,1,1) (1,1,6) (1,0,6) (1,0,1)
wall id=5 face (2,1,2) (5,1,2) (5,0,2) (2,0,2)
wall id=5 face (5,0,2) (5,1,2) (5,1,5) (5,0,5)
wall id=5 face (2,0,5) (5,0,5) (5,1,5) (2,1,5)
wall id=5 face (2,1,2) (2,0,2) (2,0,5) (2,1,5)
wall id=9 normal 0, 1,0 origin 3.5,0.0,3.5
wall id=10 normal 0,-1,0 origin 3.5,1.0,3.5
通过使用多个具有相同ID号(id=5)的WALL命令,定义了一个由4个平面构成的凸面多边形壁面,如下图所示。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。