pw:: BlockStructured

Structured block type

Derives From

pw::Object pw::Entity pw::GridEntity pw::Block

Summary
Structured block type
This action creates a new structured block object.
This action creates new structured block objects from the given domains.
This action joins as many of the given structured blocks together as possible.
This gets/sets the default interior control function of a structured block when it is created.
This gets/sets the default boundary control function of all faces of a structured block when it is created.
This gets/sets the default elliptic solver engine employed when smoothing a structured block.
This action gets the position of a block grid point.
This action sets the position of a block interior grid point.
This action checks to see if an index corresponds to a point in the interior of the block.
This action returns the indices that are directly connected to the specified index.
This action returns the indices that are directly connected to the specified index.
This converts a block’s ijk index to a linear index.
This action gets the position in the defining space of the block at the given index.
This action gets the position of the block in model space at the given index.
This action gets the indices of the given cell.
This action gets a grid of points in the given direction at the given index.
This action returns true if the entity can be re-extruded.
This action creates a subgrid on this block.
This action gets the number of subgrids in this block.
This action gets the subgrid at the given index.
This action removes the subgrid from the block.
This action gets the face at the given index or computational boundary.
This action adds a face to the block.
This action splits this block in the given direction at the given indices.
This action joins the given block to this block.
This action sets the IJK orientation of this block.
This action aligns the IJK orientation of the given blocks with this block.
This action locks the interior points from being automatically freed.
This action unlocks the interior points and free if there are no more locks on the block.
This actioin gets whether a block is left- or right-handed.
This action gets the named elliptic solver attribute.
This action sets the named elliptic solver attribute.
This gets the named extrusion solver attribute.
This sets the named extrusion solver attribute.
This gets the boundary condition at a given connector region.
This sets the boundary condition at a given connector region.
This attribute is the elliptic solver engine employed when smoothing a structured block.
This attribute is the relaxation factor of the multi-grid algorithm.
This attribute is the Prolongation factor of the multi-grid algorithm.
This attribute is the relaxation factor of the succesive over- relaxtion algorithm.
This attribute is the interior control function of a structured block.
This attribute is the boundary control function of a structured block face.
This attribute is the boundary control function spacing calculation method.
This attribute is the boundary control function spacing blend method.
This attribute is the boundary control function angle calculation method.
This attribute is the boundary control function angle blend method.
This attribute is the boundary constraints of the structured block.
This gets/sets the extrusion mode of this block.
This gets/sets the current state of the height stop condition.
This gets/sets or disables the max aspect ratio stop condition.
This gets/sets or disables the min skew angle stop condition.
This gets/sets the state of the positive skew jacobian stop condition.
This gets/sets the state of the zero jacobian stop condition.
This gets/sets the state of the negative skew jacobian stop condition.
This gets/sets the state of the negative jacobian stop condition.
This gets/sets the extrusion direction.
This specifies the angle tolerance for determining when an arbitrary plane BC is considered equal to a Cartesian plane BC.
This specifies the deviation tolerance for determining when an arbitrary plane BC is considered to be planar.
This gets/sets the direction vector for translate extrusion.
This gets/sets the distance for translate extrusion.
This gets/sets the list of connectors for the path.
This gets the maximum number of steps available as the path extrusion is configured
THis gets/sets the flag indicating if the path extrusion should be rotated tangentally to the path connector.
This gets/sets the intial axis vector for rotate extrusion.
This gets/sets the axis’ end vector for rotate extrusion.
This gets/sets the rotational extrusion angle in degrees.
This gets/sets the explicit smoothing coefficient for the transverse direction.
This gets/sets the implicit smoothing coefficient for the transverse direction.
This gets/sets the Kinsey-Barth coefficient to control smoothing in the marching direction.
This determines how rapidly grid point clustering along the initial grid will be relaxed as the grid is extruded.
This gets/sets the size of the first marching step to value.
This gets/sets a upper limit for the marching step size.
This gets/sets a upper limit for the marching step size.
This gets/sets a scale factor for reducing the local marching step in convex regions and increasing the marching step size in concave regions.
This gets/sets the normals in the marching direction are smoothed locally using a LaPlace filter.
The gets/sets the normals in the marching direction are smoothed locally using a Lalace filter.
This gets/sets the marching step size is smoothed locally using a LaPlace filter.
This gets/sets the marching step size is smoothed locally using a LaPlace filter.
This gets/sets the spacing configuration for the extrusion.
This gets/sets how the marching step size will grow from its initial value.
This gets/sets the collection of connector-object and subconnector- index pairs that specify how the marching step size will grow from its initial value.

Static Actions

create

pw::BlockStructured create

This action creates a new structured block object.

Parameters

There are no parameters for this action.

Returns

This action returns a new pw::BlockStructured object.

createFromDomains

pw::BlockStructured createFromDomains ?-poleDomains poleDomainsVar? ?-reject rejectVar? domains

This action creates new structured block objects from the given domains.

Parameters

-poleDomains poleDomainsVarThis optional parameter is the name string of the variable that recieves a list of new pw::DomainStructured objects that were automatically created as pole domains in order to complete the blocks created.
-reject rejectVarThis optional parameter is the name string of the variable that recieves a list of pw::DomainStructured objects that were not used in creating the blocks.
domainsThis parameter is a list of pw::DomainStructured objects.

Returns

This action returns a list of new pw::BlockStructured objects.

Information

This command supports progress updates.

Notes

While this command will produce identical results when run with the exact same input, it may produce different results for slight variations in the input domains.  The blocks may be created in a different order or may be created with different orientations.  Use the explicit block building routines (pw::FaceStructured.create, pw::BlockStructured.create, pw::Face.addDomain, and pw::Block.addFace commands) to build the block in a controlled manner.

If this command is run inside of a Create pw::Mode, it will only be able to assemble blocks from entities that were created within the same pw::Mode.  If entities created outside of the pw::Mode are also included, the assembly will fail.  Instead, use explicit assembly by creating the pw::FaceStructured objects directly.

join

pw::BlockStructured join ?-reject rejectVar? blocks

This action joins as many of the given structured blocks together as possible.

Parameters

-reject rejectVarThis optional parameter is name string of the variable that recieves a list of pw::BlockStructured objects that were not used in joining.
blocksThis parameter is a list of pw::BlockStructured objects to join.

Returns

This action returns a list of the pw::BlockStructured objects that were joined.  The blocks will contain sub grids that match the sub grids that were in the original blocks, as well as a sub grid for each of the original blocks.  These sub grids will be ordered by their minimum index in I, J, and then K order.

Information

This command supports progress updates.

Static Defaults

InteriorControl

pw::BlockStructured get/setDefault InteriorControl < ThomasMiddlecoff | Laplace | Fixed >

This gets/sets the default interior control function of a structured block when it is created.

Type

This default is of type string with options < ThomasMiddlecoff | Laplace | Fixed >.

Default

The default for this is ThomasMiddlecoff.

FaceControl

pw::BlockStructured get/setDefault FaceControl < HilgenstockWhite | StegerSorenson | None >

This gets/sets the default boundary control function of all faces of a structured block when it is created.

Type

This default is of type string with options < HilgenstockWhite | StegerSorenson | None >.

Default

The default for this is HilgenstockWhite.

SolverEngine

pw::BlockStructured get/setDefault SolverEngine < MultiGrid | SuccessiveOverRelaxation >

This gets/sets the default elliptic solver engine employed when smoothing a structured block.

Type

This default is of type string with options < MultiGrid | SuccessiveOverRelaxation >.

Default

The default for this is MultiGrid.

Instance Actions

getPoint

$block getPoint ?-constrained constrainedVar? < index | ijk_index >

This action gets the position of a block grid point.

Parameters

indexThis parameter is the integer linear index of the grid point to get with the range [1, number of points].
ijk_indexThis parameter is the ijk index of the grid point to get.
-constrained constrainedVarThis optional parameter is the string name of a variable.  If the grid point is database constrained, this variable is set to true.  If not constrained, it is set to false.

Returns

This action returns a point giving the grid point position (may be in the form “u v dbentity”).

setPoint

$block setPoint < index | ijk_index > point

This action sets the position of a block interior grid point.

Parameters

indexThis parameter is the integer linear index of the target grid point to set with the range [1, number of points].  The index must be for an interior grid point.
ijk_indexThis parameter is the ijk index of the grid point to set.
pointThis parameter is the new point value of the grid point.

Returns

This action returns nothing.

Information

Block points are not currently db-constrained, so any database information in the point argument is converted to pure XYZ data before being stored.

isInteriorIndex

$block isInteriorIndex < index | ijk_index >

This action checks to see if an index corresponds to a point in the interior of the block.

Parameters

indexThis parameter is the integer linear index of the grid point with the range [1, number of points].
ijk_indexThis parameter is the ijk index of the point to get.

Returns

This action returns true if the index is an interior point.

getAdjacentIndices

$block getAdjacentIndices ?-linear? < index | ijk_index >

This action returns the indices that are directly connected to the specified index.

Parameters

-linearIf this option is specified, the results will be a list of integer linear indices regardless of the input form.
indexThis parameter is the integer linear index of the grid point with the range [1, number of points].
ijk_indexThis parameter is the ijk index of the point to get.

Returns

This action returns a list of indices representing the adjacent coordinates.  The form of each index will be the same as the input form.  If index is used or -linear is specified, the result will be a list of integer linear indices.  If ijk_index is used and -linear is not specified, the result will be a list of ijk indices.

getCellsUsingIndex

$block getCellsUsingIndex ?-linear? < index | ijk_index >

This action returns the indices that are directly connected to the specified index.

Parameters

-linearIf this option is specified, the results will be a list of integer linear indices regardless of the input form.  This is the default option and is present to maintain consistency with the form of the command used for pw::BlockStructured and pw::BlockExtruded objects.
indexThis parameter is the integer linear index of the grid point with the range [1, number of points].
ijk_indexThis parameter is the ijk index of the point to get.

Returns

This action returns a list of cell entries using the specified point.  Each cell entry will be a list of point indices comprising the cell.  The form of each point index will be the same as the input form.  If index is used or -linear is specified, each cell entry will be a list of integer linear indices.  If ijk_index is used and -linear is not specified, each cell entry will be a list of ijk indices.

getLinearIndex

$blk getLinearIndex ijk_index

This converts a block’s ijk index to a linear index.

Parameters

ijk_indexThis parameter is the ijk index to convert.

Returns

This action returns the linear index value of the point.

getPosition

$block getPosition ?-grid? < index | ijk_index >

This action gets the position in the defining space of the block at the given index.

Parameters

-gridThis optional flag is a notification to get the position at a grid point which is the default.
indexThis parameter is the integer linear index of the point to get.
ijk_indexThis parameter is the ijk index integer list of the point to get.

Returns

This action returns a point giving the position on the block (may be in the form “u v dbentity”).

Information

Even though it is not needed, the -grid switch is included here to be consistent with the other grid entity getPosition methods.  The following calls are equivalent:

$strblk1 getPosition -grid [list 1 2 3]
$strblk1 getPosition [list 1 2 3]

See Also

pw::Block.getPosition, pw::BlockExtruded.getPosition, pw::Connector.getPosition, pw::Domain.getPosition, pw::DomainStructured.getPosition

getXYZ

$block getXYZ ?-grid? < index | ijk_index >

This action gets the position of the block in model space at the given index.

Parameters

-gridThis optional flag is the notification to get the position at a grid point which is the default.
indexThis parameter is the integer linear index of the point to get.
ijk_indexThis parameter is the ijk index integer list of the point to get.

Returns

This action returns an XYZ vector.

Information

Even though it is not needed, the -grid switch is included here to be consistent with the other grid entity getPosition methods.  The following calls are equivalent:

$strblk1 getXYZ -grid 22
$strblk1 getXYZ 22

See Also

pw::Block.getXYZ, pw::BlockExtruded.getXYZ, pw::Connector.getXYZ, pw::Domain.getXYZ, pw::DomainStructured.getXYZ

getCell

$block getCell ?-uncollapsed? < index | ijk_index >

This action gets the indices of the given cell.

Parameters

-uncollapsedIf this optional flag is specified, degenerate hex cells are returned without coincident grid points collapsed.  By default, degenerate hex cells are collapsed before they are returned (see Notes).  If a hex cell does NOT contain any coincident grid points, this option is ignored and a normal hex cell is returned.
indexThis parameter is the integer linear index of the cell to get.
ijk_indexThis parameter is the ijk index integer list of the cell to get.

Returns

This action returns a list of integer linear point indicies if index is used, or a list of ijk integer point indicies if ijk_index is used.

Notes

Collaped (degenerate) hex cells are possible if a block contains one or more poles.

Only cells that collapse to a tetrahedral, prism, or pyramid are returned.  Other collapsed cell topologies are returned as-is without collapsing (an 8-point, degenerate hex).

getXYZsAtIndex

$block getXYZsAtIndex ?< -I | -J | -K >? index

This action gets a grid of points in the given direction at the given index.

Parameters

-IThis optional flag is a notification to use a constant I index which is the default.
-JThis optional flag is a notification to use a constant J index
-KThis optional flag is a notification to use a constant K index
indexThis parameter is the integer index to get the grid at; (1, ijk_dimension).

Returns

This action returns a list of XYZ vectors.

canReExtrude

$entity canReExtrude

This action returns true if the entity can be re-extruded.

Parameters

none

Returns

This action returns a boolean value indicating if the entity can be re-extruded.

Example

This example shows how to get a list of all entities that can be re-extruded.

Code

puts "Entities valid for re-extrusion:"
set reExtEnts [list]
foreach ent [pw::Grid getAll] {
if {[$ent canReExtrude]} {
lappend reExtEnts $ent
puts " [$ent getName]"
}
}

createSubGrid

$block createSubGrid min_ijk max_ijk

This action creates a subgrid on this block.

Parameters

min_ijkThis parameter is the minimum ijk index.
max_ijkThis parameter is the maximum ijk index.

Returns

This action returns a new pw::BlockSubGrid object.

getSubGridCount

$block getSubGridCount

This action gets the number of subgrids in this block.

Parameters

This action has no parameters.

Returns

This action returns the number of subgrids.

getSubGrid

$block getSubGrid index

This action gets the subgrid at the given index.

Parameters

indexThis parameter is the index of the subgrid to get with the range [1, number of subgrids].

Returns

This action returns a pw::BlockSubGrid object.

removeSubGrid

$block removeSubGrid < index | subgrid >

This action removes the subgrid from the block.

Parameters

indexThis parameter is the index of the subgrid to remove with the range [1, number of subgrids].
subgridThis parameter is a pw::BlockSubGrid object to remove.

Returns

This action returns nothing.

getFace

$block getFace < index | boundary >

This action gets the face at the given index or computational boundary.

Parameters

indexThis parameter is the integer index of the face to get with the range [1, number of faces].
boundaryThis parameter is the computational boundary string with options < KMinimum | KMaximum | IMinimum | IMaximum | JMinimum | JMaximum >.

Returns

This action returns a pw::FaceStructured object.

addFace

$block addFace face

This action adds a face to the block.

Parameters

faceThis parameter is the pw::FaceStructured to add.

Notes

Any face can be added as the first face.  Subsequent faces must share at least one edge with previously added faces.  This means that you can not add opposing faces as the first two faces.

After the sixth face is added, the code reassembles the faces in order to optimize the corner Jacobians and to make sure the block is right-handed.  Use pw::BlockStructured.setOrientation after the block is created if a particular orientation is required.

Returns

This action returns nothing.

split

$block split ?< -I | -J | -K >? indices

This action splits this block in the given direction at the given indices.

Parameters

-IThis optional flag is a notification to split at a constant I index which is the default.
-JThis optional flag is a notification to split at a constant J index.
-KThis optional flag is a notification to split at a constant K index.
indicesThis parameter is the integer list of indices to split at; (1, ijk_dimension).

Returns

This action returns a list of pw::BlockStructured objects.

join

$block join block ?side?

This action joins the given block to this block.

Parameters

blockThis parameter is the pw::BlockStructured object to join with.
sideThis parameter is the side of this block to join the given block to with options < Any | KMinimum | KMaximum | IMinimum | IMaximum | JMinimum | JMaximum >.

Returns

This action returns nothing.

Information

The joined block will contain sub grids that match the sub grids that were in the original blocks, as well as a sub grid for each of the original blocks.  These sub grids will be ordered by their minimum index in I, J, and then K order.

setOrientation

$block setOrientation < i_face j_face k_face | i_edge j_edge >

This action sets the IJK orientation of this block.

Parameters

i_faceThis parameter is the face index/boundary to be used as the Imin Face.
j_faceThis parameter is the face index/boundary to be used as the Jmin Face.
k_faceThis parameter is the face index/boundary to be used as the Kmin Face.
i_edgeThis parameter is the face index/boundary to be used as the Imin Edge (for 2D).
j_edgeThis parameter is the face index/boundary to be used as the Jmin Edge (for 2D).

Returns

This action returns nothing.

Information

Each i_face, j_face, and k_face type is one of either an integer index; [1, number of faces], or a computational boundary; < KMinimum | KMaximum | IMinimum | IMaximum | JMinimum | JMaximum >.

alignOrientation

$block alignOrientation blocks

This action aligns the IJK orientation of the given blocks with this block.  If any blocks in the given list are not topologically connected to this block, they will be ignored.

Parameters

blocksThis parameter is a list of pw::BlockStructured objects to align with.

Returns

This action returns nothing.

lockInterior

$block lockInterior

This action locks the interior points from being automatically freed.

Parameters

There are no parameters for this action.

Returns

This action returns nothing.

unlockInterior

$block unlockInterior

This action unlocks the interior points and free if there are no more locks on the block.

Parameters

There are no parameters for this action.

Returns

This action returns nothing.

getHandedness

$block getHandedness

This actioin gets whether a block is left- or right-handed.

Parameters

There are no parameters for this action.

Returns

This action returns a string; < Left | Right >.

getEllipticSolverAttribute

$block getEllipticSolverAttribute ?-face index? att_name ?value_type?

This action gets the named elliptic solver attribute.

Parameters

-face indexThis optional parameter is the face to get the attribute from.  If not given and the attribute applies to faces, a list of attributes will be returned.
att_nameThis parameter is the name of the attribute to get.
value_typeThis parameter is the type string of value to get; < Actual | Default >.

Returns

This action returns the actual or default value of the attribute.

setEllipticSolverAttribute

$block setEllipticSolverAttribute ?-face index? att_name att_value

This action sets the named elliptic solver attribute.

Parameters

-face indexThis optional parameter is the face to set the attribute to.  If not given the attribute is applied to all faces.
att_nameThis parameter is the name of the attribute to set.
att_valueThis parameter is the value to set the attribute to set.

Returns

This action returns nothing.

getExtrusionSolverAttribute

$block getExtrusionSolverAttribute att_name ?value_type?

This gets the named extrusion solver attribute.

Parameters

att_nameThis parameter is the name string of the attribute to get.
value_typeThis parameter is the type string of value to get; < Actual | Default >.

Returns

This returns the actual or default value of the attribute.

setExtrusionSolverAttribute

$block setExtrusionSolverAttribute att_name att_value

This sets the named extrusion solver attribute.

Parameters

att_nameThis parameter is the name string of the attribute to set.
att_valueThis parameter is the new attribute value.

Returns

This returns nothing.

getExtrusionBoundaryCondition

$block getExtrusionBoundaryCondition edge_con_pair

This gets the boundary condition at a given connector region.

Parameters

edge_con_pairThis parameter is a two element list consisting of the edge index and the connector index.

Returns

This action returns the string name of the boundary condition, except in the case of Splay, DatabaseConstrained and AdjacentGrid.  In those cases, this action returns a list containing the string name of the boundary condition and the float splay factor (for Splay) or the pertinent entities (pw::DatabaseEntity for DatabaseConstrained or pw::DomainStructured for AdjacentGrid).

Boundary Conditions

SplayGrid boundaries move outward according to the splay factor.
ConstantXGrid points on the front maintain a constant X coordinate value.
ConstantYGrid points on the front maintain a constant Y coordinate value.
ConstantZGrid points on the front maintain a constant Z coordinate value.
SymmetryXGrid symmetry is maintained in the X direction.
SymmetryYGrid symmetry is maintained in the Y direction.
SymmetryZGrid symmetry is maintained in the Z direction.
FloatingXGrid points on the front maintain a constant Y and Z coordinate value (only X floats).
FloatingYGrid points on the front maintain a constant Z and X coordinate value (only Y floats).
FloatingZGrid points on the front maintain a constant X and Y coordinate value (only Z floats).
ArbitraryPlaneDetermines the plane in which the connector lies and constrains the grid points to that plane as the front advances.
DatabaseConstrainedGrid points in the front are projected to one or more database surfaces using closest point projection method.
AdjacentGridGrid points in the front are constrained to match the grid points in an existing domain.
ConnectionGrid points are constrained through an internal grid connection within the front.  This condition is set automatically and cannot be set explicitly.  A Connection boundary cannot be changed to another condition type.

setExtrusionBoundaryCondition

$block setExtrusionBoundaryCondition edge_con_pair boundary_condition ?splay_factor | entity_list?

This sets the boundary condition at a given connector region.

Parameters

edge_con_pairThis parameter is a two element list consisting of the edge index and the connector index.
boundary_conditionThis parameter is boundary condition name string.
splay_factorValid only for the Splay condition, this parameter is a float with the range [0.0, 1.0].  0.0 indicates no splay while 1.0 is full splay.
entity_listThis parameter is a list of pw::DatabaseEntity or pw::DomainStructured for the DatabaseConstrained and AdjacentGrid conditions, respectively.

Returns

This returns nothing.

See Also

getExtrusionBoundaryCondition

Elliptic Solver Attributes

SolverEngine

$block get/setEllipticSolverAttribute SolverEngine function

This attribute is the elliptic solver engine employed when smoothing a structured block.

Type

This attribute is a string with options < MultiGrid | SuccessiveOverRelaxation >.

Default

The default for this attribute is set using the current value of the default pw::BlockStructured.SolverEngine.

MultiGridRelaxationFactor

$block get/setEllipticSolverAttribute MultiGridRelaxationFactor < factor | value >

This attribute is the relaxation factor of the multi-grid algorithm.

Type

This attribute is Default or a float with the range (0.0, 2.0].

Default

The default for this attribute is Default.

MultiGridProlongationFactor

$block get/setEllipticSolverAttribute MultiGridProlongationFactor < factor | value >

This attribute is the Prolongation factor of the multi-grid algorithm.

Type

This attribute is Default or a float with the range (0.0, 2.0].

Default

The default for this attribute is Default.

RelaxationFactor

$block get/setEllipticSolverAttribute RelaxationFactor < factor | value >

This attribute is the relaxation factor of the succesive over- relaxtion algorithm.

Type

This attribute is a string with options < Optimal | Nominal > or a float with the range (0.0, 2.0].

Default

The default for this attribute is Optimal.

InteriorControl

$block get/setEllipticSolverAttribute InteriorControl func

This attribute is the interior control function of a structured block.

Type

This attribute is a string with options < ThomasMiddlecoff | Laplace | Fixed >.

Default

The default for this attribute is the value in the InteriorControl default when the block was created.

FaceControl

$block get/setEllipticSolverAttribute ?-face index? FaceControl func

This attribute is the boundary control function of a structured block face.

Type

This attribute is a string with options < HilgenstockWhite | StegerSorenson | None >.

Default

The default for this attribute is the value in the FaceControl default when the block was created.

FaceSpacingCalculation

$block get/setEllipticSolverAttribute ?-face index? FaceSpacingCalculation < method | value >

This attribute is the boundary control function spacing calculation method.

Type

This attribute is a string with options < Interpolate | Current > or an explicit spacing value with the range (0.0, infinity).

Default

The default for this attribute is Interpolate.

FaceSpacingBlend

$block get/setEllipticSolverAttribute ?-face index? FaceSpacingBlend < method | value >

This attribute is the boundary control function spacing blend method.

Type

This attribute is a string with options < Exponential | Linear > or an explicit decay value with the range [1, infinity).

Default

The default for this attribute is Expotential.

FaceAngleCalculation

$block get/setEllipticSolverAttribute ?-face index? FaceAngleCalculation method

This attribute is the boundary control function angle calculation method.

Type

This attribute is a string with options < Orthogonal | Interpolate | Current >.

Default

The default for this attribute is Orthogonal.

FaceAngleBlend

$block get/setEllipticSolverAttribute ?-face index? FaceAngleBlend < method | value >

This attribute is the boundary control function angle blend method.

Type

This attribute is a string with options < Exponential | Linear > or an explicit decay value with the range [1, infinity).

Default

The default for this attribute is Exponential.

FaceConstraint

$block get/setEllipticSolverAttribute ?-face index? FaceConstraint constraint

This attribute is the boundary constraints of the structured block.

Type

This attribute is a string wth options < Fixed | Floating >.

Default

The default for this attribute is Fixed.

Generic Extrusion Solver Attributes

Mode

$block get/setExtrusionSolverAttribute Mode < NormalHyperbolic | NormalAlgebraic | Path | Rotate | Translate >

This gets/sets the extrusion mode of this block.

Type

This attribute is a string with options < NormalHyperbolic | NormalAlgebraic | Path | Rotate | Translate >.

Default

The default for this attribute is NormalHyperbolic.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

StopAtHeight

$block get/setExtrusionSolverAttribute StopAtHeight < height | Off | Default >

This gets/sets the current state of the height stop condition.

Type

This attribute is a float with the range (0, inf).

Default

The default for this attribute is Off.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

StopAtAspectRatio

$block get/setExtrusionSolverAttribute StopAtAspectRatio < height | Off | Default >

This gets/sets or disables the max aspect ratio stop condition.

Type

This attribute is a float with the range [1.0, inf].

Default

The default for this attribute is Off.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

StopAtSkewAngle

$block get/setExtrusionSolverAttribute StopAtSkewAngle < height | Off | Default >

This gets/sets or disables the min skew angle stop condition.

Type

This attribute is a float with the range (0, inf].

Default

The default for this attribute is Off.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

StopAtPositiveSkewJacobian

$block get/setExtrusionSolverAttribute StopAtPositiveSkewJacobian < Default | Off | bool_value >

This gets/sets the state of the positive skew jacobian stop condition.

Type

This attribute is a boolean.

Default

The default of this attribute is true.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

StopAtZeroJacobian

$block get/setExtrusionSolverAttribute StopAtZeroJacobian < Default | Off | bool_value >

This gets/sets the state of the zero jacobian stop condition.

Type

This attribute is a boolean.

Default

The default for this attribute is true.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

StopAtNegativeSkewJacobian

$block get/setExtrusionSolverAttribute StopAtNegativeSkewJacobian < Default | Off | bool_value >

This gets/sets the state of the negative skew jacobian stop condition.

Type

This attribute is a boolean.

Default

The default for this attribute is true.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

StopAtNegativeJacobian

$block get/setExtrusionSolverAttribute StopAtNegativeJacobian < Default | Off | bool_value >

This gets/sets the state of the negative jacobian stop condition.

Type

This attribute is a boolean.

Default

The default of this attribute is true.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

DirectionFlipped

$block get/setExtrusionSolverAttribute DirectionFlipped flipped

This gets/sets the extrusion direction.

Type

This attribute is a boolean.

Default

The default for this attribute is false.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

PlaneAngleTolerance

$block get/setExtrusionSolverAttribute PlaneAngleTolerance tolerance

This specifies the angle tolerance for determining when an arbitrary plane BC is considered equal to a Cartesian plane BC.

Type

This attribute is a float with the range [0.0, 90.0).

Default

The default for this attriute is 10.0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

PlaneDeviationTolerance

$block get/setExtrusionSolverAttribute PlaneDeviationTolerance tolerance

This specifies the deviation tolerance for determining when an arbitrary plane BC is considered to be planar.

Type

This attribute is a float with the range [0.0, inf).

Default

The default for this attribute is defined in the GgBlockExtrudeNormalAtts class.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

Translational Extrusion Solver Attributes

TranslateDirection

$block get/setExtrusionSolverAttribute TranslateDirection direction

This gets/sets the direction vector for translate extrusion.

Type

This attribure is of type vector.

Default

The default for this attribute is (1, 0, 0).

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

TranslateDistance

$block get/setExtrusionSolverAttribute TranslateDistance distance

This gets/sets the distance for translate extrusion.

Type

This attribute is a float.

Default

The default for this attribute is 1.0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

Path Extrusion Solver Attributes

PathConnectors

$block get/setExtrusionSolverAttribute PathConnectors <con_list>

This gets/sets the list of connectors for the path.

Type

This attribute is a list of pw::Connector objects, with an optional string as the first entry to specify the direction of the chain of connectors.  The direction is specified using ‘Forward’ or ‘Reverse’.  When querying, the direction is always the first entry in the list.

Default

The default for this attribute is an empty list.

PathMaximumSteps

$block getExtrusionSolverAttribute PathMaximumSteps steps

This gets the maximum number of steps available as the path extrusion is configured

Type

This attribute is a integer.

Information

This attribute is read only.

See Also

getExtrusionSolverAttribute

PathUseTangent

$block get/setExtrusionSolverAttribute PathUseTangent use

THis gets/sets the flag indicating if the path extrusion should be rotated tangentally to the path connector.

Type

This attribute is a boolean.

Default

The default for this attribute is true.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

Rotational Extrusion Solver Attributes

RotateAxisStart

$block get/setExtrusionSolverAttribute RotateAxisStart axis

This gets/sets the intial axis vector for rotate extrusion.

Type

This attribute is a vector.

Default

The default for this attribute is (0, 0, 0).

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

RotateAxisEnd

$block get/setExtrusionSolverAttribute RotateAxisEnd axis

This gets/sets the axis’ end vector for rotate extrusion.

Type

This attribute is a vector.

Default

The default for this attribute is (1, 0, 0).

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

RotateAngle

$block get/setExtrusionSolverAttribute RotateAngle degrees

This gets/sets the rotational extrusion angle in degrees.

Type

This attribute is a float with the range [0.0, 360].

Default

The default for this attribute is 90.0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

Normal Extrusion Solver Attributes

NormalExplicitSmoothing

$block get/setExtrusionSolverAttribute NormalExplicitSmoothing < Default | ij_vector >

This gets/sets the explicit smoothing coefficient for the transverse direction.

Type

This attribute is a 2D vector with the range [0.0, 10.0].

Default

The default for this attribute is the vector (0.5, 0.5).

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalImplicitSmoothing

$block get/setExtrusionSolverAttribute NormalImplicitSmoothing < Default | ij_vector >

This gets/sets the implicit smoothing coefficient for the transverse direction.

Type

This attribute is a 2D vector with the range [0.0, 20.0].  The value should be greater than twice the NormalExplicitSmoothing value.

Default

The default for this attribute is the vector (1.0, 1.0).

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalKinseyBarthSmoothing

$block get/setExtrusionSolverAttribute NormalKinseyBarthSmoothing < Default | ij_vector >

This gets/sets the Kinsey-Barth coefficient to control smoothing in the marching direction.

Type

This attribute is a 2D vector with the range [0.0, 20.0].  Values greater than 1 help to prevent crossing of grid lines in the marching direction.  A value of 3 or more is recommended if the initial grid contains severe concavities.

Default

The default for this attribute is the vector (0.0, 0.0).

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalVolumeSmoothing

$block get/setExtrusionSolverAttribute NormalVolumeSmoothing < Default | value >

This determines how rapidly grid point clustering along the initial grid will be relaxed as the grid is extruded.

Type

This attribute is a float with the range [0.0, 1.0].  A value of 0.0 retains the clustering out to the outer boundary.  The default value of 0.5 rapidly relaxes the clustering.

Default

The default for this attribute is 0.5.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalInitialStepSize

$block get/setExtrusionSolverAttribute NormalInitialStepSize < Default | size >

This gets/sets the size of the first marching step to value.

Type

THis attribute is a float with the range (0.0, infinity).

Default

The default for this attribute is the default connector distribution begin spacing, if non-zero or 0.01.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalMaximumStepSize

$block get/setExtrusionSolverAttribute NormalMaximumStepSize < Default | size >

This gets/sets a upper limit for the marching step size.

Type

This attribute is a float with the range [0, infinity).  0 disables the limit.

Default

The default for this attribute is 0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalMinimumStepSize

$block get/setExtrusionSolverAttribute NormalMinimumStepSize < Default | size >

This gets/sets a upper limit for the marching step size.

Type

This attribute is a float with the range [0, infinity).  A value of 0 disables the limit.

Default

The default for this attribute is 0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalCornerFactor

$block get/setExtrusionSolverAttribute NormalCornerFactor < Default | factor >

This gets/sets a scale factor for reducing the local marching step in convex regions and increasing the marching step size in concave regions.

Type

This attribute is a float with the range [0, 100.0).  The value of 0 will disable this factor.

Default

The default for this attribute is 5.0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalDirectionRelaxation

$block get/setExtrusionSolverAttribute NormalDirectionRelaxation < Default | factor >

This gets/sets the normals in the marching direction are smoothed locally using a LaPlace filter.  This option sets the relaxation factor for the filter.

Type

This attribute is a float with the range [0.0, 1.0].

Default

The default for this attribute is 0.5.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalDirectionRelaxationIterations

$block get/setExtrusionSolverAttribute NormalDirectionRelaxationIterations < Default | iterations >

The gets/sets the normals in the marching direction are smoothed locally using a Lalace filter.  This option sets the number of marching iterations for the filter.

Type

This attribute is an integer with the range [0, infinity).

Default

The default for this attribute is 5.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalStepSizeRelaxation

$block get/setExtrusionSolverAttribute NormalStepSizeRelaxation < Default | factor >

This gets/sets the marching step size is smoothed locally using a LaPlace filter.  This option sets the relaxation factor for the filter.

Type

This attribute is a float with the range [0.0, 1.0].

Default

The default for this attribute is 0.7.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalStepSizeRelaxationIterations

$block get/setExtrusionSolverAttribute NormalStepSizeRelaxationIterations < Default | iterations >

This gets/sets the marching step size is smoothed locally using a LaPlace filter.  This option sets the number of marching iterations for the filter.

Type

This attribute is an integer with the range [0, infinity).

Default

The default for this attribute is 3.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

Spacing Extrusion Solver Attributes

SpacingMode

$block get/setExtrusionSolverAttribute SpacingMode < Algebraic | Connector | Default >

This gets/sets the spacing configuration for the extrusion.

Type

This attribute is a string with options < Algebraic | Connector | Default >.

Default

The default for this attribute is Algebraic.

Information

The Algebraic mode uses a linear spacing for translational, rotational and path extrusions.  For normal extrusions, Algebraic mode spaces the grid by applying a geometric growth controlled by SpacingGrowthFactor.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

SpacingGrowthFactor

$block get/setExtrusionSolverAttribute SpacingGrowthFactor < Default | factor >

This gets/sets how the marching step size will grow from its initial value.

Type

This attribute is a float with the range (0.0, infinity).

Default

The default for this attribute is 1.10.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

SpacingConnectors

$block get/setExtrusionSolverAttribute SpacingConnectors subcon_list

This gets/sets the collection of connector-object and subconnector- index pairs that specify how the marching step size will grow from its initial value.

Type

This attribute is a list of subconnectors where each entry is a pw::Connector object and subconnector index.  If the pw::Connector only has one subconnector, the index can be omitted.  The direction of the chain of subconnectors can be specified by using either the word ‘Forward’ or the word ‘Reverse’ as the very first entry.  This is only necessary when the list of subconnectors is comprised of a single subconnector.  Otherwise, the direction can be determined from the order of the subconnectors.

Default

The default for this attribute is an empty list.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

pw::BlockStructured create
This action creates a new structured block object.
pw::BlockStructured createFromDomains ?-poleDomains poleDomainsVar? ?-reject rejectVar? domains
This action creates new structured block objects from the given domains.
pw::BlockStructured join ?-reject rejectVar? blocks
This action joins as many of the given structured blocks together as possible.
pw::BlockStructured get/setDefault InteriorControl < ThomasMiddlecoff | Laplace | Fixed >
This gets/sets the default interior control function of a structured block when it is created.
pw::BlockStructured get/setDefault FaceControl < HilgenstockWhite | StegerSorenson | None >
This gets/sets the default boundary control function of all faces of a structured block when it is created.
pw::BlockStructured get/setDefault SolverEngine < MultiGrid | SuccessiveOverRelaxation >
This gets/sets the default elliptic solver engine employed when smoothing a structured block.
$block getPoint ?-constrained constrainedVar? < index | ijk_index >
This action gets the position of a block grid point.
$block setPoint < index | ijk_index > point
This action sets the position of a block interior grid point.
$block isInteriorIndex < index | ijk_index >
This action checks to see if an index corresponds to a point in the interior of the block.
$block getAdjacentIndices ?-linear? < index | ijk_index >
This action returns the indices that are directly connected to the specified index.
$block getCellsUsingIndex ?-linear? < index | ijk_index >
This action returns the indices that are directly connected to the specified index.
$blk getLinearIndex ijk_index
This converts a block’s ijk index to a linear index.
An index is a list of integer values.
$block getPosition ?-grid? < index | ijk_index >
This action gets the position in the defining space of the block at the given index.
$block getXYZ ?-grid? < index | ijk_index >
This action gets the position of the block in model space at the given index.
$block getCell ?-uncollapsed? < index | ijk_index >
This action gets the indices of the given cell.
$block getXYZsAtIndex ?< -I | -J | -K >? index
This action gets a grid of points in the given direction at the given index.
$entity canReExtrude
This action returns true if the entity can be re-extruded.
$block createSubGrid min_ijk max_ijk
This action creates a subgrid on this block.
$block getSubGridCount
This action gets the number of subgrids in this block.
$block getSubGrid index
This action gets the subgrid at the given index.
$block removeSubGrid < index | subgrid >
This action removes the subgrid from the block.
$block getFace < index | boundary >
This action gets the face at the given index or computational boundary.
$block addFace face
This action adds a face to the block.
$block split ?< -I | -J | -K >? indices
This action splits this block in the given direction at the given indices.
$block setOrientation < i_face j_face k_face | i_edge j_edge >
This action sets the IJK orientation of this block.
$block alignOrientation blocks
This action aligns the IJK orientation of the given blocks with this block.
$block lockInterior
This action locks the interior points from being automatically freed.
$block unlockInterior
This action unlocks the interior points and free if there are no more locks on the block.
$block getHandedness
This actioin gets whether a block is left- or right-handed.
$block getEllipticSolverAttribute ?-face index? att_name ?value_type?
This action gets the named elliptic solver attribute.
$block setEllipticSolverAttribute ?-face index? att_name att_value
This action sets the named elliptic solver attribute.
$block getExtrusionSolverAttribute att_name ?value_type?
This gets the named extrusion solver attribute.
$block setExtrusionSolverAttribute att_name att_value
This sets the named extrusion solver attribute.
$block getExtrusionBoundaryCondition edge_con_pair
This gets the boundary condition at a given connector region.
$block setExtrusionBoundaryCondition edge_con_pair boundary_condition ?splay_factor | entity_list?
This sets the boundary condition at a given connector region.
$block get/setEllipticSolverAttribute MultiGridRelaxationFactor < factor | value >
This attribute is the relaxation factor of the multi-grid algorithm.
$block get/setEllipticSolverAttribute MultiGridProlongationFactor < factor | value >
This attribute is the Prolongation factor of the multi-grid algorithm.
$block get/setEllipticSolverAttribute RelaxationFactor < factor | value >
This attribute is the relaxation factor of the succesive over- relaxtion algorithm.
$block get/setEllipticSolverAttribute ?-face index? FaceSpacingCalculation < method | value >
This attribute is the boundary control function spacing calculation method.
$block get/setEllipticSolverAttribute ?-face index? FaceSpacingBlend < method | value >
This attribute is the boundary control function spacing blend method.
$block get/setEllipticSolverAttribute ?-face index? FaceAngleCalculation method
This attribute is the boundary control function angle calculation method.
$block get/setEllipticSolverAttribute ?-face index? FaceAngleBlend < method | value >
This attribute is the boundary control function angle blend method.
$block get/setEllipticSolverAttribute ?-face index? FaceConstraint constraint
This attribute is the boundary constraints of the structured block.
$block get/setExtrusionSolverAttribute Mode < NormalHyperbolic | NormalAlgebraic | Path | Rotate | Translate >
This gets/sets the extrusion mode of this block.
$block get/setExtrusionSolverAttribute StopAtHeight < height | Off | Default >
This gets/sets the current state of the height stop condition.
$block get/setExtrusionSolverAttribute StopAtAspectRatio < height | Off | Default >
This gets/sets or disables the max aspect ratio stop condition.
$block get/setExtrusionSolverAttribute StopAtSkewAngle < height | Off | Default >
This gets/sets or disables the min skew angle stop condition.
$block get/setExtrusionSolverAttribute StopAtPositiveSkewJacobian < Default | Off | bool_value >
This gets/sets the state of the positive skew jacobian stop condition.
$block get/setExtrusionSolverAttribute StopAtZeroJacobian < Default | Off | bool_value >
This gets/sets the state of the zero jacobian stop condition.
$block get/setExtrusionSolverAttribute StopAtNegativeSkewJacobian < Default | Off | bool_value >
This gets/sets the state of the negative skew jacobian stop condition.
$block get/setExtrusionSolverAttribute StopAtNegativeJacobian < Default | Off | bool_value >
This gets/sets the state of the negative jacobian stop condition.
$block get/setExtrusionSolverAttribute DirectionFlipped flipped
This gets/sets the extrusion direction.
$block get/setExtrusionSolverAttribute PlaneAngleTolerance tolerance
This specifies the angle tolerance for determining when an arbitrary plane BC is considered equal to a Cartesian plane BC.
$block get/setExtrusionSolverAttribute PlaneDeviationTolerance tolerance
This specifies the deviation tolerance for determining when an arbitrary plane BC is considered to be planar.
$block get/setExtrusionSolverAttribute TranslateDirection direction
This gets/sets the direction vector for translate extrusion.
$block get/setExtrusionSolverAttribute TranslateDistance distance
This gets/sets the distance for translate extrusion.
$block get/setExtrusionSolverAttribute PathConnectors <con_list>
This gets/sets the list of connectors for the path.
$block getExtrusionSolverAttribute PathMaximumSteps steps
This gets the maximum number of steps available as the path extrusion is configured
$block get/setExtrusionSolverAttribute PathUseTangent use
THis gets/sets the flag indicating if the path extrusion should be rotated tangentally to the path connector.
$block get/setExtrusionSolverAttribute RotateAxisStart axis
This gets/sets the intial axis vector for rotate extrusion.
$block get/setExtrusionSolverAttribute RotateAxisEnd axis
This gets/sets the axis’ end vector for rotate extrusion.
$block get/setExtrusionSolverAttribute RotateAngle degrees
This gets/sets the rotational extrusion angle in degrees.
$block get/setExtrusionSolverAttribute NormalExplicitSmoothing < Default | ij_vector >
This gets/sets the explicit smoothing coefficient for the transverse direction.
$block get/setExtrusionSolverAttribute NormalImplicitSmoothing < Default | ij_vector >
This gets/sets the implicit smoothing coefficient for the transverse direction.
$block get/setExtrusionSolverAttribute NormalKinseyBarthSmoothing < Default | ij_vector >
This gets/sets the Kinsey-Barth coefficient to control smoothing in the marching direction.
$block get/setExtrusionSolverAttribute NormalVolumeSmoothing < Default | value >
This determines how rapidly grid point clustering along the initial grid will be relaxed as the grid is extruded.
$block get/setExtrusionSolverAttribute NormalInitialStepSize < Default | size >
This gets/sets the size of the first marching step to value.
$block get/setExtrusionSolverAttribute NormalMaximumStepSize < Default | size >
This gets/sets a upper limit for the marching step size.
$block get/setExtrusionSolverAttribute NormalMinimumStepSize < Default | size >
This gets/sets a upper limit for the marching step size.
$block get/setExtrusionSolverAttribute NormalCornerFactor < Default | factor >
This gets/sets a scale factor for reducing the local marching step in convex regions and increasing the marching step size in concave regions.
$block get/setExtrusionSolverAttribute NormalDirectionRelaxation < Default | factor >
This gets/sets the normals in the marching direction are smoothed locally using a LaPlace filter.
$block get/setExtrusionSolverAttribute NormalDirectionRelaxationIterations < Default | iterations >
The gets/sets the normals in the marching direction are smoothed locally using a Lalace filter.
$block get/setExtrusionSolverAttribute NormalStepSizeRelaxation < Default | factor >
This gets/sets the marching step size is smoothed locally using a LaPlace filter.
$block get/setExtrusionSolverAttribute NormalStepSizeRelaxationIterations < Default | iterations >
This gets/sets the marching step size is smoothed locally using a LaPlace filter.
$block get/setExtrusionSolverAttribute SpacingMode < Algebraic | Connector | Default >
This gets/sets the spacing configuration for the extrusion.
$block get/setExtrusionSolverAttribute SpacingGrowthFactor < Default | factor >
This gets/sets how the marching step size will grow from its initial value.
$block get/setExtrusionSolverAttribute SpacingConnectors subcon_list
This gets/sets the collection of connector-object and subconnector- index pairs that specify how the marching step size will grow from its initial value.
Base type for all glyph types
Entity type
Block type
Structured block type
A string is an array of characters.
Structured domain type
pw::FaceStructured create
This action creates a new structured face object.
$face addDomain ?-linkage linkage? domain
This action adds a domain to this face.
$block addFace face
This action adds a face to the block.
The mode base type
Structured face type
An integer is a whole number.
A point is a position either in model space or database parameter space.
Extruded block type
$block getPosition ?-grid? index
This action gets the position in the defining space of the block at the given index.
$block getPosition ?-grid? < index | ijk_index >
This action gets the position in the defining space of the block at the given index.
$con getPosition ?< -grid | -control | -parameter | -arc | -X | -Y | -Z | -closest >? value
This action gets a position on a connector in the defining space of the connector.
$dom getPosition ?-grid? value
This action gets a position in the defining space of the domain.
$dom getPosition ?-grid? value
This action gets the position in the defining space of the domain at the given index.
A vector is a list of float values.
$block getXYZ ?-grid? index
This action gets the position of the block in model space at the given index.
$block getXYZ ?-grid? < index | ijk_index >
This action gets the position of the block in model space at the given index.
$con getXYZ ?< -grid | -control | -parameter | -arc | -X | -Y | -Z | -closest >? value
This action gets the model space position on a connector.
$dom getXYZ ?-grid? value
This action gets a position of the domain in model space.
$dom getXYZ ?-grid? value
This action gets the position of the domain in model space at the given index.
A boolean is represented as a 0 or 1, with 0 being false and 1 being true.
Block subgrid type
A float is a fractional number.
Base type for all database entities
Connector type