casadi 3.6.4__cp35-none-manylinux1_i686.whl → 3.6.6__cp35-none-manylinux1_i686.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- casadi/_casadi.so +0 -0
- casadi/casadi.py +984 -500
- casadi/cbc +0 -0
- casadi/clp +0 -0
- casadi/cmake/casadi-config-version.cmake +1 -1
- casadi/include/casadi/casadi.i +33 -15
- casadi/include/casadi/casadi_c.h +2 -0
- casadi/include/casadi/config.h +8 -8
- casadi/include/casadi/core/casadi_common.hpp +1 -0
- casadi/include/casadi/core/casadi_misc.hpp +13 -0
- casadi/include/casadi/core/casadi_types.hpp +3 -2
- casadi/include/casadi/core/code_generator.hpp +59 -2
- casadi/include/casadi/core/core.hpp +1 -0
- casadi/include/casadi/core/generic_expression.hpp +1 -1
- casadi/include/casadi/core/generic_type.hpp +25 -1
- casadi/include/casadi/core/global_options.hpp +2 -0
- casadi/include/casadi/core/matrix_decl.hpp +15 -0
- casadi/include/casadi/core/mx.hpp +13 -3
- casadi/include/casadi/core/optistack.hpp +23 -0
- casadi/include/casadi/core/runtime/casadi_nlp.hpp +133 -6
- casadi/include/casadi/core/runtime/casadi_ocp_block.hpp +55 -0
- casadi/include/casadi/core/runtime/casadi_oracle.hpp +44 -0
- casadi/include/casadi/core/runtime/casadi_oracle_callback.hpp +39 -0
- casadi/include/casadi/core/runtime/casadi_runtime.hpp +4 -1
- casadi/include/casadi/core/runtime/casadi_scaled_copy.hpp +31 -0
- casadi/include/casadi/core/runtime/casadi_sqpmethod.hpp +11 -1
- casadi/include/casadi/core/serializing_stream.hpp +2 -2
- casadi/include/casadi/core/sparsity.hpp +12 -3
- casadi/include/casadi/core/tools.hpp +67 -0
- casadi/include/casadi/doc.i +2283 -1491
- casadi/include/casadi/doc_merged.i +1522 -1065
- casadi/include/casadi/mem.h +1 -0
- casadi/include/coin-or/IpAlgBuilder.hpp +417 -0
- casadi/include/coin-or/IpAlgStrategy.hpp +201 -0
- casadi/include/coin-or/IpAlgTypes.hpp +64 -0
- casadi/include/coin-or/IpAugSystemSolver.hpp +212 -0
- casadi/include/coin-or/IpBlas.hpp +426 -0
- casadi/include/coin-or/IpCachedResults.hpp +897 -0
- casadi/include/coin-or/IpCompoundMatrix.hpp +423 -0
- casadi/include/coin-or/IpCompoundSymMatrix.hpp +348 -0
- casadi/include/coin-or/IpCompoundVector.hpp +395 -0
- casadi/include/coin-or/IpConvCheck.hpp +97 -0
- casadi/include/coin-or/IpDebug.hpp +167 -0
- casadi/include/coin-or/IpDenseVector.hpp +626 -0
- casadi/include/coin-or/IpDiagMatrix.hpp +158 -0
- casadi/include/coin-or/IpEqMultCalculator.hpp +76 -0
- casadi/include/coin-or/IpException.hpp +156 -0
- casadi/include/coin-or/IpExpansionMatrix.hpp +245 -0
- casadi/include/coin-or/IpGenTMatrix.hpp +290 -0
- casadi/include/coin-or/IpHessianUpdater.hpp +73 -0
- casadi/include/coin-or/IpIdentityMatrix.hpp +167 -0
- casadi/include/coin-or/IpIpoptAlg.hpp +257 -0
- casadi/include/coin-or/IpIpoptApplication.hpp +367 -0
- casadi/include/coin-or/IpIpoptCalculatedQuantities.hpp +1009 -0
- casadi/include/coin-or/IpIpoptData.hpp +966 -0
- casadi/include/coin-or/IpIpoptNLP.hpp +328 -0
- casadi/include/coin-or/IpIterateInitializer.hpp +68 -0
- casadi/include/coin-or/IpIteratesVector.hpp +840 -0
- casadi/include/coin-or/IpIterationOutput.hpp +78 -0
- casadi/include/coin-or/IpJournalist.hpp +573 -0
- casadi/include/coin-or/IpLapack.hpp +227 -0
- casadi/include/coin-or/IpLibraryLoader.hpp +76 -0
- casadi/include/coin-or/IpLineSearch.hpp +106 -0
- casadi/include/coin-or/IpLinearSolvers.h +46 -0
- casadi/include/coin-or/IpMatrix.hpp +434 -0
- casadi/include/coin-or/IpMuUpdate.hpp +77 -0
- casadi/include/coin-or/IpNLP.hpp +306 -0
- casadi/include/coin-or/IpNLPScaling.hpp +582 -0
- casadi/include/coin-or/IpObserver.hpp +422 -0
- casadi/include/coin-or/IpOptionsList.hpp +412 -0
- casadi/include/coin-or/IpOrigIpoptNLP.hpp +603 -0
- casadi/include/coin-or/IpPDSystemSolver.hpp +137 -0
- casadi/include/coin-or/IpReferenced.hpp +262 -0
- casadi/include/coin-or/IpRegOptions.hpp +1152 -0
- casadi/include/coin-or/IpReturnCodes.h +23 -0
- casadi/include/coin-or/IpReturnCodes.hpp +18 -0
- casadi/include/coin-or/IpReturnCodes.inc +71 -0
- casadi/include/coin-or/IpReturnCodes_inc.h +45 -0
- casadi/include/coin-or/IpScaledMatrix.hpp +291 -0
- casadi/include/coin-or/IpSearchDirCalculator.hpp +72 -0
- casadi/include/coin-or/IpSmartPtr.hpp +865 -0
- casadi/include/coin-or/IpSolveStatistics.hpp +210 -0
- casadi/include/coin-or/IpSparseSymLinearSolverInterface.hpp +260 -0
- casadi/include/coin-or/IpStdAugSystemSolver.cpp +555 -0
- casadi/include/coin-or/IpStdCInterface.h +428 -0
- casadi/include/coin-or/IpSumSymMatrix.hpp +186 -0
- casadi/include/coin-or/IpSymLinearSolver.hpp +141 -0
- casadi/include/coin-or/IpSymMatrix.hpp +167 -0
- casadi/include/coin-or/IpSymScaledMatrix.hpp +255 -0
- casadi/include/coin-or/IpSymTMatrix.hpp +275 -0
- casadi/include/coin-or/IpTNLP.hpp +820 -0
- casadi/include/coin-or/IpTNLPAdapter.hpp +648 -0
- casadi/include/coin-or/IpTNLPReducer.hpp +274 -0
- casadi/include/coin-or/IpTaggedObject.hpp +128 -0
- casadi/include/coin-or/IpTimedTask.hpp +218 -0
- casadi/include/coin-or/IpTimingStatistics.hpp +323 -0
- casadi/include/coin-or/IpTripletHelper.hpp +308 -0
- casadi/include/coin-or/IpTypes.h +81 -0
- casadi/include/coin-or/IpTypes.hpp +30 -0
- casadi/include/coin-or/IpUtils.hpp +166 -0
- casadi/include/coin-or/IpVector.hpp +892 -0
- casadi/include/coin-or/IpZeroSymMatrix.hpp +155 -0
- casadi/include/coin-or/IpoptConfig.h +45 -0
- casadi/include/coin-or/SensAlgorithm.hpp +114 -0
- casadi/include/coin-or/SensApplication.hpp +188 -0
- casadi/include/coin-or/SensBacksolver.hpp +36 -0
- casadi/include/coin-or/SensMeasurement.hpp +56 -0
- casadi/include/coin-or/SensPCalculator.hpp +137 -0
- casadi/include/coin-or/SensRegOp.hpp +21 -0
- casadi/include/coin-or/SensSchurData.hpp +182 -0
- casadi/include/coin-or/SensSchurDriver.hpp +118 -0
- casadi/include/coin-or/SensSimpleBacksolver.hpp +49 -0
- casadi/include/coin-or/SensStepCalc.hpp +85 -0
- casadi/include/coin-or/SensUtils.hpp +63 -0
- casadi/include/coin-or/metis/defs.h +161 -0
- casadi/include/coin-or/metis/macros.h +143 -0
- casadi/include/coin-or/metis/metis.h +37 -0
- casadi/include/coin-or/metis/proto.h +505 -0
- casadi/include/coin-or/metis/rename.h +418 -0
- casadi/include/coin-or/metis/struct.h +251 -0
- casadi/include/coin-or/mumps/dmumps_c.h +142 -0
- casadi/include/coin-or/mumps/mumps_c_types.h +72 -0
- casadi/include/coin-or/mumps/mumps_compat.h +27 -0
- casadi/include/coin-or/mumps/mumps_int_def.h +11 -0
- casadi/include/coin-or/mumps/mumps_mpi.h +67 -0
- casadi/include/daqp/api.h +46 -0
- casadi/include/daqp/auxiliary.h +29 -0
- casadi/include/daqp/bnb.h +32 -0
- casadi/include/daqp/codegen.h +18 -0
- casadi/include/daqp/constants.h +92 -0
- casadi/include/daqp/daqp.h +22 -0
- casadi/include/daqp/daqp_prox.h +18 -0
- casadi/include/daqp/factorization.h +18 -0
- casadi/include/daqp/types.h +161 -0
- casadi/include/daqp/utils.h +44 -0
- casadi/include/licenses/daqp-external/LICENSE +21 -0
- casadi/include/osqp/constants.h +2 -3
- casadi/include/osqp/version.h +9 -0
- casadi/lib/libtinyxml2.a +0 -0
- casadi/libCbc.so +0 -0
- casadi/libCbc.so.3 +0 -0
- casadi/libCbc.so.3.10.11 +0 -0
- casadi/libCbcSolver.so +0 -0
- casadi/libCbcSolver.so.3 +0 -0
- casadi/libCbcSolver.so.3.10.11 +0 -0
- casadi/libCgl.so +0 -0
- casadi/libCgl.so.1 +0 -0
- casadi/libCgl.so.1.10.8 +0 -0
- casadi/libClp.so +0 -0
- casadi/libClp.so.1 +0 -0
- casadi/libClp.so.1.14.9 +0 -0
- casadi/libClpSolver.so +0 -0
- casadi/libClpSolver.so.1 +0 -0
- casadi/libClpSolver.so.1.14.9 +0 -0
- casadi/libCoinUtils.so +0 -0
- casadi/libCoinUtils.so.3 +0 -0
- casadi/libCoinUtils.so.3.11.10 +0 -0
- casadi/libOsi.so +0 -0
- casadi/libOsi.so.1 +0 -0
- casadi/libOsi.so.1.13.9 +0 -0
- casadi/libOsiCbc.so +0 -0
- casadi/libOsiCbc.so.3 +0 -0
- casadi/libOsiCbc.so.3.10.11 +0 -0
- casadi/libOsiClp.so +0 -0
- casadi/libOsiClp.so.1 +0 -0
- casadi/libOsiClp.so.1.14.9 +0 -0
- casadi/libOsiCommonTests.so +0 -0
- casadi/libOsiCommonTests.so.1 +0 -0
- casadi/libOsiCommonTests.so.1.13.9 +0 -0
- casadi/libbonmin.so +0 -0
- casadi/libbonmin.so.4 +0 -0
- casadi/libbonmin.so.4.8.9 +0 -0
- casadi/libcasadi.so +0 -0
- casadi/libcasadi.so.3.7 +0 -0
- casadi/libcasadi_conic_cbc.so +0 -0
- casadi/libcasadi_conic_cbc.so.3.7 +0 -0
- casadi/libcasadi_conic_clp.so +0 -0
- casadi/libcasadi_conic_clp.so.3.7 +0 -0
- casadi/libcasadi_conic_daqp.so +0 -0
- casadi/libcasadi_conic_daqp.so.3.7 +0 -0
- casadi/libcasadi_conic_gurobi.so +0 -0
- casadi/libcasadi_conic_gurobi.so.3.7 +0 -0
- casadi/libcasadi_conic_ipqp.so +0 -0
- casadi/libcasadi_conic_ipqp.so.3.7 +0 -0
- casadi/libcasadi_conic_nlpsol.so +0 -0
- casadi/libcasadi_conic_nlpsol.so.3.7 +0 -0
- casadi/libcasadi_conic_osqp.so +0 -0
- casadi/libcasadi_conic_osqp.so.3.7 +0 -0
- casadi/libcasadi_conic_qpoases.so +0 -0
- casadi/libcasadi_conic_qpoases.so.3.7 +0 -0
- casadi/libcasadi_conic_qrqp.so +0 -0
- casadi/libcasadi_conic_qrqp.so.3.7 +0 -0
- casadi/libcasadi_conic_superscs.so +0 -0
- casadi/libcasadi_conic_superscs.so.3.7 +0 -0
- casadi/libcasadi_integrator_collocation.so +0 -0
- casadi/libcasadi_integrator_collocation.so.3.7 +0 -0
- casadi/libcasadi_integrator_cvodes.so +0 -0
- casadi/libcasadi_integrator_cvodes.so.3.7 +0 -0
- casadi/libcasadi_integrator_idas.so +0 -0
- casadi/libcasadi_integrator_idas.so.3.7 +0 -0
- casadi/libcasadi_integrator_rk.so +0 -0
- casadi/libcasadi_integrator_rk.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_ampl.so +0 -0
- casadi/libcasadi_nlpsol_ampl.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_blocksqp.so +0 -0
- casadi/libcasadi_nlpsol_blocksqp.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_bonmin.so +0 -0
- casadi/libcasadi_nlpsol_bonmin.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.so +0 -0
- casadi/libcasadi_nlpsol_feasiblesqpmethod.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_ipopt.so +0 -0
- casadi/libcasadi_nlpsol_ipopt.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_knitro.so +0 -0
- casadi/libcasadi_nlpsol_knitro.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_madnlp.so +0 -0
- casadi/libcasadi_nlpsol_madnlp.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_qrsqp.so +0 -0
- casadi/libcasadi_nlpsol_qrsqp.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_scpgen.so +0 -0
- casadi/libcasadi_nlpsol_scpgen.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_snopt.so +0 -0
- casadi/libcasadi_nlpsol_snopt.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.so +0 -0
- casadi/libcasadi_nlpsol_sqpmethod.so.3.7 +0 -0
- casadi/libcasadi_nlpsol_worhp.so +0 -0
- casadi/libcasadi_nlpsol_worhp.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_fast_newton.so +0 -0
- casadi/libcasadi_rootfinder_fast_newton.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_kinsol.so +0 -0
- casadi/libcasadi_rootfinder_kinsol.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_newton.so +0 -0
- casadi/libcasadi_rootfinder_newton.so.3.7 +0 -0
- casadi/libcasadi_rootfinder_nlpsol.so +0 -0
- casadi/libcasadi_rootfinder_nlpsol.so.3.7 +0 -0
- casadi/libcasadi_sundials_common.so +0 -0
- casadi/libcasadi_sundials_common.so.3.7 +0 -0
- casadi/libdaqp.so +0 -0
- casadi/libdaqpstat.a +0 -0
- casadi/libindirect.a +0 -0
- casadi/libipopt.so +0 -0
- casadi/libipopt.so.3 +0 -0
- casadi/libipopt.so.3.14.11 +0 -0
- casadi/liblinsys.a +0 -0
- casadi/libmatlab_ipc.so +0 -0
- casadi/libosqp.a +0 -0
- casadi/libosqp.so +0 -0
- casadi/libqdldl.a +0 -0
- casadi/libsipopt.so +0 -0
- casadi/libsipopt.so.3 +0 -0
- casadi/libsipopt.so.3.14.11 +0 -0
- casadi/libsuperscs.a +0 -0
- casadi/pkgconfig/casadi.pc +1 -1
- casadi/tools/__init__.py +4 -0
- casadi/tools/bounds.py +3 -3
- {casadi-3.6.4.dist-info → casadi-3.6.6.dist-info}/METADATA +12 -4
- {casadi-3.6.4.dist-info → casadi-3.6.6.dist-info}/RECORD +257 -140
- {casadi-3.6.4.dist-info → casadi-3.6.6.dist-info}/WHEEL +0 -0
@@ -0,0 +1,505 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright 1997, Regents of the University of Minnesota
|
3
|
+
*
|
4
|
+
* proto.h
|
5
|
+
*
|
6
|
+
* This file contains header files
|
7
|
+
*
|
8
|
+
* Started 10/19/95
|
9
|
+
* George
|
10
|
+
*
|
11
|
+
* $Id: proto.h,v 1.1 1998/11/27 17:59:28 karypis Exp $
|
12
|
+
*
|
13
|
+
*/
|
14
|
+
|
15
|
+
/* balance.c */
|
16
|
+
void Balance2Way(CtrlType *, GraphType *, int *, float);
|
17
|
+
void Bnd2WayBalance(CtrlType *, GraphType *, int *);
|
18
|
+
void General2WayBalance(CtrlType *, GraphType *, int *);
|
19
|
+
|
20
|
+
/* bucketsort.c */
|
21
|
+
void BucketSortKeysInc(int, int, idxtype *, idxtype *, idxtype *);
|
22
|
+
|
23
|
+
/* ccgraph.c */
|
24
|
+
void CreateCoarseGraph(CtrlType *, GraphType *, int, idxtype *, idxtype *);
|
25
|
+
void CreateCoarseGraphNoMask(CtrlType *, GraphType *, int, idxtype *, idxtype *);
|
26
|
+
void CreateCoarseGraph_NVW(CtrlType *, GraphType *, int, idxtype *, idxtype *);
|
27
|
+
GraphType *SetUpCoarseGraph(GraphType *, int, int);
|
28
|
+
void ReAdjustMemory(GraphType *, GraphType *, int);
|
29
|
+
|
30
|
+
/* coarsen.c */
|
31
|
+
GraphType *Coarsen2Way(CtrlType *, GraphType *);
|
32
|
+
|
33
|
+
/* compress.c */
|
34
|
+
void CompressGraph(CtrlType *, GraphType *, int, idxtype *, idxtype *, idxtype *, idxtype *);
|
35
|
+
void PruneGraph(CtrlType *, GraphType *, int, idxtype *, idxtype *, idxtype *, float);
|
36
|
+
|
37
|
+
/* debug.c */
|
38
|
+
int ComputeCut(GraphType *, idxtype *);
|
39
|
+
int CheckBnd(GraphType *);
|
40
|
+
int CheckBnd2(GraphType *);
|
41
|
+
int CheckNodeBnd(GraphType *, int);
|
42
|
+
int CheckRInfo(RInfoType *);
|
43
|
+
int CheckNodePartitionParams(GraphType *);
|
44
|
+
int IsSeparable(GraphType *);
|
45
|
+
|
46
|
+
/* estmem.c */
|
47
|
+
void METIS_EstimateMemory(int *, idxtype *, idxtype *, int *, int *, int *);
|
48
|
+
void EstimateCFraction(int, idxtype *, idxtype *, float *, float *);
|
49
|
+
int ComputeCoarseGraphSize(int, idxtype *, idxtype *, int, idxtype *, idxtype *, idxtype *);
|
50
|
+
|
51
|
+
/* fm.c */
|
52
|
+
void FM_2WayEdgeRefine(CtrlType *, GraphType *, int *, int);
|
53
|
+
|
54
|
+
/* fortran.c */
|
55
|
+
void Change2CNumbering(int, idxtype *, idxtype *);
|
56
|
+
void Change2FNumbering(int, idxtype *, idxtype *, idxtype *);
|
57
|
+
void Change2FNumbering2(int, idxtype *, idxtype *);
|
58
|
+
void Change2FNumberingOrder(int, idxtype *, idxtype *, idxtype *, idxtype *);
|
59
|
+
void ChangeMesh2CNumbering(int, idxtype *);
|
60
|
+
void ChangeMesh2FNumbering(int, idxtype *, int, idxtype *, idxtype *);
|
61
|
+
void ChangeMesh2FNumbering2(int, idxtype *, int, int, idxtype *, idxtype *);
|
62
|
+
|
63
|
+
/* frename.c */
|
64
|
+
void METIS_PARTGRAPHRECURSIVE(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
65
|
+
void metis_partgraphrecursive(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
66
|
+
void metis_partgraphrecursive_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
67
|
+
void metis_partgraphrecursive__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
68
|
+
void METIS_WPARTGRAPHRECURSIVE(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
69
|
+
void metis_wpartgraphrecursive(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
70
|
+
void metis_wpartgraphrecursive_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
71
|
+
void metis_wpartgraphrecursive__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
72
|
+
void METIS_PARTGRAPHKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
73
|
+
void metis_partgraphkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
74
|
+
void metis_partgraphkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
75
|
+
void metis_partgraphkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
76
|
+
void METIS_WPARTGRAPHKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
77
|
+
void metis_wpartgraphkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
78
|
+
void metis_wpartgraphkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
79
|
+
void metis_wpartgraphkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
80
|
+
void METIS_EDGEND(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
81
|
+
void metis_edgend(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
82
|
+
void metis_edgend_(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
83
|
+
void metis_edgend__(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
84
|
+
void METIS_NODEND(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
85
|
+
void metis_nodend(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
86
|
+
void metis_nodend_(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
87
|
+
void metis_nodend__(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
88
|
+
void METIS_NODEWND(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
89
|
+
void metis_nodewnd(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
90
|
+
void metis_nodewnd_(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
91
|
+
void metis_nodewnd__(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
92
|
+
void METIS_PARTMESHNODAL(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
93
|
+
void metis_partmeshnodal(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
94
|
+
void metis_partmeshnodal_(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
95
|
+
void metis_partmeshnodal__(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
96
|
+
void METIS_PARTMESHDUAL(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
97
|
+
void metis_partmeshdual(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
98
|
+
void metis_partmeshdual_(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
99
|
+
void metis_partmeshdual__(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
100
|
+
void METIS_MESHTONODAL(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
101
|
+
void metis_meshtonodal(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
102
|
+
void metis_meshtonodal_(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
103
|
+
void metis_meshtonodal__(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
104
|
+
void METIS_MESHTODUAL(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
105
|
+
void metis_meshtodual(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
106
|
+
void metis_meshtodual_(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
107
|
+
void metis_meshtodual__(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
108
|
+
void METIS_ESTIMATEMEMORY(int *, idxtype *, idxtype *, int *, int *, int *);
|
109
|
+
void metis_estimatememory(int *, idxtype *, idxtype *, int *, int *, int *);
|
110
|
+
void metis_estimatememory_(int *, idxtype *, idxtype *, int *, int *, int *);
|
111
|
+
void metis_estimatememory__(int *, idxtype *, idxtype *, int *, int *, int *);
|
112
|
+
void METIS_MCPARTGRAPHRECURSIVE(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
113
|
+
void metis_mcpartgraphrecursive(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
114
|
+
void metis_mcpartgraphrecursive_(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
115
|
+
void metis_mcpartgraphrecursive__(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
116
|
+
void METIS_MCPARTGRAPHKWAY(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
117
|
+
void metis_mcpartgraphkway(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
118
|
+
void metis_mcpartgraphkway_(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
119
|
+
void metis_mcpartgraphkway__(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
120
|
+
void METIS_PARTGRAPHVKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
121
|
+
void metis_partgraphvkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
122
|
+
void metis_partgraphvkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
123
|
+
void metis_partgraphvkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
124
|
+
void METIS_WPARTGRAPHVKWAY(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
125
|
+
void metis_wpartgraphvkway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
126
|
+
void metis_wpartgraphvkway_(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
127
|
+
void metis_wpartgraphvkway__(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
128
|
+
|
129
|
+
/* graph.c */
|
130
|
+
void SetUpGraph(GraphType *, int, int, int, idxtype *, idxtype *, idxtype *, idxtype *, int);
|
131
|
+
void SetUpGraphKway(GraphType *, int, idxtype *, idxtype *);
|
132
|
+
void SetUpGraph2(GraphType *, int, int, idxtype *, idxtype *, float *, idxtype *);
|
133
|
+
void VolSetUpGraph(GraphType *, int, int, int, idxtype *, idxtype *, idxtype *, idxtype *, int);
|
134
|
+
void RandomizeGraph(GraphType *);
|
135
|
+
int IsConnectedSubdomain(CtrlType *, GraphType *, int, int);
|
136
|
+
int IsConnected(CtrlType *, GraphType *, int);
|
137
|
+
int IsConnected2(GraphType *, int);
|
138
|
+
int FindComponents(CtrlType *, GraphType *, idxtype *, idxtype *);
|
139
|
+
|
140
|
+
/* initpart.c */
|
141
|
+
void Init2WayPartition(CtrlType *, GraphType *, int *, float);
|
142
|
+
void InitSeparator(CtrlType *, GraphType *, float);
|
143
|
+
void GrowBisection(CtrlType *, GraphType *, int *, float);
|
144
|
+
void GrowBisectionNode(CtrlType *, GraphType *, float);
|
145
|
+
void RandomBisection(CtrlType *, GraphType *, int *, float);
|
146
|
+
|
147
|
+
/* kmetis.c */
|
148
|
+
void METIS_PartGraphKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
149
|
+
void METIS_WPartGraphKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
150
|
+
int MlevelKWayPartitioning(CtrlType *, GraphType *, int, idxtype *, float *, float);
|
151
|
+
|
152
|
+
/* kvmetis.c */
|
153
|
+
void METIS_PartGraphVKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
154
|
+
void METIS_WPartGraphVKway(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
155
|
+
int MlevelVolKWayPartitioning(CtrlType *, GraphType *, int, idxtype *, float *, float);
|
156
|
+
|
157
|
+
/* kwayfm.c */
|
158
|
+
void Random_KWayEdgeRefine(CtrlType *, GraphType *, int, float *, float, int, int);
|
159
|
+
void Greedy_KWayEdgeRefine(CtrlType *, GraphType *, int, float *, float, int);
|
160
|
+
void Greedy_KWayEdgeBalance(CtrlType *, GraphType *, int, float *, float, int);
|
161
|
+
|
162
|
+
/* kwayrefine.c */
|
163
|
+
void RefineKWay(CtrlType *, GraphType *, GraphType *, int, float *, float);
|
164
|
+
void AllocateKWayPartitionMemory(CtrlType *, GraphType *, int);
|
165
|
+
void ComputeKWayPartitionParams(CtrlType *, GraphType *, int);
|
166
|
+
void ProjectKWayPartition(CtrlType *, GraphType *, int);
|
167
|
+
int IsBalanced(idxtype *, int, float *, float);
|
168
|
+
void ComputeKWayBoundary(CtrlType *, GraphType *, int);
|
169
|
+
void ComputeKWayBalanceBoundary(CtrlType *, GraphType *, int);
|
170
|
+
|
171
|
+
/* kwayvolfm.c */
|
172
|
+
void Random_KWayVolRefine(CtrlType *, GraphType *, int, float *, float, int, int);
|
173
|
+
void Random_KWayVolRefineMConn(CtrlType *, GraphType *, int, float *, float, int, int);
|
174
|
+
void Greedy_KWayVolBalance(CtrlType *, GraphType *, int, float *, float, int);
|
175
|
+
void Greedy_KWayVolBalanceMConn(CtrlType *, GraphType *, int, float *, float, int);
|
176
|
+
void KWayVolUpdate(CtrlType *, GraphType *, int, int, int, idxtype *, idxtype *, idxtype *);
|
177
|
+
void ComputeKWayVolume(GraphType *, int, idxtype *, idxtype *, idxtype *);
|
178
|
+
int ComputeVolume(GraphType *, idxtype *);
|
179
|
+
void CheckVolKWayPartitionParams(CtrlType *, GraphType *, int);
|
180
|
+
void ComputeVolSubDomainGraph(GraphType *, int, idxtype *, idxtype *);
|
181
|
+
void EliminateVolSubDomainEdges(CtrlType *, GraphType *, int, float *);
|
182
|
+
void EliminateVolComponents(CtrlType *, GraphType *, int, float *, float);
|
183
|
+
|
184
|
+
/* kwayvolrefine.c */
|
185
|
+
void RefineVolKWay(CtrlType *, GraphType *, GraphType *, int, float *, float);
|
186
|
+
void AllocateVolKWayPartitionMemory(CtrlType *, GraphType *, int);
|
187
|
+
void ComputeVolKWayPartitionParams(CtrlType *, GraphType *, int);
|
188
|
+
void ComputeKWayVolGains(CtrlType *, GraphType *, int);
|
189
|
+
void ProjectVolKWayPartition(CtrlType *, GraphType *, int);
|
190
|
+
void ComputeVolKWayBoundary(CtrlType *, GraphType *, int);
|
191
|
+
void ComputeVolKWayBalanceBoundary(CtrlType *, GraphType *, int);
|
192
|
+
|
193
|
+
/* match.c */
|
194
|
+
void Match_RM(CtrlType *, GraphType *);
|
195
|
+
void Match_RM_NVW(CtrlType *, GraphType *);
|
196
|
+
void Match_HEM(CtrlType *, GraphType *);
|
197
|
+
void Match_SHEM(CtrlType *, GraphType *);
|
198
|
+
|
199
|
+
/* mbalance.c */
|
200
|
+
void MocBalance2Way(CtrlType *, GraphType *, float *, float);
|
201
|
+
void MocGeneral2WayBalance(CtrlType *, GraphType *, float *, float);
|
202
|
+
|
203
|
+
/* mbalance2.c */
|
204
|
+
void MocBalance2Way2(CtrlType *, GraphType *, float *, float *);
|
205
|
+
void MocGeneral2WayBalance2(CtrlType *, GraphType *, float *, float *);
|
206
|
+
void SelectQueue3(int, float *, float *, int *, int *, PQueueType [MAXNCON][2], float *);
|
207
|
+
|
208
|
+
/* mcoarsen.c */
|
209
|
+
GraphType *MCCoarsen2Way(CtrlType *, GraphType *);
|
210
|
+
|
211
|
+
/* memory.c */
|
212
|
+
void AllocateWorkSpace(CtrlType *, GraphType *, int);
|
213
|
+
void FreeWorkSpace(CtrlType *, GraphType *);
|
214
|
+
int WspaceAvail(CtrlType *);
|
215
|
+
idxtype *idxwspacemalloc(CtrlType *, int);
|
216
|
+
void idxwspacefree(CtrlType *, int);
|
217
|
+
float *fwspacemalloc(CtrlType *, int);
|
218
|
+
void fwspacefree(CtrlType *, int);
|
219
|
+
GraphType *CreateGraph(void);
|
220
|
+
void InitGraph(GraphType *);
|
221
|
+
void FreeGraph(GraphType *);
|
222
|
+
|
223
|
+
/* mesh.c */
|
224
|
+
void METIS_MeshToDual(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
225
|
+
void METIS_MeshToNodal(int *, int *, idxtype *, int *, int *, idxtype *, idxtype *);
|
226
|
+
void GENDUALMETIS(int, int, int, idxtype *, idxtype *, idxtype *adjncy);
|
227
|
+
void TRINODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);
|
228
|
+
void TETNODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);
|
229
|
+
void HEXNODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);
|
230
|
+
void QUADNODALMETIS(int, int, idxtype *, idxtype *, idxtype *adjncy);
|
231
|
+
|
232
|
+
/* meshpart.c */
|
233
|
+
void METIS_PartMeshNodal(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
234
|
+
void METIS_PartMeshDual(int *, int *, idxtype *, int *, int *, int *, int *, idxtype *, idxtype *);
|
235
|
+
|
236
|
+
/* mfm.c */
|
237
|
+
void MocFM_2WayEdgeRefine(CtrlType *, GraphType *, float *, int);
|
238
|
+
void SelectQueue(int, float *, float *, int *, int *, PQueueType [MAXNCON][2]);
|
239
|
+
int BetterBalance(int, float *, float *, float *);
|
240
|
+
float Compute2WayHLoadImbalance(int, float *, float *);
|
241
|
+
void Compute2WayHLoadImbalanceVec(int, float *, float *, float *);
|
242
|
+
|
243
|
+
/* mfm2.c */
|
244
|
+
void MocFM_2WayEdgeRefine2(CtrlType *, GraphType *, float *, float *, int);
|
245
|
+
void SelectQueue2(int, float *, float *, int *, int *, PQueueType [MAXNCON][2], float *);
|
246
|
+
int IsBetter2wayBalance(int, float *, float *, float *);
|
247
|
+
|
248
|
+
/* mincover.o */
|
249
|
+
void MinCover(idxtype *, idxtype *, int, int, idxtype *, int *);
|
250
|
+
int MinCover_Augment(idxtype *, idxtype *, int, idxtype *, idxtype *, idxtype *, int);
|
251
|
+
void MinCover_Decompose(idxtype *, idxtype *, int, int, idxtype *, idxtype *, int *);
|
252
|
+
void MinCover_ColDFS(idxtype *, idxtype *, int, idxtype *, idxtype *, int);
|
253
|
+
void MinCover_RowDFS(idxtype *, idxtype *, int, idxtype *, idxtype *, int);
|
254
|
+
|
255
|
+
/* minitpart.c */
|
256
|
+
void MocInit2WayPartition(CtrlType *, GraphType *, float *, float);
|
257
|
+
void MocGrowBisection(CtrlType *, GraphType *, float *, float);
|
258
|
+
void MocRandomBisection(CtrlType *, GraphType *, float *, float);
|
259
|
+
void MocInit2WayBalance(CtrlType *, GraphType *, float *);
|
260
|
+
int SelectQueueoneWay(int, float *, float *, int, PQueueType [MAXNCON][2]);
|
261
|
+
|
262
|
+
/* minitpart2.c */
|
263
|
+
void MocInit2WayPartition2(CtrlType *, GraphType *, float *, float *);
|
264
|
+
void MocGrowBisection2(CtrlType *, GraphType *, float *, float *);
|
265
|
+
void MocGrowBisectionNew2(CtrlType *, GraphType *, float *, float *);
|
266
|
+
void MocInit2WayBalance2(CtrlType *, GraphType *, float *, float *);
|
267
|
+
int SelectQueueOneWay2(int, float *, PQueueType [MAXNCON][2], float *);
|
268
|
+
|
269
|
+
/* mkmetis.c */
|
270
|
+
void METIS_mCPartGraphKway(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
271
|
+
int MCMlevelKWayPartitioning(CtrlType *, GraphType *, int, idxtype *, float *);
|
272
|
+
|
273
|
+
/* mkwayfmh.c */
|
274
|
+
void MCRandom_KWayEdgeRefineHorizontal(CtrlType *, GraphType *, int, float *, int);
|
275
|
+
void MCGreedy_KWayEdgeBalanceHorizontal(CtrlType *, GraphType *, int, float *, int);
|
276
|
+
int AreAllHVwgtsBelow(int, float, float *, float, float *, float *);
|
277
|
+
int AreAllHVwgtsAbove(int, float, float *, float, float *, float *);
|
278
|
+
void ComputeHKWayLoadImbalance(int, int, float *, float *);
|
279
|
+
int MocIsHBalanced(int, int, float *, float *);
|
280
|
+
int IsHBalanceBetterFT(int, int, float *, float *, float *, float *);
|
281
|
+
int IsHBalanceBetterTT(int, int, float *, float *, float *, float *);
|
282
|
+
|
283
|
+
/* mkwayrefine.c */
|
284
|
+
void MocRefineKWayHorizontal(CtrlType *, GraphType *, GraphType *, int, float *);
|
285
|
+
void MocAllocateKWayPartitionMemory(CtrlType *, GraphType *, int);
|
286
|
+
void MocComputeKWayPartitionParams(CtrlType *, GraphType *, int);
|
287
|
+
void MocProjectKWayPartition(CtrlType *, GraphType *, int);
|
288
|
+
void MocComputeKWayBalanceBoundary(CtrlType *, GraphType *, int);
|
289
|
+
|
290
|
+
/* mmatch.c */
|
291
|
+
void MCMatch_RM(CtrlType *, GraphType *);
|
292
|
+
void MCMatch_HEM(CtrlType *, GraphType *);
|
293
|
+
void MCMatch_SHEM(CtrlType *, GraphType *);
|
294
|
+
void MCMatch_SHEBM(CtrlType *, GraphType *, int);
|
295
|
+
void MCMatch_SBHEM(CtrlType *, GraphType *, int);
|
296
|
+
float BetterVBalance(int, int, float *, float *, float *);
|
297
|
+
int AreAllVwgtsBelowFast(int, float *, float *, float);
|
298
|
+
|
299
|
+
/* mmd.c */
|
300
|
+
void genmmd(int, idxtype *, idxtype *, idxtype *, idxtype *, int , idxtype *, idxtype *, idxtype *, idxtype *, int, int *);
|
301
|
+
void mmdelm(int, idxtype *xadj, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, int, int);
|
302
|
+
int mmdint(int, idxtype *xadj, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *);
|
303
|
+
void mmdnum(int, idxtype *, idxtype *, idxtype *);
|
304
|
+
void mmdupd(int, int, idxtype *, idxtype *, int, int *, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, int, int *tag);
|
305
|
+
|
306
|
+
/* mpmetis.c */
|
307
|
+
void METIS_mCPartGraphRecursive(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
308
|
+
void METIS_mCHPartGraphRecursive(int *, int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
309
|
+
void METIS_mCPartGraphRecursiveInternal(int *, int *, idxtype *, idxtype *, float *, idxtype *, int *, int *, int *, idxtype *);
|
310
|
+
void METIS_mCHPartGraphRecursiveInternal(int *, int *, idxtype *, idxtype *, float *, idxtype *, int *, float *, int *, int *, idxtype *);
|
311
|
+
int MCMlevelRecursiveBisection(CtrlType *, GraphType *, int, idxtype *, float, int);
|
312
|
+
int MCHMlevelRecursiveBisection(CtrlType *, GraphType *, int, idxtype *, float *, int);
|
313
|
+
void MCMlevelEdgeBisection(CtrlType *, GraphType *, float *, float);
|
314
|
+
void MCHMlevelEdgeBisection(CtrlType *, GraphType *, float *, float *);
|
315
|
+
|
316
|
+
/* mrefine.c */
|
317
|
+
void MocRefine2Way(CtrlType *, GraphType *, GraphType *, float *, float);
|
318
|
+
void MocAllocate2WayPartitionMemory(CtrlType *, GraphType *);
|
319
|
+
void MocCompute2WayPartitionParams(CtrlType *, GraphType *);
|
320
|
+
void MocProject2WayPartition(CtrlType *, GraphType *);
|
321
|
+
|
322
|
+
/* mrefine2.c */
|
323
|
+
void MocRefine2Way2(CtrlType *, GraphType *, GraphType *, float *, float *);
|
324
|
+
|
325
|
+
/* mutil.c */
|
326
|
+
int AreAllVwgtsBelow(int, float, float *, float, float *, float);
|
327
|
+
int AreAnyVwgtsBelow(int, float, float *, float, float *, float);
|
328
|
+
int AreAllVwgtsAbove(int, float, float *, float, float *, float);
|
329
|
+
float ComputeLoadImbalance(int, int, float *, float *);
|
330
|
+
int AreAllBelow(int, float *, float *);
|
331
|
+
|
332
|
+
/* myqsort.c */
|
333
|
+
void iidxsort(int, idxtype *);
|
334
|
+
void iintsort(int, int *);
|
335
|
+
void ikeysort(int, KeyValueType *);
|
336
|
+
void ikeyvalsort(int, KeyValueType *);
|
337
|
+
|
338
|
+
/* ometis.c */
|
339
|
+
void METIS_EdgeND(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
340
|
+
void METIS_NodeND(int *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
341
|
+
void METIS_NodeWND(int *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *, idxtype *);
|
342
|
+
void MlevelNestedDissection(CtrlType *, GraphType *, idxtype *, float, int);
|
343
|
+
void MlevelNestedDissectionCC(CtrlType *, GraphType *, idxtype *, float, int);
|
344
|
+
void MlevelNodeBisectionMultiple(CtrlType *, GraphType *, int *, float);
|
345
|
+
void MlevelNodeBisection(CtrlType *, GraphType *, int *, float);
|
346
|
+
void SplitGraphOrder(CtrlType *, GraphType *, GraphType *, GraphType *);
|
347
|
+
void MMDOrder(CtrlType *, GraphType *, idxtype *, int);
|
348
|
+
int SplitGraphOrderCC(CtrlType *, GraphType *, GraphType *, int, idxtype *, idxtype *);
|
349
|
+
|
350
|
+
/* parmetis.c */
|
351
|
+
void METIS_PartGraphKway2(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
352
|
+
void METIS_WPartGraphKway2(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
353
|
+
void METIS_NodeNDP(int, idxtype *, idxtype *, int, int *, idxtype *, idxtype *, idxtype *);
|
354
|
+
void MlevelNestedDissectionP(CtrlType *, GraphType *, idxtype *, int, int, int, idxtype *);
|
355
|
+
void METIS_NodeComputeSeparator(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *);
|
356
|
+
void METIS_EdgeComputeSeparator(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, idxtype *);
|
357
|
+
|
358
|
+
/* pmetis.c */
|
359
|
+
void METIS_PartGraphRecursive(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, int *, int *, idxtype *);
|
360
|
+
void METIS_WPartGraphRecursive(int *, idxtype *, idxtype *, idxtype *, idxtype *, int *, int *, int *, float *, int *, int *, idxtype *);
|
361
|
+
int MlevelRecursiveBisection(CtrlType *, GraphType *, int, idxtype *, float *, float, int);
|
362
|
+
void MlevelEdgeBisection(CtrlType *, GraphType *, int *, float);
|
363
|
+
void SplitGraphPart(CtrlType *, GraphType *, GraphType *, GraphType *);
|
364
|
+
void SetUpSplitGraph(GraphType *, GraphType *, int, int);
|
365
|
+
|
366
|
+
/* pqueue.c */
|
367
|
+
void PQueueInit(CtrlType *ctrl, PQueueType *, int, int);
|
368
|
+
void PQueueReset(PQueueType *);
|
369
|
+
void PQueueFree(CtrlType *ctrl, PQueueType *);
|
370
|
+
int PQueueGetSize(PQueueType *);
|
371
|
+
int PQueueInsert(PQueueType *, int, int);
|
372
|
+
int PQueueDelete(PQueueType *, int, int);
|
373
|
+
int PQueueUpdate(PQueueType *, int, int, int);
|
374
|
+
void PQueueUpdateUp(PQueueType *, int, int, int);
|
375
|
+
int PQueueGetMax(PQueueType *);
|
376
|
+
int PQueueSeeMax(PQueueType *);
|
377
|
+
int PQueueGetKey(PQueueType *);
|
378
|
+
int CheckHeap(PQueueType *);
|
379
|
+
|
380
|
+
/* refine.c */
|
381
|
+
void Refine2Way(CtrlType *, GraphType *, GraphType *, int *, float ubfactor);
|
382
|
+
void Allocate2WayPartitionMemory(CtrlType *, GraphType *);
|
383
|
+
void Compute2WayPartitionParams(CtrlType *, GraphType *);
|
384
|
+
void Project2WayPartition(CtrlType *, GraphType *);
|
385
|
+
|
386
|
+
/* separator.c */
|
387
|
+
void ConstructSeparator(CtrlType *, GraphType *, float);
|
388
|
+
void ConstructMinCoverSeparator0(CtrlType *, GraphType *, float);
|
389
|
+
void ConstructMinCoverSeparator(CtrlType *, GraphType *, float);
|
390
|
+
|
391
|
+
/* sfm.c */
|
392
|
+
void FM_2WayNodeRefine(CtrlType *, GraphType *, float, int);
|
393
|
+
void FM_2WayNodeRefineEqWgt(CtrlType *, GraphType *, int);
|
394
|
+
void FM_2WayNodeRefine_OneSided(CtrlType *, GraphType *, float, int);
|
395
|
+
void FM_2WayNodeBalance(CtrlType *, GraphType *, float);
|
396
|
+
int ComputeMaxNodeGain(int, idxtype *, idxtype *, idxtype *);
|
397
|
+
|
398
|
+
/* srefine.c */
|
399
|
+
void Refine2WayNode(CtrlType *, GraphType *, GraphType *, float);
|
400
|
+
void Allocate2WayNodePartitionMemory(CtrlType *, GraphType *);
|
401
|
+
void Compute2WayNodePartitionParams(CtrlType *, GraphType *);
|
402
|
+
void Project2WayNodePartition(CtrlType *, GraphType *);
|
403
|
+
|
404
|
+
/* stat.c */
|
405
|
+
void ComputePartitionInfo(GraphType *, int, idxtype *);
|
406
|
+
void ComputePartitionInfoBipartite(GraphType *, int, idxtype *);
|
407
|
+
void ComputePartitionBalance(GraphType *, int, idxtype *, float *);
|
408
|
+
float ComputeElementBalance(int, int, idxtype *);
|
409
|
+
|
410
|
+
/* subdomains.c */
|
411
|
+
void Random_KWayEdgeRefineMConn(CtrlType *, GraphType *, int, float *, float, int, int);
|
412
|
+
void Greedy_KWayEdgeBalanceMConn(CtrlType *, GraphType *, int, float *, float, int);
|
413
|
+
void PrintSubDomainGraph(GraphType *, int, idxtype *);
|
414
|
+
void ComputeSubDomainGraph(GraphType *, int, idxtype *, idxtype *);
|
415
|
+
void EliminateSubDomainEdges(CtrlType *, GraphType *, int, float *);
|
416
|
+
void MoveGroupMConn(CtrlType *, GraphType *, idxtype *, idxtype *, int, int, int, idxtype *);
|
417
|
+
void EliminateComponents(CtrlType *, GraphType *, int, float *, float);
|
418
|
+
void MoveGroup(CtrlType *, GraphType *, int, int, int, idxtype *, idxtype *);
|
419
|
+
|
420
|
+
/* timing.c */
|
421
|
+
void InitTimers(CtrlType *);
|
422
|
+
void PrintTimers(CtrlType *);
|
423
|
+
double seconds(void);
|
424
|
+
|
425
|
+
/* util.c */
|
426
|
+
void errexit(char *,...);
|
427
|
+
#ifndef DMALLOC
|
428
|
+
int *imalloc(int, char *);
|
429
|
+
idxtype *idxmalloc(int, char *);
|
430
|
+
float *fmalloc(int, char *);
|
431
|
+
int *ismalloc(int, int, char *);
|
432
|
+
idxtype *idxsmalloc(int, idxtype, char *);
|
433
|
+
void *GKmalloc(int, char *);
|
434
|
+
#endif
|
435
|
+
/*void GKfree(void **,...); */
|
436
|
+
int *iset(int n, int val, int *x);
|
437
|
+
idxtype *idxset(int n, idxtype val, idxtype *x);
|
438
|
+
float *sset(int n, float val, float *x);
|
439
|
+
int iamax(int, int *);
|
440
|
+
int idxamax(int, idxtype *);
|
441
|
+
int idxamax_strd(int, idxtype *, int);
|
442
|
+
int samax(int, float *);
|
443
|
+
int samax2(int, float *);
|
444
|
+
int idxamin(int, idxtype *);
|
445
|
+
int samin(int, float *);
|
446
|
+
int idxsum(int, idxtype *);
|
447
|
+
int idxsum_strd(int, idxtype *, int);
|
448
|
+
void idxadd(int, idxtype *, idxtype *);
|
449
|
+
int charsum(int, char *);
|
450
|
+
int isum(int, int *);
|
451
|
+
float ssum(int, float *);
|
452
|
+
float ssum_strd(int n, float *x, int);
|
453
|
+
void sscale(int n, float, float *x);
|
454
|
+
float snorm2(int, float *);
|
455
|
+
float sdot(int n, float *, float *);
|
456
|
+
void saxpy(int, float, float *, int, float *, int);
|
457
|
+
void RandomPermute(int, idxtype *, int);
|
458
|
+
double drand48();
|
459
|
+
void srand48(long);
|
460
|
+
int ispow2(int);
|
461
|
+
void InitRandom(int);
|
462
|
+
int ilog2(int);
|
463
|
+
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
|
468
|
+
|
469
|
+
|
470
|
+
|
471
|
+
|
472
|
+
|
473
|
+
/***************************************************************
|
474
|
+
* Programs Directory
|
475
|
+
****************************************************************/
|
476
|
+
|
477
|
+
/* io.c */
|
478
|
+
void ReadGraph(GraphType *, char *, int *);
|
479
|
+
void WritePartition(char *, idxtype *, int, int);
|
480
|
+
void WriteMeshPartition(char *, int, int, idxtype *, int, idxtype *);
|
481
|
+
void WritePermutation(char *, idxtype *, int);
|
482
|
+
int CheckGraph(GraphType *);
|
483
|
+
idxtype *ReadMesh(char *, int *, int *, int *);
|
484
|
+
void WriteGraph(char *, int, idxtype *, idxtype *);
|
485
|
+
|
486
|
+
/* smbfactor.c */
|
487
|
+
void ComputeFillIn(GraphType *, idxtype *);
|
488
|
+
idxtype ComputeFillIn2(GraphType *, idxtype *);
|
489
|
+
int smbfct(int, idxtype *, idxtype *, idxtype *, idxtype *, idxtype *, int *, idxtype *, idxtype *, int *);
|
490
|
+
|
491
|
+
|
492
|
+
/***************************************************************
|
493
|
+
* Test Directory
|
494
|
+
****************************************************************/
|
495
|
+
void Test_PartGraph(int, idxtype *, idxtype *);
|
496
|
+
int VerifyPart(int, idxtype *, idxtype *, idxtype *, idxtype *, int, int, idxtype *);
|
497
|
+
int VerifyWPart(int, idxtype *, idxtype *, idxtype *, idxtype *, int, float *, int, idxtype *);
|
498
|
+
void Test_PartGraphV(int, idxtype *, idxtype *);
|
499
|
+
int VerifyPartV(int, idxtype *, idxtype *, idxtype *, idxtype *, int, int, idxtype *);
|
500
|
+
int VerifyWPartV(int, idxtype *, idxtype *, idxtype *, idxtype *, int, float *, int, idxtype *);
|
501
|
+
void Test_PartGraphmC(int, idxtype *, idxtype *);
|
502
|
+
int VerifyPartmC(int, int, idxtype *, idxtype *, idxtype *, idxtype *, int, float *, int, idxtype *);
|
503
|
+
void Test_ND(int, idxtype *, idxtype *);
|
504
|
+
int VerifyND(int, idxtype *, idxtype *);
|
505
|
+
|