PaStiX Handbook  6.3.2
symbol_reordering.c File Reference
#include "common.h"
#include "pastix/order.h"
#include "symbol/symbol.h"
#include "symbol_reorder.h"

Go to the source code of this file.

Functions

static pastix_int_t compute_cblklevel (const pastix_int_t *treetab, const pastix_int_t *levels, pastix_int_t cblknum)
 Compute the level of supernode cblknum, with Scotch treetab. More...
 
static pastix_int_t hamming_distance (pastix_int_t **vectors, pastix_int_t *vectors_size, pastix_int_t xi, pastix_int_t xj, pastix_int_t stop)
 Compute the distance between two rows of a same supernode. More...
 
static void symbol_reorder_tsp (pastix_int_t size, pastix_order_t *order, pastix_int_t sn_id, pastix_int_t **lw_vectors, pastix_int_t *lw_vectors_size, pastix_int_t **up_vectors, pastix_int_t *up_vectors_size, pastix_int_t stop_criterion)
 Reorder rows of a supernode with the nearest insertion TSP heuristic. More...
 
void symbol_reorder_cblk (const symbol_matrix_t *symbptr, const symbol_cblk_t *cblk, pastix_order_t *order, const pastix_int_t *levels, pastix_int_t *depthweight, pastix_int_t depthmax, pastix_int_t split_level, pastix_int_t stop_criterion)
 Reorder a supernode. More...
 
Symbol reordering subroutines
void pastixSymbolReordering (pastix_data_t *pastix_data)
 Compute the reordering on the complete matrix. More...
 
void pastixSymbolReorderingPrintComplexity (const symbol_matrix_t *symbptr)
 Compute the number of operations required to compute the reordering on the complete matrix. More...
 

Detailed Description

PaStiX symbol structure reordering routines

Version
6.3.2
Author
Gregoire Pichon
Mathieu Faverge
Pierre Ramet
Vincent Bridonneau
Date
2023-07-21

Definition in file symbol_reordering.c.