From 4bcc97f7dde003e2e5bf57342ccbce616f52fa16 Mon Sep 17 00:00:00 2001 From: Andreas Gattringer <andreas.gattringer@univie.ac.at> Date: Mon, 3 Jul 2023 23:01:50 +0200 Subject: [PATCH] clean up log messages and module loading output --- src/cats/actions/setup_actions.c | 2 +- src/cats/cats.c | 8 ++++---- .../configuration/load_configuration_species_params.c | 3 ++- src/cats/configuration/print_configuration.c | 3 +++ src/cats/grids/gdal_helper.c | 2 +- src/cats/lambda/leslie_matrix.c | 10 ++++++++-- src/cats/modules/load_module.c | 2 +- 7 files changed, 20 insertions(+), 10 deletions(-) diff --git a/src/cats/actions/setup_actions.c b/src/cats/actions/setup_actions.c index 1c03f48..cbb02e1 100644 --- a/src/cats/actions/setup_actions.c +++ b/src/cats/actions/setup_actions.c @@ -160,7 +160,7 @@ append_action(struct cats_configuration *conf, action_function action, enum cats void list_actions_full(struct cats_configuration *conf) { - log_message(LOG_INFO, "Action functions: %d", conf->action_functions.count); + log_message(LOG_INFO, "Number of registered action functions: %d", conf->action_functions.count); for (int32_t i = 0; i < conf->action_functions.count; i++) { log_message(LOG_INFO, "%d: %s %p ", i, conf->action_functions.names[i], conf->action_functions.functions[i]); diff --git a/src/cats/cats.c b/src/cats/cats.c index c3950e5..3542168 100644 --- a/src/cats/cats.c +++ b/src/cats/cats.c @@ -130,8 +130,8 @@ void load_modules(struct cats_configuration *conf) { for (int32_t i = 0; i < conf->modules.found_count; i++) { int32_t id = load_module(conf, &conf->modules.module[i]); - printf("%s: %d/%d-> %d (%d)\n", conf->modules.module[i].name, i, conf->modules.count, id, - conf->modules.module[i].flags); + log_message(LOG_IMPORTANT, "Loaded module %d of %d: '%s' with id %d and flags %d", + i + 1, conf->modules.count, conf->modules.module[i].name, id, conf->modules.module[i].flags); } for (int32_t i = 0; i < conf->param_count; i++) { @@ -162,8 +162,8 @@ void load_modules(struct cats_configuration *conf) } + log_message(LOG_INFO, "%s: Loading vital rate functions for module id %d", __func__, j); - printf("%s: %d\n", __func__, j); if (p->module_data[j].load_species_param_function) { p->module_data[j].load_species_param_function(conf, conf->ini, p->species_config_section, p); } @@ -189,7 +189,7 @@ struct cats_configuration *load_main_configuration(const struct program_options load_modules(conf); setup_module_directories(conf); - print_modules(conf); + setup_simulation_actions(conf); // which values of the configuration file did we ignore? return conf; diff --git a/src/cats/configuration/load_configuration_species_params.c b/src/cats/configuration/load_configuration_species_params.c index 6480603..7dd39c2 100644 --- a/src/cats/configuration/load_configuration_species_params.c +++ b/src/cats/configuration/load_configuration_species_params.c @@ -102,7 +102,8 @@ void load_conf_vital_rate(struct cats_vital_rate *vr, struct cats_configuration char *vital_rate_maximum = compound_string(vr_name, "maximum", " "); bool req = !vr->preset.have_maximum; - printf("%s: %s required %d\n", __func__, vr->name, req); + log_message(LOG_INFO, "%s: Loading vital rate '%s' (required: %d)", __func__, vr->name, req); + if (vr == &p->carrying_capacity) req = true; bool have_max = load_conf_value(req, ini, species_section, vital_rate_maximum, &vr->max_rate); if (vr->is_integer_quantity) { diff --git a/src/cats/configuration/print_configuration.c b/src/cats/configuration/print_configuration.c index e257a4d..3544414 100644 --- a/src/cats/configuration/print_configuration.c +++ b/src/cats/configuration/print_configuration.c @@ -32,6 +32,7 @@ #include "preset.h" #include "inline_vital_rates.h" #include "dispersal/dispersal.h" +#include "modules/load_module.h" const char *get_dispersal_name(enum dispersal_type type); @@ -204,6 +205,8 @@ void print_config_summary(struct cats_configuration *conf) printf("%s\n", TEXT_DIVIDER); print_environment_sets(conf); printf("%s\n", TEXT_DIVIDER); + print_modules(conf); + printf("%s\n", TEXT_DIVIDER); } diff --git a/src/cats/grids/gdal_helper.c b/src/cats/grids/gdal_helper.c index f0640ce..4a924ab 100644 --- a/src/cats/grids/gdal_helper.c +++ b/src/cats/grids/gdal_helper.c @@ -166,7 +166,7 @@ void verify_raster_geometry(GDALDatasetH dataset, struct simulation_geometry *ge char *projection = (char *) GDALGetProjectionRef(dataset); if (geometry->projection_string == NULL || strlen(geometry->projection_string) == 0) { - log_message(LOG_WARNING, "GEOM: global projection string not set, ignoring projection '%s", projection); + log_message(LOG_INFO, "GEOM: global projection string not set, ignoring projection '%s'", projection); } else { if (strcmp(projection, geometry->projection_string) != 0) { enum cats_log_level ll; diff --git a/src/cats/lambda/leslie_matrix.c b/src/cats/lambda/leslie_matrix.c index 9f047a6..dbc005b 100644 --- a/src/cats/lambda/leslie_matrix.c +++ b/src/cats/lambda/leslie_matrix.c @@ -60,8 +60,14 @@ calculate_rate_for_matrix(struct cats_vital_rate *rate, cats_dt_rates value = calculate_rate(rate, N, param, l_param->grid, l_param->row, l_param->col, &override); if (print) { - log_message(LOG_INFO, "%s: %Lf (maximum %Lf) for population %Lf/%Lf", - rate->name, value, rate->max_rate, N, K); + if (param->parametrization == PARAM_HYBRID) { + log_message(LOG_INFO, "%s: %Lf (maximum %Lf) for population %Lf/%Lf at suitability %Lf", + rate->name, value, rate->max_rate, N, K, l_param->suitability); + } else { + log_message(LOG_INFO, "%s: %Lf (maximum %Lf) for population %Lf/%Lf", + rate->name, value, rate->max_rate, N, K); + } + } return value; diff --git a/src/cats/modules/load_module.c b/src/cats/modules/load_module.c index f1960ba..0b8a734 100644 --- a/src/cats/modules/load_module.c +++ b/src/cats/modules/load_module.c @@ -149,7 +149,7 @@ void register_load_species_param_config_func(struct cats_configuration *conf, ca void register_create_leslie_matrix_func(struct cats_configuration *conf, cats_leslie_matrix_func func) { conf->modules.module[CATS_MODULE_ID].create_leslie_matrix = func; - printf("LESLIE MATRIX FUNC: %p\n", conf->modules.module[CATS_MODULE_ID].create_leslie_matrix); + log_message(LOG_INFO, "Using leslie matrix function at address %p", conf->modules.module[CATS_MODULE_ID].create_leslie_matrix); } -- GitLab