Difference between revisions of "Grid BC Shape Commands"

From OSUPDOCS
Jump to navigation Jump to search
Line 43: Line 43:
where
where


* <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 [[#Relative Grid Locations|relative to the mesh edges]]
* <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 [[#Relative Grid Locations|relative to the mesh edges]].
* <tt>(startAng)</tt> and <tt>(endAng)</tt> give the start and end angle (in degrees) to specify the arc.
* <tt>(startAng)</tt> and <tt>(endAng)</tt> give the start and end angle (in degrees) to specify the arc.
* <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.  
* <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 50: Line 50:


== Rectangle (2D or Axisymmetric) ==
== Rectangle (2D or Axisymmetric) ==
The command to select a rectangle, which is only available in <tt>XML</tt> files, is
<LdRect xmin='(xmin)' xmax='(xmax)' ymin='(ymin)' ymax='(ymax)' units='mm'>
  (one or more velocity, temperature, or concentration condition)
    ...
</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>R</tt> ranges if axisymmetric). The units are mm or determined by an optional [[Units Attribute|units attribute]] . The coordinates can alternatively be specified [[#Relative Grid Locations|relative to the mesh edges]].
This command will apply velocity, temperature, and/or concentration boundary conditions to all nodes within the rectangle. Although this command is not available in scripted files, it be be reproduced in scripted files using a [[#Line (2D or Axisymmetric)|line command]]:
MoveLine xmin,(ymin+ymax)/2,xmax,(ymin+ymax)/2,(ymax-ymin)/2
  (one or more velocity, temperature, or concentration condition)
    ...
EndMoveLine


== Box (3D) ==
== Box (3D) ==

Revision as of 11:56, 20 December 2013

These commands define shapes. All nodes contained with in the shape will be assigned boundary conditions specified within the shape command.

Line (2D or Axisymmetric)

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

MoveLine (x1),(y1),(x2),(y2),(tolerance)
  (one or more velocity, temperature, or concentration condition)
    ...
EndMoveLine

In XML files, a line is selected with:

<BCLine units='(units)' x1='(x1)' y1='(y1)' x2='(x2)' y2='(y2)' tolerance='(tolerance)'>
  (one or more velocity, temperature, or concentration condition)
    ...
</BCLine>

where

  • (x1, y1) to (x2, y2) define (x, y) coordinates for the points at the beginning and end of the line (or (R, Z) coordinates if axisymmetric). The units are mm (or determined by a units attribute in XML files). In XML files, the coordinates can alternatively be specified relative to the mesh edges.
  • (tolerance) is an optional tolerance. The units are mm (or determined by a units attribute in XML files). In XML files, you can optionally use the format '*0.5' 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.

This command will apply velocity, temperature, and/or concentration boundary conditions to all nodes with (tolerance) of the line from (x1, y1) to (x2, y2).

Arc (2D or Axisymmetric)

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

MoveArc (x1),(y1),(x2),(y2),(startAng),(endAng),<(tolerance)>
  (one or more velocity, temperature, or concentration condition)
    ...
EndMoveLine

In XML files, a line is selected with:

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

where

  • (x1, y1) to (x2, y2) define (x, y) coordinates for the corners of a rectangular area enclosing the arc (or (R, Z) coordinates if axisymmetric). The units are mm (or determined by a units attribute in XML files). In XML files, the coordinates can alternatively be specified relative to the mesh edges.
  • (startAng) and (endAng) give the start and end angle (in degrees) to specify the arc.
  • (tolerance) is an optional tolerance. The units are mm (or determined by a units attribute in XML files). In XML files, you can optionally use the format '*0.5' 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.

This command will apply velocity, temperature, and/or concentration boundary conditions to all nodes within (tolerance) the arc. The arc is traced in a counter-clockwise direction from (startAng) to (endAng) with angle = 0 corresponding to the position along the positive x axis.

Rectangle (2D or Axisymmetric)

The command to select a rectangle, which is only available in XML files, is

<LdRect xmin='(xmin)' xmax='(xmax)' ymin='(ymin)' ymax='(ymax)' units='mm'>
  (one or more velocity, temperature, or concentration condition)
    ...
</LdRect>
  • (xmin), (xmax), (ymin), and (xmax)define the x and y ranges for the rectangular area (or R and R ranges if axisymmetric). The units are mm or determined by an optional units attribute . The coordinates can alternatively be specified relative to the mesh edges.

This command will apply velocity, temperature, and/or concentration boundary conditions to all nodes within the rectangle. Although this command is not available in scripted files, it be be reproduced in scripted files using a line command:

MoveLine xmin,(ymin+ymax)/2,xmax,(ymin+ymax)/2,(ymax-ymin)/2
  (one or more velocity, temperature, or concentration condition)
    ...
EndMoveLine

Box (3D)

Relative Grid Locations

Rather than hard code positions for boundary conditions or shapes that define material points, any coordinate specified in XML files (e.g., an entry for (x1), (x2), (xmin), (xmax), etc.) can be the text 'min', 'max', 'min-3', 'min+1.2', 'max-3.8', 'max+2', etc., meaning the minimum, the maximum, or a specified number of cells relative to the minimum or maximum of the current mesh. For GIMP calculations 'min' and 'max' will be limits of useable mesh while 'min-1' and 'max+1' will be limits to the total mesh. For backward compatibility, min+, min-, max+, and max- refer to plus or minus one cell from the minimum or maximum of the current mesh.