Source: http://pastix.gforge.inria.fr/files/parafax/src/cscd-c.html
Timestamp: 2018-02-25 23:18:29+00:00

Document:
/Users/lacoste/INRIA/ricar-git/trunk/parafax/src/cscd.c - PaStiX
cscd_Fusion
cscd_Explode
csc_Free Free csc structure
cscd_Free Free a cscd structure.
csc_Init Fill-in the csc structure.
cscd_Init Fill-in the cscd structure.
cscd_getGloballocal returns the global column of a local column.
cscd_indIfLoc Compute the local index corresponding to a global column number/vertex of the graph.
cscd_add_diag
cscd_sort
cscd_quicksort
cscd_partition
cscd_Sym symetrize the graph structure.
cscd_Addedge Add an edge between i and j with value 0 if aval is allocated.
cscd_Convert_dgraph Symetrize the cscd then convert it to dgraph.
cscd_Addvertices cscd_Addvertices ajoute un ensemble de sommets a la csc locale, ce qui implique de connaitre la position de ces sommets par rapport aux autres, leurs numeros globaux, leurs nombres d’arete ainsi que leurs vecteurs d’arete On suppose que les sommets sont ordonnes suivant leur numero locaux.
cscd_Remvertices rank : rang du noeud ou va aller la cscd en construction exchange_tab : donne les le rang auquel appartient le sommet local
cscd_Redistribute
cscd_Addvalues On suppose que la perm tab donne la localisation de chaque sommet.
int cscd_Fusion( CSCD * cscd_graph )
int cscd_Explode( CSCD * cscd_graph,
MPI_Comm mpi_comm )
csc_Free
int csc_Free( CSC * csc_graph )
Free csc structure
csc_graph CSC structure to free.
cscd_Free
int cscd_Free( CSCD * cscd_graph )
Free a cscd structure.
cscd_graph CSCD structure to free.
csc_Init
int csc_Init( CSC * csc_graph,
INT vertlocnbr,
INT edgelocnbr,
INT * ia,
INT * ja,
FLOAT * aval,
FLOAT * rhs )
Fill-in the csc structure.
csc_graph CSC structure to fill.
vertlocnumber Number of vertices/unknowns/Matrix size.
edgelocnumber Number of edge/Nnzeros
ia starting index of each column in ja and aval.
ja row of each element of the matrix.
aval value of each element.
cscd_Init
int cscd_Init( CSCD * cscd_graph,
INT * loc2glb,
FLOAT * rhs,
Fill-in the cscd structure.
cscd_graph CSCD structure to fill.
loc2glb global index of each local column.
rhs Right hand side.
mpi_comm MPI communicator.
cscd_getGloballocal
INT cscd_getGloballocal( CSCD * cscd_graph,
INT i )
returns the global column of a local column.
cscd_graph CSCD structure.
i local column number.
cscd_indIfLoc
INT cscd_indIfLoc( CSCD * cscd_graph,
INT vert_ind )
Compute the local index corresponding to a global column number/vertex of the graph.
cscd_graph graph
vert_ind global vertex/column number
int cscd_add_diag( CSCD * cscd_graph )
int cscd_sort( CSCD * cscd_graph )
void cscd_quicksort( INT * inttab,
FLOAT * valtab,
int cscd_partition( INT * inttab,
INT pivot )
cscd_Sym
int cscd_Sym( CSCD * cscd_graph,
INT iparm6 )
symetrize the graph structure.
cscd_graph graph to symetrize
iparm6 determine what to do with second occurence of a coefficient.
cscd_Addedge
int cscd_Addedge( CSCD * cscd_graph,
FLOAT value )
Add an edge between i and j with value 0 if aval is allocated. After that, rows are not sorted anymore.
cscd_graph CSCD
i vertex/column (local)
j edge/row
value value if aval of cscd_graph is not NULL
cscd_Convert_dgraph
int cscd_Convert_dgraph( CSCD * cscd_graph,
Symetrize the cscd then convert it to dgraph. After that you can call dgraph_build.
Symetrise la structure puis la convertie en dgraph. On apelle alors le dgraph_build sur le dgraph obtenu
cscd_graph csc to convert to dgraph iparm6 -
cscd_Addvertices
int cscd_Addvertices( CSCD * cscd_graph,
INT nbedge,
INT nbvert )
cscd_Addvertices ajoute un ensemble de sommets a la csc locale, ce qui implique de connaitre la position de ces sommets par rapport aux autres, leurs numeros globaux, leurs nombres d’arete ainsi que leurs vecteurs d’arete On suppose que les sommets sont ordonnes suivant leur numero locaux.
cscd_Remvertices
int cscd_Remvertices( CSCD * cscd_graph,
CSCD * cscd_target,
INT * exchange_tab,
rank : rang du noeud ou va aller la cscd en construction exchange_tab : donne les le rang auquel appartient le sommet local
int cscd_Redistribute( CSCD * cscd_graph,
INT * permtab )
cscd_Addvalues
int cscd_Addvalues( CSCD * cscd_graph,
CSCD * cscd_val )
On suppose que la perm tab donne la localisation de chaque sommet. Si ce n’etait pas le cas, avec le vecteur de renumerotation, et le vecteur donnant le partitionnement global, on est en mesure de le determiner *
Add an edge between i and j with value 0 if aval is allocated.
Symetrize the cscd then convert it to dgraph.
On suppose que la perm tab donne la localisation de chaque sommet.

References: csc 
 csc 
 csc 
 CSC 
 csc 
 CSC 
 CSC 
 csc 
 CSC 
 csc 
 csc