CliqueSeparation *clq_sep_create( const CGraph *origGraph ) { CliqueSeparation *clqSep = xmalloc( sizeof(CliqueSeparation) ); clqSep->maxDepth = CLQ_SEP_DEF_MAX_DEPTH; clqSep->maxPasses = CLQ_SEP_DEF_MAX_PASSES; clqSep->minViol = CLQ_SEP_DEF_MIN_VIOL; clqSep->minFrac = CLQ_SEP_DEF_MIN_FRAC; clqSep->extendCliques = CLQ_SEP_DEF_EXTEND; clqSep->enumUsage = CLQ_SEP_DEF_ENUM; clqSep->verbose = CLQ_SEP_DEF_VERBOSE; clqSep->maxTimeBK = CLQ_SEP_DEF_TLBK; clqSep->hasCosts = 0; clqSep->nodeCap = cgraph_size(origGraph); clqSep->clqEnum = clq_enum_create( 0 ); vint_set_init( &(clqSep->clqEnumNeighs) ); clqSep->iv = xmalloc( sizeof(int)*clqSep->nodeCap ); clqSep->costs = xmalloc( sizeof(int)*clqSep->nodeCap ); clqSep->cgraph = origGraph; clqSep->clqe = clqe_create(); clqSep->clqSetOrig = clq_set_create(); clqSep->clqSet = clq_set_create(); clqSep->extendedCap = 1024; clqSep->extended = xmalloc( sizeof(char)*clqSep->extendedCap ); return clqSep; }
CliqueSeparation *clq_sep_create( const CGraph *origGraph ) { CliqueSeparation *clqSep = xmalloc( sizeof(CliqueSeparation) ); clqSep->minViol = CLQ_SEP_DEF_MIN_VIOL; clqSep->minFrac = CLQ_SEP_DEF_MIN_FRAC; clqSep->extendCliques = CLQ_SEP_DEF_CLQE_EXTEND; clqSep->verbose = CLQ_SEP_DEF_VERBOSE; clqSep->maxItBK = CLQ_SEP_DEF_MAX_IT_BK; clqSep->maxRC = CLQ_SEP_DEF_CLQE_MAX_RC; clqSep->hasCosts = 0; clqSep->nodeCap = cgraph_size(origGraph); clqSep->iv = xmalloc( sizeof(int)*clqSep->nodeCap ); clqSep->costs = xmalloc( sizeof(int)*clqSep->nodeCap ); clqSep->cgraph = origGraph; clqSep->clqe = clqe_create(); clqSep->clqSetOrig = clq_set_create(); clqSep->clqSet = clq_set_create(); clqSep->extendedCap = 1024; clqSep->extended = xmalloc( sizeof(char)*clqSep->extendedCap ); return clqSep; }