PSET (Point Set)


Associate a name with a point set based on various geometric and logical operators. Manipulate point sets. Output point sets.

By convention, ifirst,ilast,istride syntax represents a range selection defined either by a set of points from ifirst to ilast, with increments of istride (1 by default). A set selection can also be defined with pset,get, pset_name where pset_name has been defined by the following PSET commands. Most commands with the syntax ifirst,ilast,istride can also use pset,get, pset_name.

The following are the syntax and parameter definitions, click on options in table or scroll down the page.

       
attribute constraints delete eltset
geom list logicals region
seq surface write zone

attribute

pset/pset_name/ attribute / attribute_name /ifirst,ilast,istride/[eq or ne or lt or gt ] / [value]

forms a pset from points in selected range which have the specified value for a node based attribute. If the optional comparator field is given; that operation is used to compare the attribute value to the requested value. Note the comparator fields and the value can swap argument order. This option was previously named zq in old releases.

constraints

pset/pset_name/constraints/ num_constraints 

forms a pset of nodes having the specified number of constraints.  The node’s icr value is used as an index to the icontab attribute which gives the number of constraints.  See Mesh Object for an explanation of the icontab entries.

delete

pset/pset_name/ delete

removes a previously defined pset from current mesh object

eltset

pset/pset_name/ eltset / element_set_name

forms a pset of nodes in the element set with the name element_set_name.

geom

pset/pset_name/geom / xyz /ifirst,ilast,istride/ xl,yl,zl / xu,yu,zu/ xcen,ycen,zcen

pset/pset_name/geom / rtz /ifirst,ilast,istride/ r1,t1,z1 / r2,t2,z2/ xcen,ycen,zcen

pset/pset_name/geom / rtp /ifirst,ilast,istride/ r1,t1,p1 / r2/t2/p2/ xcen,ycen,zcen

forms a pset from all points inside a geometric shape as defined in the following options:

  • xyz forms a pset from all points inside a box whose corners are xl,yl,zl and xu,yu,zu relative to the geometry center at xc,yc,zc.

  • rtz forms a pset of nodes within the cylinder or cylindrical shell given by radius r1 to r2, angle theta t1 to t2 and height z1 to z2.

  • rtp forms a pset of nodes within the sphere, sperical shell or sperical section given by radius r1 to r2, and angles theta t1 to t2 and angles phi p1 to p2.  See Conventions for an explanation of angles theta and phi.

list

pset/pset_name/list 

pset /  / list 

list all nodes in pset_name. If the 2nd argument is empty, list all names all of psets for the mesh object

logicals

pset/pset_name/ union  inter  not / pset1[  ,pset2, … psetn ]

logical operations union, inter and not act on previously defined psets.  The definition of the unary operator not is extended such that not/p1/p2 means p1 and (not(p2)).

region mregion

pset/pset_name/region or mregion / region_name / ifirst,ilast,istride

will return all nodes that are in the specified region or mregion as given by its region_name.

seq

pset/pset_name/ seq /ifirst,ilast,istride

forms a pset of the nodes defined by ifirst, ilast, istride; the special syntax,: 1,0,0 refers to all nodes and 0,0,0 refers to the last set of nodes created.

surface

pset/pset_name/ surface / surface_name / [ifirst,ilast,istride]

identifies nodes on the specified surface as indicated by defining surface_name.  The following keywords for surface_name can be used:

  • -all- will identify nodes on all and any surfaces.
  • -interface- will identify all nodes on interfaces.
  • -boundary- will idendtify nodes on external boundary surfaces.

write

pset/ pset_name or -all- / write / file_name[.vertexset] / [ascii or binary]

write or dump a pset node list to a file, options are ascii or binary.

zone zonn

pset / name or -all- / zone or zonn / file_name[.zone or .zonn] / [ascii] [zone_number]

write pset node list to a file (FEHM Flow and Transport code zone file format). By default the zone_number is a number 1-n where n is the number of psets defined in the mesh object. Specify a number value for a single zone file with the zone_number option.

zq (deprecrated)

pset/pset_name / attribute_name/ ifirst,ilast,istride / [value] / [eq or ne or lt or gt ]
  
replaces:
zq / attribute_name / ifirst,ilast,istride / [value] / [eq or ne or lt or gt ]

EXAMPLES

pset/apset/seq/1,0,0/

associate the pset name apsetwith all points.

pset/apset/seq/0,0,0/

associate the pset name apset with the last set of nodes created.

pset/apset/ union /pset1,pset2,pset3

associate the pset name apset with the set of nodes which belong to at least one of pset1, pset2, pset3.

pset/apset/ inter / pset1,pset2,pset3

associate the pset name apset with the set of nodes which belong to pset1, and pset2, and pset3.

 pset/apset/ not /pset1,pset2,pset3

associate the pset name apset with the set of nodes which belong to pset1, and do not belong to pset2, and do not belong to pset3 pset/apset/not/pset1 associate the pset name apset with the set of nodes which do not belong to pset1

  pset/list/

list the names of all psets

 pset/mypset/list

output the list the node numbers of the members of mypset to the screen and the log file outx3dgen

  pset/mypset/write/file_name.vertexset/ascii

Write list of nodes in pset mypset to an ascii file named file_name.vertexset

  pset/-all-/write/root_name/ascii

Write list of nodes in all psets. root_name is treated as a root name and each pset is written to a separate file beginning with that root. For example, if you have psets named pset1 and pset2, they will be written to files called root_name_pset1.vertexset and root_name_pset2.vertexset.

pset/mypset/zone/file_name.zone/ascii

Write list of nodes in pset mypset to an ascii file named file_name.zone in FEHM zone file format. The zone number will be 1 if this is the first pset for the mesh object.

     pset/mypset/zone/file_name.zone/ascii 42

Write list of nodes in pset mypset to an ascii file named file_name.zone in FEHM zone file format. The zone number will be 42 as specified.

    pset/apset/attribute/itp/1,0,0/10/ge

associate the name apset with the points whose type field(itp1) has value greater than or equal to 10 (these would be boundary nodes).

  pset/apset/ inter / pset1,pset2,pset3

associate the pset name apset with the set of nodes which belong to pset1, and pset2, and pset3.

  pset/p1/attribute/zic/1,0,0/gt 1.0
  pset/p2/attribute/zic/1,0,0/lt 10.0
  pset/pboth/ inter / p1 p2
  
  pset/p1/attribute/zic/ 1,0,0 /gt 1.0
  pset/pboth/attribute/zic/ pset,get,p1 / lt 10.0

associate the name pboth with all nodes that have zic values between 1.0 and 10.0, note both sets of commands have the same result.

pset/mypset/geom/rtz/pset,get,oldpset/0.,0.,0./10.,360.,10.  

associate the name mypset with the nodes that are members of the pset oldpset and which fall inside the cylinder of radius 10 and height 10 and whose axis is the z-axis.

pset/spset/surface/s1/1,0,0

associate the name spset with the set of nodes that lie on the surface s1.

pset/spseta/surface/s2/pset,get,spset

associate the name spseta with the set of nodes that lie on the surface s2 and which are members of the pset spset This command and the previous command would identify the nodes that are on the intersection of surfaces s1 and s2 and give the name spseta to these nodes.

pset/mypset/constraints/3

associate the name mypset with the set of nodes that have 3 constraints ( normally the set of nodes that lie on 3 constrained surfaces – surfaces of type reflect or intrcons)

Click here for demos