Name

epatch — Regular mesh generation block

Synopsis

epatch id
   parameters...
   attributes...
end

Description

epatch generates regular one-dimensional, two-dimensional, and three-dimensional domains which are meshed automatically. For one-dimensional patches, straight or curved lines can be modelled. For two-dimensional patches, four-sided surfaces described by analytical functions can be modelled, creating Q shell-type elements. For three dimensional patches, cubes described by analytical functions can be modelled, creating HE solid-type elements. In addition to nodes end elements the epatch command also generates lists containing vertex, edge, face, and body nodes and elements, thus facilitating ebc and nbc boundary condition generation. Note, however, that the epatch command is by no means a substitute to any modelling and meshing software.

The element patch definition must be enclosed in the epatch block, the patch being uniquely identified by id, a positive integer unique for the model. Any number of element patches can be generated within the same branch definition, provided that the patch boundary nodes match, i.e. nodes are not merged automatically if several element patches are generated in one and the same branch. Thus, it is often easier to generate one element patch per branch and connect the branches with the automatic option of the join command.

Element patches generate elements as follows (see also the figure below for the definition of i, j, and k): For all elements in the k-direction, for all elements in the j-direction, generate elements in the i-direction, incrementing the element number by one.

Note that the default initial element number and the default initial node number are both set to the highest internal element or node number plus 1, defined so far for the current branch. Internal element and node number start with 1. If patches and element and node definitions with the elements and nodes commands are defined within the same branch please consider making use the element start index start_element_id or the node start index start_node_id options to avoid conflicts with external element or node numbers defined by the elements or nodes commands and the epatch element and node generation, which generates internal node numbers..

Two-dimensional element patch definition: Patch edges. The patch face is f7 or mid_surface.

Figure 8. Two-dimensional element patch definition: Patch edges. The patch face is f7 or mid_surface.


Three-dimensional element patch definitions: Patch edges.

Figure 9. Three-dimensional element patch definitions: Patch edges.


Two- and three-dimensional element patch definitions: Patch faces.

Figure 10. Two- and three-dimensional element patch definitions: Patch faces.


Parameters

eltype t

Specifies the element type t of the patch. For 1D patches elements of type B, C, L and R are allowed. For 2D patches elements of type T and Q are allowed. For 3D patches, element types HE and - to some extent - TE are allowed. The element type may only be specified once for one and the same patch.

geometry gtype parameters...

Specifies the geometry type of the patch to be generated. The following geometry types and their parameters can be defined:

arch radius r phi1 angle1 phi2 angle2 [open yes|no]

Creates a line mesh of beam/rod/cable/line elements along a circular arch that is defined in the branch x-y plane, with the origin of the circular segment at (0,0,0) and with the angles phi1 (start angle) and phi2 (end angle) rotating around the z-axis. The circular arch has a radius of radius. Required meshing parameters are the number of elements ne1 in the circumferential direction. The open parameter applies only in case where the segment makes a full circle. By default, the coinciding nodes are merged. Setting open to yes retains the duplicate nodes.

cylinder radius r phi1 a1 phi2 a2 length l [thickness t] [open yes|no]

Specifies a cylindrical shell segment. The generated segment is defined in the branch x-y plane, with the origin of the circular segment at (0,0,0), a radius r, and with the angles phi1 (start angle) and phi2 (end angle) rotating around the z-axis. The axial direction is in the branch z-direction. Required meshing parameters are the number of elements ne1 in the circumferential i-direction and the number of elements ne2 in the axial j-direction. The thickness parameter is element type dependent. The open parameter applies only in case where the segment makes a full circle. By default, the coinciding nodes are merged. Setting open to yes retains the duplicate nodes.

cube p1 x y z ... p8 x y z

Creates an isoparametric solid mesh of a cube defined by the 8 corner nodes p1 to p8. Required meshing parameters are the number of elements ne1 in the i-direction, the number of elements ne2 in the j-direction, and the number of elements ne3 in the k-direction. All other parameters are element type dependent.

line p1 x y z p2 x y z [thickness t]

Creates a straight line mesh of beam/rod/cable/line elements extending from point p1 to point p2, with an optional area or thickness t. Required meshing parameters are the number of elements ne1 in the i-direction. All other parameters are element type dependent.

plate p1 x y z ... p4 x y z [thickness t]

Generates an isoparametric rectangular plate mesh defined by the four corner nodes p1 to p4. The plate has a optional uniform thickness t. Required meshing parameters are the number of elements ne1 in the plate i-directionand the number of elements ne2 in the plate j-direction. All other parameters are element type dependent. The thickness parameter is element type dependent.

ring radius1 r1 radius2 r2 phi1 angle1 phi2 angle2 [thickness t] [open yes|no]

Specifies a shell element mesh of a ring. The ring is defined in the branch x-y plane, with the origin of the circular segment at (0,0,0) and with the angles phi1 (start angle) and phi2 (end angle) rotating around the z-axis. The ring segment has an inner radius radius1 and an outer radius radius2. Required meshing parameters are the number of elements ne1 in the circumferential (i-) direction and the number of elements ne2 in the radial (j-) direction. The thickness parameter is element type dependent. The open parameter applies only in case where the segment makes a full circle. By default, the coinciding nodes are merged. Setting open to yes retains the duplicate nodes.

tube radius1 r1 radius2 r2 phi1 angle1 phi2 angle2 length l [open yes|no]

Specifies a solid mesh of a tube. The tube section is defined in the branch x-y plane, with the origin of the circular segment at (0,0,0) and with the angles phi1 (start angle) and phi2 (end angle) rotating around the z-axis. The tube has an inner radius radius1 and an outer radius radius2. The length of the tube is defined by the length. Required meshing parameters are and the number of elements ne1 in the circumferential (i-) direction, the number of elements ne2 in the radial (j-) direction, and the number of elements ne3 in the global z (k-) direction. The open parameter applies only in case where the segment makes a full circle. By default, the coinciding nodes are merged. Setting open to yes retains the duplicate nodes.

local none | edges | all

Specifies if the generated nodes will be assigned a node-local DOF reference coordinate system (see transformation option of the nodes command). The node-local coordinate system is generated according to the geometry type. edges generates local reference coordinate systems for all nodes placed on patch edges. all generates local reference coordinate systems for all nodes.

ne1 n

Specifies the number of elements in regular patch in the logical i-direction, see figure above (required for all patches).

ne2 n

Specifies the number of elements in regular patch in the logical j-direction, see figure above (required for 2D and 3D patches).

ne3 n

Specifies the number of elements in regular patch in the logical k-direction, see figure above (required for 3D patches).

orientation ux uy uz vx vy vz

Defines a local base by which all epatch nodes are rotated (refer to the section on orientation below for more details).

start_element_id id

Element identifier of first element generated. All subsequent elements are generated by incrementing the element identifier by 1, first in the i-direction, then in the j-direction, and, finally, in the k-direction. The default value is 1.

start_node_id id

Node identifier of first node generated. All subsequent nodes are generated by incrementing the node identifier by 1, first in the i-direction, then in the j-direction, and, finally, in the k-direction. The default value is 1.

translation tx ty tz

Translated the patch by tx in the global x-direction, by ty in the global x-direction, and by tz in the global z-direction.

Changing the orientation

The orientation directive allows to change the orientation of any patch. This may be useful in the case of cylindrical patches which have a default orientation (the cylindrical axis is aligned with the branch-global z-direction).

Synopsis:

orientation
  [base u1 u2 u3 v1 v2 v3]
  [rotate axis x|y|z angle a]
  [rotate axis u1 u2 u3 angle a]
  [translate x y z]
end

The following directives can be used to modify the orientation:

base u1 u2 u3 v1 v2 v3

Calculate the base from the vectors u and v as follows: u defines the patch base e1, u x v defines the patch base e3, and e3 x u defines the patch base e2.

rotate axis x|y|z angle a

Rotate the current patch base about the x, y, or z axis by a degrees, and according to the right-hand rule. Successive rotations can be specified.

rotate axis u1 u2 u3 angle a

Rotate the current patch base about the axis defined by the vector u1 u2 u3, by a degrees, and according to the right-hand rule. Successive rotations can be specified.

translate tx ty tz

Translate the current patch by tx in the x-direction, ty in the y-direction, and tz in the z-direction. tx, ty, and tz are float values. The default translation is 0.0 in all three directions.

Attributes

All element attributes are element type dependent and can be consulted in the elements section of the user manual.

Additional Notes

A patch is meshed independently of any other patches, and when defining multiple patches, the coinciding nodes of adjacent patches will not be connected. Coinciding nodes can be connected by means of the join command (using the automatic option).

Examples

Generate a cylindrical panel mesh with a 90 degree opening, starting at phi=0. The panel has a radius of 1., a thickness of 0.002, and a length of 1. All nodes shall have a local cylindrical coordinate system (r, phi, z). The panel is meshed with Q9 shell elements.

epatch 1
  geometry cylinder
  radius 1.0 thickness 0.002 phi1 0.0 phi2 90.0 length 1.0
  local all
  ne1 10 ne2 5
  eltype Q9.S.MITC
  mid 1
end

EPATCH example: Cylindrical panel (Q9 shell mesh).

Figure 11. EPATCH example: Cylindrical panel (Q9 shell mesh).


EPATCH example: Cylindrical panel (Q9 shell mesh) and node-local cylindrical coordinate system in directions (r,phi,z).

Figure 12. EPATCH example: Cylindrical panel (Q9 shell mesh) and node-local cylindrical coordinate system in directions (r,phi,z).


Generate a cylindrical panel mesh identicall to the one in the preceding example, i.e with a 90 degree opening, starting at phi=0. The panel has a radius of 1., a thickness of 0.002, and a length of 1. All nodes shall have a local cylindrical coordinate system (r, phi, z). The panel is meshed with Q9 shell elements. The cylinder shall be rotated by +90 degrees around the y-axis: This is achieved by defining local base vectors with the orientation parameter.

epatch 1
  geometry cylinder
  radius 1.0 thickness 0.002 phi1 0.0 phi2 90.0 length 1.0
  orientation
    base 1 0 0  0 0 1
  end
  local all
  ne1 10 ne2 5
  eltype Q9.S.MITC
  mid 1
end

Generate a cylindrical panel mesh with a 90 degree opening, starting at phi=0. The panel has a radius of 1., a thickness of 0.002, and a length of 1. All nodes shall have a local cylindrical coordinate system (r, phi, z).The panel is meshed with 10 by 5 Q8 shell elements.

epatch 1
  geometry cylinder
  eltype Q8.S.MITC
  radius 10. thickness 2.0 phi1 45.0 phi2 135.0 length 20.
  local all
  ne1 10 ne2 5
  mid 1
end

EPATCH example: Cylindrical panel (Q8 shell mesh).

Figure 13. EPATCH example: Cylindrical panel (Q8 shell mesh).