pw:: BlockStructured

A structured block is a computationally orthogonal volume grid, bounded by exactly six pw::FaceStructured faces, any of which can be degenerate in one (line) or zero (pole) dimensions.

Derives From

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

Summary
A structured block is a computationally orthogonal volume grid, bounded by exactly six pw::FaceStructured faces, any of which can be degenerate in one (line) or zero (pole) dimensions.
This action creates a new structured block object.
This action creates new structured block objects from the given domains.
This action, given a list of lists of lists of xyz values, creates a new structured block from those xyz values.
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 gets the subgrid list.
This action removes the subgrid from the block.
This action gets the last elliptic solver residual info for the block/subgrid at the given index.
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 a path extrusion.
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 tangentially to the path connector.
This gets/sets the axis start location for rotate extrusion.
This gets/sets the axis end location 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 enables/disables normal smoothing based on a quality metric.
This enables/disables interior-only quality-based smoothing.
This specifies/retrieves the maximum number of smoothing iterations.
This specifies/retrieves the blend exponent for smoothing.
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, with no faces or interior cells.

See Also

createFromDomains, createFromPoints

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 receives 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 receives a list of pw::DomainStructured objects that were not used in creating the blocks.
domainsThis required 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.

See Also

create, createFromPoints

createFromPoints

pw::BlockStructured createFromPoints points

This action, given a list of lists of lists of xyz values, creates a new structured block from those xyz values.  The dimensions of the block are determined by the length of the list (k-direction) of lists (j-direction) of lists of xyz values (i-direction).

Parameters

pointsThis required parameter is a list of lists of lists of xyz vector values to be used to define the structured block.

Returns

This action returns the newly defined structured block.

See Also

create, createFromDomains

Example

This example creates a list of lists of lists of xyz values to create a structured block.

Code

package require PWI_Glyph 3.18.3
set idim 5
set jdim 7
set kdim 9
set origin {10 10 10}
set ivec {4 0 0}
set jvec {0 6 0}
set kvec {0 0 8}

set p000 $origin
set p001 [pwu::Vector3 add $p000 $ivec]
set p010 [pwu::Vector3 add $p000 $jvec]
set p011 [pwu::Vector3 add $p001 $jvec]
set p100 [pwu::Vector3 add $p000 $kvec]
set p101 [pwu::Vector3 add $p100 $ivec]
set p110 [pwu::Vector3 add $p100 $jvec]
set p111 [pwu::Vector3 add $p101 $jvec]
# Generate GgVec3Array3
set pts [list]
for {set k 1} {$k <= $kdim} {incr k} {
set z [ expr { [lindex $p000 2] + $kdim - [ expr {[lindex $kvec 2] * $k / $kdim} ] } ]
set jList [list]
for {set j 1} {$j <= $jdim} {incr j} {
set y [ expr { [lindex $p000 1] + $jdim - [ expr {[lindex $jvec 1] * $j / $jdim} ] } ]
set iList [list]
for {set i 1} {$i <= $idim} {incr i} {
set x [ expr { [lindex $p000 0] + $idim - [ expr {[lindex $ivec 0] *$i / $idim} ] } ]
set pt [pwu::Vector3 set $x $y $z]
lappend iList $pt
}
lappend jList $iList
}
lappend pts $jList
}

set blk [pw::BlockStructured createFromPoints $pts]
puts "Dimensions [$blk getDimensions]"

Output

Dimensions [5 7 9]

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 receives a list of pw::BlockStructured objects that were not used in joining.
blocksThis required 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 (Default)

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

A string with options < ThomasMiddlecoff | Laplace | Fixed >.

Default

The default for this is ThomasMiddlecoff.

See Also

InteriorControl

FaceControl (Default)

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

A string with options < HilgenstockWhite | StegerSorenson | None >.

Default

The default for this is HilgenstockWhite.

See Also

FaceControl

SolverEngine (Default)

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

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

Type

A string with options < MultiGrid | SuccessiveOverRelaxation >.

Default

The default for this is MultiGrid.

See Also

SolverEngine

Instance Actions

getPoint

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

This action gets the position of a block grid point.

Parameters

indexThis optional parameter is the integer linear index of the grid point to get in the range [1, number of points].
ijk_indexThis optional 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”).

Information

Either index or ijk_index must be specified.

See Also

setPoint

setPoint

$block setPoint < index | ijk_index > point

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

Parameters

indexThis optional parameter is the integer linear index of the target grid point to set in the range [1, number of points].  The index must be for an interior grid point.
ijk_indexThis optional parameter is the interior ijk index of the grid point to set.
pointThis required 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.

See Also

getPoint

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 optional parameter is the integer linear index of the grid point in the range [1, number of points].
ijk_indexThis optional parameter is the ijk index of the point to get.

Information

Either index or ijk_index must be specified.

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 optional flag is specified, the results will be a list of integer linear indices regardless of the input form.
indexThis optional parameter is the integer linear index of the grid point in the range [1, number of points].
ijk_indexThis optional parameter is the ijk index of the point to get.

Information

Either index or ijk_index must be specified.

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 optional flag 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 optional parameter is the integer linear index of the grid point in the range [1, number of points].
ijk_indexThis optional parameter is the ijk index of the point to get.

Information

Either index or ijk_index must be specified.

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 required parameter is the ijk index to convert.

Returns

This action returns the linear integer 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 optional parameter is the integer linear index of the point to get.
ijk_indexThis optional parameter is the ijk index 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

Either index or ijk_index must be specified.

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 optional parameter is the integer linear index of the point to get.
ijk_indexThis optional parameter is the ijk index 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 optional parameter is the integer linear index of the cell to get.
ijk_indexThis optional parameter is the ijk index of the cell to get.

Information

Either index or ijk_index must be specified.

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 required parameter is the integer index to get the grid at in the range [1, i j or k 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 required parameter is the minimum ijk index.
max_ijkThis required 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 integer number of subgrids.

getSubGrid

$block getSubGrid index

This action gets the subgrid at the given index.

Parameters

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

Returns

This action returns a pw::BlockSubGrid object.

getSubGrids

$block getSubGrids

This action gets the subgrid list.

Parameters

This action has no parameters.

Returns

This action returns a pw::DomainSubGrid object list.

removeSubGrid

$block removeSubGrid < index | subgrid >

This action removes the subgrid from the block.

Parameters

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

Information

Either index or subgrid must be specified.

Returns

This action returns nothing.

getEllipticSolverResidual

$block getEllipticSolverResidual ?-subgrid index? dataVar

This action gets the last elliptic solver residual info for the block/subgrid at the given index.

Parameters

-subgrid indexThis optional parameter is the integer index of the subgrid in the range [1, number of subgrids].  If not specified, the residual for the entire block will be returned.
dataVarthe required string name of an array variable to receive residual information.  The array will be cleared prior to setting any new values.

Returns

This action returns nothing.

Data Array

The data array variable will contain the following elements:

TotalResidualThe root mean square of the point residuals.
MaximumResidualThe maximum point residual.
MaximumIndexThe index of the maximum point residual.

Example

This example shows how to get the last elliptic solver residual info for a block refenced by $block.

Code

$block getEllipticSolverResidual residInfo
puts "Total residual: $residInfo(TotalResidual)"
puts "Max. residual: $residInfo(MaximumResidual)"
puts "Max. residual index: $residInfo(MaximumIndex)"

getFace

$block getFace < index | KMinimum | KMaximum | IMinimum | IMaximum | JMinimum | JMaximum >

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

Parameters

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

Information

Either index or computational boundary must be specified.

Returns

This action returns a pw::FaceStructured object.

addFace

$block addFace face

This action adds a face to the block.

Parameters

faceThis required parameter is the pw::FaceStructured to add.

Notes

Faces can be added in any order.  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 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 required parameter is the integer list of indices to split at in the range [1, i j or k 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 required parameter is the pw::BlockStructured object to join with.
sideThis optional parameter is the string side of this block to join the given block 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_face j_face k_faceThis optional set of parameters are the integer face indices or string computational boundaries with options <IMinimum | IMaximum | JMinimum | JMaximum | KMinimum | KMaximum > to be used as the Imin, Jmin and Kmin faces.
i_edge j_edgeThis optional set of parameters are the integer face indices or string computational boundaries with options <IMinimum | IMaximum | JMinimum | JMaximum> to be used as the Imin and Jmin edges (for 2D).

Returns

This action returns nothing.

Information

Either i_face j_face k_face or i_edge j_edge must be specified.

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 required 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 with options < Left | Right >.

getEllipticSolverAttribute

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

This action gets the named elliptic solver attribute.

Parameters

-face < index | boundary >This optional parameter is the integer index of the face or the string computational boundary with options <IMinimum | IMaximum | JMinimum | JMaximum | KMinimum | KMaximum > to get the attribute from.  If not given and the attribute applies to faces, a list of attributes will be returned for all faces.
att_nameThis required parameter is the string name of the attribute to get.
value_typeThis optional parameter is the type string of value to get with options < Actual | Default >.  If not specified the Actual value will be returned.

Returns

This action returns the actual or default string, integer or float value of the attribute.

See Also

setEllipticSolverAttribute

setEllipticSolverAttribute

$block setEllipticSolverAttribute ?-face <index | boundary>? att_name att_value

This action sets the named elliptic solver attribute.

Parameters

-face < index | boundary >This optional parameter is the integer index of the face or the string computational boundary with options <IMinimum | IMaximum | JMinimum | JMaximum | KMinimum | KMaximum > to set the attribute.  If not given the attribute will be applied to all faces.
att_nameThis required parameter is the string name of the attribute to set.
att_valueThis required parameter is the string, integer or float value of the attribute to set.

Returns

This action returns nothing.

See Also getEllipticSolverAttribute

getExtrusionSolverAttribute

$block getExtrusionSolverAttribute att_name ?value_type?

This gets the named extrusion solver attribute.

Parameters

att_nameThis required parameter is the name string of the attribute to get.
value_typeThis optional parameter is the type string of value to get with options < Actual | Default >.  If not specified, the Actual value will be returned.

Returns

This returns the actual or default string, integer or float value of the attribute.

See Also

setExtrusionSolverAttribute

setExtrusionSolverAttribute

$block setExtrusionSolverAttribute att_name att_value

This sets the named extrusion solver attribute.

Parameters

att_nameThis required parameter is the name string of the attribute to set.
att_valueThis required parameter is the new string, integer or float attribute value.

Returns

This action returns nothing.

See Also

getExtrusionSolverAttribute

getExtrusionBoundaryCondition

$block getExtrusionBoundaryCondition edge_con_pair

This gets the boundary condition at a given connector region.

Parameters

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

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 required parameter is a two element list consisting of the integer edge index and the integer connector index.
boundary_conditionThis required parameter is a boundary condition name string with options < Splay | ConstantX | ConstantY | ConstantZ | SymmetryX | SymmetryY | SymmetryZ | FloatingX | FloatingY | FloatingZ | ArbitraryPlane | DatabaseConstrained | AdjacentGrid | Connection>.
splay_factorThis optional parameter is alid only for the Splay condition, this parameter is a float in the range [0.0, 1.0].  0.0 indicates no splay while 1.0 is full splay.
entity_listThis optional parameter is a list of pw::DatabaseEntity or pw::DomainStructured for the DatabaseConstrained and AdjacentGrid conditions, respectively.

Returns

This returns nothing.

See Also

getExtrusionBoundaryCondition for full description of boundary conditions.

Elliptic Solver Attributes

SolverEngine

$block get/setEllipticSolverAttribute SolverEngine function

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

Type

A string with options < MultiGrid | SuccessiveOverRelaxation >.

Default

The default for this attribute is set using the current value of the default SolverEngine (Default) when the block was created.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute, SolverEngine (Default)

MultiGridRelaxationFactor

$block get/setEllipticSolverAttribute MultiGridRelaxationFactor < Default | value >

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

Type

A string with the value < Default > or a float in the range (0.0, 2.0].

Default

The default for this attribute is Default.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

MultiGridProlongationFactor

$block get/setEllipticSolverAttribute MultiGridProlongationFactor < Default | value >

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

Type

A string with the value < Default > or a float in the range (0.0, 2.0].

Default

The default for this attribute is Default.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

RelaxationFactor

$block get/setEllipticSolverAttribute RelaxationFactor < Optimal | Nominal | value >

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

Type

A string with options < Optimal | Nominal | Default > or a float in the range (0.0, 2.0].

Default

The default for this attribute is Optimal.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

InteriorControl

$block get/setEllipticSolverAttribute InteriorControl < ThomasMiddlecoff | Laplace | Fixed >

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

Type

A string with options < ThomasMiddlecoff | Laplace | Fixed >.

Default

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

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute, InteriorControl (Default)

FaceControl

$block get/setEllipticSolverAttribute ?-face index? FaceControl < HilgenstockWhite | StegerSorenson | None >

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

Type

A string with options < HilgenstockWhite | StegerSorenson | None >.

Default

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

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute, FaceControl (Default)

FaceSpacingCalculation

$block get/setEllipticSolverAttribute ?-face index? FaceSpacingCalculation < Interpolate | Current | Adjacent | value >

This attribute is the boundary control function spacing calculation method.

Type

A string with options < Interpolate | Current | Adjacent > or an explicit float spacing value in the range (0.0, infinity).

Default

The default for this attribute is Interpolate.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

FaceSpacingBlend

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

This attribute is the boundary control function spacing blend method.

Type

A string with options < Exponential | Linear > or an explicit float decay value in the range [1, infinity).

Default

The default for this attribute is Exponential.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

FaceAngleCalculation

$block get/setEllipticSolverAttribute ?-face index? FaceAngleCalculation < Orthogonal | Interpolate | Current | Adjacent >

This attribute is the boundary control function angle calculation method.

Type

A string with options < Orthogonal | Interpolate | Current | Adjacent >.

Default

The default for this attribute is Orthogonal.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

FaceAngleBlend

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

This attribute is the boundary control function angle blend method.

Type

A string with options < Exponential | Linear > or an explicit float decay value in the range [1, infinity).

Default

The default for this attribute is Exponential.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

FaceConstraint

$block get/setEllipticSolverAttribute ?-face index? FaceConstraint < Fixed | Floating | Adapt >

This attribute is the boundary constraints of the structured block.

Type

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

Default

The default for this attribute is Fixed.

See Also

setEllipticSolverAttribute, getEllipticSolverAttribute

Generic Extrusion Solver Attributes

Mode

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

This gets/sets the extrusion mode of this block.

Type

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

A string with options < Off | Default > or a float in the range (0, inf), where Off disables the total height stop condition.

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

A string with options < Off | Default > or a float in the range [1.0, inf], where Off disables the aspect ratio stop condition.

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

A string with options < Off | Default > or a float in the range (0, inf], where Off disables the minimum skew angle stop condition.

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

A string with options < Default | Off > or a boolean, where Off or false disables the positive skew Jacobian stop condition.

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

A string with options < Default | Off > or a boolean, where Off or false disables the zero Jacobian stop condition.

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

A string with options < Default | Off > or a boolean, where Off or false disables the negative skew Jacobian stop condition.

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

A string with options < Default | Off > or a boolean, where Off or false disables the negative Jacobian stop condition.

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

A boolean where true indicates that the extrusion direction is reversed.

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

A float in 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

A float in the range [0.0, inf).

Default

The default for this attribute is 0.0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

Translational Extrusion Solver Attributes

TranslateDirection

$block get/setExtrusionSolverAttribute TranslateDirection direction

This gets/sets the direction vector for translate extrusion.

Type

A direction 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

A float indicating the total extrusion translation distance.

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 a path extrusion.

Type

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

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

Type

An integer indicating the computed maximum number of steps for a path extrusion.

Information

This attribute is read only.

See Also

getExtrusionSolverAttribute

PathUseTangent

$block get/setExtrusionSolverAttribute PathUseTangent use_tangent

This gets/sets the flag indicating if the path extrusion should be rotated tangentially to the path connector.

Type

A boolean indicating whether to rotate the path extrusion.

Default

The default for this attribute is true.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

Rotational Extrusion Solver Attributes

RotateAxisStart

$block get/setExtrusionSolverAttribute RotateAxisStart xyz

This gets/sets the axis start location for rotate extrusion.

Type

An xyz vector indicating the start point of the rotation axis.

Default

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

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

RotateAxisEnd

$block get/setExtrusionSolverAttribute RotateAxisEnd xyz

This gets/sets the axis end location for rotate extrusion.

Type

An xyz vector indicating the end point of the rotation axis.

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

A float in 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

A string with the value < Default > or a 2D vector with values in the range [0.0, 10.0].

Default

The default for this attribute is (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

A string with the value < Default > or a 2D vector in the range [0.0, 20.0].  The value should be greater than twice the NormalExplicitSmoothing value.

Default

The default for this attribute is (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

A string with the value < Default > or a 2D vector in 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.0 or more is recommended if the initial grid contains severe concavities.

Default

The default for this attribute is (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

A string with the value < Default > or a float in 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

A string with the value < Default > or a float in 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

A string with the value < Default > or a float in the range [0, infinity).  0.0 disables the limit.

Default

The default for this attribute is 0.0.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalMinimumStepSize

$block get/setExtrusionSolverAttribute NormalMinimumStepSize < Default | size >

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

Type

A string with the value < Default > or a float in the range [0, infinity).  A value of 0.0 disables the limit.

Default

The default for this attribute is 0.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

A string with the value < Default > or a float in the range [1, 100.0).  The value of 1.0 will disable this feature.

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

A string with the value < Default > or a float in 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

A string with the value < Default > or an integer in 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

A string with the value < Default > or a float in 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

A string with the value < Default > or an integer in the range [0, infinity).

Default

The default for this attribute is 3.

See Also

setExtrusionSolverAttribute, getExtrusionSolverAttribute

NormalQualitySmoothing

$block get/setExtrusionSolverAttribute NormalQualitySmoothing < Default | bool_value >

This enables/disables normal smoothing based on a quality metric.

Type

A string with the value < Default > or a boolean where true enables normal quality smoothing.

Default

The default for this attribute is false.

NormalInteriorOnlySmoothing

$block get/setExtrusionSolverAttribute NormalInteriorOnlySmoothing < Default | bool_value >

This enables/disables interior-only quality-based smoothing.

Type

A string with the value < Default > or a boolean where true enables interior quality-based smoothing.

Default

The default for this attribute is false.

NormalMaximumIterationsSmoothing

$block get/setExtrusionSolverAttribute NormalMaximumIterationsSmoothing < Default | maxIters >

This specifies/retrieves the maximum number of smoothing iterations.

Type

A string with the value < Default > or an integer in the range (1, infinity).

Default

The default for this attribute is 1.

NormalBlendExponentSmoothing

$block get/setExtrusionSolverAttribute NormalBlendExponentSmoothing < Default | blendExp >

This specifies/retrieves the blend exponent for smoothing.  A value of zero uses the local minimum cell quality metric at the node normal.  A value of 2 uses the average cell quality metric at the node normal.  A value in between is a blending of the two approaches.

Type

A string with the value < Default > or a float in the range (0.0, 2.0).

Default

The default for this attribute is 2.0.

Spacing Extrusion Solver Attributes

SpacingMode

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

This gets/sets the spacing configuration for the extrusion.

Type

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

A string with the value < Default > or a float in 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

A list of subconnectors, each specified as a list of 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 literal string Forward or the literal string 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

Structured faces are collections of pw::DomainStructured that represent one of the six nominal sides of a pw::BlockStructured block.
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 createFromPoints points
This action, given a list of lists of lists of xyz values, creates a new structured block from those xyz values.
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 getSubGrids
This action gets the subgrid list.
$block removeSubGrid < index | subgrid >
This action removes the subgrid from the block.
$block getEllipticSolverResidual ?-subgrid index? dataVar
This action gets the last elliptic solver residual info for the block/subgrid at the given index.
$block getFace < index | KMinimum | KMaximum | IMinimum | IMaximum | JMinimum | JMaximum >
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 | boundary>? 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 SolverEngine function
This attribute is the elliptic solver engine employed when smoothing a structured block.
$block get/setEllipticSolverAttribute MultiGridRelaxationFactor < Default | value >
This attribute is the relaxation factor of the multi-grid algorithm.
$block get/setEllipticSolverAttribute MultiGridProlongationFactor < Default | value >
This attribute is the Prolongation factor of the multi-grid algorithm.
$block get/setEllipticSolverAttribute RelaxationFactor < Optimal | Nominal | value >
This attribute is the relaxation factor of the succesive over- relaxtion algorithm.
$block get/setEllipticSolverAttribute InteriorControl < ThomasMiddlecoff | Laplace | Fixed >
This attribute is the interior control function of a structured block.
$block get/setEllipticSolverAttribute ?-face index? FaceControl < HilgenstockWhite | StegerSorenson | None >
This attribute is the boundary control function of a structured block face.
$block get/setEllipticSolverAttribute ?-face index? FaceSpacingCalculation < Interpolate | Current | Adjacent | value >
This attribute is the boundary control function spacing calculation method.
$block get/setEllipticSolverAttribute ?-face index? FaceSpacingBlend < Exponential | Linear | value >
This attribute is the boundary control function spacing blend method.
$block get/setEllipticSolverAttribute ?-face index? FaceAngleCalculation < Orthogonal | Interpolate | Current | Adjacent >
This attribute is the boundary control function angle calculation method.
$block get/setEllipticSolverAttribute ?-face index? FaceAngleBlend < Exponential | Linear | value >
This attribute is the boundary control function angle blend method.
$block get/setEllipticSolverAttribute ?-face index? FaceConstraint < Fixed | Floating | Adapt >
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 a path extrusion.
$block getExtrusionSolverAttribute PathMaximumSteps
This gets the maximum number of steps available as the path extrusion is configured
$block get/setExtrusionSolverAttribute PathUseTangent use_tangent
This gets/sets the flag indicating if the path extrusion should be rotated tangentially to the path connector.
$block get/setExtrusionSolverAttribute RotateAxisStart xyz
This gets/sets the axis start location for rotate extrusion.
$block get/setExtrusionSolverAttribute RotateAxisEnd xyz
This gets/sets the axis end location 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 NormalQualitySmoothing < Default | bool_value >
This enables/disables normal smoothing based on a quality metric.
$block get/setExtrusionSolverAttribute NormalInteriorOnlySmoothing < Default | bool_value >
This enables/disables interior-only quality-based smoothing.
$block get/setExtrusionSolverAttribute NormalMaximumIterationsSmoothing < Default | maxIters >
This specifies/retrieves the maximum number of smoothing iterations.
$block get/setExtrusionSolverAttribute NormalBlendExponentSmoothing < Default | blendExp >
This specifies/retrieves the blend exponent for smoothing.
$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
Base type for all grid entities.
A block is a volume grid bounded by one or more pw::Faces.
A structured block is a computationally orthogonal volume grid, bounded by exactly six pw::FaceStructured faces, any of which can be degenerate in one (line) or zero (pole) dimensions.
A string is an array of characters.
A structured domain is a computationally orthogonal surface grid bounded by exactly four edges, any of which can be degenerate in the zero dimension (pole).
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
A vector is a list of float values.
An integer is a whole number.
A point is a position either in model space or database parameter space.
An extruded block is a step-wise constructed prismatic volume originating from one or more pw::Face objects.
$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.
$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.
A block sub-grid is a computationally orthogonal, continuous subset of a pw::BlockStructured block.
A domain sub-grid is a computationally orthogonal, continuous subset of a pw::DomainStructured domain.
A float is a fractional number.
Base type for all database entities
A connector is a computationally one-dimensional grid entity, defined in the parameter space of one or more end-connected curve segments.