3 strategy strings – Scotch Brand 5.1.10 User Manual

Page 56

Advertising
background image

dimnnbr

≤ 2, and its “z” coordinate is located at geomtab[(i - vnodbas) *

dimnnbr + baseval + 2]

if dimnnbr = 3.

7.2.5

Block ordering format

Block orderings associated with graphs and meshes are described by means of block
and permutation arrays, made of SCOTCH Nums, as shown in Figure 21. In order for
all orderings to have the same structure, irrespective of whether they are created
from graphs or meshes, all ordering data indices start from baseval, even when they
refer to a mesh the node vertices of which are labeled from a vnodbas index such
that vnodbas > baseval. Consequently, row indices are related to vertex indices
in memory in the following way: row i is associated with vertex i of the SCOTCH
Graph

structure if the ordering was computed from a graph, and with node vertex

i

+ (vnodbas− baseval) of the SCOTCH Mesh structure if the ordering was computed

from a mesh. Block orderings are made of the following data:

permtab

Array holding the permutation of the reordered matrix.

Thus, if k =

permtab[i]

, then row i of the original matrix is now row k of the reordered

matrix, that is, row i is the kth pivot.

peritab

Inverse permutation of the reordered matrix. Thus, if i = peritab[k], then
row k of the reordered matrix was row i of the original matrix.

cblknbr

Number of column blocks (that is, supervariables) in the block ordering.

rangtab

Array of ranges for the column blocks. Column block c, with baseval ≤ c <
(cblknbr+baseval), contains columns with indices ranging from rangtab[i]
to rangtab[i + 1], exclusive, in the reordered matrix. Indices in rangtab
are based. Therefore, rangtab[baseval] is always equal to baseval, and
rangtab[cblknbr + baseval]

is always equal to vertnbr + baseval for

graphs and to vnodnbr + baseval for meshes. In order to avoid memory
errors when column blocks are all single columns, the size of rangtab must
always be one more than the number of columns, that is, vertnbr + 1 for
graphs and vnodnbr + 1 for meshes.

treetab

Array of ascendants of permuted column blocks in the separators tree.
treetab[i]

is the index of the father of column block i in the separators

tree, or −1 if column block i is the root of the separators tree. Whenever sep-
arators or leaves of the separators tree are split into subblocks, as the block
splitting, minimum fill or minimum degree methods do, all subblocks of the
same level are linked to the column block of higher index belonging to the
closest separator ancestor. Indices in treetab are based, in the same way as
for the other blocking structures. See Figure 21 for a complete example.

7.3

Strategy strings

The behavior of the mapping and block ordering routines of the libScotch library
is parametrized by means of strategy strings, which describe how and when given

56

Advertising