PaStiX specific addons to Murge

Functions declaration for Murge function defined only in PaStiX.

Authors

Xavier Lacostexavier..nosp@m.lacoste@inri.nosp@m.a.fr

More informations can be found in <murge.h> documentation.

Summary
PaStiX specific addons to MurgeFunctions declaration for Murge function defined only in PaStiX.
MURGE_AnalyzePerform matrix analyze.
MURGE_FactorizePerform matrix factorization.
MURGE_SetOrderingSet a personal ordering to perform factorization.
MURGE_ProductSetLocalNodeNbrSet local node number if users only perform product and doesn’t need to perform first steps.
MURGE_ProductSetLocalNodeListSet local node list if users only perform product and doesn’t need to perform first steps.
MURGE_GetLocalProductPerform the product A * X.
MURGE_GetGlobalProductPerform the product A * X.
MURGE_ForceNoFactoPrevent Murge from running factorisation even if matrix has changed.
MURGE_SetLocalNodeListDeprecated, need to be checked

MURGE_Analyze

INTS MURGE_Analyze(INTS id)

Perform matrix analyze.

Follows several steps :

  • Compute a new ordering of the unknows
  • Compute the symbolic factorisation of the matrix
  • Distribute column blocks and computation on processors

Parameters

idSolver instance identification number.

Returns

MURGE_SUCCESSIf function runned succesfuly.
MURGE_ERR_ORDERIf function the graph is not built.
MURGE_ERR_PARAMETERIf murge_id is not a valid ID.

MURGE_Factorize

INTS MURGE_Factorize(INTS id)

Perform matrix factorization.

Parameters

idSolver instance identification number.

Returns

MURGE_SUCCESSIf function runned succesfuly.
MURGE_ERR_ORDERIf function the graph is not built.
MURGE_ERR_PARAMETERIf murge_id is not a valid ID.

MURGE_SetOrdering

INTS MURGE_SetOrdering(INTS id,
INTS *permutation)

Set a personal ordering to perform factorization.

Parameters

idSolver instance identification number.
permutationPermutation to perform factorization.

MURGE_ProductSetLocalNodeNbr

INTS MURGE_ProductSetLocalNodeNbr (INTS id,
INTS n)

Set local node number if users only perform product and doesn’t need to perform first steps.

Parameters

idSolver instance identification number.
nNumber of local nodes.

MURGE_ProductSetLocalNodeList

INTS MURGE_ProductSetLocalNodeList (INTS id,
INTS *l2g)

Set local node list if users only perform product and doesn’t need to perform first steps.

Parameters

idSolver instance identification number.
l2gLocal to global node numbers.

MURGE_GetLocalProduct

INTS MURGE_GetLocalProduct (INTS id,
COEF *x)

Perform the product A * X.

The vector must have been given trough MURGE_SetLocalRHS or MURGE_SetGlobalRHS.

Parameters

idSolver instance identification number.
xArray in which the local part of the product will be stored.

MURGE_GetGlobalProduct

INTS MURGE_GetGlobalProduct (INTS id,
COEF *x,
INTS root)

Perform the product A * X.

The vector must have been given trough MURGE_SetLocalRHS or MURGE_SetGlobalRHS.

Parameters

idSolver instance identification number.
xArray in which the product will be stored.
rootRank of the process which will own the product at end of call, use -1 for all processes.  Returns:
MURGE_ERR_ORDERIf values have not been set.

MURGE_ForceNoFacto

INTS MURGE_ForceNoFacto(INTS id)

Prevent Murge from running factorisation even if matrix has changed.

Parameters

idSolver instance identification number.  Returns: MURGE_SUCCESS

MURGE_SetLocalNodeList

INTS MURGE_SetLocalNodeList(INTS id,
INTS n,
INTS *list)

Deprecated, need to be checked

INTS MURGE_Analyze(INTS id)
Perform matrix analyze.
INTS MURGE_Factorize(INTS id)
Perform matrix factorization.
INTS MURGE_SetOrdering(INTS id,
INTS *permutation)
Set a personal ordering to perform factorization.
INTS MURGE_ProductSetLocalNodeNbr (INTS id,
INTS n)
Set local node number if users only perform product and doesn’t need to perform first steps.
INTS MURGE_ProductSetLocalNodeList (INTS id,
INTS *l2g)
Set local node list if users only perform product and doesn’t need to perform first steps.
INTS MURGE_GetLocalProduct (INTS id,
COEF *x)
Perform the product A * X.
INTS MURGE_GetGlobalProduct (INTS id,
COEF *x,
INTS root)
Perform the product A * X.
INTS MURGE_ForceNoFacto(INTS id)
Prevent Murge from running factorisation even if matrix has changed.
INTS MURGE_SetLocalNodeList(INTS id,
INTS n,
INTS *list)
Deprecated, need to be checked
INTS MURGE_SetLocalRHS (INTS id,
COEF *b,
INTS op,
INTS op2)
INTS MURGE_SetGlobalRHS(INTS id,
COEF *b,
INTS root,
INTS op)
Close