Qpart 8 ompi/mca/topo/treematch/treematch/k-partitioning.c void initialization(int * const part, double ** const matrice, PriorityQueue * const Qpart, PriorityQueue * const Q, PriorityQueue * const Qinst, double ** const D, int n, int k, int * const deficit, int * const surplus); Qpart 9 ompi/mca/topo/treematch/treematch/k-partitioning.c void algo(int * const part, double ** const matrice, PriorityQueue * const Qpart, PriorityQueue * const Q, PriorityQueue * const Qinst, double ** const D, int n, int * const deficit, int * const surplus); Qpart 10 ompi/mca/topo/treematch/treematch/k-partitioning.c double nextGain(PriorityQueue * const Qpart, PriorityQueue * const Q, int * const deficit, int * const surplus); Qpart 12 ompi/mca/topo/treematch/treematch/k-partitioning.c void destruction(PriorityQueue * Qpart, PriorityQueue * Q, PriorityQueue * Qinst, double ** D, int n, int k); Qpart 23 ompi/mca/topo/treematch/treematch/k-partitioning.c PriorityQueue Qpart, *Q = NULL, *Qinst = NULL; Qpart 34 ompi/mca/topo/treematch/treematch/k-partitioning.c initialization(part, comm, &Qpart, Q, Qinst, D, real_n, k, &deficit, &surplus); Qpart 37 ompi/mca/topo/treematch/treematch/k-partitioning.c while((nextGain(&Qpart, Q, &deficit, &surplus))>0) Qpart 39 ompi/mca/topo/treematch/treematch/k-partitioning.c algo(part, comm, &Qpart, Q, Qinst, D, real_n, &deficit, &surplus); Qpart 46 ompi/mca/topo/treematch/treematch/k-partitioning.c destruction(&Qpart, Q, Qinst, D, real_n, k); Qpart 61 ompi/mca/topo/treematch/treematch/k-partitioning.c void initialization(int * const part, double ** const matrice, PriorityQueue * const Qpart, PriorityQueue * const Q, PriorityQueue * const Qinst, double ** const D, int n, int k, int * const deficit, int * const surplus) Qpart 67 ompi/mca/topo/treematch/treematch/k-partitioning.c PQ_init(Qpart, k); Qpart 99 ompi/mca/topo/treematch/treematch/k-partitioning.c PQ_insert(Qpart, i, PQ_findMaxKey(&Q[i])); /*we insert it in Qpart with the highest possible gain by one of its vertex as key*/ Qpart 106 ompi/mca/topo/treematch/treematch/k-partitioning.c void algo(int * const part, double ** const matrice, PriorityQueue * const Qpart, PriorityQueue * const Q, PriorityQueue * const Qinst, double ** const D, int n, int * const deficit, int * const surplus) Qpart 112 ompi/mca/topo/treematch/treematch/k-partitioning.c p = PQ_deleteMax(Qpart); /*we get the subset with the highest possible gain in p and remove it from Qpart*/ Qpart 119 ompi/mca/topo/treematch/treematch/k-partitioning.c PQ_delete(Qpart, part[u]); /*then we remove surplus from Qpart (note that u is from surplus so part[u] is surplus) */ Qpart 122 ompi/mca/topo/treematch/treematch/k-partitioning.c PQ_insert(Qpart, part[u], d); /*we put part[u] back in Qpart with its new highest possible gain*/ Qpart 142 ompi/mca/topo/treematch/treematch/k-partitioning.c PQ_adjustKey(Qpart, part[v], d); /*we update it in Qpart*/ Qpart 149 ompi/mca/topo/treematch/treematch/k-partitioning.c PQ_adjustKey(Qpart, part[u], d); /*we update the new highest possible gain in u's subset*/ Qpart 152 ompi/mca/topo/treematch/treematch/k-partitioning.c double nextGain(PriorityQueue * const Qpart, PriorityQueue * const Q, int * const deficit, int * const surplus) Qpart 156 ompi/mca/topo/treematch/treematch/k-partitioning.c res = PQ_findMaxKey(Qpart); /*we get the highest possible gain*/ Qpart 179 ompi/mca/topo/treematch/treematch/k-partitioning.c void destruction(PriorityQueue * Qpart, PriorityQueue * Q, PriorityQueue * Qinst, double ** D, int n, int k) Qpart 182 ompi/mca/topo/treematch/treematch/k-partitioning.c PQ_exit(Qpart);