Skip to content
Snippets Groups Projects
Commit b76650c2 authored by Andreas Gattringer's avatar Andreas Gattringer Committed by Andreas Gattringer
Browse files

butterflies: forgot to add random walk to dispersal changes to previous commit

parent c25fdf08
No related branches found
No related tags found
No related merge requests found
......@@ -7,7 +7,7 @@
#include "butterflies_main.h"
#include "inline_overlays.h"
#include "butterflies_populations.h"
#include "random_walk.h"
#include "butterflies_inline.h"
#include "grids/grid_wrapper.h"
#include "grids/gdal_save.h"
......@@ -16,6 +16,8 @@
#include "populations/population.h"
#include "inline_population.h"
#include "butterflies_generations.h"
#include "butterflies_dispersal.h"
#include "butterflies_overlays.h"
inline void increase_custom_stat(struct statistics stats, int64_t stat_id, int64_t by)
......@@ -86,7 +88,7 @@ void grid_butterflies_dispersal(struct cats_grid *grid, struct cats_thread_info
continue;
}
butterflies_random_walk(grid, ts, row, col, false);
butterflies_cell_dispersal(grid, ts, row, col, false);
}
}
// if (ts->temp) printf("thread %d: %ld random walks (%ld cells) avg %f\n", ts->id, ts->temp, ts->temp1, (float) ts->temp / (float) ts->temp1);
......@@ -222,7 +224,7 @@ enum action_status action_butterfly_update_generations(struct cats_grid *grid, s
grid->param.initial_population.adjusted = true;
}
threaded_action(&grid_update_generations, grid, conf, TS_DEFAULT);
threaded_action(&area_update_generations, grid, conf, TS_DEFAULT);
return ACTION_RUN;
}
......@@ -242,45 +244,13 @@ void reset_info_layer(const struct cats_grid *grid, struct grid_data_butterflies
enum action_status action_butterflies_update_overlays(struct cats_grid *grid, struct cats_configuration *conf)
{
int module_id = CATS_MODULE_ID;
struct grid_data_butterflies *data = grid->grid_modules[module_id].module_data;
if (conf->overlays.have_overlays == false) {
return ACTION_NOT_RUN;
}
const cats_dt_coord rows = grid->dimension.rows;
const cats_dt_coord cols = grid->dimension.cols;
for (cats_dt_coord row = 0; row < rows; row++) {
for (cats_dt_coord col = 0; col < cols; col++) {
data->info_layer[row][col] = BF_CELL_CLEAR;
if (cell_excluded_by_overlay(conf, row, col)) {
data->info_layer[row][col] |= BF_CELL_EXCLUDED;
}
if (conf->overlays.overlay[OL_HABITAT_TYPE_CC].enabled &&
conf->overlays.habitat_cc->data[row][col] > 0) {
data->info_layer[row][col] |= BF_CELL_HABITAT_OK;
}
if (conf->overlays.overlay[OL_RESOURCE].enabled &&
conf->overlays.resources->data[row][col] > 0) {
data->info_layer[row][col] |= BF_CELL_RESOURCE_AVAILABLE;
}
}
}
return ACTION_RUN;
return butterflies_update_overlays(conf, grid);
}
enum action_status action_finish_generation(struct cats_grid *grid, struct cats_configuration *conf)
{
int module_id = CATS_MODULE_ID;
const int module_id = CATS_MODULE_ID;
struct grid_data_butterflies *data = grid->grid_modules[module_id].module_data;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment