16namespace layer1_foundations {
17namespace geometry_builder {
58geometry_builder::~geometry_builder()
83 int f_v = (verbose_level >= 1);
87 cout <<
"geometry_builder::init_description" << endl;
92 cout <<
"please use option -V to specify the row partition" << endl;
97 for (i = 0; i <
v_len; i++) {
102 cout <<
"please use option -B to specify the column partition" << endl;
107 for (i = 0; i <
b_len; i++) {
113 cout <<
"geometry_builder::init_description V=" <<
V << endl;
114 cout <<
"geometry_builder::init_description B=" <<
B << endl;
118 cout <<
"please use option -TDO to specify the TDO row-scheme" << endl;
132 cout <<
"the sum of the fuse values must equal the number of rows of the TDO" << endl;
133 cout <<
"f=" << f << endl;
134 cout <<
"v_len=" <<
v_len << endl;
144 cout <<
"geometry_builder::init_description before compute_VBR" << endl;
150 cout <<
"geometry_builder::init_description after compute_VBR" << endl;
157 cout <<
"geometry_builder::init_description before gg->init" << endl;
159 gg->
init(
this, verbose_level);
161 cout <<
"geometry_builder::init_description after gg->init" << endl;
168 cout <<
"geometry_builder::init_description set_flush_to_inc_file" << endl;
182 cout <<
"geometry_builder::init_description inc_file_name = " <<
gg->
inc_file_name << endl;
187 cout <<
"geometry_builder::init_description setting up tests:" << endl;
195 cout <<
"geometry_builder::init_description allocating arrays" << endl;
204 for (i = 0; i <=
V; i++) {
211 cout <<
"geometry_builder::init_description reading test_lines" << endl;
224 for (j = 0; j < lines_len; j++) {
232 cout <<
"geometry_builder::init_description reading test2_lines" << endl;
243 for (j = 0; j < lines_len; j++) {
249 cout <<
"geometry_builder::init_description installing tests" << endl;
252 for (i = 1; i <=
V; i++) {
254 cout <<
"geometry_builder::init_description installing test on line " << i << endl;
257 if (s_type[i] == 1) {
258 isot(i, verbose_level);
260 else if (s_type[i] == 2) {
261 isot2(i, verbose_level);
269 cout <<
"geometry_builder::init_description installing split on line " <<
Descr->
split_line << endl;
271 cout <<
"geometry_builder::init_description modulo " <<
Descr->
split_modulo << endl;
281 cout <<
"geometry_builder::init_description done" << endl;
287void geometry_builder::compute_VBR(
int verbose_level)
289 int f_v = (verbose_level >= 1);
293 cout <<
"geometry_builder::compute_VBR v_len = " <<
v_len <<
" b_len = " <<
b_len << endl;
296 for (j = 0; j <
b_len; j++) {
300 for (i = 0; i <
v_len; i++) {
306 for (i = 0; i <
v_len; i++) {
307 for (h = 0; h <
v[i]; h++, row++) {
309 for (j = 0; j <
b_len; j++) {
318 cout <<
"geometry_builder::compute_VBR done" << endl;
322void geometry_builder::print_tdo()
327 for (j = 0; j <
b_len; j++) {
328 cout << setw(2) <<
b[j] <<
" ";
332 for (j = 0; j <
b_len; j++) {
336 for (i = 0; i <
v_len; i++) {
337 cout << setw(2) <<
v[i] <<
" ";
338 for (j = 0; j <
b_len; j++) {
339 cout << setw(2) <<
TDO[i *
b_len + j] <<
" ";
345void geometry_builder::isot(
int line,
int verbose_level)
351void geometry_builder::isot_no_vhbars(
int verbose_level)
357void geometry_builder::isot2(
int line,
int verbose_level)
363void geometry_builder::set_split(
int line,
int remainder,
int modulo)
classification of geometries with a given row-tactical decomposition
std::string inc_file_name
void init(geometry_builder *GB, int verbose_level)
description of a geometry
std::vector< std::string > test2_lines
std::vector< std::string > test_lines
classification of geometries
void isot(int line, int verbose_level)
void compute_VBR(int verbose_level)
void isot2(int line, int verbose_level)
geometry_builder_description * Descr
iso_type * iso_type_no_vhbars
void set_split(int row, int remainder, int modulo)
void install_isomorphism_test_after_a_given_row(int i, int f_orderly, int verbose_level)
void install_isomorphism_test_of_second_kind_after_a_given_row(int i, int f_orderly, int verbose_level)
classification of geometries based on canonical forms
void init(gen_geo *gg, int v, int f_orderly, int verbose_level)
void get_vector_from_label(std::string &label, int *&v, int &sz, int verbose_level)
#define Int_vec_scan(A, B, C)
orbiter_kernel_system::orbiter_session * Orbiter
global Orbiter session
the orbiter library for the classification of combinatorial objects