zoukankan      html  css  js  c++  java
  • LIGGGHTS输入文件中关于颗粒入射的设置例子

    转载至:新浪博客“suningchen”的博文“liggghts输入文件中关于颗粒的入射的设置例子

    1.      insert/pack 的例子

    用于在指定区域内以每几个时间步长入射颗粒,一般先定义一个入射区域,指定粒径分布,指定颗粒速度,然后接一个insert_every 关键字。不能指定动态变化的区域,每个时间步颗粒入射在区域内的随机位置。在energy minimization 时不会调用此fix。

    其他关键字

    verbose: 在每次颗粒时是否将统计信息输出到屏幕,默认为yes

    overlapcheck: 在入射时检查入射颗粒是否与已经入射的颗粒重叠,关闭时并行效果好,但可能会引起过度重叠,默认为yes

    maxattempt: 当overlapcheck开启时,指定每个入射颗粒在入射时最多尝试的次数使它与其他颗粒不重叠,当大于次数仍不成功时会打印一个警告,默认为50

    all_in: 指定颗粒是全部在入射区域内(yes)或者只需要质心在区域内(no)

    random_distribute: 控制在不同并行处理器中的入射颗粒数目,exact或uncorrelated, 后者会进行四舍五入但最终两者会有统计相同的结果,默认为exact

    vel constant: 入射颗粒具有相同的速度

    vel uniform, vel guassian:入射颗粒的速度服从速度分布,可以指定涨落速度

    orientation, omega: 指定入射颗粒的旋转轴,角速度

    可以再选用以下任意一个关键字来指定入射颗粒的数目

    volumefraction_region:  指定想要入射区域固含率

    particles_in_region: 指定入射区域的颗粒个数

    mass_in_region: 指定入射区域想要的质量

    ntry_mc 指定计算入射区域固含率的蒙特卡洛次数,默认为100000

    Examples:

    fix ins all insert/pack seed 1001 distributiontemplate pdd1 insert_every once overlapcheck yes volumefraction_region 0.3 region mysphere ntry_mc 10000

    另外如果用insert/rate/region 命令可以指定nparticles, mass, particlerate, massrate参数。

    Examples:

    fix ins all insert/rate/region seed 1001 distributiontemplate pdd1 nparticles 1000 particlerate 5000 insert_every 1000 overlapcheck yes region mysphere ntry_mc 10000

    #ErgunTestMPI exmaple

    #particle distributions and insertion

    region    bc cylinder z 0.0 0.0 0.012 0. 0.055 units box

    fix         ins all insert/pack seed 100001 distributiontemplate pdd1 vel constant 0. 0. -1. insert_every once overlapcheck yes all_in yes particles_in_region 10000 region bc

    #packing exmaple

    #region and insertion

    group     nve_group region reg

    fix         ins nve_group insert/pack seed 5330 distributiontemplate pdd1 maxattempt 200 insert_every once overlapcheck yes all_in yes vel constant 0. 0. 0. region reg volumefraction_region ${alphastart}

    #fillCylinder exmaple

    #particle insertion

    region    bc cylinder z 0.0 0.0 0.012 0.02 0.03 units box

    fix         ins all insert/pack seed 100001 distributiontemplate pdd1 vel constant 0. 0. -1. insert_every once overlapcheck yes all_in yes particles_in_region 1000 region bc

    #cohesion example

    #region for insertion

    region           bc cylinder z 0.01 0.01 0.025 0.05 0.0603 units box

    group            nve_group region reg

    fix            ins nve_group insert/pack seed 5332 distributiontemplate pdd1 maxattempt 100 insert_every 3000 overlapcheck yes all_in yes vel constant 0.0 0.0 -0.2 region bc particles_in_region 250 ntry_mc 10000

    #contactModel example

    #region of insertion

    region           bc cylinder z 0. 0. 0.045 0.00 0.15 units box

    fix         ins all insert/pack seed 100001 distributiontemplate pdd1 vel constant 0. 0. -0.5 insert_every once overlapcheck yes all_in yes particles_in_region 1800 region bc

    #heatGran example

    #region of insertion

    region    bc cylinder z 0. 0. 0.045 0.00 0.15 units box

    fix         ins all insert/pack seed 100001 distributiontemplate pdd1 vel constant 0. 0. -0.3 insert_every once overlapcheck yes all_in yes volumefraction_region 0.3 region bc

    #hysteresis example

    #region for insertion

    region           bc cylinder z 0.01 0.01 0.025 0.05 0.0603 units box

    group            nve_group region reg

    fix         ins nve_group insert/pack seed 5332 distributiontemplate pdd1 maxattempt 100 insert_every 3000 overlapcheck yes all_in yes vel constant 0.0 0.0 -0.2 region bc particles_in_region  250  ntry_mc 10000

    2.      insert/stream 的例子

    在指定区域内以指定时间步长间隔入射直到指定颗粒数或者指定颗粒质量达到。一般会指定一个入射面(stl文件),必须为一个平面,入射面的法向会有入射颗粒的速度方向自动指定。必须接一个nparticles 或mass 关键字。

    nparticles ,mass: 选其一用,总共想要入射的颗粒的个数,质量

    particlerate, massrate: 选其一用,每秒入射的颗粒数,颗粒质量

    insert_every, extrude_length: 选其一用,insert_every和particlerate或massrate结合使用,如果用了extrude_length 入射频率直接由挤压长度计算,并且入射速度是和入射面垂直。

    Examples:

    fix ins all insert/stream seed 1001 distributiontemplate pdd1 nparticles 5000 vel constant 0. -0.5 -2. particlerate 1000 overlapcheck yes insertion_face ins_mesh extrude_length 0.6

    #chute_wear example

    #region and insertion

    group     nve_group region reg

    region    bc cylinder z 0.0 0.0 0.015 0.05 0.12 units box

    fix         inface all mesh/surface file insertion_face.stl type 1

    fix         ins nve_group insert/stream seed 5330 distributiontemplate pdd1 nparticles 6000 massrate 0.1 insert_every 1000 overlapcheck yes all_in no vel constant 0.0 0.0 -1.0  insertion_face inface

    #conveyor example

    #region for insertion

    group     nve_group region reg

    fix         inface all mesh/surface file insertion_face.stl type 1

    fix         ins nve_group insert/stream seed 5330 distributiontemplate pdd1 maxattempt 100 mass 30. massrate 30. overlapcheck yes vel constant 0. 0. -1.0 insertion_face inface extrude_length 0.1

    #insert_stream example

    #region and insertion

    fix         ins_mesh all mesh/surface file face.stl type 1 scale 0.005

    group     nve_group region reg

    fix         ins nve_group insert/stream seed 100001 distributiontemplate pdd1 nparticles 5000 vel constant 0. -0.5 -2. particlerate 1000 overlapcheck yes insertion_face ins_mesh extrude_length 0.6

    #meshGran example

    #definition of insertion face

    fix         inface all mesh/surface file insertion_face.stl type 1

    #particle insertion

    fix         ins nve_group insert/stream seed 5330 distributiontemplate pdd1 maxattempt 100 nparticles 10000 particlerate 1000 overlapcheck yes all_in no vel constant 0. 0. -1.0 insertion_face inface extrude_length 0.02

    3.      其他的例子

    定义一个由vtk文件生成的网格,并在此区域按照sc规则填满颗粒

    #mesh_tet example

    #region and insertion

    variable d equal 0.05

    region           mesh mesh/tet file test.vtk  scale 1. move 0. 0. 0.  rotate 0. 0. 0. units box

    group            nve_group region reg

    lattice            sc $d

    create_atoms   1 region mesh

    set         group all density 500 diameter $d

    #movingMeshGran example

    #particle insertion

    region           bc block -0.9 0.9 -0.4 0.4 -0.02 -0.0 units box

    group            nve_group region reg

    fix                ins nve_group pour/legacy 1500 1 1 vol 0.7 1000 diam 0.08 0.08 dens 2500 2500 vel 0. 0. 0. 0. -0.8 region bc

    #twoSphereGlowinskiMPI example

    直接制造两个颗粒

    #- create single partciles

    create_atoms 1 single .5 .5 3.5 units box  //postion

    create_atoms 1 single .5 .5 3.16 units box

    set atom 1 diameter 0.167 density 1.5 vx 0 vy 0 vz 0 //properties

    set atom 2 diameter 0.167 density 1.5 vx 0 vy 0 vz 0

  • 相关阅读:
    linux常用命令
    linux下redis配置
    Git使用命令
    linux学习笔记
    NOPI读取Excel2003、Excel2007或更高级的兼容性问题
    netcore开发常用命令
    netcore3.0 dotnet ef执行报错
    vscode配置nuget常见问题
    PDMReader结合PowerDesigner导出word格式数据字典
    微信网页授权开发遇到问题
  • 原文地址:https://www.cnblogs.com/Xiwang-Sun/p/15218941.html
Copyright © 2011-2022 走看看