From: Matthew Fernandez Date: Sun, 28 Aug 2022 19:52:10 +0000 (-0700) Subject: sfdpgen spring_electrical_control: remove 'multilevel_coarsen_mode' X-Git-Tag: 6.0.1~14^2~8 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7bd760f96c72c7b65d781711f5a971bd5da36c81;p=graphviz sfdpgen spring_electrical_control: remove 'multilevel_coarsen_mode' This was never set to anything other than `COARSEN_MODE_FORCEFUL`. --- diff --git a/lib/sfdpgen/Multilevel.c b/lib/sfdpgen/Multilevel.c index 83f827762..bcadf1ad7 100644 --- a/lib/sfdpgen/Multilevel.c +++ b/lib/sfdpgen/Multilevel.c @@ -16,7 +16,7 @@ #include #include -Multilevel_control Multilevel_control_new(int mode) { +Multilevel_control Multilevel_control_new(void) { Multilevel_control ctrl; ctrl = GNEW(struct Multilevel_control_struct); @@ -24,12 +24,9 @@ Multilevel_control Multilevel_control_new(int mode) { ctrl->min_coarsen_factor = 0.75; ctrl->maxlevel = 1<<30; ctrl->randomize = TRUE; - /* now set in spring_electrical_control_new(), as well as by command line argument -c - ctrl->coarsen_mode = COARSEN_MODE_FORCEFUL; or COARSEN_MODE_GENTLE; - */ ctrl->coarsen_scheme = COARSEN_INDEPENDENT_EDGE_SET_HEAVEST_EDGE_PERNODE_SUPERNODES_FIRST; - ctrl->coarsen_mode = mode; + ctrl->coarsen_mode = COARSEN_MODE_FORCEFUL; return ctrl; } diff --git a/lib/sfdpgen/Multilevel.h b/lib/sfdpgen/Multilevel.h index e83474376..f441a3d60 100644 --- a/lib/sfdpgen/Multilevel.h +++ b/lib/sfdpgen/Multilevel.h @@ -48,7 +48,7 @@ struct Multilevel_control_struct { typedef struct Multilevel_control_struct *Multilevel_control; -Multilevel_control Multilevel_control_new(int mode); +Multilevel_control Multilevel_control_new(void); void Multilevel_control_delete(Multilevel_control ctrl); diff --git a/lib/sfdpgen/spring_electrical.c b/lib/sfdpgen/spring_electrical.c index bd6f8fbd6..def6071b9 100644 --- a/lib/sfdpgen/spring_electrical.c +++ b/lib/sfdpgen/spring_electrical.c @@ -40,11 +40,6 @@ spring_electrical_control spring_electrical_control_new(){ ctrl->C = 0.2;/* another parameter. f_a(i,j) = C*dist(i,j)^2/K * d_ij, f_r(i,j) = K^(3-p)/dist(i,j)^(-p). By default C = 0.2. */ ctrl->multilevels = FALSE;/* if <=1, single level */ - //ctrl->multilevel_coarsen_mode = COARSEN_MODE_GENTLE; - - ctrl->multilevel_coarsen_mode = COARSEN_MODE_FORCEFUL;/*alternative: COARSEN_MODE_GENTLE. pass on to Multilevel_control->coarsen_mode */ - - ctrl->quadtree_size = 45;/* cut off size above which quadtree approximation is used */ ctrl->max_qtree_level = 10;/* max level of quadtree */ ctrl->bh = 0.6;/* Barnes-Hutt constant, if width(snode)/dist[i,snode] < bh, treat snode as a supernode.*/ @@ -87,8 +82,7 @@ void spring_electrical_control_print(spring_electrical_control ctrl){ fprintf (stderr, " repulsive and attractive exponents: %.03f %.03f\n", ctrl->p, ctrl->q); fprintf (stderr, " random start %d seed %d\n", ctrl->random_start, ctrl->random_seed); fprintf (stderr, " K : %.03f C : %.03f\n", ctrl->K, ctrl->C); - fprintf (stderr, " max levels %d coarsen_node %d\n", ctrl->multilevels, - ctrl->multilevel_coarsen_mode); + fprintf (stderr, " max levels %d\n", ctrl->multilevels); fprintf (stderr, " quadtree size %d max_level %d\n", ctrl->quadtree_size, ctrl->max_qtree_level); fprintf (stderr, " Barnes-Hutt constant %.03f tolerance %.03f maxiter %d\n", ctrl->bh, ctrl->tol, ctrl->maxiter); fprintf (stderr, " cooling %.03f step size %.03f adaptive %d\n", ctrl->cool, ctrl->step, ctrl->adaptive_cooling); @@ -1914,7 +1908,7 @@ static void multilevel_spring_electrical_embedding_core(int dim, SparseMatrix A0 return; } - mctrl = Multilevel_control_new(ctrl->multilevel_coarsen_mode); + mctrl = Multilevel_control_new(); mctrl->maxlevel = ctrl->multilevels; grid0 = Multilevel_new(A, D, mctrl); diff --git a/lib/sfdpgen/spring_electrical.h b/lib/sfdpgen/spring_electrical.h index 8018a649e..0bc66301d 100644 --- a/lib/sfdpgen/spring_electrical.h +++ b/lib/sfdpgen/spring_electrical.h @@ -32,7 +32,6 @@ struct spring_electrical_control_struct { double K;/* the natural distance. If K < 0, K will be set to the average distance of an edge */ double C;/* another parameter. f_a(i,j) = C*dist(i,j)^2/K * d_ij, f_r(i,j) = K^(3-p)/dist(i,j)^(-p). By default C = 0.2. */ int multilevels;/* if <=1, single level */ - int multilevel_coarsen_mode;/* pass on to Multilevel_control->coarsen_mode */ int quadtree_size;/* cut off size above which quadtree approximation is used */ int max_qtree_level;/* max level of quadtree */ double bh;/* Barnes-Hutt constant, if width(snode)/dist[i,snode] < bh, treat snode as a supernode. default 0.2*/