1、PFC3D中文讲解例题讲课教案PFC3D中文讲解例题通过例子学习几种常见命令例二:PFC3D目录下的GuideStartfooting.dat,程序如下(注意:本程序与原程序不同,特加了plot set rotation (24.0,352.0,340.0)这句以使得模型转过一定角度,让用户看的更清楚,另外还将原程序一分为二,主要是为了更好地学习每个命令的作用),以下是程序代码。;fname: footing.DAT (tutorial example for PFC3D)new ; clear program state to begin new problemset random ; re
2、set random-number generatortitle Tutorial Examplewall id=1 face ( 0, 0, 0) (10, 0, 0) (10, 0 -5) ( 0, 0,-5)wall id=2 face ( 0, 0, 0) ( 0, 0,-5) ( 0, 2,-5) ( 0, 2, 0)wall id=3 face (10, 0,-5) (10, 0, 0) (10, 2, 0) (10, 2,-5)wall id=4 face (10, 2,-5) (10, 2, 0) ( 0, 2, 0) ( 0, 2,-5)wall id=5 face ( 0,
3、 0,-5) (10, 0,-5) (10, 2,-5) ( 0, 2,-5)wall id=6 face ( 0, 0, 0) ( 0, 2, 0) (10, 2, 0) (10, 0, 0)gen id=1,750 rad 0.15,0.20 x=0,10 y=0,2 z=-5,0;plot create Footingplot set title text Basic collection of particles in a boxplot set rotation (24.0,352.0,340.0)plot add ball yellowplot add wall whiteplot
4、 add axes brownplot showpause;wall id=1 kn=1e8 ks=1e8wall id=2 kn=1e8 ks=1e8wall id=3 kn=1e8 ks=1e8wall id=4 kn=1e8 ks=1e8wall id=5 kn=1e8 ks=1e8wall id=6 kn=1e8 ks=1e8;prop density 2000 kn 1e8 ks 1e8ini rad mul 1.47;set hist_rep=5hist ball zvel 3 1 0hist diagnostic mufset dt dscalecycle 3000以下是程序中逐
5、条命令的解释:1、我们首先定义了模型的边界,使用WALL命令,如下:wall id=1 face ( 0, 0, 0) (10, 0, 0) (10, 0 -5) ( 0, 0,-5)wall id=2 face ( 0, 0, 0) ( 0, 0,-5) ( 0, 2,-5) ( 0, 2, 0)wall id=3 face (10, 0,-5) (10, 0, 0) (10, 2, 0) (10, 2,-5)wall id=4 face (10, 2,-5) (10, 2, 0) ( 0, 2, 0) ( 0, 2,-5)wall id=5 face ( 0, 0,-5) (10, 0,-
6、5) (10, 2,-5) ( 0, 2,-5)wall id=6 face ( 0, 0, 0) ( 0, 2, 0) (10, 2, 0) (10, 0, 0)这些命令创造了一个由六个墙面围成的箱子,每个墙面都赋予了一个独一无二的ID号。每个墙面四边形通过给出四边形的四个顶点坐标来定义,即四个顶点连成四条线,然后再围成一个四边形墙面。注意:顶点的顺序决定了墙面是否被激活,激活的墙面可以自动识别与小球的接触,不激活的话就会被小球穿透,2、然后在箱子里填充小球,用Generate命令,也可简写,如下:gen id=1,750 rad 0.15,0.20 x=0,10 y=0,2 z=-5,0这个命令规定了小球填充的空间范围,小球的大小以及填充的总个数。Id=1,750的含义是:ID号从1到750其实就生成了750个小球,并给每个小球指定了各自的ID号。Rad 0.15,0.20的含义是:小球半径从0.15m到0.20m随机选择x=0,10 y=0,2 z=-5,0的含义是:小球填充的空间是0x10,0y2,-5z0 then abc=11 else abc=22 end if end set aa=1 print abc set aa=-1print abc以上程序非常简单,在此不再赘述,这里主要是让用户看下if语句的使用方法。
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2