版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,PFC及几种方法简介,201130410019,1,实操应用,一、PFC简介,1、pfc背景,PFC系列软件是由ITASCA咨询集团(设有ITASCA中国公司)开发的颗粒流分析程序(Partical Flow Code),分为PFC2D,PFC3D两种 特别用于模拟任意性状、大小的二维圆盘或三维球体集合体的运行及其相互作用的强大颗粒分析程序。除了模拟大体积流动和混合材料力学研究,程序更适合于描述在固体材料中细观/宏观裂纹扩展、破坏累积并断裂、破坏冲击和微震响应等高水平课题的深化研究。,2,实操应用,PFC中的颗粒为刚性体,但在力学关系上允许重叠,以模拟颗粒之间的接触力。颗粒之间的力学关系非常
2、简单,即牛顿第二定律。颗粒之间的接触破坏可以为剪切和张开两种形式,当介质中颗粒间的接触关系(如断开)发生变化时,介质的宏观力学特性受到影响,随着发生破坏的接触数量增多,介质宏观力学特性可以经历从峰前线性到峰后非线性的转化,即介质内颗粒接触状态的变化决定了介质的本构关系。因此,在PFC计算中不需要给材料定义宏观本构关系和对应的参数,这些传统的力学特性和参数通过程序自动获得,而定义它们的是颗粒和水泥的几何和力学参数,如颗粒级配、刚度、摩擦力、粘结介质强度等微力学参数。,3,实操应用,2、基本假设,1)颗粒单元为刚性体; 2)接触发生在很小的范围内,即点接触; 3)接触特性为柔性接触,接触处允许有一
3、定的“重叠”量; 4) “重叠”量的大小与接触力有关,与颗粒大小相比,“ 重叠”量很小; 5)接触处有特殊的连接强度; 6)颗粒单元为圆盘形(或球形)。,4,实操应用,3、优缺点,优点:第一、它有潜在的高效率。因为圆形物体间的接触探测比角状物体间的更简单。 第二、对可以模拟的位移大小实质上没有限制。 第三、由于它们是由粘结的粒子组成,块体可以破裂,不象UDEC和3DEC模拟的块体不能破裂。 缺点是:块体的边界不是平的,用户必须接受不平的边界以换取PFC2D提供的优点。,5,实操应用,4、求解步骤,1)定义模拟对象 根据模拟意图定义模型的详细程序,假如只对某一力学机制的不同解释作出判断时,可以建
4、立一个比较粗略的模型,只要在模型中能体现要解释的机制即可,对所模拟问题影响不大的特性可以忽略。 2)建立力学模型的基本概念 首先对分析对象在一定初始特性形成初步概念。为此,应先提出一些问题,如系统是否将变为,6,实操应用,不稳定系统、问题变形的大小、主要力学特性是否非线性、是否需要定义介质的不连续性、系统边界是实际边界还是无限边界、系统结构有无对称性等 3)构造并运行简化模型 在建立实际工程模型之前,先构造并运行一系列简化的测试模型,可以提高解题效率。通过这种前期简化模型的运行,可对力学系统的概念有更深入的了解,有时在分析简化模型的结果后(例如所选的接触类型是否有代表性、边界条件对模型结果的影
5、响程度等),还需将第二步加以修改,7,实操应用,4)补充模拟问题的数据资料 模拟实际工程问题需要大量简化模型运行的结果,对于地质力学来说包括: a)几何特性,如地下开挖酮室的形状、地形地貌、坝体形状、岩土结构等; b)地质构造位置,如断层、节理、层面等; c)材料特性,如弹/塑性、后破坏特性等; d)初始条件,如原位应力状态、孔隙压力、饱和度等; e)外荷载,如冲击荷载、开挖应力等。,8,实操应用,5)模拟运行的进一步准备 a)合理确定每一时步所需时间,若运行时间过长,很难得到有意义的结论,所以应该考虑在多台计算机上同时运行。 b)模型的运行状态应及时保存,以便在后续运行中调用其结果。例如如果
6、分析中有多次加卸荷过程,要能方便地退回到每一过程,并改变参数后可以继续运行。 c)在程序中应设有足够的监控点(如参数变化 处、不平衡等),对中间模拟结果随时作出比较分析,并分析颗粒流动状态。,9,实操应用,6)运行计算模型 在模型正式运行之前先运行一些检验模型,然后暂停,根据一些特性参数的试验或理论计算结果来检查模拟结果是否合理,当确定模型运行正确无误时,连接所有的数据文件进行计算。 7)解释结果 计算结果与实测结果进行分析比较。图形应集中反应要分析的区域如应力集中区,各种计算结果应能方便地输出分析。,10,实操应用,二、 PFC2D计算模型的几种生成方法,1、有两个命令可用于生成颗粒流模型:
7、BALL和GENER-ATE,其中,BALL命令是生成单个的颗粒,该命令生成的颗粒可与已存在的颗粒重叠,而GENERATE 可生成一系列指定数目的颗粒流,该命令生成的颗粒是不允许重叠的。PFC2D里主要有两种类型的颗粒流:规则排列的和无规则排列的。 尽管颗粒的排列是随机的,但在颗粒模型生成后,整个模型的结构特性还是可能会受影响的,比如弱的结构面或各向异性。对于无规律排列的颗粒流模型,一般不可能去描述它的初始接触力的量级大小,这必须在后期要经过一个压缩的过程才可能给予较好的评价。,11,实操应用,1.1规律排列颗粒流,New def hex xc = x0 yc = y0 rc = radius
8、 idc = id_start r2 = 2.0 * radius yinc = radius * sqrt(3.0) loop row (1,n_row) loop col (1,n_col) command ball id=idc x=xc y=yc rad=rc end_command idc = idc + 1 xc = xc + r2 end_loop yc = yc + yinc xc = x0 + radius * (row - (row/2) * 2),end_loop end set echo off set x0=0.2 y0=0.4 radius=0.1 set id_s
9、tart=100 n_col=7 n_row=8 hex set echo on plot set cap size 20 plot add axes black plot add ball yellow plot show,12,实操应用,13,实操应用,1.2不规则排列 无规则排列,即:对一个给定空隙率的区域,采用颗粒来充填其中需要进行填充的空隙,并确保整个模型保持平衡。对于所能被填充的模型的初始空隙率,是有一个限制值,不能任意小。对于某些空隙率的模型,颗粒的填充可以无接触地排列,对于其它情况的空隙率,颗粒又可以重叠排列。 第一种方法,首先建立封闭区域的边界(简称墙体),然后在封闭区域内任
10、意生成一系列无接触的颗粒,最后移动区域的限制墙体,至所需要的空隙率。这种方法有三个缺点:1.区域的几何形状改变;2.收敛速度慢;3.最终的分布趋势是不均匀的,14,实操应用,第二种方法:运用GENERATE命令生成颗粒体,同时配合关键词高斯分配,即指定颗粒体半径的上下限,然后相应分配一个标准差,同时配合FISH函数来选择颗粒半径,最终生成我们所需要的模型。,半径扩展法,15,实操应用,new def expand ;- 输入数据 - n_stiff = 1e8 ; 法向连接刚度 s_stiff = 1e8 ; 剪切连接刚度 width = 10.0 ; 区域宽 height = 5.0 ; 区
11、域高 tot_vol = width*height poros = 0.12 ; 最终目标空隙率 num = 300 ; 颗粒体数目 rat = 1.5 ; 最大最小半径比 ;- 导出所需数据 - mult = 1.6 ; 初始半径放大系数 n0 = 1.0 - (1.0 - poros) / mult2 r0 = sqrt(height*width*(1.0 - n0)/(pi*num) rlo = 2.0 * r0 / (1.0 + rat) rhi = rat * rlo _x1 = width*(1.0 + extend) _y1 = 0.0,16,实操应用,command wall
12、id=1 ks=s_stiff kn=n_stiff nodes (_x0,_y0) (_x1,_y1) end_command _x0 = width _y0 = -extend*height _x1 = width _y1 = height*(1.0 + extend) command wall id=2 ks=s_stiff kn=n_stiff nodes (_x0,_y0) (_x1,_y1) end_command _x0 = width*(1.0 + extend) _y0 = height _x1 = -extend*width _y1 = height command wal
13、l id=3 ks=s_stiff kn=n_stiff nodes (_x0,_y0) (_x1,_y1) end_command _x0 = 0.0 _y0 = height*(1.0 + extend) _x1 = 0.0 _y1 = -extend*height,17,实操应用,command wall id=4 ks=s_stiff kn=n_stiff nodes (_x0,_y0) (_x1,_y1) end_command ;- generate the balls and give them their properties command gen id=1,num rad=
14、rlo,rhi x=0,width y=0,height prop dens=1000 ks=s_stiff kn=n_stiff end_command get_poros mult = sqrt(1.0 - poros) / (1.0 - pmeas) command ini rad mul mult cycle 1000 prop fric 0.2 cycle 2000 end_command end def get_poros sum = 0.0 bp = ball_head loop while bp # null,18,实操应用,sum = sum + pi * b_rad(bp)
15、2 bp = b_next(bp) end_loop pmeas = 1.0 - sum / (width * height) end expand get_poros plot wall ball plot show print pmeas save expand.SAV,19,实操应用,20,实操应用,挤压排斥法 指定颗粒体的半径,不限制颗粒的数目,使足够多的颗粒产生来达到所需要的空隙率。但这种方法所 带来的缺点是可能在局部区域造成大面积的颗粒重叠,这将会产生很大的挤压力,从而给予颗粒较大的初始速度,这就可能使得颗粒体脱离墙体的限制。为避免此情况的发生,可通过初始的有限步循环计算将颗粒的动
16、能减至零,然后再计算至平衡态。,21,实操应用,new set random ; 设定颗粒体数目无限制模式 def explode n_stiff = 1e8 s_stiff = 1e8 width = 10.0 height = 5.0 poros = 0.12 n_max = 1000 rlo = 0.174 rhi = 0.261 command wall id 1 ks=s_stiff kn=n_stiff nodes (0,0) (width,0) wall id 2 ks=s_stiff kn=n_stiff nodes (width,0) (width,height) wall
17、id 3 ks=s_stiff kn=n_stiff nodes (width, height) (0,height) wall id 4 ks=s_stiff kn=n_stiff nodes (0,height) (0,0) end_command pvol_sum = 0.0 tot_vol = width * height count = 0,22,实操应用,section loop n (1,n_max) r_ball = rlo + urand * (rhi - rlo) pvol_new = pvol_sum + pi * r_ball2 if (1.0 - pvol_new /
18、 tot_vol) poros then exit section ; (new porosity will be that specified) end_if rb2 = r_ball * 2.0 x_ball = r_ball + urand * (width - rb2) y_ball = r_ball + urand * (height - rb2) command ball x=x_ball y=y_ball rad=r_ball end_command pvol_sum = pvol_new count = count + 1 end_loop end_section tot_po
19、ros = 1.0 - pvol_sum / tot_vol command prop dens=1000.0 ks=s_stiff kn=n_stiff end_command ii = out( +string(count)+ balls were created.) end,23,实操应用,def quiet loop n (1,4) command cycle 5 ini xvel 0 yvel 0 end_command end_loop end explode quiet cyc 980 prop fric=0.2 cyc 250 plot wall ball print tot_
20、poros save explode.SAV,24,实操应用,25,实操应用,三、边界条件,PFC2D中有三种边界条件,分别是:墙体边界、颗粒体边界和混合边界。其中颗粒体边界又分为速度边界和受力边界。 1).墙体边界 建模过程中,墙体可作为颗粒体的生成范围约束,但同时也可以将墙体作为边界来施加约束。对于墙体,我们只能施加速度约束,而不能直接对其施加外力,因为运动定律对墙体是不适用的。其速度由以下三个参数控制:线速度、角速度和旋转中心。墙的运动是通过不断更新定义墙的基点的位置来描述。采用WALL命令设置,如: wall id=1 x=1.0 y=1.0 spin=10.0,26,实操应用,(2)
21、颗粒体边界 PFC2D中的模型可以将一连串的颗粒体作为边界条件。基本方法:在模型紧密压缩至平衡后,我们通过FISH函数将与墙体相接触的颗粒体逐个提取,将这一系列的颗粒体采用共同的边界条件限制,最后删除初始的限制墙体,即实现了以颗粒体代替墙体来作为边界条件。,27,实操应用,颗粒体外力边界,其前期操作与速度边界类似,差异处是先将边界颗粒体的速度初始化为零,再删除限制墙体,采用FISH函数反向施加颗粒体所受的不平衡力,运行一定的计算步至平衡态。在此过程中,区域内部的颗粒体会因轻微的扰动而导致其自身产生运动而脱离边界颗粒体,此时前面将边界颗粒体的速度固定为零。,28,实操应用,混合边界条件,混合边界
22、即速度边界与外力边界同时存在,对于双轴压缩试验,其两侧端面不允许存在明显的几何变形,否则其边界力将会无效。因此,此时需要用到混合边界,两侧端面采用外力边界来约束,确保其不发生几何变形,侧面Y向采用速度边界,使其速度线性增加,以此来模拟试块轴向变形。,29,实操应用,四、本构模型,在PFC2D中,材料的本构特性是通过接触本构模型来模拟的。每一颗粒的接触本构模型有:1)接触刚度模型;2)滑动模型;3)连接模型。 接触刚度模型提供了接触力和相对位移的弹性关系,滑动模型则强调切向和法向接触力使得接触颗粒可以发生相对移动,而连接模型是限制总的切向和法向力使得在连接强度范围内发生接触。,30,实操应用,五
23、、赋予材料属性,PFC2D程序里,除了颗粒体联结相关的属性(联结刚度、强度以及平行联结半径)外,其它颗粒体的属性赋予均采用PROPERTY 命令来执行。 同时,在执行命令时,对与不同区域不同位置的颗粒体,其属性的变化可通过关键词 gradient和group来配合使用,达到我们所需设置的要求和变化。,31,实操应用,六、节理面的生成及属性设置,PFC2D中,节理面可以用来模拟颗粒组间的滑移和分离,还可以模拟节理、断层和层理等,同时还能来模拟两种不同材料间的接触面,如基础和土体。 我们采用JSET命令来设置,可生成单独的一条或一组节理面。但只有存在法向力的颗粒间的接触,才能被设置为节理面接触,因此,节理面命令必须在颗粒体模型生成后并达到平衡后才能执行。,如若生成一条45度角的单节理面,我们可以采用下面的命令: JSET id=1 dip=-45.0 origin=(0.0,2.0),32,实操应用,七、加载,PFC2D荷载中的类型一般分为两类:主动荷载和被动荷载。被动荷载如重力,采用SET GRAVITY 设置。主动荷载则包括施加颗粒体速度和外力。颗粒体可以直接施加速度和外力,但外力却不能直接施加在墙体上,因为运动方程对于墙体是无效的,但可以通过其他等效的方法来模拟墙体受集中力或应力。,33,实操应用,加载的操
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年社区更新完整社区项目实施方案编制要点
- 2026年校园安全监督培训
- 2026年消防指挥能力培训
- 污染治理专项2026年中央预算内投资项目申报指南
- 外墙保温施工技术要点
- 所有权的内容和保护
- 2026年隧道避让安全培训
- 2026年实验室紧急疏散培训
- 2026年商场应急安全知识培训
- 某家电企业生产安全制度
- 河南12系列建筑设计图集一(12YJ1)
- 企业员工集体上访事件应急预案
- (excel版)高中3500个英语单词表(带音标)乱序
- 会阴及会阴伤口的护理
- DL-T5709-2014配电自动化规划设计导则
- T∕CACM 1021.58-2018 中药材商品规格等级 鹿茸
- 开荒保洁物业管理前期管理及开荒保洁计划
- 《关于大众传媒》课件
- 《东北三省》白山黑水
- 建筑施工企业管理人员、从业人员安全生产责任书(参考范本2023年版)
- Bankart损伤与Hill-Sachs损伤影像诊断
评论
0/150
提交评论