PFC3D基础说明文档格式.docx

上传人:b****4 文档编号:7411183 上传时间:2023-05-08 格式:DOCX 页数:41 大小:264.59KB
下载 相关 举报
PFC3D基础说明文档格式.docx_第1页
第1页 / 共41页
PFC3D基础说明文档格式.docx_第2页
第2页 / 共41页
PFC3D基础说明文档格式.docx_第3页
第3页 / 共41页
PFC3D基础说明文档格式.docx_第4页
第4页 / 共41页
PFC3D基础说明文档格式.docx_第5页
第5页 / 共41页
PFC3D基础说明文档格式.docx_第6页
第6页 / 共41页
PFC3D基础说明文档格式.docx_第7页
第7页 / 共41页
PFC3D基础说明文档格式.docx_第8页
第8页 / 共41页
PFC3D基础说明文档格式.docx_第9页
第9页 / 共41页
PFC3D基础说明文档格式.docx_第10页
第10页 / 共41页
PFC3D基础说明文档格式.docx_第11页
第11页 / 共41页
PFC3D基础说明文档格式.docx_第12页
第12页 / 共41页
PFC3D基础说明文档格式.docx_第13页
第13页 / 共41页
PFC3D基础说明文档格式.docx_第14页
第14页 / 共41页
PFC3D基础说明文档格式.docx_第15页
第15页 / 共41页
PFC3D基础说明文档格式.docx_第16页
第16页 / 共41页
PFC3D基础说明文档格式.docx_第17页
第17页 / 共41页
PFC3D基础说明文档格式.docx_第18页
第18页 / 共41页
PFC3D基础说明文档格式.docx_第19页
第19页 / 共41页
PFC3D基础说明文档格式.docx_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

PFC3D基础说明文档格式.docx

《PFC3D基础说明文档格式.docx》由会员分享,可在线阅读,更多相关《PFC3D基础说明文档格式.docx(41页珍藏版)》请在冰点文库上搜索。

PFC3D基础说明文档格式.docx

BALL

CLUMP

DELETE

GENERATE

JSET

WALL

FIX—FREE

MODEL

PROPERTY&

CHANGE&

INITIALIZE

BALL生成一个新颗粒;

CLUMP生成一个新块体,或修改已有块体的属性;

DELETE删除球、壁面、块体或历史(HISTORIES);

GENERATE在特定空间内生成一组颗粒,其大小按指定方式分布;

JSET以给某个接触分配一个“接点”ID号的方式生成一组“接点”;

WALL生成一个新壁面或修改已有壁面的属性(包括修改物性和外加速度);

FIX为颗粒设置固定速度标记

FREE清除颗粒的固定速度标记

MODEL在指定“接触”上使用用户自定义接触模型;

PROPERTY修改已有颗粒(ball)、接点(joint)、粘结(bond)和接触(contact)的属性。

球的属性包括物性、外加力和速度等;

使用区域元素(rangeelement)JSET,用户可以修改特定接点附件的颗粒属性;

对于“粘结”,接触粘结和平行粘结都可以被创建并修改其属性;

对于“接触”,PROPERTY用于修改用户自定接触模型的修改。

同义命令:

CHANGE、INITIALIZE。

2.1模型创建命令:

WALLkeyword…

WALL命令有两个功能,生成一个新的壁面,或按指定的ID号修改已有壁面的属性参数。

WALL不能使用RANGE逻辑,即不能给一个壁面的不同部分赋不同的属性参数。

壁面只与球有相互作用,壁面之间没有相互作用,因此壁面可以相互重叠。

壁面有两侧,有效侧(activeside)与非有效侧(inactiveside),只有与有效侧接触的球,才与壁面有相互作用。

关于有效侧的定义,见附录1。

每个壁面都可以设置平移速度与转动速度。

使用TheoryandBackground中的1.28公式,可更新构成壁面的每个顶点的位置,从而得到壁面的运动情况。

应当注意的是,转动速度的设定还与壁面转动中心有关,默认情况下,转动中心在坐标原点(0.0,0.0,0.0)。

两类壁面可以定义:

(1)无限大壁面:

由关键词origin和normal定义的一个无限大平面;

(2)有限壁面:

圆柱形或由一组凸面多边形组成,使用关键词face定义。

A.无限大壁面(infinitewall):

无限壁面由关键词normal和origin定义,前者定义壁面的单位法向向量,所指向的一侧是壁面的有效侧;

后者定义壁面上的任意一点。

normalnx,ny,nz

无限壁面单位法向向量的分量;

originx0,y0,z0

无限壁面上任意一点的坐标;

B.圆柱壁面(cylinder):

使用关键词typecylinder可以定义圆柱壁面,也可定义圆锥、圆台壁面等回旋壁面。

typecylinderkeyword…

end1x1,y1,z1

回旋面的第一个端点;

end2x2,y2,z2

回旋面的第二个端点;

radiusrl,ru

rl:

端点end1处的回旋半径;

ru:

端点end2处的回旋半径;

typecylinder的几点说明:

1)end1,end2至多只能缺省一个,缺省时对应的参数都为0;

2)rl和end1对应,ru和end2对应;

3)radius值决定了回旋壁面的类型:

i.rl=ru,对应圆柱壁面;

ii.rl=0.0,对应圆锥壁面;

iii.rl≠ru,对应圆台壁面;

例如:

Walltypecylinderend1000,end2001,radius0.5,0.5,id=1,kn=1e6,ks=1e6,fric=0.2;

生产半径为0.5的圆柱面;

Walltypecylinderend1000,end2001,radius0.0,0.5,id=1,kn=1e6,ks=1e6,fric=0.2;

生产地面半径为0.5的圆锥面;

Walltypecylinderend1000,end2001,radius0.2,0.5,id=1,kn=1e6,ks=1e6,fric=0.2;

生产上底面半径0.2,下底面半径为0.5的圆台面;

C.螺旋壁面(spiral):

使用关键词typespiral可以生产螺旋壁面。

typespiralkeyword…

螺旋面的第一个端点;

螺旋面的第二个端点;

radinrin

rin:

螺旋面的内径;

radoutrout

rout:

螺旋面的外径;

pitchpt

pt:

螺距。

螺纹的个数由end1,end2之间的距离除以pitch得到的整数决定。

如ed1-end2=10,pitch=3,则螺纹数等于3个。

Walltypespiralend1000,end21000,radius0.5,1.0,pitch=1,id=1,kn=1e6,ks=1e6,fric=0.2;

生产10个螺纹的螺旋面;

D.凸面多边形壁面(convexpolygons):

使用关键词face可以构造由若干有限平面(face)组成的有限壁面(wall),每个平面(face)必须是由一组按顺序连接的顶点(vertices)组成的多边形(polygon);

有限壁面的有效侧按右手法则确定,详见附录1。

facex1,y1,z1x2,y2,z2…xn,yn,zn

x1,y1,z1x2,y2,z2…xn,yn,zn为平面多边形的顶点坐标,它们的位置顺序代表着顶点的连接顺序,决定了有效侧的位置。

使用具有相同ID号的WALL命令,可以在已有壁面上增加若干多边形平面,如下列命令定义了一系列有限壁面:

wallid=1face(1,1,1)(1,0,1)(6,0,1)(6,1,1)

wallid=2face(6,0,1)(6,0,6)(6,1,6)(6,1,1)

wallid=3face(1,0,6)(1,1,6)(6,1,6)(6,0,6)

wallid=4face(1,1,1)(1,1,6)(1,0,6)(1,0,1)

wallid=5face(2,1,2)(5,1,2)(5,0,2)(2,0,2)

wallid=5face(5,0,2)(5,1,2)(5,1,5)(5,0,5)

wallid=5face(2,0,5)(5,0,5)(5,1,5)(2,1,5)

wallid=5face(2,1,2)(2,0,2)(2,0,5)(2,1,5)

wallid=9normal0,1,0origin3.5,0.0,3.5

wallid=10normal0,-1,0origin3.5,1.0,3.5

通过使用多个具有相同ID号(id=5)的WALL命令,定义了一个由4个平面构成的凸面多边形壁面,如下图所示。

图1face定义有限平面

警告:

PFC3D软件现阶段只能生成有效的凸壁面,即有效侧夹角大于180°

的两个连接面(如图1中的id=5壁面);

对于凹形几何结构,不能定义成一个壁面,必须通过连接不同的壁面得到。

E.WALL命令的其他关键词:

以下关键词用于设置壁面的属性,如刚度系数、摩擦系数、平移速度、旋转速度等。

关键词的可以在命令中的任意位置出现。

idid

指定壁面的ID号,必须是正整数。

如果不指定,则将选择比当前最大壁面id号大1的整数。

如果指定的id号已经存在,则对应壁面的属性将被修改,如增加1个平面,或修改刚度系数、摩擦系数等。

knkn

设定或修改壁面法向刚度系数(线性接触模型);

ksks

设定或修改壁面切向刚度系数(线性接触模型);

frictionf

设定或修改壁面摩擦系数;

xx

设定转动中心(x坐标);

yy

设定转动中心(y坐标);

zz

设定转动中心(z坐标);

xspinxs

设定绕转动中心的转动速度(x分量)[单位:

弧度/秒];

yspinys

设定绕转动中心的转动速度(y分量)[单位:

zspinzs

设定绕转动中心的转动速度(z分量)[单位:

xvelocityxv

设定平移速度(x分量);

yvelocityyv

设定平移速度(y分量);

zvelocityzv

设定平移速度(z分量);

BALLradr<

生成半径为r的单个颗粒,可选择的关键词有:

hertz启用Hertz接触模型,若不是用该可选关键词,则模型默认使用线性接触模型

设置颗粒的ID号。

每个颗粒的ID号应为独一的正整数,如果模型内有相同的ID号,则软件会报错。

如果用户不设置颗粒ID号,软件将自动指定比当前模型内最大ID号大1的号码。

xx

球心的x坐标

yy

球心的y坐标

zz

球心的z坐标

GENERATE<

xxlxuyylyuzzlzuradiusrlruidiliu<

annulusxcyczcr1r2>

以下关键词可用于修改该命令的功能:

no_shadow禁止在非阴影区内生成颗粒(见附录二);

默认情况下,颗粒会在壁面的有效侧与非有效侧生成。

triestmax

PFC3D默认尝试20,000次,以将指定数量的待生成颗粒置于指定空间。

该命令将尝试的次数设为tmax次,需注意的是,这个值只对当前Generate命令有效,并不是将模型内所有Generate命令的尝试次数都设为tmax。

filterfname

使用用户自定义的颗粒生成过滤器(user-definedgenerationfilter)。

在生成每个球的每一次尝试中,名为fname的FISH函数被调用,详见说明9和附录4。

gauss颗粒半径服从高斯概率分布,而不是默认的均匀概率分布。

此时,平均半径为(rl+ru)/2,标准偏差为(ru-rl)/2;

其中rl,ru为关键词radius定义的参数。

hertz新生颗粒使用Hertz接触模型。

若无该关键词,则使用默认的线性接触模型。

local该关键词只在并行计算过程起作用,用于强制性地只在本地处理器上生成颗粒,而不在处理器之间共享信息。

minrmin

该关键词只在使用了gauss关键词的情况下起作用,用于将高斯概率分布中的最小球半径设为rmin。

默认情况下,高斯概率分布中的最小球半径为rl/10。

1.BALL和GENERATE是用于生成新球的两个命令,他们之间有很大区别:

a)BALL是在用户指定的一个特定位置,生成一个新球;

新球的生成不受已有球的影响,允许与其他球有任意大的重叠;

由于球之间允许重叠,当循环计算开始时,球之间会突然产生大小相应于重叠量的作用力;

b)GENERATE是在用户指定的一个空间区域内,生成指定数量的新球;

新球的生成受已有球的影响,因为球与球之间不允许有重叠;

因此用GENERATE命令能否在指定空间生成指定数量的球,还取决于空间是否足够大,或生成球过程中的尝试次数(tries)是否足够多等;

c)BALL命令一般用于生成规则排列球组(Regularparticleassembly),GENERATE用于生成非规则排列球组(Irregularparticleassemble);

2.Generate命令必须指定球的生成空间范围、半径大小分布形式和ID号范围(确定球的数量)。

球的位置与半径随机选择,因此最终生成的颗粒组的状态(位置和大小)受随机数发生器(Randomnumbergenerator)的影响。

SETrandom命令用于设置随机数发生器的状态,详见脚注1;

3.关键词xxlxuyylyuzzlzu用于定义指定空间,新生球的质心x,y,z坐标值分别处于区间[xl,xu],[yl,yu]和[zl,zu]之内。

若使用可选关键词annulus,则颗粒的生成空间为一球环形空间,其球心为(xc,yc,zc),内外球径分别为r1,r2;

此时定义方形空间的x,y,z关键词可以省略,否则,指定的空间为annulus定义的球环形空间与x,y,z定义的方形空间的交集;

X,y,z与annulus等关键词只能定义简单的方形与球环形空间,而实际问题大多数涉及较复杂的空间。

此时最有效的方法是使用用户自定义FISH函数进一步限制球的生成空间,见关键词filter的说明;

4.球径大小由关键词radius定义,默认情况下,球径大小在区间[rl,ru]之内,且服从均匀概率分布(uniformdistribution),也可使用关键词gauss指定球径大小服从高斯概率分布;

5.关键词idiliu指定了需要生成多少数量的球。

生成球的总数量为iu-il+1,其中iu,il为球ID号的最大值与最小值;

6.Generate生成球时,新球与已有球之间不允许相互重叠,因此,当没有足够的空间(或尝试的次数不足,见关键词tries)生成所有指定数量的球时,将生成少于所需数量的球。

软件默认这种情况为发生错误,不过也可以使用SETgen_error命令将这种情况当作警告处理(软件提示警告信息,但是指令处理过程继续进行);

颗粒生成以后,紧随其后应使用PROPERTY命令设置球的属性参数,包括法向刚度、切向刚度、局部阻尼、密度、摩擦系数,Hertz模型下的弹性模量、泊松比等。

7.triestmax的说明:

Generate命令生成的球与球之间不允许重叠,用Generate命令生成新球的过程是不断尝试的过程;

每次尝试先按指定的分布形式确定球径大小,并随机(伪随机)确定一个球心位置,再检测该位置周围是否有足够空间生成该球;

若空间足够,新球生成,否则进行下一次尝试。

软件默认尝试20,000次,当所需新生球数量较多时,必须使用triestmax命令,设置更大的尝试次数,否则即使有足够的空间,也不能生成所需数量的球。

8.filterfname:

该关键词的作用是引用用户自定义颗粒生成过滤器(generationfilter),fname是用户自定义FISH函数名,生成每个试产球(trialball)时都将被调用。

在函数fname里,试产球的半径通过fc_arg(0)传递,位置坐标的x,y,z分量分别通过fc_arg

(1),fc_arg

(2),fc_arg(3)传递。

要使试产球被接受(即其符合过滤条件),函数中fname的值设为0,否则fname的值设为1。

关于filterfname的更详细说,见附录4。

DELETEkeyword…

删除球(balls)、块(clumps)、历史(histories)或壁面(walls)等,命令的形式取决于要删除的对象。

相关关键词及其参数如下:

balls<

id>

<

range…>

删除球。

如果指定id号,仅删除对应的1个球;

如果指定一个范围(range),则处于该范围内的球(即质心处于该范围之内的球)都将被删除;

如果既不指定id号,也不指定范围,则模型中的所有球都将被删除。

利用FISH函数,我们能更灵活地按照所希望的方式删除一些对象,比如删除一些超出指定范围的球。

User’sGuide中的例3.21介绍了每经100个循环,删除位置低于某一高度的球。

关于FISH语言,将在另一部分给予介绍。

Example3.21FISHfunctiontodeleteescapingparticles

;

fname:

zapballs.DAT

defremove_balls

while_stepping

y_del_count=y_del_count+1

ify_del_count>

100

y_del_count=0

bp=ball_head

loopwhilebp#null

next=b_next(bp)

ifb_y(bp)<

y_del

ii=b_delete(bp)

end_if

bp=next

end_loop

end

clumpid

删除ID为id的块,不可指定范围(range)参数。

删除块只是解散组成块体的球,并不删除这些球。

histories删除所有历史记录(historytraces)。

另外,也可以用HISTORYreset命令擦除所有历史记录的内容。

wallsid

删除ID号为id的壁面,不可指定范围(range)参数。

CLUMP<

idid>

keywords…<

创建ID号为id的新块,若指定的id已经存在,则其功能为修改ID为id的块体的属性。

……

JSET……

……

2.2模型修改命令:

FIXkeyword…<

固定某一范围(range)内球的指定速度自由度,若不指定范围(range),该命令将应用于模型中的所有球。

应当注意的是,固定的是“速度”而不是位移。

当速度的某一分量被固定时,其速度将保持当前值不变,即每个循环中运动方程不会更新速度分量。

速度值可使用PROPERTY命令设置。

以下关键词可使用:

x固定x方向线速度;

y固定y方向线速度;

z固定z方向线速度;

xspin固定x方向角速度;

yspin固定y方向角速度;

zspin固定z方向角速度;

例如,下列命令行将把ID为5的球的x方向线速度固定为1.5m/s。

fixxrangeid=5;

propertyxvel=1.5rangeid=5;

FREEkeyword…<

FREE是与FIX相反的命令,其功能是移除对某一范围(range)内的球在速度自由度上的固化,若不指定范围,该命令将应用于模型中的所有球。

当某速度分量自由化(befree)后,其大小变化将由每个循环过程的运动方程决定。

默认情况下,所有球的所有分量都是自由变化的。

以下关键可用于该命令:

x释放x方向线速度(freesx-velocity);

y释放y方向线速度;

z释放z方向线速度;

xspin释放x方向角速度;

yspin释放y方向角速度;

zspin释放z方向角速度;

PROPERTYkeyword<

addormultiply>

v<

gradientgxgygz>

<

keywordv…>

range…>

设置某范围(optionalrange)内已有球(balls)、接点(joints)、粘结(bonds)以及接触(contacts)的属性,包括球的物性、外加力和速度;

修改连接到某个接点的球的属性;

修改接触粘结和平行粘结的属性。

对于接触,PROPERTY只能修改用户自定义接触模型的接触属性。

若没有指定范围,则模型中所有有效对象的属性都将被修改。

命令CHANGE和INITIALIZE是PROPERTY的同义命令,具有相同的功能。

以下关键词可用于修改PROPERTY命令的功能:

addv

修改处于指定范围内的所有对象的参数值,使其在当前值的基础上加上设定值v得到新的值。

例如,给所有球的半径加0.1的命令是:

PROPERTYradiusadd0.1。

gradientgx,gy,gz

该关键词的作用是有梯度地设定参数值,

即将对象的的参数值设为:

这里关键词gradient应紧随v值之后设定,(x,y,z)为对象的位置坐标。

如果还使用了关键词multiply,则由gradient设定梯度(gx,gy,gz)也将用于乘数值的设定。

multiplyv

将指

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2