PFC3d手册命令中文详解72253
PFC3D中文讲解-推荐下载
wall id=5 kn=1e8 ks=1e8 wall id=6 kn=1e8 ks=1e8
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)
每个命令的作用),以下是程序代码。
;fname: footing.DAT (tutorial example for PFC3D)
new
; clear program state to begin new problem
set random ; reset random-number generator
其中 kn 表示法向刚度,ks 表示切向刚度,单位为 N/m 5、定义球的密度,法向刚度和切向刚度 prop density 2000 kn 1e8 ks 1e8 使用命令 property,可简写为 prop,定义密度 density 为 2000kg/m3,法向刚 度和切向刚度均为 108N/m 6、改变小球半径 ini rad mul 1.47 ini 应该是 initial 的简写,用于初始化小球半径(有待考证) rad 表示半径 mul 是 multiply 的简写,是倍数的意思。 1.47 是倍数因子,表示现在半径是原来半径的 1.47 倍。 7、设定监测变量和采样间隔时间 set hist_rep=5 hist ball zvel 3 1 0 hist diagnostic muf hist 是 history 历史记录是简写,set hist_rep=5 表示每隔 5 个运算步记录一 次变量的值(默认的是 10 个运算步记录一次);本程序设定了两个监测对象, 一个是 hist ball zvel 3 1 0,表示的是中心坐标最接近 x=3,y=1,z=0 的球的 z 方向的速度被监测和记录(在这个例子中,282 号球最接近这个坐标,因此作 为监测球);另一个是 hist diagnostic muf,是用来监测系统的不平衡力,主要用 于静力学分析,当这个值趋于很小时,表示系统达到稳定状态。 8、设定求解选项 set dt dscale 因为这是一个静态分析,因此我们开启 density-scaling 选项(简写为 dscale)来优化求解效率,dt 应该是这个选项中的某个模式(有待考证)。 9、设定求解步数 cycle 3000 当写入这句程序后,计算就开始了,计算的步数,时间步,总时间,不平 衡力平均值和最大不平衡力这些信息均显示在屏幕上,并且每隔 5 个计算步更 新一次(这是 set hist_rep=5 的作用),图像动画每隔 20 个计算步更新一次(默 认),这个更新时间可用命令 set pinterval 来改变。 另外,阻尼已经在运动方程中被默认设定,用于吸收振动能量,更快地达 到平衡状态。 10、查看结果 求解完毕后,用户可输入命令 plot his 1 来查看历史记录中第一个变量的数 值曲线。
PFC3D基础说明
PFC3D命令说明(COMMON COMMAND REFERENCE)PFC3D是基于命令驱动模式(COMMAND-DRIVEN FORMAT)的软件,各种命令控制着程序的运行,这部分内容将介绍PFC3D软件的内嵌命令。
本说明文件译自PFC3D软件2.0版使用手册中的COMMAND REFERENCE部分,并补充了一些手册中没有的命令(如设置粘性阻尼、生成圆柱、螺旋壁面等,这些命令在更高版本的手册中有说明)。
命令说明的顺序没有采用原手册中按字母排序的方式,而是根据创建PFC3D 模型解决实际物理问题的一般过程,对相关命令加以说明。
PFC3D手册中COMMON COMMAND REFERENCE只对每个命令的格式和基本功能做了简单介绍,本说明文件对每个命令做了更详细的解释,为保持文件的可读性,对命令的详细解释都以附录形式给出。
本文件介绍了PFC3D的基本功能,对初学者有较大帮助,但要进行高级应用,还需清楚了解DEM和PFC3D相关功能的基本原理以及软件的结构等。
由于只关注使用PFC3D解决颗粒流的问题,涉及颗粒流的命令介绍的比较详细,而用于岩土工程等其他领域的命令,由于关注很少且专业知识缺乏,只是不求甚解。
0.关于命令格式的说明:PFC3D中每个命令基本包含3部分:命令名、必需关键词和可选关键词。
本说明文件中,命令名和必需关键词写在第一行,尖括号<Keyword…>表示该命令具有可选关键词,罗列于命令名的下一行次级列;带参数的关键词,参数紧随关键词之后用加粗斜体表示。
名字较长的“命令”和“关键词”,PFC3D允许不写出全部字母,只需简写前面的一些字母,最短可简写名(即PFC3D能识别的最短简写“命令”和“关键词”名)用加粗字体表示。
例如命令:BALL rad r<keyword…>…hert z …id idx xy yz z说明:命令名为BALL的命令,具有必需关键词rad(参数r)和hert z、id、x、y、z等可选关键词。
PFC3D操作指导
PFC3D操作指导与flac3d的2.0和2.1版本相比,flac3d3.0有哪些新功能?答:在计算方面:1.所有的计算和数据均采用双精度浮点制。
2.其运行速度较2.1约快10-15%功能方面:1.动力模块中增加了hysteretic阻尼在动力学计算中,增加了一个新的阻尼特性:超圆柱阻尼。
有了这种形式的阻尼,数值模拟产生的应变可以基于模型模量和阻尼函数的共同作用。
这允许用户将等效线性计算方法的结果与完全非线性非简化本构模型的结果进行比较。
另外,对一些其它形式的阻尼,如rayleigh阻尼,进行了较大的折减,这样在使用hysteretic阻尼时可以有效地节省计算时间。
2.岩石本构模型中增加了Hook Brown模型加入了霍克-布朗屈服准则,使用户对岩石材料计算结果较为合理。
它的屈服面是非线性的,同时是考虑最大、最小主应力的关系的基础上产生的。
该模型综合了塑性流准则,其特性随着不同的应力水平,呈一变化的函数。
3.热/流体水平对流模型flac3d之前已经能提供非线性固体与多孔介质渗流的流固耦合模拟,机械地耦合流体和固体。
而3.0版本的新功能增加了温度可受流体密度影响和流体中温度的水平对流。
4.3 dshop生成的网格导入3dshop是一种能力强大的固体建摸和六面体网格的软件包,也是itasa的产品。
flac3d原始的网格仍可用,但是用基于windows操作系统的3dshop建复杂模型更为简单方便。
3dshop生成的网格能被flac直接读取。
5.动画命令:FLAC3D现在可以生成AVI和DCX动画,这是以前版本中不可用的功能。
6.记录颗粒轨迹:颗粒的路径能被记录和显示此外,flac3d3 0还包括以下新功能(在以前的版本中无法实现):1)网络版本2)应用于混凝土加工模拟的水合作用模型。
Q:如何显示变形等高线命令?答:ploskemagf10其中10为放大系数问:如何查看各个时段不平衡力的具体数值?答:his用于记录计算结果,包括位移、应力和其他命令hisunbalhisgp(zone)zdisrange(000)或者id=?导出数据命令hiswitenvsmbegin time step end time step filename Hisn表示记录的IDM,并表示推导不平衡力hisunbal特定值的时间步长step100000orsolve他的write1vsstep开始于1000file123。
PFC3d手册命令中文详解
PFC3D 学习记录5-COMMAND REFERENCE通用规定和特征命令语法默认情况下,命令行忽略大小写,然而可以通过SET case命令激活区别大小写情况。
斜体字代表数字,以i, j, m n 为开头的字母代表整数,其他情况为实数命令词,关键字和数值可用空格,以及(),=分隔。
在分号(;)后为注释一行最多可包含80个字符。
而&表示续行Range 语法定义一定限制范围的物体可运用Range的命令:Change/ initial/ property Clump Fix/ Free Group JsetModel Plot ( 运用于不同输出项目)PrintRange( 创建一个命名的范围)一个Range 定义一系列物体。
由许多范围元素构成。
如果使用多个范围元素,最终物体几何为不同元素集合的交集。
但是可通过关键词any改变选择特性。
如果使用关键词any选项,任何包含在范围内的单元可被认为最终物体集合的一部分。
即求合集除此之外,通过在定义范围单元后接关键词not确定所有不在指定范围的单元通常还可以用定义group 方式定义复杂的range。
内置范围单元:Annulus center ( x, y, z) radius = r1, r2球形空心区域中心在(x, y, z )内径r1, 外径r2Color il < iu >球体或墙体在间隔(il, iu )内颜色索引。
若无iu 则iu = il球体颜色索引列表通过property命令建立。
墙体颜色索引列表必须用FISH 内置的w_color设置Cylinder end1( x1, y1, z1 ) end2( x2, y2, z2 ) radius = r圆柱范围。
圆柱中心轴过end1( x1, y1, z1 ) end2( x2, y2, z2 ) 半径为r.Fish fname调用用户定义的范围单元。
通过FISH函数fname 执行。
PFC3D中文讲解全五天
PFC3D中文讲解第一天(1)读取文件命令:call 文件路径如文件与PFC3D.EXE同目录,则只要输入call filename.dat(2)退出命令Quit(3)关闭窗口命令Close(4)在PFC3D安装目录中有三个简单的例子,TEST1.DAT、TEST2.DAT和TEST3.DAT,用户可以利用这三个例子来检验软件是否安装正确。
例1:先输入call TEST1.DAT,即得到球的位置坐标。
为让用户逐渐熟悉fish语言,固先将程序贴出来,另附上运行结果。
;fname: test1.DATnewset randomwall id=1 face 0,0,0 10,0,0 10,0,-10 0,0,-10wall id=2 face 0,0,0 0,0,-10 0,10,-10 0,10,0wall id=3 face 10,0,-10 10,0,0 10,10,0 10,10,-10wall id=4 face 10,10,-10 10,10,0 0,10,0 0,10,-10wall id=5 face 0,0,-10 10,0,-10 10,10,-10 0,10,-10wall id=6 face 0,0,0 0,10,0 10,10,0 10,0,0gen id=1,8 rad 1.5 2.0 x 0 10 y 0 10 z -10 0wall 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=1e8property density 1000 kn 1e8 ks 1e8set grav 0 0 -10property fric 0.5cycle 100print ball positionreturn然后紧接着输入call TEST2.DAT,屏幕中就会出现模型图,即在一个箱子中被着色的几个小球。
pfcd基础命令
PFC3D命令说明本说明文件译自PFC3D软件版使用手册中的COMMAND REFERENCE部分,并补充了一些手册中没有的命令(如设置粘性阻尼、生成圆柱、螺旋壁面等,这些命令在更高版本的手册中有说明)。
命令说明的顺序没有采用原手册中按字母排序的方式,而是根据创建PFC3D模型解决实际物理问题的一般过程,对相关命令加以说明。
PFC3D手册中COMMON COMMAND REFERENCE只对每个命令的格式和基本功能做了简单介绍,本说明文件对每个命令做了更详细的解释,为保持文件的可读性,对命令的详细解释都以附录形式给出。
本文件介绍了PFC3D的基本功能,对初学者有较大帮助,但要进行高级应用,还需清楚了解DEM和PFC3D相关功能的基本原理以及软件的结构等。
关于命令格式的说明:PFC3D中每个命令基本包含3部分:命令名、必需关键词和可选关键词。
本说明文件中,命令名和必需关键词写在第一行,尖括号<Keyword…>表示该命令具有可选关键词,罗列于命令名的下一行次级列;带参数的关键词,参数紧随关键词之后用加粗斜体表示。
名字较长的“命令”和“关键词”,PFC3D允许不写出全部字母,只需简写前面的一些字母,最短可简写名(即PFC3D能识别的最短简写“命令”和“关键词”名)用加粗字体表示。
例如命令:BALL rad r <keyword…>…hert z …id idx xy yz z说明:命令名为BALL的命令,具有必需关键词rad(参数r)和hert z、id、x、y、z等可选关键词。
其中hert z不带参数,最短可简写为hert;id、x、y、z的参数分别为id、x、y、z。
另外,PFC3D默认对内嵌命令以及FISH函数中的命令名、关键词、参数等的字母大小写不敏感,也可设置为大小写敏感(使用SET case_sensitivity on命令),建议使用对字母大小写不敏感模式,可减少错误的产生。
PFC3D操作指导
与FLAC3D 的2.0和2.1版本相比,FLAC3D 3.0有哪些新功能?答:计算方面:1.所有的计算和数据均采用双精度浮点制。
2.其运行速度较2.1约快10-15%功能方面:1. 动力模块中增加了hysteretic阻尼对于动力计算,加入了一个新的阻尼特性:hysteretic阻尼。
采用这种形式的阻尼,数值计算模拟产生的应变可基于模型模量和阻尼函数的共同作用。
这就可以使用户将等价线性计算方法的结果与完全非线性无折减本构模型的计算结果进行比较。
另外,对一些其它形式的阻尼,如Rayleigh阻尼,进行了较大的折减,这样在使用hysteretic 阻尼时可以有效地节省计算时间。
2. 在岩石本构模型中增加了Hook-Brown(霍克-布朗)模型加入了霍克-布朗屈服准则,使用户对岩石材料计算结果较为合理。
它的屈服面是非线性的,同时是考虑最大、最小主应力的关系的基础上产生的。
该模型综合了塑性流准则,其特性随着不同的应力水平,呈一变化的函数。
3.热/流体水平对流模型FLAC3D之前已经能提供非线性固体与多孔介质渗流的流固耦合模拟,机械地耦合流体和固体。
而3.0版本的新功能增加了温度可受流体密度影响和流体中温度的水平对流。
4. 3Dshop生成的网格导入3DSHOP是一种能力强大的固体建摸和六面体网格的软件包,也是ITASA的产品。
FLAC3D 原始的网格仍可用,但是用基于WINDOWS操作系统的3DSHOP建复杂模型更为简单方便。
3DSHOP生成的网格能被FLAC直接读取。
5. 动画命令:FLAC3D现在能产生AVI和DCX动画,这是以前的版本没有的功能。
6. 记录颗粒轨迹:颗粒的路径能被记录和显示此外,FLAC3D 3.0也包含下面的新特点(这也是以前版本所不能实现的):1)网络版2)应用于混凝土加工模拟的水合作用模型。
问:如何显示变形轮廓线的命令?答:plo ske magf 10 其中10为放大系数问:如何查看各个时段不平衡力的具体数值?答:采用his来记录计算,包括位移应力等命令his unbalhis gp(zone) zdis range (0 0 0) 或者id=?导出数据命令his write n vs m begin 时步 end 时步 file filename.hisn表示纪录的id m表示时步要导出不平衡力的具体数值his unbalstep 100000 or solvehis write 1 vs step begin 1 end 1000 file 123.his使用上述命令就可以查看各个时步下的不平衡力的具体数值问:initial 与 apply 有何区别?答:initial初始化命令,如初始化计算体的应力状态等;apply边界条件限制命令,如施加边界的力、位移等约束等。
pfc3d中的有关命令解释
pfc3d中的有关命令解释在英文输入的状态下,按m是放大视图,按shift 和m是缩小视图。
按x/y/z分别是视图绕x/y/z轴旋转。
set hist rep=5hist ball zvel(z轴方向的速度) 3 1 0(球心的坐标)hist diagnostic mufset dt dscale(设置密度)set dt=value set dt autoPLOT ball id on(the ID numbers will be largeenough to see)poros = 0.40; desired final porosityrat = 1.5; ratio of largest to smallest radiimult_a = 0 ; storage for l.h. radius multipliersetup,什么意思,是设置参数的意思吗前面必须有def吗def make_blocktot_vol = (x2 - x1) * (y2 - y1) * (z2 - z1)get_poros; Now measure actual porosityplot set title text ’Basic collection of particles in a box’设置标题density-scaling选项(简写为dscale)Cycle 3000 设定求解步数当写入这句程序后,计算就开始了,计算的步数,时间步,总时间,不平衡力平均值和最大不平衡力这些信息均显示在屏幕上,并且每隔5个计算步更新一次(这是set hist_rep=5的作用),图像动画每隔20个计算步更新一次(默认),这个更新时间可用set pinterval 来改变。
另外,阻尼已经在运动方程中被默认设定,用于吸收振动能量,更快地达到平衡状态。
10查看结果求解完毕后,用户可输入命令plot his 1来查看历史记录中第一个变量的数值曲线。
PFC3D_手册中文_fishtank
AUGMENTED FISHTANK执行固体模型,需要特别支持算法扩展设置,固体以粒子集合代表,粒子接触中设置粘结。
1)创建合成固体;2)通过模拟实验室试验确定其相关宏观参数;3)固体内部施加指定应力或对固体施加应力边界;4)监控和可视化固体内部破坏形式。
时间和资源限制不允许用户将这个函数嵌入程序代码。
另外,这些算法尚未象基本命令设置一样经过严格测试。
Augmented FishTank主要应用于如硬的水晶岩如花岗岩。
当将算法应用于不同参数系统,需要改变一些控制参数(如获得数字伺服机制)获得稳定性质。
许多算法(如在较小内置应力,获得密实压缩)包含模拟高度非线型过程,但是不能保证不同输入参数得到稳定性质。
Augmented FishTank包含PFC建模环境集合和一些列FISH支持函数。
PFC建模环境可以通过特别类型函数将拓展建模范围至在PFC2D 和PFC3D。
这些函数包含一系列FISH函数(*.fis)和驱动函数(*.dvr)。
通过在驱动函数中输入函数控制FISH函数,通常驱动文件定义PFC 模型中特别例子。
通过将驱动文件作为模板,这样可通过改变输入参数来确定模型力学性能的效应。
通常不能改变构成环境的FISH函数和驱动文件Augmented FishTank是个完整的且内部首尾一致的单元,可以使用内部相关FISH函数。
安装Augmented FishTank可设置环境变量itascaFishTank来指定当前Augmented FishTank,在FISH数据文件需在FISH函数设置变量。
1)在桌面设置PFC3D快捷方式。
2)修改可执行数据文件快捷方式目标文件,后跟着设置Augmented FishTank路径的数据文件名和路径。
如果需要延伸环境设置来支持附加功能或将其赋予特定应用。
需要编写自己FISH函数然后在已经存在环境设置一部分调用之。
注意可将任意用户编写支持特殊应用的新FISH函数分入自己目录汇总,然后调用这些函数无需通过在FisTEnv.DVR文件中定义一个新环境变量(指定新路径)来指定完全路径组织约定:The Augmented FishTank 分为三类:FishPFC:包含PFC2D/3D均可用函数FishPFC2:包含PFC2D可用函数FishPFC:包含PFC3D可用函数命名约定:aaB:其中aa表明环境;B对应环境是2D/3D(无字符为两者皆可)一系列例子驱动文件包含在驱动目录,这些例子驱动文件演示如何使用特定环境,并且可作为参数研究模板。
(完整word版)PFC3D建模流程和代码解释
(完整word版)PFC3D建模流程和代码解释本示例表示生成球体在一定的空间内进行运动的部分代码以及代码表示意义。
新建一个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 extentpfc3d>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中文讲解
(5)通过例子学习几种常见命令例二:PFC3D目录下的Guide\Start\footing.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 ; reset random-number generatortitle 'Tutorial Example'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,-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 box'plot set rotation (24.0,352.0,340.0)plot add ball yellowplot add wall whiteplot 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以下是程序中逐条命令的解释: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,-5) (10, 2,-5) ( 0, 2,-5)wall id=6 face ( 0, 0, 0) ( 0, 2, 0) (10, 2, 0) (10, 0, 0)这些命令创造了一个由六个墙面围成的箱子,每个墙面都赋予了一个独一无二的ID号。
PFC3D中文讲解第五天
(1)常见命令用法补充
1、定义简单数值变量(前面已讲过定义字符串变量macro命令)
第一种方法:Set abc=71
第二种方法:
def shuzhi
abc=71
end
2、定义函数
def abc
hh=22
abc=hh*3+5
end
abc ;用于执行函数,所以不能少
print abc
几种常用运算函数:
Pi——∏
urand——0到1的随机数
unbal——不平衡力的最大值
abs(a)——a的绝对值
cos (a)——a的余弦值
log(a)——a的以10为底的对数
max(a,b)——a,b中的最大值
sqrt(a)——a的平方根
3、loop循环语句
def xunhuan
Sum=0
Prod=1
Loop n(1,10)
Sum=sum+n
Prod=prod*n
End loop
end
xunhuan ;用于执行函数,所以不能少
Print sum,prod
上面程序很好懂,稍有点程序基础的都能看懂,这里主要是让用户看下loop循环的使用方法。
4、if语句
def abc
if aa>0 then
abc=11
else
abc=22
end if
end
set aa=1
print abc
set aa=-1
print abc
以上程序非常简单,在此不再赘述,这里主要是让用户看下if语句的使用方法。
PFC3D中文讲解第四天
(1)补充一句程序说明在每个程序的开头,经常有句set random,这句话的意思是重置随机数,因为generate 生成小球的时候,半径经常是个范围,需要随机生成,如果不加这句的话,随机得到的半径大小可能一直是某一组随机数,故需重置一下,这与vb编程中的随机数重置设定是一样的。
(2)plot wall id=on 显示所有wall的ID(3)定义字符串变量命令:macro(手册上的例子均是将某字符串赋给某个变量,因此我取名字符串变量,如果是赋予具体数值,比如a=5之类的功能,应该有别的命令可实现,待后续)Macro xx ‘x 0 10’Macro yy ‘y 0 10’Macro zz ‘z 0 10’Macro size ‘id 1 100 rad 0.5 0.5’Macro ball ‘xx yy zz size’Macro ‘size’‘id 1001 1100 rad 0.1 0.1’;注意!!!!!Gen ball以上程序需注意两点:1、macro命令的结构形式:macro+变量名+字符串,字符串要加单引号;2、倒数第二句是重新定义了变量size,需要注意的是size重新定义的时候需加单引号,第一次定义不需要加。
(4)一般分析流程这个流程应该是先建立模型,设定接触和材料属性,施加载荷和约束,然后再运行程序使达到稳态,最后根据需要改变条件继续求解,从而得出结果。
(5)生成球体的两个命令命令generate和命令ballGenerate(简写为gen)在第二天的讲解中已经说过,它可一次生成大量的球填充到某个空间内,ball命令是一次只生成一个球,这也是与generate的区别。
Ball命令的格式为:ball rad ** id ** x ** y ** z **(**为各参数对应的值,需用户自己输入)(6)施加边界条件1、给墙面施加速度和角速度Wall id 1 xvel 1e-3给ID号为1的墙面施加x方向速度,大小为1e-3Wall id 2 yspin 1e-3 x=2 y=2 z=0给ID号为2的墙面施加绕y轴转动的角速度,旋转中心坐标为(2,2,0)2、给球施加恒定不变的速度或角速度为球施加速度或角速度,可用命令initial,change,property,但这种定义只能对球的速度进行初始化,不能保证以后球一直以恒定的速度运动下去,因此需要用到fix命令。
PFC3d手册命令中文详解72253
PFC3d手册命令中文详解72253预览说明:预览图片所展示的格式为文档的源格式展示,下载源文件没有水印,内容可编辑和复制PFC3D 学习记录5-COMMAND REFERENCE通用规定和特征命令语法默认情况下,命令行忽略大小写,然而可以通过SET case命令激活区别大小写情况。
斜体字代表数字,以i, j, m n 为开头的字母代表整数,其他情况为实数命令词,关键字和数值可用空格,以及(),=分隔。
在分号(;)后为注释一行最多可包含80个字符。
而& 表示续行Range 语法定义一定限制范围的物体可运用Range的命令:Change/ initial/ property Clump Fix/ Free Group JsetModel Plot ( 运用于不同输出项目) PrintRange( 创建一个命名的范围)一个Range 定义一系列物体。
由许多范围元素构成。
如果使用多个范围元素,最终物体几何为不同元素集合的交集。
但是可通过关键词any改变选择特性。
如果使用关键词any选项,任何包含在范围内的单元可被认为最终物体集合的一部分。
即求合集除此之外,通过在定义范围单元后接关键词not确定所有不在指定范围的单元通常还可以用定义group 方式定义复杂的range。
内置范围单元:Annulus center ( x, y, z) radius = r1, r2球形空心区域中心在(x, y, z )内径r1, 外径r2Color il < iu >球体或墙体在间隔(il, iu )内颜色索引。
若无iu 则iu = il球体颜色索引列表通过property命令建立。
墙体颜色索引列表必须用FISH 内置的w_color设置Cylinder end1( x1, y1, z1 ) end2( x2, y2, z2 ) radius = r圆柱范围。
圆柱中心轴过end1( x1, y1, z1 ) end2( x2, y2, z2 ) 半径为r.Fish fname调用用户定义的范围单元。
中文PFC说明
PFC3D命令说明(COMMON COMMAND REFERENCE)PFC3D是基于命令驱动模式(COMMAND-DRIVEN FORMAT)的软件,各种命令控制着程序的运行,这部分内容将介绍PFC3D软件的内嵌命令。
本说明文件译自PFC3D软件2.0版使用手册中的COMMAND REFERENCE部分,并补充了一些手册中没有的命令(如设置粘性阻尼、生成圆柱、螺旋壁面等,这些命令在更高版本的手册中有说明)。
命令说明的顺序没有采用原手册中按字母排序的方式,而是根据创建PFC3D 模型解决实际物理问题的一般过程,对相关命令加以说明。
PFC3D手册中COMMON COMMAND REFERENCE只对每个命令的格式和基本功能做了简单介绍,本说明文件对每个命令做了更详细的解释,为保持文件的可读性,对命令的详细解释都以附录形式给出。
本文件介绍了PFC3D的基本功能,对初学者有较大帮助,但要进行高级应用,还需清楚了解DEM和PFC3D相关功能的基本原理以及软件的结构等。
由于只关注使用PFC3D解决颗粒流的问题,涉及颗粒流的命令介绍的比较详细,而用于岩土工程等其他领域的命令,由于关注很少且专业知识缺乏,只是不求甚解。
0.关于命令格式的说明:PFC3D中每个命令基本包含3部分:命令名、必需关键词和可选关键词。
本说明文件中,命令名和必需关键词写在第一行,尖括号<Keyword…>表示该命令具有可选关键词,罗列于命令名的下一行次级列;带参数的关键词,参数紧随关键词之后用加粗斜体表示。
名字较长的“命令”和“关键词”,PFC3D允许不写出全部字母,只需简写前面的一些字母,最短可简写名(即PFC3D能识别的最短简写“命令”和“关键词”名)用加粗字体表示。
例如命令:BALL rad r<keyword…>…hert z …id idx xy yz z说明:命令名为BALL的命令,具有必需关键词rad(参数r)和hert z、id、x、y、z等可选关键词。
pfc-3d 基础 命令
PFC3D命令说明本说明文件译自PFC3D软件2.0版使用手册中的COMMAND REFERENCE部分,并补充了一些手册中没有的命令(如设置粘性阻尼、生成圆柱、螺旋壁面等,这些命令在更高版本的手册中有说明)。
命令说明的顺序没有采用原手册中按字母排序的方式,而是根据创建PFC3D 模型解决实际物理问题的一般过程,对相关命令加以说明。
PFC3D手册中COMMON COMMAND REFERENCE只对每个命令的格式和基本功能做了简单介绍,本说明文件对每个命令做了更详细的解释,为保持文件的可读性,对命令的详细解释都以附录形式给出。
本文件介绍了PFC3D的基本功能,对初学者有较大帮助,但要进行高级应用,还需清楚了解DEM 和PFC3D相关功能的基本原理以及软件的结构等。
关于命令格式的说明:PFC3D中每个命令基本包含3部分:命令名、必需关键词和可选关键词。
本说明文件中,命令名和必需关键词写在第一行,尖括号<Keyword…>表示该命令具有可选关键词,罗列于命令名的下一行次级列;带参数的关键词,参数紧随关键词之后用加粗斜体表示。
名字较长的“命令”和“关键词”,PFC3D允许不写出全部字母,只需简写前面的一些字母,最短可简写名(即PFC3D能识别的最短简写“命令”和“关键词”名)用加粗字体表示。
例如命令:BALL rad r<keyword…>…hert z …id idx xy yz z说明:命令名为BALL的命令,具有必需关键词rad(参数r)和hert z、id、x、y、z等可选关键词。
其中hert z不带参数,最短可简写为hert;id、x、y、z的参数分别为id、x、y、z。
另外,PFC3D默认对内嵌命令以及FISH函数中的命令名、关键词、参数等的字母大小写不敏感,也可设置为大小写敏感(使用SET case_sensitivity on命令),建议使用对字母大小写不敏感模式,可减少错误的产生。
PFC3D中文讲解第三天
先对plot补充点说明:1、plot create ***命令可用于创建多个图像显示窗口,但每次只能看一种结果,可以通过菜单栏里的window选项卡来切换窗口,查看想看的结果2、如只想显示小球,则使用命令plot ball,如只想显示墙面,则使用命令plot wall,如二者都想显示则plot ball wall,如运行完毕后想显示别的结果,如接触力则plot cforce(contact force的简写)。
总而言之,plot后面加你想显示的东东即可,用户需灵活使用。
此外,程序中的注释用英文的分号; ,后面加注释的内容即可。
第二天的讲解中小球都是自由状态,无外力的作用,因此有必要讨论施加外力的情况。
(1)对小球施加重力作用;fname: footing.DAT (tutorial example for PFC3D)new ; clear program state to begin new problemset random ; reset random-number generatortitle 'Tutorial Example'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,-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 Contact_Forceplot set title text 'Model at equilibrium'plot add ball yellowplot add wall whiteplot add cforce blackplot add axes brownplot show;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 dscale;set grav 0 0 -9.81prop fric 1.0;cyc 1000此程序与第二天的程序几乎相同,唯一的不同是多加了两句程序:set grav 0 0 -9.81prop fric 1.0第一句是设定重力加速度为9.81m/s2,方向为Z轴负方向,grav是重力gravity的简写;第二句是设定球与球之间的摩擦系数,fric是friction的简写,在该程序中设定摩擦系数为1.0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PFC3D 学习记录5-COMMAND REFERENCE通用规定和特征命令语法默认情况下,命令行忽略大小写,然而可以通过SET case命令激活区别大小写情况。
斜体字代表数字,以i, j, m n 为开头的字母代表整数,其他情况为实数命令词,关键字和数值可用空格,以及(),=分隔。
在分号(;)后为注释一行最多可包含80个字符。
而& 表示续行Range 语法定义一定限制范围的物体可运用Range的命令:Change/ initial/ property Clump Fix/ Free Group JsetModel Plot ( 运用于不同输出项目) PrintRange( 创建一个命名的范围)一个Range 定义一系列物体。
由许多范围元素构成。
如果使用多个范围元素,最终物体几何为不同元素集合的交集。
但是可通过关键词any改变选择特性。
如果使用关键词any选项,任何包含在范围内的单元可被认为最终物体集合的一部分。
即求合集除此之外,通过在定义范围单元后接关键词not确定所有不在指定范围的单元通常还可以用定义group 方式定义复杂的range。
内置范围单元:Annulus center ( x, y, z) radius = r1, r2球形空心区域中心在(x, y, z )内径r1, 外径r2Color il < iu >球体或墙体在间隔(il, iu )内颜色索引。
若无iu 则iu = il球体颜色索引列表通过property命令建立。
墙体颜色索引列表必须用FISH 内置的w_color设置Cylinder end1( x1, y1, z1 ) end2( x2, y2, z2 ) radius = r圆柱范围。
圆柱中心轴过end1( x1, y1, z1 ) end2( x2, y2, z2 ) 半径为r.Fish fname调用用户定义的范围单元。
通过FISH函数fname 执行。
而此函数中必须包含一个range_element指定范围单元函数。
此时fname就会调用所有在范围内的各个物体。
物体的地址将通过fc_arg( 0 )传入函数,而坐标x-, y-, 和z-分量将通过fc_arg( 1 ), fc_arg( 2 ), fc_arg( 3 )分别传入函数。
物体类型由FISH内置的pointer_type指定。
如果物体不在指定范围内,则fname的值必须在函数内设置为零,如果未指定,默认值为1。
group gname定义属于group名字gname的颗粒球体,(粒子组通过group命令定义)id il < iu >id编号在il,iu范围内的物体,如果iu没有指定,则默认il = iujset il < iu >节理编号在在il,iu范围内的接触,如果iu没有指定,则默认il = iu节理通过JSET命令创建创建一个命名范围rname,通过在命令行中范围元素集合定义,通常一个范围用range命令创建。
plane keyword无限平面包围区域Keyword:Origin x, y, z 平面上一点(x, y, z )dd dd 方向角x-y平面上方向角,从y轴正向顺时针方向测量dip dip 俯角从x-y平面,向z轴负向。
Distance d 在距离d范围内区域Above 平面上方below 平面下方normal nx, ny, nz 平面的单位法向矢量radius rl < ru > <tolerance t >半径在(rl, ru )范围内球体。
ru 未指定,则范围(rl – t, ru – t )t 未指定,则t = rl ×10-6. 注意误差范围只有在未指定ru 条件下指定。
rname 命名范围rnamesphere center( x, y, z ) radius = r球形区域,中心(x, y, z )半径rx = xl, <xu >, <tolerance = t >y = yl, < yu >, < tolerance = t >z = zl, < zu >, < tolerance = t >指定x, y, z 坐标在指定范围内的物体。
其他同radius 条重点理解fish定义range部分。
在线帮助Command ? 适用command的各个关键词?/ help 显示所有可用命令程序控制命令这些命令支持批处理执行模式,允许改变程序状态。
其与用程序建立实际数值模型无关。
Cycle & Step 执行指定时间步Solve 执行计算,直至满足收敛条件Build 控制AC/DC 操作call 调用data文件,执行命令,批处理模式return 从批处理模式中返回到控制台。
或在多级调用中返回上一级调用文件continue- pause重新/ 中止调用data文件Fluid 设置流体分析条件/ MPI 控制MPI 操作/ PARALLEL 控制并行计算程序操作NEW 重启新模型Quit & Stop / Save – RestoreSet 改变全局程序设置/ Thermal设置热分析/ Title 设置模型名称,这些将保存在随后的输出图并记录在save文件中/ Ucode 注册用户编译的C++ 类特殊计算模式可选计算模式,通过config命令调用。
Config 可在任何分析阶段给出,但是必须在调用时指定计算模式。
Cppudm C++用户定义接触模型Cppuwc C++用户编写代码fluid 流体分析thermal 热分析模型属性部分模型建立和修改Ball 建立新球体Clump 建立新团块,或修改新团块属性Delete 删除球体,团块,墙体和时程记录Generate 生成球体集合Jset 生成一系列节理Wall 生成墙体或修改墙体属性Fix 对球体设置固定速度Free 将球体固定速度清零Model 对指定接触指定用户定义接触模型Property 修改已有球体属性(材料属性和施加外力和速度),修改属性,粘结属性,接触属性模型监控History 指定执行过程变量(预定或用户定义fish变量Measure 建立一个测量球或改变测量球属性Movie 对屏幕输出进行控制抓图,从而实现动画输出Plot 控制模型几何和反应属性输出Print 生成输出变量和模型信息Trace 追踪模型中能量及功的输出命令工具Define 定义fish函数Group 定义和修改组集合Macro 命令宏Range 定义范围Table 控制表的创建和修改。
成对数值索引命令集合建立球体Ball radius = r <density = ** hertz id = ** x = ** y = ** z = **>Radius :球体半径density : 密度(m/V)Hertz: 指定Hertz接触模型否则为线性接触模型Id: 编号,唯一性,默认值大于当前编号最大值的整数x, y, z :x-, y- z-坐标,默认为0.0用ball 建立球体允许重叠,球体属性由property命令设置Build 控制执行AC/DC 操作Build assembly xa, ya, < za >通过复制粒子和包含在pbrick中的力(必须已经存在)建立粒子集合,而初始粒子由Call <fname> 调用data文件,默认为pfc3d.dat, 而若扩展名未指定,等于*.dat文件调用允许多级调用,但不允许相互迭代。
Change 同property命令一样创建团块Clump <id = **> full = on / off permanent release update_cycle = n <range …>创建一个团块,若id等于已有团块编号,则为修改团块属性Range 为要建立团块的范围,范围内原来属于其他团块的粒子转化到当前团块,必须指定range防止所有粒子变成一个团块Print clump 输出团块信息,plot clump 输出团块1、Full on 在计算团块运动时,使用全部惯性向量力矩,这会耗费更多计算时间。
因为cross-coupling term使用,必须进行矩阵转换。
当旋转速度较大和陀螺效应影响大时使用。
Full off 计算团块运动时,只有使用diagonal inertia,而忽略旋转速度乘积。
只有3D计算受full关键词影响。
当full on 时,应设置update_cycle = 12、Permanent 通过阻止构成团块粒子间生成接触使得构成团块的粒子在随后模拟过程保持接触。
这样不需要存储接触信息,并且避免经常性更新接触信息及其对应的矢量。
当在模拟过程中团块有个形成和分解过程,就不能指定这个关键词然而,指定颗粒间永久接触有利于节约内存和计算时间。
当一个团块有其permanent属性设置,其设置为永久的然而永久团块可被删除且团块内球体可被释放。
Release关键词用于从团块提取球体,释放时,球体将不存在接触3、release 范围内所有属于同一团块将被释放。
如果id未指定,所有范围内属于任何团块的粒子将被释放。
团块内所有粒子被释放时,团块本身不被删除,形成“空团块”, 这种情况在计算过程中忽略,而在粒子重新加入之后,被激活。
Delete clump 删除团块4、update_cycle n控制数据更新速度,默认值n= 10。
N越大,计算时间小。
可被更新速度有Moment of inertia tensor 惯性张量力矩(3D)contact coordinates 接触坐标contact normal vector 接触法向矢量接触剪力矢量(3D) 平行粘结力矩(3D)平行粘结剪力矢量(3D )注意团块阻尼系数为构成团块粒子的阻尼系数的算术平均值当模型中存在团块时,在本版本中就不能使用密度放大系数Fix/free命令用于团块内任何粒子时,此工况用于团块重心。
Print clump 可看到各个团块的fix/free状况。
Config keyword < keyword >指定可选计算模式Keyword:Cppudm C++用户定义模型Cppuwc C++用户编写代码Fluid 流体分析Thermal 热分析Continue 重启由pause中止的data文件过程Cycle/Step n执行n 时间步对于热分析和热力分析计算为热计算步,否则为力学步计算过程输入Esc,中止计算过程。
计算过程输入空格,继续中止当前cycle.当前计算过程由set mechanical 和set thermal命令指定。