Difference between revisions of "Particle BC Shape Commands"

From OSUPDOCS
Jump to navigation Jump to search
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
These commands define shapes. All particles contained within the shape will be assigned [[Particle-Based Boundary Conditions|boundary conditions]] for [[Setting Forces and Fluxes|load, traction, heat flux, and concentration flux]] that are specified within the shape command.
The method to create particle-based boundary conditions was changed in [[NairnMPM]] (April 2017) and [[OSParticulas]] (revision 1170) to the method using [[Particle-Based Boundary Conditions|<tt>ParticleBC</tt> and <tt>&lt;BCShape&gt;</tt> blocks]]. As a result, all boundary condition commands listed below are deprecated. They still work, but should be replaced by new methods as described below.


== Line (2D or Axisymmetric) ==
== Line (2D or Axisymmetric) ==


The command to select a line through a 2D mesh in scripted files is:
The command to select a line through a 2D mesh in scripted files:


  LoadLine (x1),(y1),(x2),(y2),(tolerance)
  LoadLine (x1),(y1),(x2),(y2),<(tolerance)>
   (one or more load, traction, heat flux, or concentration flux condition)
   (one or more load, traction, heat flux, or concentration flux condition)
    ...
  EndLoadLine
  EndLoadLine
should be replaced with (and note changed order of parameters):
ParticleBC
  Line (x1),(x2),(y1)),(y2),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC


In <tt>XML</tt> files, a line is selected with:
In <tt>XML</tt> files, a line is selected with:
Line 17: Line 23:
  </BCLine>
  </BCLine>


where
should be replaced with


* <tt>(x1, y1)</tt> to <tt>(x2, y2)</tt> define <tt>(x, y)</tt> coordinates for the points at the beginning and end of the line (or <tt>(R, Z)</tt> coordinates if axisymmetric). The units are mm (or determined by a [[Units Attribute|units attribute]] in <tt>XML</tt> files). In <tt>XML</tt> files, the coordinates can alternatively be specified [[Grid BC Shape Commands#Relative Grid Locations|relative to the mesh edges]].
<BCShape>
* <tt>(tolerance)</tt> is an optional tolerance. The units are mm (or determined by a [[Units Attribute|units attribute]] in <tt>XML</tt> files). In <tt>XML</tt> files, you can optionally use the format <tt>'*0.5'</tt> to set the tolerance to any factor times the minimum cell dimension in the current mesh.  If it is omitted, the tolerance will be set to a small number appropriate for the current background grid cell dimensions.
  <Line x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)' tolerance='(tolerance)'>
 
  (one or more load, traction, heat flux, or concentration flux condition)
This command will apply [[Setting Forces and Fluxes|load, traction, heat flux, and/or concentration flux boundary conditions]] to all particles within <tt>(tolerance)</tt> of the line from <tt>(x1, y1)</tt> to <tt>(x2, y2)</tt>.
</BCShape >


== Arc (2D or Axisymmetric) ==
== Arc (2D or Axisymmetric) ==


The command to select an arc through a 2D mesh in scripted files is:
The command to select an arc through a 2D mesh in scripted files:


  LoadArc (x1),(y1),(x2),(y2),(startAng),(endAng),<(tolerance)>
  LoadArc (x1),(y1),(x2),(y2),(startAng),(endAng),<(tolerance)>
   (one or more load, traction, heat flux, or concentration flux condition)
   (one or more load, traction, heat flux, or concentration flux condition)
    ...
  EndLoadArc
  EndLoadArc


In <tt>XML</tt> files, a line is selected with:
should be replaced with (and note changed order of parameters):
 
ParticleBC
  Arc (x1),(x2,(y1)),(y2),(startAng),(endAng),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC
 
In <tt>XML</tt> files, an line selected with:


  <BCArc units='(units)' x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)'
  <BCArc units='(units)' x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)'
         start='(startAng)' end='(endAng)' tolerance='(tolerance)'>
         start='(startAng)' end='(endAng)' tolerance='(tolerance)'>
   (one or more load, traction, heat flux, or concentration flux condition)
   (one or more load, traction, heat flux, or concentration flux condition)
    ...
  </BCLine>
  </BCLine>


where
should be replaced with


* <tt>(x1, y1)</tt> to <tt>(x2, y2)</tt> define <tt>(x, y)</tt> coordinates for the corners of a rectangular area enclosing the arc (or <tt>(R, Z)</tt> coordinates if axisymmetric). The units are mm (or determined by a [[Units Attribute|units attribute]] in <tt>XML</tt> files). In <tt>XML</tt> files, the coordinates can alternatively be specified [[Grid BC Shape Commands#Relative Grid Locations|relative to the mesh edges]].
<BCShape>
* <tt>(startAng)</tt> and <tt>(endAng)</tt> give the start and end angle (in degrees) to specify the arc.
  <Arc units='(units)' x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)'
* <tt>(tolerance)</tt> is an optional tolerance. The units are mm (or determined by a [[Units Attribute|units attribute]] in <tt>XML</tt> files). In <tt>XML</tt> files, you can optionally use the format <tt>'*0.5'</tt> to set the tolerance to any factor times the minimum cell dimension in the current mesh.  If it is omitted, the tolerance will be set to a small number appropriate for the current background grid cell dimensions.
        start='(startAng)' end='(endAng)' tolerance='(tolerance)'>
 
  (one or more load, traction, heat flux, or concentration flux condition)
This command will apply [[Setting Forces and Fluxes|load, traction, heat flux, and/or concentration flux boundary conditions]] to all particles within <tt>(tolerance)</tt> of the arc. The arc is traced in a counter-clockwise direction from <tt>(startAng)</tt> to <tt>(endAng)</tt> with angle = 0 corresponding to the position along the positive x axis.
</BCShape >


== Rectangle (2D or Axisymmetric) ==
== Rectangle (2D or Axisymmetric) ==


The command to select rectangle in a 2D mesh in scripted files is:
The command to select rectangle in a 2D mesh in scripted files:


  LoadRect (xmin),(xmax),(ymin),(ymax)
  LoadRect (xmin),(xmax),(ymin),(ymax)
   (one or more load, traction, heat flux, or concentration flux condition)
   (one or more load, traction, heat flux, or concentration flux condition)
    ...
  EndLoadRect
  EndLoadRect


In <tt>XML</tt> files, a rectangle is selected with:
should be replaced with:
 
ParticleBC
  Rect (xmin),(xmax),(ymin),(ymax)
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC
 
In <tt>XML</tt> files, a rectangle selected with:


  <LdRect xmin='(xmin)' xmax='(xmax)' ymin='(ymin)' ymax='(ymax)' units='mm'>
  <LdRect xmin='(xmin)' xmax='(xmax)' ymin='(ymin)' ymax='(ymax)'>
   (one or more load, traction, heat flux, or concentration flux condition)
   (one or more load, traction, heat flux, or concentration flux condition)
    ...
  </LdRect>
  </LdRect>


* <tt>(xmin)</tt>,  <tt>(xmax)</tt>, <tt>(ymin)</tt>, and <tt>(xmax)</tt>define the <tt>x</tt> and <tt>y</tt> ranges for the rectangular area (or <tt>R</tt> and <tt>Z</tt> ranges if axisymmetric). The units are mm (or determined by an optional [[Units Attribute|units attribute]] in <tt>XML</tt> files).  In <tt>XML</tt> files, the coordinates can alternatively be specified [[Grid BC Shape Commands#Relative Grid Locations|relative to the mesh edges]].
should be replaced with


This command will apply [[Setting Forces and Fluxes|load, traction, heat flux, and/or concentration flux boundary conditions]] to all particles within the rectangle.
<BCShape>
  <Rect xmin='(xmin)' xmax='(xmax)' ymin='(ymin)' ymax='(ymax)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</BCShape>


== Box or Cylinder (3D) ==
== Box or Cylinder (3D) ==


The command to select a 3D box or cylinder in scripted files is:
The command to select a 3D box or cylinder in scripted files:


  LoadBox (x1),(y1),(z1),(x2),(y2),(z2),<(axis)>
  LoadBox (x1),(y1),(z1),(x2),(y2),(z2),<(axis)>
   (one or more load, traction, heat flux, or concentration flux condition)
   (one or more load, traction, heat flux, or concentration flux condition)
    ...
  EndLoadBox
  EndLoadBox


In <tt>XML</tt> files, a box is selected with:
should be replaced with (and note changed order of parameters):
 
ParticleBC
  Box (x1),(x2),(y1)),(y2),(z1)),(z2),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC
 
In <tt>XML</tt> files, a box selected with:


  <BCBox units='(units)' xmin='(x1)' xmax='(x2)' ymin='(y1)' ymax='(y2)'
  <BCBox units='(units)' xmin='(x1)' xmax='(x2)' ymin='(y1)' ymax='(y2)'
                         zmin='(z1)' zmax='(z2)' axis='(axis)'>
                         zmin='(z1)' zmax='(z2)' axis='(axis)'>
   (one or more load, traction, heat flux, or concentration flux condition)
   (one or more load, traction, heat flux, or concentration flux condition)
    ...
  </BCBox>
  </BCBox>


where
should be replaced with


* <tt>(x1, y1, z1)</tt> and <tt>(x2, y2, z2)</tt> define <tt>(x, y, z)</tt> coordinates for opposite corners of the box. The units are mm (or determined by a [[Units Attribute|units attribute]] in <tt>XML</tt> files). In <tt>XML</tt> files, the coordinates can alternatively be specified [[Grid BC Shape Commands#Relative Grid Locations|relative to the mesh edges]].
<BCShape>
* <tt>(axis)</tt> is an optional parameter that will convert the shape from a box to the cylinder enclosed within the box with its axis along the specified direction (entered as x, 1, y, 2, z, or 3).
  <Box units='(units)' xmin='(x1)' xmax='(x2)' ymin='(y1)' ymax='(y2)'
 
                        zmin='(z1)' zmax='(z2)' axis='(axis)'>
This command will apply [[Setting Forces and Fluxes|load, traction, heat flux, and/or concentration flux boundary conditions]] to all particles within the specified box or cylinder.
  (one or more load, traction, heat flux, or concentration flux condition)
</BCBox>

Latest revision as of 10:56, 8 April 2017

The method to create particle-based boundary conditions was changed in NairnMPM (April 2017) and OSParticulas (revision 1170) to the method using ParticleBC and <BCShape> blocks. As a result, all boundary condition commands listed below are deprecated. They still work, but should be replaced by new methods as described below.

Line (2D or Axisymmetric)

The command to select a line through a 2D mesh in scripted files:

LoadLine (x1),(y1),(x2),(y2),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndLoadLine

should be replaced with (and note changed order of parameters):

ParticleBC
  Line (x1),(x2),(y1)),(y2),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC

In XML files, a line is selected with:

<BCLine units='(units)' x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)' tolerance='(tolerance)'>
  (one or more load, traction, heat flux, or concentration flux condition)
    ...
</BCLine>

should be replaced with

<BCShape>
  <Line x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)' tolerance='(tolerance)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</BCShape >

Arc (2D or Axisymmetric)

The command to select an arc through a 2D mesh in scripted files:

LoadArc (x1),(y1),(x2),(y2),(startAng),(endAng),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndLoadArc

should be replaced with (and note changed order of parameters):

ParticleBC
  Arc (x1),(x2,(y1)),(y2),(startAng),(endAng),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC

In XML files, an line selected with:

<BCArc units='(units)' x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)'
       start='(startAng)' end='(endAng)' tolerance='(tolerance)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</BCLine>

should be replaced with

<BCShape>
  <Arc units='(units)' x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)'
       start='(startAng)' end='(endAng)' tolerance='(tolerance)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</BCShape >

Rectangle (2D or Axisymmetric)

The command to select rectangle in a 2D mesh in scripted files:

LoadRect (xmin),(xmax),(ymin),(ymax)
  (one or more load, traction, heat flux, or concentration flux condition)
EndLoadRect

should be replaced with:

ParticleBC
  Rect (xmin),(xmax),(ymin),(ymax)
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC

In XML files, a rectangle selected with:

<LdRect xmin='(xmin)' xmax='(xmax)' ymin='(ymin)' ymax='(ymax)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</LdRect>

should be replaced with

<BCShape>
  <Rect xmin='(xmin)' xmax='(xmax)' ymin='(ymin)' ymax='(ymax)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</BCShape>

Box or Cylinder (3D)

The command to select a 3D box or cylinder in scripted files:

LoadBox (x1),(y1),(z1),(x2),(y2),(z2),<(axis)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndLoadBox

should be replaced with (and note changed order of parameters):

ParticleBC
  Box (x1),(x2),(y1)),(y2),(z1)),(z2),<(tolerance)>
  (one or more load, traction, heat flux, or concentration flux condition)
EndParticleBC

In XML files, a box selected with:

<BCBox units='(units)' xmin='(x1)' xmax='(x2)' ymin='(y1)' ymax='(y2)'
                       zmin='(z1)' zmax='(z2)' axis='(axis)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</BCBox>

should be replaced with

<BCShape>
  <Box units='(units)' xmin='(x1)' xmax='(x2)' ymin='(y1)' ymax='(y2)'
                       zmin='(z1)' zmax='(z2)' axis='(axis)'>
  (one or more load, traction, heat flux, or concentration flux condition)
</BCBox>