Scotch Brand 5.1.10 User Manual

Page 105

Advertising
background image

The SCOTCH meshOrderInit routine fills the ordering structure pointed to by
ordeptr

with all of the data that are passed to it. Thus, all subsequent calls

to ordering routines such as SCOTCH meshOrderCompute, using this ordering
structure as parameter, will place ordering results in fields permtab, peritab,
*cblkptr

, rangtab or treetab, if they are not set to NULL.

permtab

is the ordering permutation array, of size vnodnbr, peritab is the

inverse ordering permutation array, of size vnodnbr, cblkptr is the pointer
to a SCOTCH Num that will receive the number of produced column blocks,
rangtab

is the array that holds the column block span information, of size

vnodnbr

+ 1, and treetab is the array holding the structure of the separators

tree, of size vnodnbr. See the above manual page of SCOTCH meshOrder, as
well as section 7.2.5, for an explanation of the semantics of all of these fields.

The SCOTCH meshOrderInit routine should be the first function to be called
upon a SCOTCH Ordering structure for ordering meshes. When the ordering
structure is no longer of use, the SCOTCH meshOrderExit function must be
called, in order to to free its internal structures.

Return values

SCOTCH meshOrderInit

returns 0 if the ordering structure has been success-

fully initialized, and 1 else.

7.9.3

SCOTCH meshOrderExit

Synopsis

void SCOTCH meshOrderExit (const SCOTCH Mesh *

meshptr,

SCOTCH Ordering *

ordeptr)

scotchfmeshorderexit (doubleprecision (*)

meshdat,

doubleprecision (*)

ordedat)

Description

The SCOTCH meshOrderExit function frees the contents of a SCOTCH Ordering
structure previously initialized by SCOTCH meshOrderInit. All subsequent
calls to SCOTCH meshOrder* routines other than SCOTCH meshOrderInit, us-
ing this structure as parameter, may yield unpredictable results.

7.9.4

SCOTCH meshOrderSave

Synopsis

int SCOTCH meshOrderSave (const SCOTCH Mesh *

meshptr,

const SCOTCH Ordering *

ordeptr,

FILE *

stream)

scotchfmeshordersave (doubleprecision (*)

meshdat,

doubleprecision (*)

ordedat,

integer

fildes,

integer

ierr)

105

Advertising