Explicit FEA Mesh Generation

From OSUPDOCS
Revision as of 16:08, 28 August 2013 by Nairnj (talk | contribs)
Jump to navigation Jump to search

To explicitly define a mesh, which can only be done in XML files, define all nodal points and all elements in lists within a <Mesh> element. Note that use of this method is very rare. You should almost always use commands to generate the mesh instead.

The Mesh Block for an Explicit Mesh

The typical structure of a Mesh block for explicit FEA mesh generation is. The subordinate commands are described in more detail below.

<Mesh>
  <NodeList>
    <pt x='0' y='-18' temp='-100'/>
    <pt x='110' y='-18'/>
        .
        .
        .
  </NodeList>
  
  <ElementList>
     <elem type='2' mat='1' angle='0' thick='10'>1,5,69,68</elem>
     <elem type='2' mat='1' angle='0' thick='10'>5,6,70,69</elem>
        .
        .
        .
  </ElementList>
</Mesh>

<!-- image and shape methods to set element properties -->

<BMP name="MatImage.bmp" width="50" angles="MatAngles.bmp">
  <Origin x="0" y="0"/>
  <Intensity mat="2" imin="76" imax="255">
    <Thickness units="mm">1</Thickness>
  </Intensity>
  <Intensity mat="3" imin="1" imax="75">
    <Thickness units="mm">1</Thickness>
  </Intensity>
  <Intensity imin="0" imax="255" minAngle="0.000000" maxAngle="90.000000"/>
</BMP>

<Body mat='1' angle='0' thick='1'>
   <Oval units='mm' xmin='10' xmax='40' ymin='10' ymax='40'/>
   <Rect units='mm' xmin='10' xmax='40' ymin='10' ymax='40'/>     
</Body>

<Hole>
   <Rect xmin='20' xmax='30' ymin='20' ymax='30'/>     
</Hole>

NodeList Block

The <NodeList> block must have one <pt> tag for each nodal point. The x and y attributes give the coordinates of each point in mm. The optional temp can be used to set the temperature of the node as the temperature difference relative to the stress free temperature.

ElementList Block

These nodes defined in the <NodeList> are connected into elements in the <ElementList> block. Each element is defined in an <elem> tag. The type attribute defines the type of element by number.

Element types can be mixed, but the types have to be compatible. You can mix linear elements (types 1, 2, and 5) with each other or quadratic elements (types 3, 4, 6, and 8) with each other, but cannot mix linear elements with quadratic elements.

Each element has attributes to define the material for the element:

  • mat (or matl for backward compatibility): Material number in the list of defined materials when referring to material "By Number". If you are using the optional BMP file method to set element properties, the mat should be 0 for elements that will be set later by the BMP command.
  • matname: Alternatively, materials can be specified "By Name".
  • angle: Optional material angle relevant to anisotropic materials.
  • thick: Thickness in mm (for plane stress or plane strain 2D calculations)

The value of the <elem> tags are the node numbers listed in the counter-clockwise direction. For elements with mid-side nodes, the corner nodes are first followed by the mid-side nodes. The numbers correspond to the above nodal list with the first node being numbered 1. The node numbers can be delimited by any white space, commas, colons, semicolons, or any combination of those delimiters.

BMP, Body, and Hole Blocks

The <BMP>, <Body>, and <Hole> elements, which must come after the <Mesh> block, lets you asign material and material angles to the elements using a digitized image of the object or using shape commands. Their use is described elsewhere.