For library mode to run properly, configuration object should mirror the input_dict and/or configuration file nearly exactly (i.e. maybe change datatype, but not change value itself).
Examples of failures:
in fitsnap.in:
> print(fitsnap.config.sections["XYZ"].abc)
> "pq"
(lower case for some reason)
> print(fitsnap.config.sections["XYZ"].some_file)
> Error: variable "some_file" doesn't exist
(whut? this shouldn't happen at all!)
> print(fitsnap.config.sections["XYZ"].some_stupid_new_variable_for_filename)
> "some.txt"
(what happened?)
> print(fitsnap.config.sections["XYZ"].some_int)
> 1.0000000000001
(was transformed somewhere and gained a numerical nugget)
> print(fitsnap.config.sections["XYZ"].some_fraction)
> 56
(turned into an int as a raw count from fraction)
This is driving me completely insane!!!!
Here are areas where it transforms the input into something unexpected:
OUTFILE: almost all of these variables are deleted and/or transformed, probably the worst offender of them all
GROUPS.group_table, training_size, testing_size: inputs are percents (floats), outputs are integers...
For library mode to run properly, configuration object should mirror the input_dict and/or configuration file nearly exactly (i.e. maybe change datatype, but not change value itself). Examples of failures: in fitsnap.in:
EXPECTED at runtime:
but what actually happens:
This is driving me completely insane!!!! Here are areas where it transforms the input into something unexpected: