⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 proto.h

📁 多层权核k均值算法
💻 H
📖 第 1 页 / 共 2 页
字号:
/* * Copyright 1997, Regents of the University of Minnesota * * proto.h * * This file contains header files * * Started 10/19/95 * George * * $Id: proto.h,v 1.1 1998/11/27 17:59:28 karypis Exp $ * *//* balance.c */void Balance2Way(CtrlType *, GraphType *, int *, float);void Bnd2WayBalance(CtrlType *, GraphType *, int *);void General2WayBalance(CtrlType *, GraphType *, int *);/* bucketsort.c */void BucketSortKeysInc(int, int, idxtype *, idxtype *, idxtype *);/* ccgraph.c */void CreateCoarseGraph(CtrlType *, GraphType *, int, idxtype *, idxtype *);void CreateCoarseGraphNoMask(CtrlType *, GraphType *, int, idxtype *, idxtype *);void CreateCoarseGraph_NVW(CtrlType *, GraphType *, int, idxtype *, idxtype *);GraphType *SetUpCoarseGraph(GraphType *, int, int);void ReAdjustMemory(GraphType *, GraphType *, int);/* coarsen.c */GraphType *Coarsen2Way(CtrlType *, GraphType *);/* compress.c */void CompressGraph(CtrlType *, GraphType *, int, idxtype *, idxtype *, idxtype *, idxtype *);void PruneGraph(CtrlType *, GraphType *, int, idxtype *, idxtype *, idxtype *, float);/* debug.c */int ComputeCut(GraphType *, idxtype *);float ComputeRAsso(GraphType *graph, idxtype *where, int npart);float ComputeNCut(GraphType *, idxtype *, int);int CheckBnd(GraphType *);int CheckBnd2(GraphType *);int CheckNodeBnd(GraphType *, int);int CheckRInfo(RInfoType *);int CheckNodePartitionParams(GraphType *);int IsSeparable(GraphType *);/* estmem.c */void METIS_EstimateMemory(int *, idxtype *, idxtype *, int *, int *, int *);void EstimateCFraction(int, idxtype *, idxtype *, float *, float *);int ComputeCoarseGraphSize(int, idxtype *, idxtype *, int, idxtype *, idxtype *, idxtype *);/* fm.c */void FM_2WayEdgeRefine(CtrlType *, GraphType *, int *, int);/* fortran.c */void Change2CNumbering(int, idxtype *, idxtype *);void Change2FNumbering(int, idxtype *, idxtype *, idxtype *);void Change2FNumbering2(int, idxtype *, idxtype *);void Change2FNumberingOrder(int, idxtype *, idxtype *, idxtype *, idxtype *);void ChangeMesh2CNumbering(int, idxtype *);void ChangeMesh2FNumbering(int, idxtype *, int, idxtype *, idxtype *);void ChangeMesh2FNumbering2(int, idxtype *, int, int, idxtype *, idxtype *);/* frename.c */void METIS_PARTGRAPHRECURSIVE(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void metis_partgraphrecursive(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void metis_partgraphrecursive_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void metis_partgraphrecursive__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void METIS_WPARTGRAPHRECURSIVE(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void metis_wpartgraphrecursive(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void metis_wpartgraphrecursive_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void metis_wpartgraphrecursive__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void METIS_PARTGRAPHKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void metis_partgraphkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void metis_partgraphkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void metis_partgraphkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void METIS_WPARTGRAPHKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void metis_wpartgraphkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void metis_wpartgraphkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void metis_wpartgraphkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); void METIS_EDGEND(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_edgend(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_edgend_(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_edgend__(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void METIS_NODEND(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_nodend(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_nodend_(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_nodend__(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void METIS_NODEWND(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_nodewnd(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_nodewnd_(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void metis_nodewnd__(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *); void METIS_PARTMESHNODAL(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void metis_partmeshnodal(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void metis_partmeshnodal_(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void metis_partmeshnodal__(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void METIS_PARTMESHDUAL(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void metis_partmeshdual(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void metis_partmeshdual_(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void metis_partmeshdual__(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void METIS_MESHTONODAL(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void metis_meshtonodal(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void metis_meshtonodal_(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void metis_meshtonodal__(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void METIS_MESHTODUAL(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void metis_meshtodual(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void metis_meshtodual_(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void metis_meshtodual__(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void METIS_ESTIMATEMEMORY(int *, idxtype *, idxtype *, int *, int *, int *);void metis_estimatememory(int *, idxtype *, idxtype *, int *, int *, int *);void metis_estimatememory_(int *, idxtype *, idxtype *, int *, int *, int *);void metis_estimatememory__(int *, idxtype *, idxtype *, int *, int *, int *);void METIS_MCPARTGRAPHRECURSIVE(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void metis_mcpartgraphrecursive(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void metis_mcpartgraphrecursive_(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void metis_mcpartgraphrecursive__(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void METIS_MCPARTGRAPHKWAY(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);void metis_mcpartgraphkway(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);void metis_mcpartgraphkway_(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);void metis_mcpartgraphkway__(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);void METIS_PARTGRAPHVKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void metis_partgraphvkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void metis_partgraphvkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void metis_partgraphvkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void METIS_WPARTGRAPHVKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);void metis_wpartgraphvkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);void metis_wpartgraphvkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);void metis_wpartgraphvkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);/* graph.c */void SetUpGraph(GraphType *, int, int, int, idxtype *, idxtype *, idxtype *, idxtype *, int);void SetUpGraphKway(GraphType *, int, idxtype *, idxtype *);void SetUpGraph2(GraphType *, int, int, idxtype *, idxtype *, float *, idxtype *);void VolSetUpGraph(GraphType *, int, int, int, idxtype *, idxtype *, idxtype *, idxtype *, int);void RandomizeGraph(GraphType *);int IsConnectedSubdomain(CtrlType *, GraphType *, int, int);int IsConnected(CtrlType *, GraphType *, int);int IsConnected2(GraphType *, int);int FindComponents(CtrlType *, GraphType *, idxtype *, idxtype *);/* initpart.c */void Init2WayPartition(CtrlType *, GraphType *, int *, float);void InitSeparator(CtrlType *, GraphType *, float);void GrowBisection(CtrlType *, GraphType *, int *, float);void GrowBisectionNode(CtrlType *, GraphType *, float);void RandomBisection(CtrlType *, GraphType *, int *, float);/* mlkkm.c */void spectralInit(CtrlType *, GraphType *, int *);void MLKKM_PartGraphKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, int *, idxtype *); void MLKKM_WPartGraphKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, float *, int *, int *, idxtype *); int MLKKMPartitioning(CtrlType *, GraphType *, int, int, idxtype *, float *, float);/* weighted kernel k-means */void Compute_Weights(CtrlType *ctrl, GraphType *graph, idxtype *w);void transform_matrix(CtrlType *ctrl, GraphType *graph, idxtype *w, float *adjwgt);void transform_matrix_half(CtrlType *ctrl, GraphType *graph, idxtype *w, float *adjwgt);void pingpong(CtrlType *, GraphType *, int , int , float *, float, int );void Weighted_kernel_k_means(CtrlType *, GraphType *, int , idxtype *, float *, float );void remove_empty_clusters_l1(CtrlType *ctrl, GraphType *graph, int nparts, idxtype *w, float *tpwgts, float ubfactor);void remove_empty_clusters_l2(CtrlType *ctrl, GraphType *graph, int nparts, idxtype *w, float *tpwgts, float ubfactor);//void Weighted_kernel_k_means(CtrlType *, GraphType *, int , idxtype *, float *, float *, float );void MLKKMRefine(CtrlType *, GraphType *, GraphType *, int, int, float *, float);float onePoint_move(GraphType *graph, int nparts, idxtype *sum, idxtype *squared_sum, idxtype *w, idxtype *self_sim, int **linearTerm, int ii);void move1Point2EmptyCluster(GraphType *graph, int nparts, idxtype *sum, idxtype *squared_sum, idxtype *w, idxtype *self_sim, int **linearTerm, int k);int local_search(CtrlType *, GraphType *, int, int, idxtype *, float *, float);//int local_search(CtrlType *, GraphType *, int, int, idxtype *, float *, float *, float);/* kmetis.c */void METIS_PartGraphKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *); void METIS_WPartGraphKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *); int MlevelKWayPartitioning(CtrlType *, GraphType *, int, idxtype *, float *, float);/* kvmetis.c */void METIS_PartGraphVKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);void METIS_WPartGraphVKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);int MlevelVolKWayPartitioning(CtrlType *, GraphType *, int, idxtype *, float *, float);/* kwayfm.c */void Random_KWayEdgeRefine(CtrlType *, GraphType *, int, float *, float, int, int);void Greedy_KWayEdgeRefine(CtrlType *, GraphType *, int, float *, float, int);void Greedy_KWayEdgeBalance(CtrlType *, GraphType *, int, float *, float, int);/* kwayrefine.c */void RefineKWay(CtrlType *, GraphType *, GraphType *, int, float *, float);void AllocateKWayPartitionMemory(CtrlType *, GraphType *, int);void ComputeKWayPartitionParams(CtrlType *, GraphType *, int);void ProjectKWayPartition(CtrlType *, GraphType *, int);int IsBalanced(idxtype *, int, float *, float);void ComputeKWayBoundary(CtrlType *, GraphType *, int);void ComputeKWayBalanceBoundary(CtrlType *, GraphType *, int);/* kwayvolfm.c */void Random_KWayVolRefine(CtrlType *, GraphType *, int, float *, float, int, int);void Random_KWayVolRefineMConn(CtrlType *, GraphType *, int, float *, float, int, int);void Greedy_KWayVolBalance(CtrlType *, GraphType *, int, float *, float, int);void Greedy_KWayVolBalanceMConn(CtrlType *, GraphType *, int, float *, float, int);void KWayVolUpdate(CtrlType *, GraphType *, int, int, int, idxtype *, idxtype *, idxtype *);void ComputeKWayVolume(GraphType *, int, idxtype *, idxtype *, idxtype *);int ComputeVolume(GraphType *, idxtype *);void CheckVolKWayPartitionParams(CtrlType *, GraphType *, int);void ComputeVolSubDomainGraph(GraphType *, int, idxtype *, idxtype *);void EliminateVolSubDomainEdges(CtrlType *, GraphType *, int, float *);void EliminateVolComponents(CtrlType *, GraphType *, int, float *, float);/* kwayvolrefine.c */void RefineVolKWay(CtrlType *, GraphType *, GraphType *, int, float *, float);void AllocateVolKWayPartitionMemory(CtrlType *, GraphType *, int);void ComputeVolKWayPartitionParams(CtrlType *, GraphType *, int);void ComputeKWayVolGains(CtrlType *, GraphType *, int);void ProjectVolKWayPartition(CtrlType *, GraphType *, int);void ComputeVolKWayBoundary(CtrlType *, GraphType *, int);void ComputeVolKWayBalanceBoundary(CtrlType *, GraphType *, int);/* match.c */void Match_HEMN(CtrlType *ctrl, GraphType *graph);void Match_RM(CtrlType *, GraphType *);void Match_RM_NVW(CtrlType *, GraphType *);void Match_HEM(CtrlType *, GraphType *);void Match_SHEM(CtrlType *, GraphType *);void Match_SHEMN(CtrlType *, GraphType *);/* mbalance.c */void MocBalance2Way(CtrlType *, GraphType *, float *, float);void MocGeneral2WayBalance(CtrlType *, GraphType *, float *, float);/* mbalance2.c */void MocBalance2Way2(CtrlType *, GraphType *, float *, float *);void MocGeneral2WayBalance2(CtrlType *, GraphType *, float *, float *);void SelectQueue3(int, float *, float *, int *, int *, PQueueType [MAXNCON][2], float *);/* mcoarsen.c */GraphType *MCCoarsen2Way(CtrlType *, GraphType *);/* memory.c */void AllocateWorkSpace(CtrlType *, GraphType *, int);void FreeWorkSpace(CtrlType *, GraphType *);int WspaceAvail(CtrlType *);idxtype *idxwspacemalloc(CtrlType *, int);void idxwspacefree(CtrlType *, int);float *fwspacemalloc(CtrlType *, int);void fwspacefree(CtrlType *, int);GraphType *CreateGraph(void);void InitGraph(GraphType *);void FreeGraph(GraphType *);/* mesh.c */void METIS_MeshToDual(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void METIS_MeshToNodal(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);void GENDUALMETIS(int, int, int, idxtype *, idxtype *, idxtype *adjncy);void TRINODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);void TETNODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);void HEXNODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);void QUADNODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);/* meshpart.c */void METIS_PartMeshNodal(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);void METIS_PartMeshDual(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);/* mfm.c */void MocFM_2WayEdgeRefine(CtrlType *, GraphType *, float *, int);void SelectQueue(int, float *, float *, int *, int *, PQueueType [MAXNCON][2]);int BetterBalance(int, float *, float *, float *);float Compute2WayHLoadImbalance(int, float *, float *);void Compute2WayHLoadImbalanceVec(int, float *, float *, float *);/* mfm2.c */void MocFM_2WayEdgeRefine2(CtrlType *, GraphType *, float *, float *, int);void SelectQueue2(int, float *, float *, int *, int *, PQueueType [MAXNCON][2], float *);int IsBetter2wayBalance(int, float *, float *, float *);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -