chiark / gitweb /
set threads_started
[moebius2.git] / minimise.h
index b0d285d9b1ac16f7c4e09468cd3d5072483eaae5..c2e13e7b40fef83169495c5b2754fc91333c90d1 100644 (file)
 double compute_energy(const struct Vertices *vs);
 void energy_init(void);
 
-double graph_layout_cost(const Vertices v);
+double graph_layout_cost(const Vertices v, int section);
 void graph_layout_prepare();
 
-void compute_vertex_areas(const Vertices vertices);
-void compute_edge_lengths(const Vertices vertices);
+void compute_vertex_areas(const Vertices vertices, int section);
+void compute_edge_lengths(const Vertices vertices, int section);
+
 extern double vertex_areas[N], vertex_mean_edge_lengths[N], edge_lengths[N][V6];
 
-extern double density;
+extern const double edge_angle_cost_circcircrat;
 
-double line_bending_adjcost(const Vertices vertices);
-double noncircular_rim_cost(const Vertices vertices);
-double edge_length_variation_cost(const Vertices vertices);
-double rim_proximity_cost(const Vertices vertices);
+double line_bending_cost(const Vertices vertices, int section);
+double noncircular_rim_cost(const Vertices vertices, int section);
+double edge_length_variation_cost(const Vertices vertices, int section);
+double rim_proximity_cost(const Vertices vertices, int section);
+double edge_angle_cost(const Vertices vertices, int section);
+double small_triangles_cost(const Vertices vertices, int section);
 
-extern const char *input_file, *output_file;
-extern char *output_file_tmp;
+extern const char *input_file, *best_file;
+extern char *best_file_tmp;
+extern long long evaluations;
+extern double stop_epsilon;
 
 enum printing_instance { pr_cost, pr_size, pr__max };
 int printing_check(enum printing_instance, int indent);