LMMC
Lamina Mathematic core
载入中...
搜索中...
未找到
sparse_reordering.c 文件参考
#include <string.h>
#include <math.h>
#include "memory_bridge.h"
#include "internal.h"
#include "lmmc/sparse.h"
#include "sparse_direct_internal.h"
sparse_reordering.c 的引用(Include)关系图:

浏览该文件的源代码.

结构体

struct  lmmc_sparse_degree_workspace_t
 按当前残余度贪心选择顶点,度数桶支持常数时间更新。 同度数时选择原始索引最小的顶点,保证结果确定。消去时仅删除残余关联边, 不模拟填充边,区别于近似最小度算法。 更多...

函数

lmmc_status_t lmmc_sparse_residual_reorder (const lmmc_sparse_mat_t *csc, size_t *perm)

结构体说明

◆ lmmc_sparse_degree_workspace_t

struct lmmc_sparse_degree_workspace_t

按当前残余度贪心选择顶点,度数桶支持常数时间更新。 同度数时选择原始索引最小的顶点,保证结果确定。消去时仅删除残余关联边, 不模拟填充边,区别于近似最小度算法。

在文件 sparse_reordering.c 第 40 行定义.

lmmc_sparse_degree_workspace_t 的协作图:
成员变量
size_t * degree
size_t * heads
size_t * next
size_t * prev
unsigned char * eliminated

函数说明

◆ lmmc_sparse_residual_reorder()

lmmc_status_t lmmc_sparse_residual_reorder ( const lmmc_sparse_mat_t * csc,
size_t * perm )

在文件 sparse_reordering.c 第 322 行定义.

引用了 lmmc_sparse_mat_t::col_idx, lmmc_memory_free(), lmmc_sparse_residual_reorder(), LMMC_STATUS_OK, lmmc_sparse_mat_t::row_ptr , 以及 lmmc_sparse_mat_t::rows.

被这些函数引用 lmmc_sparse_chol_symbolic(), lmmc_sparse_lu_symbolic() , 以及 lmmc_sparse_residual_reorder().

函数调用图:
这是这个函数的调用关系图: