Difference between revisions of "Particle-Based Boundary Conditions"

From OSUPDOCS
Jump to navigation Jump to search
m
 
(15 intermediate revisions by the same user not shown)
Line 2: Line 2:
== Introduction ==
== Introduction ==


Particle-based boundary conditions are used to apply conditions  directly to particles for loads, tractions, heat fluxes, and concentration fluxes. Particle-based boundary conditions are typically applied to particles on the boundary of the object. Besides particle conditions, simulations can set [[Grid-Based Boundary Conditions]].
Particle-based boundary conditions are used to apply conditions  directly to particles for loads, tractions, heat fluxes, and concentration fluxes. Particle-based boundary conditions are typically applied to particles on the boundary of the object. Some particle-based boundary conditions instead set initial some particle properties (''e.g.'', damage). Besides particle conditions, simulations can set [[Grid-Based Boundary Conditions]].


== Particle-Based Boundary Condition in Scripted Files ==
==Particle-Based Boundary Condition Commands ==


All particle-based boundary conditions are created by a series of [[Particle BC Shape Commands|shape commands]] that select particles in the simulation. The [[Particle BC Shape Commands|shape commands]] define shapes (lines or arcs) and all particles withing those shapes are selected.. In scripted 2D simulations, the commands are
In scripted files, all particle-based boundary conditions are created by a series of <tt>ParticleBC</tt> command blocks that select particles:


* [[Particle BC Shape Commands#Line (2D or Axisymmetric)|LoadLine]] - select particles along a line
ParticleBC
* [[Particle BC Shape Commands#Arc (2D or Axisymmetric)|LoadArc]] - select particles along an arc
  (one 2D or 3D shape command, which can be nested)
* [[Particle BC Shape Commands#Rectangle (2D or Axisymmetric)|LoadRect]] - select particles within a rectangle
  (one or more load, traction, heat flux, or concentration flux condition)
    ...
EndParticleBC


In scripted 3D simulations, the commands is:
In <tt>XML</tt> files, particle-based boundary conditions are created with a <tt>&lt;BCShape&gt;</tt> block


* [[Particle BC Shape Commands#Box or Cylinder (3D)|LoadBox]] - select particles within a box or a cylinder
<BCShape>
  (one 2D or 3D shape command, which can be nested)
  (one or more load, traction, heat flux, or concentration flux condition)
    ...
</BCShape>


The commands within these [[Particle BC Shape Commands|shape commands]] are used to set [[Setting Forces and Fluxes|load, traction, heat flux, and/or concentration flux conditions]].
which must be within the main <tt>&lt;ParticleBC&gt;</tt> block.


== Particle-Based Boundary Condition in XML Files ==
The particles that will get boundary conditions are selected by defining one [[2D MPM Shape Commands|2D shape]] (for 2D simulations) or one [[3D MPM Shape Commands|3D shape]] (for 3D simulations). The shape can be a [[Nested Shapes|nested shape]].


All particle-based boundary conditions must be set up within a single <ParticleBCs> element. The format is
All particles within the one shape will be set to all provided [[Setting Forces and Fluxes|conditions (load, traction, heat, concentration, pore pressure flux, and/or initial damage or phase field)]].


  <ParticleBCs>
=== Deprecated Commands ===
     (one or more particle BC shape commands)
 
      ...
Prior to the particle-based boundary condition commands in the previous section, the boundary conditions used to be set with [[Particle BC Shape Commands|boundary condition shape commands]]. The deprecated commands are:
 
* <tt>LoadLine</tt> and <tt>&lt;BCLine&gt;</tt>
* <tt>LoadArc</tt> and <tt>&lt;BCArc&gt;</tt>
* <tt>LoadRect</tt> and <tt>&lt;LdRect&gt;</tt>
* <tt>LoadBox</tt> and <tt>&lt;BCBox&gt;</tt>
 
See [[Particle BC Shape Commands|documentation]] for conversion of old commands to the new method.
 
== Explicit Particle-Based Boundary Condition in XML Files ==
 
An option in <tt>XML</tt> files is to explicitly set boundary conditions on particles without using shape functions. The format is
 
  <GridBCs>
     (one or more <BCShape> blocks)
    ...
     <LoadBCs>
     <LoadBCs>
       (one or more explicit boundary conditions)
       (one or more explicit boundary conditions)
     </LoadBCs >
     </LoadBCs>
  </ParticleBCs>
  </GridBCs>


There are two ways to specify particle boundary conditions. The most common approach is to generate boundary conditions using one or more [[Particle BC Shape Commands|shape commands]] to select particles and assign [[Setting Forces and Fluxes|specified load, traction, heat flux, and or concentration flux conditions]] to those particles. The other way is to [[Explicit Particle Boundary Conditions|explicitly list each particle condition]]. The explicit method is shown in the <tt><LoadBCs></tt> section above; it is limited to load conditions, and is usually generated with other software. You can use both [[Particle BC Shape Commands|shape commands]] and a [[Explicit Particle Boundary Conditions|<tt><LoadBCs></tt> section]] in the same input file.
The <tt>&lt;BCShape&gt;</tt> blocks set boundary conditions as explained [[#Particle-Based Boundary Condition Commands|above]]. The <tt>&lt;LoadBCs&gt;</tt> block lets you [[Explicit Particle Boundary Conditions|explicitly list each particle]]. The explicit method is limited to load conditions, and is usually generated with other software. You can use both [[#Particle-Based Boundary Condition Commands|<tt>&lt;BCShape&gt;</tt> blocks]] and a [[Explicit Particle Boundary Conditions|<tt><LoadBCs></tt> block]] in the same input file.

Latest revision as of 10:24, 17 November 2023

Introduction

Particle-based boundary conditions are used to apply conditions directly to particles for loads, tractions, heat fluxes, and concentration fluxes. Particle-based boundary conditions are typically applied to particles on the boundary of the object. Some particle-based boundary conditions instead set initial some particle properties (e.g., damage). Besides particle conditions, simulations can set Grid-Based Boundary Conditions.

Particle-Based Boundary Condition Commands

In scripted files, all particle-based boundary conditions are created by a series of ParticleBC command blocks that select particles:

ParticleBC
  (one 2D or 3D shape command, which can be nested)
  (one or more load, traction, heat flux, or concentration flux condition)
    ...
EndParticleBC

In XML files, particle-based boundary conditions are created with a <BCShape> block

<BCShape>
  (one 2D or 3D shape command, which can be nested)
  (one or more load, traction, heat flux, or concentration flux condition)
    ...
</BCShape>

which must be within the main <ParticleBC> block.

The particles that will get boundary conditions are selected by defining one 2D shape (for 2D simulations) or one 3D shape (for 3D simulations). The shape can be a nested shape.

All particles within the one shape will be set to all provided conditions (load, traction, heat, concentration, pore pressure flux, and/or initial damage or phase field).

Deprecated Commands

Prior to the particle-based boundary condition commands in the previous section, the boundary conditions used to be set with boundary condition shape commands. The deprecated commands are:

  • LoadLine and <BCLine>
  • LoadArc and <BCArc>
  • LoadRect and <LdRect>
  • LoadBox and <BCBox>

See documentation for conversion of old commands to the new method.

Explicit Particle-Based Boundary Condition in XML Files

An option in XML files is to explicitly set boundary conditions on particles without using shape functions. The format is

<GridBCs>
   (one or more <BCShape> blocks)
   ...
   <LoadBCs>
      (one or more explicit boundary conditions)
   </LoadBCs>
</GridBCs>

The <BCShape> blocks set boundary conditions as explained above. The <LoadBCs> block lets you explicitly list each particle. The explicit method is limited to load conditions, and is usually generated with other software. You can use both <BCShape> blocks and a <LoadBCs> block in the same input file.