Patch Command

From OpenSeesWiki
Revision as of 17:12, 5 June 2022 by Mhscott (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search




The patch command is used to generate a number of fibers over a cross-sectional area. Currently there are three types of cross-section that fibers can be generated: quadrilateral, rectangular and circular.


The following is the command to generate a quadrilateral shaped patch (the geometry of the patch is defined by four vertices: I J K L. The coordinates of each of the four vertices is specified in COUNTER CLOCKWISE sequence):

patch quad $matTag $numSubdivIJ $numSubdivJK $yI $zI $yJ $zJ $yK $zK $yL $zL
$matTag tag of previously defined material (UniaxialMaterial tag for a FiberSection or NDMaterial tag for use in an NDFiberSection)
$numSubdivIJ number of subdivisions (fibers) in the IJ direction.
$numSubdivJK number of subdivisions (fibers) in the JK direction.
$yI $zI y & z-coordinates of vertex I (local coordinate system)
$yJ $zJ y & z-coordinates of vertex J (local coordinate system)
$yK $zK y & z-coordinates of vertex K (local coordinate system)
$yL $zL y & z-coordinates of vertex L (local coordinate system)




The following is the command to generate a rectangular patch. The geometry of the patch is defined by coordinates of vertices I and J. To ensure positive fiber areas are created, (zJ-zI)/(yJ-yI) should be positive.

patch rect $matTag $numSubdivY $numSubdivZ $yI $zI $yJ $zJ
$matTag tag of previously defined material (UniaxialMaterial tag for a FiberSection or NDMaterial tag for use in an NDFiberSection)
$numSubdivY number of subdivisions (fibers) in the local y direction.
$numSubdivZ number of subdivisions (fibers) in the local z direction.
$yI $zI y & z-coordinates of vertex I (local coordinate system)
$yJ $zJ y & z-coordinates of vertex J (local coordinate system)


The following is the command to generate a circular shaped patch:

patch circ $matTag $numSubdivCirc $numSubdivRad $yCenter $zCenter $intRad $extRad $startAng $endAng


$matTag tag of previously defined material (UniaxialMaterial tag for a FiberSection or NDMaterial tag for use in an NDFiberSection)
$numSubdivCirc number of subdivisions (fibers) in the circumferential direction (number of wedges)
$numSubdivRad number of subdivisions (fibers) in the radial direction (number of rings)
$yCenter $zCenter y & z-coordinates of the center of the circle
$intRad internal radius
$extRad external radius
$startAng starting angle
$endAng ending angle



NOTES:




EXAMPLE:

patch circ $coreMatTag 8 8 0.0 0.0 0.0 $h; # define solid circular section with 64 fibers with radius $h using $coreMatTag material

patch quad $coreMatTag 8 8 -$b -$h $b -$h $b $h -$b $h; # define core patch with 8 subdivisions within a rectangle of width 2b and depth 2h



Code Developed by: Remo M. De Souza