PFC3D建模流程和代码解释
更新时间:2023-03-08 07:52:34 阅读量: 综合文库 文档下载
- cc建模流程推荐度:
- 相关推荐
本示例表示生成球体在一定的空间内进行运动的部分代码以及代码表示意义。 新建一个PFC3D模型必要部分生成的整体日志。PFC3D建模需要的部分和代码解释
********************************************** * Logging started at 周三 八月 30 16:50:55 2017 * By pfc3d Version 5.00 Release 025 * *
* Job Title: Pandect example
********************************************** pfc3d>
pfc3d>; 3-设置模型名称,可有可无。 pfc3d>title 'Pandect example' pfc3d>
pfc3d>; 4-设定计算区域(必要条件) pfc3d>; Set the domain extent
pfc3d>domain extent -10.0 10.0 -20 20 ; domain当中有两个关键词是condition和extent,condition指的是边界条件 periodic ;destroy ;stop ;reflect;condition默认值是stop。
extent指的是模型区域 pfc3d>
pfc3d>; 5-指定随机种子(若不指定,种子随机) pfc3d>set random 10001;默认值是一万,且数量级是相同的数量级,也就是该随机数值10000不能过大,不能过小。设置随机种子以后,生成的颗粒的半径和位置都在范围内随机。 pfc3d>
pfc3d>; 6-生成及修改模型组件(必要条件),有三种命令是来生成颗粒的,generate,create,distribute。
pfc3d>; Generate 30 balls in a box,wall就是一个生成颗粒的容器。 pfc3d>wall generate box -5.0 5.0
--- The wall boxWallBottom1 with id 1 and 2 facets has been created --- The wall boxWallTop2 with id 2 and 2 facets has been created --- The wall boxWallLeft3 with id 3 and 2 facets has been created --- The wall boxWallRight4 with id 4 and 2 facets has been created --- The wall boxWallFront5 with id 5 and 2 facets has been created --- The wall boxWallBack6 with id 6 and 2 facets has been created pfc3d>;ball create
pfc3d>ball generate radius 1.0 1.4 box -5.0 5.0 number 1000 +++ Fewer balls were generated than specified! 34 balls out of 1000 generated in 20000 tries. pfc3d>;ball distribute pfc3d>
pfc3d>; 7-组件分组,颗粒分组,墙体分组。 pfc3d>
pfc3d>ball group small_balls range radius 1.0 1.2
--- Group small_balls assigned to 14 Balls in slot 1. pfc3d>ball group big_balls range radius 1.2 1.4 --- Group big_balls assigned to 20 Balls in slot 1. pfc3d>
pfc3d>; 8-施加实体属性(必要条件),实体属性的意思是这些属性是作用在颗粒的中心的。 pfc3d>; Assign ball density,颗粒的实体属性一般都是由attribute这个属性来添加。fix是来限制颗粒的移动方向和位移。 pfc3d>ball attribute density 100.0
--- Attribute density initialized in 34 ball(s). pfc3d>ball fix zvelocity range group big_balls --- Fixity conditions changed in 20 balls. pfc3d>
pfc3d>pause key
Press any key to continue --
pfc3d>
pfc3d>ball attribute radius multiply 1.2;这是半径放大和缩小倍数的,这句话的意思是,生成的半径乘以1.2倍。
--- Attribute radius initialized in 34 ball(s).
pfc3d>ball attribute damp 0.7; 局部阻尼,PFC3.0-4.0默认值是0.7,在PFC5.0是0.0 --- Attribute damp initialized in 34 ball(s). pfc3d>
pfc3d>pause key
Press any key to continue --
pfc3d>
pfc3d>; 9-指定接触模型(必要条件)
pfc3d>; Modify the default slots of the Contact Model Assignment Table
pfc3d>; Here we choose the linear contact model (with kn=1e6) for all contact types
pfc3d>cmat default model linear property kn 1.0e6 fric 0.0;定义法向刚度为10的6次方。 pfc3d>
pfc3d>; 10-设置表面属性,也就是说这些属性是作用在颗粒表面的。
pfc3d>ball property kn 2e6 ks 1e6 fric 0.0;要通过属性转换才能转到50行的fric --- Property kn assigned to 34 ball(s) in range. --- Property ks assigned to 34 ball(s) in range. --- Property fric assigned to 34 ball(s) in range. pfc3d>
pfc3d>; 11-添加重力场 pfc3d>; Activate gravity pfc3d>set gravity 10.0 pfc3d>
pfc3d>; 12-设定时间步长(若不指定,取默认值,默认值为模拟时间步长) pfc3d>set timestep maximum 5e-3
--- maximum timestep set to 0.005 in mechanical process.
pfc3d>
pfc3d>def timestep
Def> timestep = math.sqrt(m/K)
Def> time = mech.age;得到模拟时间从而设置时间步长的时候要将时间步长设置的小于该模拟时间,否则该设置的时间步长将会被忽略。 Def>end pfc3d>
pfc3d>; 13-记录数据
pfc3d>wall history id 1 zcontactforce id 1 --- Created history 1 Z-ContactForce of wall 1 pfc3d>
pfc3d>pause 5;现在是数字,指的是暂停五秒,如果是pause key的话,则是摁任意键继续。 pfc3d>
pfc3d>; 14-计算求解(必要条件)主要是三个命令,step,cycle,solve time。 pfc3d>; Solve for a given time and save the model
pfc3d>;step 1000,step很少用,几乎用不到。step和cycle后面都是跟的步数。 pfc3d>;cycle 2002 pfc3d>solve time 10.0
Cycle Total Timestep Mech Time Clock --------- ---------- ----------- ------------ -----------
2000 2000 5.00000E-03 1.000000e+01 00:00:00:24 1.000000e+01
--- Limit time of 1.000000e+01 met in process(es): mech Ball (1.000000e+01),mech Clump (1.000000e+01),mech Wall (1.000000e+01). --- Cycling ended at: 2017-08-30 16:51:36 pfc3d>
pfc3d>; 15-输出数据
pfc3d>history write 1 file wzcforce ;.csv,如果不加扩展名默认的扩展名是.his,his文件可以用文本打开。
--- History contents written to file D:/安装程序/PFC/PFC学习版2d+3d+例子/01-模型基本组成/PFC5.0-3D/wzcforce.his. pfc3d>
pfc3d>; 16-保存模型及模型调用,保存模型是以.p3sav为扩展名的一个文件。通过restore来调用模型。
pfc3d>save pandect_example
--- Model saved to file D:/安装程序/PFC/PFC学习版2d+3d+例子/01-模型基本组成/PFC5.0-3D/pandect_example.p3sav pfc3d>
pfc3d>;pause
pfc3d>;cmat命令一个模型当中前后计算设置不同的接触最好不要。
pfc3d>;ball attribute displacement multiply 0.0,清空颗粒的位移。清空以后都是0. pfc3d>
pfc3d>set log off
**********************************************
* Logging ended at 周三 八月 30 16:51:37 2017
**********************************************
建模部分代码-建立尾矿坝的一部分
new
domain extent -50 350 -50 350
ball distribute porosity 0.06 radius 0.5 0.75 box 0 300 0 200 ball attribute density 2500 damp 0.7 geometry import 01.dxf
ball del rang geometry 01 count 1 not wall import geometry 01 geometry import 02.dxf wall import geometry 02 [porosity=0.04] [area=7948]
set random 10001 def ball_creat i=50000
a=area*(1-porosity) loop while area_sum<=a f1 = math.random.uniform f2 = math.random.uniform f3 = math.random.uniform radius_1=0.75+f3*(2-0.75) x_1=2+80*f1 y_1=2+42*f2 command
ball create id=@i radius=@radius_1 x=@x_1 y=@y_1 endcommand i=i+1
area_1=radius_1*radius_1*math.pi area_sum=area_sum+area_1 end_loop end
@ball_creat
ball attribute density 2700
cmat default type ball-facet model linear property kn 1e10
cmat default type ball-ball model linearpbond method deform emod 2e8 kratio 2 cyc 100000 calm 1000 wall del
geometry del
geometry import 02.dxf geometry import 05.dxf geometry import 06.dxf
ball group 1 rang geometry 02 count 1
ball group 2 rang geometry 05 count 1 ball group 3 rang geometry 06 count 1 save model
接触模型的部分代码书写
例子一
; fname: cmat1.p2dat ;
; Illustrate simple usage of the CMAT
; (All default slots filled with the same data)
;============================================================================== new
set random 10001
domain extent -1.5e-2 1.5e-2 condition destroy;定义该计算区域 wall generate box -1.0e-2 1.0e-2 onewall;生成墙体
ball generate number 200 radius 0.4e-3 0.6e-3 box -1.0e-2 1.0e-2 ;生成了200个颗粒,也可能生成不了那么多的颗粒,半径为0.4*10的-3次方,0.6*10的-3次方,颗粒范围为-1.0*10的-2次方即为-0.01,0.01
ball attribute density 2500.0;设置密度为2500
; set ALL the default slots of the CMAT
cmat default model linear property kn 1e6 dp_nratio 0.0;指定了接触模型为线性接触模型,法向刚度为10的6次方,法向临界阻尼比为0.0
set gravity 9.81;设置了重力加速度为9.81 cycle 1000
pause key
; set ALL the default slots of the CMAT
cmat default model linear property kn 1e7 dp_nratio 0.2 lin_mode 1;指定了接触模型为线性接触模型,法向刚度为10的7次方,法向临界阻尼比为0.2,控制接触力的法向接触更新模式为1.
cmat apply range x 0.0 1.5e-2;接触模型的应用范围为x方向0.0到0.015,cmat apply指的是将新建的模型添加在已有的模型上。
solve aratio 1e-4;solve aratio等于平均不平衡力与平均接触力的比值,默认值是10的-5次方。但是不能太小,因为太小了以后会造成模型完成时间过长。用step和cycle也是可以求解的。 save cmat1;保存接触模型为1.
return
;============================================================================== ; eof: cmat1.p2dat 例子二
; fname: cmat2.p2dat ;
; Illustrate simple usage of the CMAT
; (Default slots filled with the different data)
;============================================================================== new
set random 10001
domain extent -1.5e-2 1.5e-2 condition destroy wall generate box -1.0e-2 1.0e-2 onewall
ball generate number 200 radius 0.4e-3 0.6e-3 box -1.0e-2 1.0e-2
ball attribute density 2500.0;生成了和cmat1一样的模型,只是在接触模型上有了变化。
; set different contact models for the ball-ball and ball-facet contact types cmat default type ball-ball ...
model hertz ...;赫兹接触模型,颗粒与颗粒之间
property hz_shear 30e9 hz_poiss 0.3 ...;赫兹切向模量30的9次方,赫兹泊松比为0.3
fric 0.25 ...;摩擦系数0.25 dp_nratio 0.2;法向临界阻尼比为0.2
cmat default type ball-facet ... model linear ...
property kn 1e6 dp_nratio 0.2
set gravity 9.81 solve
save cmat2
return;对两种接触模型分别定义
;============================================================================== ; eof: cmat2.p2dat 例子三
; fname: cmat3.p2dat ;
; Illustrate advanced usage of the CMAT
; (Default and Optional slots filled with different data)
;============================================================================== new
set random 10001
domain extent -1.5e-2 1.5e-2 condition destroy;生成了两组颗粒,在ball generate当中用了
group命令
wall generate box -1.0e-2 1.0e-2 onewall
ball generate number 100 radius 0.4e-3 0.6e-3 box -1.0e-2 1.0e-2 group glass ;玻璃球 ball generate number 100 radius 0.4e-3 0.6e-3 box -1.0e-2 1.0e-2 group steel ;钢球
ball attribute density 2500.0 range group glass;定义密度 ball attribute density 7500.0 range group steel
;contact group left range x -1.5e-2 0 ;contact group right range x 0 1.5e-2
contact groupbehavior and ;contact groupbehavior后面有三个关键词,and,or ,contact。and关键词指的是颗粒与颗粒之间的接触是cmat add 定义的模型作用的范围只限于该组内部的接触,而对于另外组的接触则不定义。如果说是选的关键词是or定义的范围只要颗粒属于这个组,则定义的模型范围是所有与这个组相接触。contact关键词是用来根据颗粒的分组来判断接触的。通过对接触分组来对某个范围内的颗粒定义接触。
;不论cmat add 1 model hertz ,cmat add 2 model hertz ,cmat default type ball-ball,cmat default type ball-facet 这四个的顺序怎么样,总是按照这个顺序来执行 cmat add 1 model hertz ...
property hz_shear 30e9 hz_poiss 0.3 ...;30Gpa的切向模量,0.3的泊松比 fric 0.25 ...;0.25的摩擦系数
dp_nratio 0.2 ...;0.2的法向临界阻尼比 range group glass;区域范围为玻璃球组合
cmat add 2 model hertz ...;添加赫兹模型2 property hz_shear 70e9 hz_poiss 0.3 ... fric 0.05 ... dp_nratio 0.2 ... range group steel;区域范围为钢球组合
cmat default type ball-ball ...
model hertz ... property hz_shear 50e9 hz_poiss 0.3 ... fric 0.05 ... dp_nratio 0.2
cmat default type ball-facet ... model linear ... property kn 1e6 dp_nratio 0.2
set gravity 9.81 solve
save cmat3
return
;============================================================================== ; eof: cmat3.p2dat
正在阅读:
PFC3D建模流程和代码解释03-08
【推荐信】_2022年推荐信范文大全08-01
中考物理09-24
电力工程论文电力工程管理论文:国际电力工程项目管理研究05-14
中兴交换机802配置参考03-08
安全工作个人总结最新_幼儿园安全工作总结(合集五篇)08-23
边坡治理施工方案10-18
非线性语综学科融合互惠式教学研究03-08
科学课教学工作总结05-18
办证注意事项05-27
- 计算机试题
- 【2012天津卷高考满分作文】鱼心人不知
- 教育心理学历年真题及答案--浙江教师资格考试
- 20180327-第六届“中金所杯”全国大学生金融知识大赛参考题库
- 洪林兴达煤矿2018年度水情水害预测预报
- 基本要道讲义
- 机电设备安装试运行异常现象分析与对策
- 《有机化学》复习资料-李月明
- 非常可乐非常MC2--非常可乐广告策划提案 - 图文
- 2011中考数学真题解析4 - 科学记数法(含答案)
- 企业人力资源管理师三级07- 09年真题及答案
- 基于单片机的光控自动窗帘控制系统设计说明书1 - 图文
- 20160802神华九江输煤皮带机安装方案001
- (共53套)新人教版一生物必修2(全册)教案汇总 word打印版
- 2014行政管理学总复习
- 中国银监会关于加强地方政府融资平台贷款风险监管的指导意见
- 民宿酒店核心竞争与研究
- 游园活动谜语大全2012
- 河南省天一大联考2016届高三英语5月阶段性测试试题(六)(A卷)
- 小型超市管理系统毕业论文详细设计4
- 建模
- 流程
- 解释
- 代码
- PFC3D
- 最新淘金币活动要求
- 四川省领导干部任职资格考试题库
- 2017年美国罗格斯大学工程学院申请之工业与系统工程
- 人生与人心 复旦陈果 超星尔雅答案
- 温电教200721号
- 三年制初中语文古诗词分册赏析试题河南朱晋
- 竣工环境保护验收监测程序 word版
- 西安交通大学18年9月课程考试《中央银行学》作业考核试题
- 浅析《围城》的文化批判
- The Delicate Art of the Forest 讲解
- 时代光华(12.17):压力管理试题及答案
- 2000年安徽造价定额解释
- 河北衡水中学2018届高三下-期初考试(3月)文综地理试卷含答案
- 预应力专项施工方案
- 探究绘本阅读活动中师幼互动的有效策略
- 基层武装工作存在的问题和解决方案
- word2003基础教程 - 图文
- 档案馆工作基础-第二讲
- 招商东岸一期设备用房施工方案
- 复旦大学附属儿科医院进修医生招录考核(内科)