PFC6.0documentation_PFC

目录

Numerical Simulations with PFC

PFC Overview

PFC Model Formulation

How to

PFC Model Objects

Balls

Clumps

Rigid Blocks

Walls

Contacts and Contact Models

PFC Commands Index

PFC FISH Index


Numerical Simulations with PFC


PFC Overview

PFC颗粒流模型的基本假设

1.颗粒被视为刚体

2.基本颗粒形状为

3.块状逻辑支持创建刚性连接的{二维的单位厚度的盘子;三维的球体},表示为卵石。每个团块由一组重叠的卵石组成,作为一个具有可变形边界的刚性体。团块可以是任意形状的。

4.粒子在成对的接触处通过内力和力矩进行互动。接触力学体现在更新内力和力矩的粒子相互作用规律中。

5.物理接触的行为采用软接触的方法,允许刚性粒子在接触点相互重叠。

6.Bonds can exist at contacts between particles.

7.Long range interactions can also be derived from energy potential functions.

包括:balls, clumps, walls

接触模型contacts may not form between two walls; thus, contacts are either ball-ball, ball-pebble, pebble-pebble, ball-facet, or pebble-facet.

Distinct-Element Method(DEM方法)

在DEM中进行的计算在对粒子应用牛顿第二定律接触处的力-位移定律之间交替进行。牛顿第二定律用于确定每个粒子的运动,这些运动是由作用在它身上的接触力和体力引起的,而力-位移定律则用于更新由每个接触处的相对运动引起的接触力。PFC中墙的存在只要求力-位移定律考虑到与墙面的接触。牛顿第二定律并不适用于墙体,因为墙体的运动是由用户指定的。


PFC Model Formulation

The PFC model is populated with bodiespieces and contacts. There are three types of bodies: balls, clumps and walls. 

能量耗散可能发生在接触相互作用规律中(例如,通过摩擦滑动, 粘性阻尼、塑性等)或由于阻尼机制称为局部阻尼。 局部阻尼可用于加速收敛到稳态解决方案。

周期内进行的运算:

PFC6.0documentation_PFC_第1张图片

Model Components

(1)只有球和团块具有质量属性(质量、质心位置和 惯性张量)和载荷条件(从接触、物体施加的力/力矩) 重力产生的力,以及外部施加的力/力矩)。

(2)wall的运动由用户指定

(3)接触力学体现在采用软接触的粒子相互作用定律中 方法,所有变形都发生在刚体之间的接触处。

PFC6.0documentation_PFC_第2张图片

Cycling

(1)终止循环:Shift+Esc

(2)循环序列

在每个计算周期内执行的操作序列称为周期序列。 循环序列由一组有序的操作组成,其中每个操作都有一个浮动 分配给它的点号,称为循环点

PFC6.0documentation_PFC_第3张图片

Energy and Dissipation Mechanisms in PFC

        (1)使用模型能量命令启用能量跟踪。

        (2)Energies are accumulated each cycle for balls, clumps, walls, and contacts. Mechanical energies fall into two categories: body energies and contact energies. These can be retrieved via the ball.energy, clump.energy, wall.energy, and contact.energy FISH functions. The total energies falling into each category can be retrieved with the mech.energy FISH function.

        (3)机械阻尼、局部阻尼、迟滞阻尼

Material Modeling Support For PFC

        以下三种粘合材料的特殊实例是由材料建模支持包创建和定义的。接触结合的材料(contact-bonded material)是一种粒状组件,在材料定型阶段结束时,所有的晶粒-晶粒接触都存在线性接触结合模型(the linear contact bond model);在随后的运动中可能形成的新晶粒-晶粒接触被分配到线性模型。平行结合材料是一种粒状组件,在材料定型阶段结束时,所有的晶粒-晶粒接触都存在线性平行结合模型(the linear parallel bond model);在随后的运动中可能形成的新晶粒-晶粒接触被分配为线性模型。平接材料是一种粒状组件,其中平接模型存在于所有晶粒-晶粒接触处,其间隙小于或等于材料定型阶段结束时的安装间隙;所有其他晶粒-晶粒接触以及后续运动中可能形成的新晶粒-晶粒接触均被分配为线性模型。通过识别界面附近的接触,并将其接触模型替换为平滑连接模型(

        the smooth-joint model),可以将平滑连接界面插入到粘合材料中。

Orientation Tracking

        (1)方向跟踪适用于球、团块和墙壁(balls, clumps, and walls)。使用

model orientation-tracking command

        (2)2D情况下的顺时针角位移:via the rotation keyword given with the ball attribute, clump attribute, and wall attribute commands. This quantity can also be accessed via the ball.rotation, clump.rotation, and wall.rotation FISH functions.

        (3)在三维中,每当物体旋转时,四元数被存储并更新。我们可以通过欧拉角访问或设置每个体的方向,遵循X,Y,Z惯例(例如,围绕X轴旋转,然后围绕Y轴旋转,再围绕Z轴旋转),使用

ball attribute, clump attribute, and wall attribute commands的欧拉关键字。这个量也可以通过ball.euler、clump.euler和wall.euler FISH函数访问。


How to

设置模型域

 model domain +extent or condition

extent关键字用于指定模型域的范围,独立于全局坐标系的每个方向。

清理模型

model clean

创建粒子组件

除了常规(立方体或六方体)的几何形状,PFC不提供内置工具来自动创建粒子的连接组合。

(1)The ball create, clump create, and clump replicate commands can be used to create a single ball or a single clump.

参照clump template create命令查看模板,学习如何创建clumps

(2)球的生成和团块的生成命令( ball generate and clump generate commands )可用于一次性生成指定数量的球或团块,且无重叠。

(3)球状分布和块状分布命令( ball distribute and clump distribute commands)可以用来在给定的体积内分布球或块状物,以达到指定的固体分数,而不需要测试重叠,方法如下。对于每一个要分配的球/块,根据用户的输入选择一个随机的大小和位置(仅对于块来说是方向),然后加入预期的球/块,直到达到指定的固体分数。由于该算法没有防止重叠,生成的装配体是不平衡的,大的重叠会在第一步中产生大的力,这将导致需要从系统中去除的高动能。

设置和控制边界条件

(1)Using walls as boundaries:walls不服从牛顿运动定律

(2)Using particles as boundaries:可以识别模型中的选定粒子,并控制其速度或对其施加外力。例如,阻抗匹配边界可以通过对边界粒子施加力来建模,如 "粒子集合体中的波传播 "的例子所示。

(3)Using periodic boundarie:如果模型域被设置为在一个或多个方向上是周期性的,那么这个条件将适用。

控制初始条件

经常需要调整边界条件来安装一个相关的初始应力状态。

选择合适的接触模型

粒子通过接触处产生的力与其他粒子和墙壁相互作用。接触力学体现在采用软接触方法的粒子相互作用定律中,对于这种方法,所有的变形都发生在刚体之间的接触处。粒子相互作用定律被称为接触模型;每个接触都被分配了一个接触模型

接触模型分配表(Contact Model Assignment Table (CMAT))可以简化选择接触模型的过程。

Using the CMAT

校准材料行为

        PFC separates micro-parameters into two categories, attributes and properties.       (1)属性Attributes是模型组件的内在特征,如位置、速度、大小等。体(球、团块和墙)、件(球、团块、卵石和墙面)和接触可以有属性。

        (2)属性Properties则专门适用于接触和碎片。触点的属性取决于所使用的触点模型;每个触点模型定义了一组控制其构成行为的属性。触点属性可以通过触点属性和触点方法命令来分配或修改。CMAT也可以用来给新创建的联系人分配联系人模型和联系人模型属性(见上一主题)。

        模拟岩石时,不知道微观成分的机械性能情况下,必须使用 "逆向建模"(即对具有假定参数的样品进行一些测试,并将结果与真实的完整材料的预期响应进行比较)。当找到匹配的结果后,相应的参数集就可以在完整的模拟中使用。

监视模拟

        了解模拟过程中相关量的演变

求解到目标终止准则

        Perform simulation cycles: the model cycle and model solve commands. 

        model cycle 给定步数;

        model solve命令更加精细,接受一个或几个结束标准。

执行顺序建模

        可随时更改数据,进行再度循环。在一个状态被恢复后,可以对模型进行改变,并进行额外的循环,以进行另一个建模阶段或进行敏感性分析。

在计算周期中插入自定义操作

        The tutorial example “Using FISH Callbacks” discusses this capability in detail.

        FISH回调


PFC Model Objects


        The PFC model consists of bodies and mechanical contacts. There are three types of bodies: ballsclumps, and walls. Clumps are composed of pebbles and walls are composed of facets. The interaction between the surfaces of two bodies is defined by a mechanical interaction that is composed of one or more mechanical contacts. We refer to bodies, pieces, and mechanical interactions/contacts as PFC model components 


Balls

        插入域的三种方式:Balls are inserted into the domain (see the model domain command) in three ways: by creating balls one at a time (using ball create), by generating non-overlapping sets of balls (using ball generate), or by distributing overlapping balls to match a specified size distribution (using ball distribute).

        整个属性/属性列表可以通过ball list attribute和ball list property命令列出,同时列出特定属性/属性的值。


Clumps

        略


Rigid Blocks

        刚性块是可以存在单一接触的物体。这里所描述的物体,是由一个或多个碎片组成的。换句话说,一个刚性块和其他块之间只能存在一个接触,包括球、块状卵石、墙面和其他刚性块。这与团块相反,团块中的每个卵石都被认为是一块,往往导致多卵石团块与另一块之间存在多个接触。

Contact Detection and Resolution

        刚性块被输入到细胞空间中,以进行快速宽相接触检测。每种片段类型都存在单独的单元格空间。降低DEM 模拟的计算密集度。

        只要接触存在,窄相位接触检测算法就会在力-位移定律之前的每个时间步运行。

Contact Resolution

        一旦存在一个接触,并且窄相接触检测确定了碎片重叠(即计算了穿透矢量,并且间隙为负),计算力所需的其余信息就是接触位置。对于与刚性块的接触,只有一个计算力的接触位置。对于刚性块的接触,有两种接触分辨率模式,即减少和完全

reduced and full (见rblock contact-resolution命令)。这两种模式将针对每种接触类型进行详细讨论。


Walls

Walls may be created (using wall create) and facets may be added one at a time (using wall addfacet).

可以使用 wall generate生成命令生成简单的wall

wall attribute and wall property

wall list attribute and wall list property


 Contacts and Contact Models

        当在循环序列中检测到新的接触时,在力-位移计算之前,会发生接触解析。在接触解析期间,接触状态变量被更新。这些变量已被定义,这里将描述计算这些变量的程序。

Commands — PFC 6.0 documentation

        FISH函数签名中使用的类型指定器在FISH类型索引部分给出。

FISH Functions — PFC 6.0 documentation


PFC Commands Index


        重点:https://docs.itascacg.com/pfc600/pfc/docproject/source/manual/pfc_model_components/command_summary.html?node2401

PFC6.0documentation_PFC_第4张图片


PFC FISH Index


ball           clump           wall           rblock          

  • 触点实用程序 Contact Utilities
  • 触点内部程序 Contact Intrinsics
  • 机械触点内部程序 Mechanical Contact Intrinsics
  • FISH
  • Contact Model Assignment Table (CMAT)
  • 接触模型分配表(CMAT)控制着接触模型及其相关属性对新创建的接触的分配,同时也提供了接触创建程序使用的检测距离。CMAT由一组有序的槽(用 contact cmat add 命令填充)和每个联系人类型的默认槽(用 contact cmat default 命令设置)组成。每个槽包含一个联系人模型及其属性和方法,每个非默认槽也包含一个PFC范围。每当一个联系人被创建,它就被映射到CMAT中的一个槽中,该槽中的信息被用来分配联系人模型及其相关属性和方法。
  •  CMAT也可以通过contact cmat apply命令应用于现有联系人的范围。CMAT条目可以用 contact cmat modify 命令进行修改,用 contact cmat remove 命令进行删除。
  • PFC模型中的粒子通过一个广义的内力在接触处相互作用 。接触力学体现在采用软接触方法的粒子相互作用定律中,对于这种方法,所有的变形都发生在刚体之间的接触处。粒子相互作用规律被称为接触模型;每个接触都被分配了一个接触模型。
  • 接触在循环过程中被自动创建和删除。这些运动学变量被接触模型用来确定适当的互动,并将在整个接触模型演示中被引用。接触模型可以手动或通过接触模型分配表(CMAT进行分配。
  • Contact Resolution
    • 窄相接触检测:
    • 宽相接触检测:
      • 使用模板:Once the set of clump templates have been defined, one can insert clumps into the domain (see the model domain command) in three ways: by replicating clumps one at a time (using clump replicate); by generating non-overlapping sets of clumps (using clump generate); or by distributing overlapping clumps to match a specified size distribution (using clump distribute).
      • 无需模板:Alternatively, one can create clumps that do not refer to clump templates with the clump create command. 
  • 可以直接指定质量属性,也可以使用clump create calculate命令根据球体分布计算实际的质量属性,使用体素化的方法来考虑球体的重叠。
  • clump attribute和clump property命令用于指定clump属性和pebble属性。整个属性/属性列表可以用clump list attribute和clump list property命令列出,同时列出特定属性/属性的值。
  • ​ The example Fragmentation Analysis during a Uniaxial Compression with Crack Tracking Using Fractures illustrates how the ball result logic can be used to record ball fragment ID during a compression test. Note that prior to performing simulation steps, the model result logic must be activated and relevant quantities to be recorded must be selected.

常用操作:

  • Histories: The history mechanism allows one to record the value of a variable periodically during cycling (at a specified step interval).  FISH.
  • Measurement regions: The measure logic can be used to compute average quantities over {circular (2D); spherical (3D)} regions of the model. These quantities include porosity, stress and strain-rate tensors, coordination number, and particle size distribution. They can be sampled at periodic intervals using the history mechanism discussed above. Any number of measurement regions may be placed in the model.
  • Particle traces: Particle traces may be activated to record the positions and velocities of model components at periodic step intervals. The user can then plot the recorded particle traces, which show the trajectories of the objects being tracked colored by velocity magnitude.
  • SAV files: The user may periodically save intermediate state of the model into SAV files, using the model save command. These saved states can be restored (with the model restore command) when the simulation is completed in order to analyse intermediate states of the system. SAV files contain the entire model data, and the state being restored can be used as a starting point for further calculation (for sequential modeling or parameter sensitivity analysis, for instance). 占内存
  • Model result files: The model result logic allows users to decide on select information attached to balls, walls, or clumps that should be periodically recorded during the simulation. Information can be stored in program memory or in the form of several binary files (the latter preventing heavy usage of RAM). The ball results, wall results, and clump results commands can be used to activate the logic independently for balls, walls, and clumps, respectively.

你可能感兴趣的:(开发语言)