diff --git a/src/modules/butterflies/CMakeLists.txt b/src/modules/butterflies/CMakeLists.txt
index 7d7338248ddc9f2d2c49364bfa2f0c0fd76bc49a..1da70b3a9b656fe6cdfa876683a0a2ef8de8cc00 100644
--- a/src/modules/butterflies/CMakeLists.txt
+++ b/src/modules/butterflies/CMakeLists.txt
@@ -1,4 +1,4 @@
-add_library(cats-butterflies SHARED "" butterfly_actions.c butterfly_actions.h butterfly_vital_rates.c butterfly_vital_rates.h module.h butterflies_dispersal.c butterflies_dispersal.h butterflies_populations.c butterflies_populations.h butterflies_inline.h)
+add_library(cats-butterflies SHARED "" butterflies_actions.c butterflies_actions.h butterflies_vital_rates.c butterflies_vital_rates.h module.h butterflies_dispersal.c butterflies_dispersal.h butterflies_populations.c butterflies_populations.h butterflies_inline.h butterflies_generations.c butterflies_generations.h)
 
 target_include_directories(cats-butterflies PUBLIC ".")
 
diff --git a/src/modules/butterflies/butterfly_actions.c b/src/modules/butterflies/butterflies_actions.c
similarity index 90%
rename from src/modules/butterflies/butterfly_actions.c
rename to src/modules/butterflies/butterflies_actions.c
index 0978c94aa3d1847d454881576501dd25dc29a679..4f62f6c2af0717ae84c6b3db91e70f3f6d2f26ac 100644
--- a/src/modules/butterflies/butterfly_actions.c
+++ b/src/modules/butterflies/butterflies_actions.c
@@ -2,7 +2,7 @@
 #include "actions/cats_actions.h"
 #include "actions/setup_actions.h"
 #include "modules/module_header.h"
-#include "butterfly_actions.h"
+#include "butterflies_actions.h"
 #include "module.h"
 #include "butterflies_main.h"
 #include "inline_overlays.h"
@@ -15,6 +15,7 @@
 #include "paths/paths.h"
 #include "populations/population.h"
 #include "inline_population.h"
+#include "butterflies_generations.h"
 
 
 enum action_status action_butterfly_stats_reset(struct cats_grid *grid, struct cats_configuration *conf)
@@ -177,37 +178,6 @@ enum action_status action_butterfly_stats_write(struct cats_grid *grid, struct c
 }
 
 
-void grid_update_generations(struct cats_grid *grid, struct cats_thread_info *ts)
-{
-        struct cats_configuration *conf = ts->conf;
-
-
-        struct conf_data_butterflies *module_conf = CATS_MODULE_DATA;
-        int module_id = CATS_MODULE_ID;
-        struct grid_data_butterflies *data = grid->grid_modules[module_id].module_data;
-        struct cats_vital_rate *rate = &module_conf->butterfly_generations;
-
-        const cats_dt_coord start_row = ts->area.start_row;
-        const cats_dt_coord end_row = ts->area.end_row;
-
-        const cats_dt_coord start_col = ts->area.start_col;
-        const cats_dt_coord end_col = ts->area.end_col;
-        for (cats_dt_coord row = start_row; row < end_row; row++) {
-                for (cats_dt_coord col = start_col; col < end_col; col++) {
-
-                        if (cell_excluded_by_overlay(conf, row, col)) {
-                                data->generations[row][col] = 0.0f;
-                                continue;
-                        }
-                        cats_dt_rates gen = calculate_rate(rate, 0, conf->param, grid, row, col, NULL);
-                        data->generations[row][col] = (float) gen;
-
-                        //printf("GENERATIONS::thread %03d:: %d %d %f\n", ts->id ,row, col, (float) gen);
-                }
-        }
-}
-
-
 enum action_status action_butterfly_update_generations(struct cats_grid *grid, struct cats_configuration *conf)
 {
         int module_id = CATS_MODULE_ID;
diff --git a/src/modules/butterflies/butterflies_actions.h b/src/modules/butterflies/butterflies_actions.h
new file mode 100644
index 0000000000000000000000000000000000000000..5b785bc5e96d9d249d5d71f7d645b138186e1cbb
--- /dev/null
+++ b/src/modules/butterflies/butterflies_actions.h
@@ -0,0 +1,6 @@
+
+#ifndef CATS_BUTTERFLIES_ACTIONS_H
+#define CATS_BUTTERFLIES_ACTIONS_H
+#include "configuration/configuration.h"
+void add_actions(struct cats_configuration *conf);
+#endif //CATS_BUTTERFLIES_ACTIONS_H
diff --git a/src/modules/butterflies/butterflies_generations.c b/src/modules/butterflies/butterflies_generations.c
new file mode 100644
index 0000000000000000000000000000000000000000..8e3642ce5ddb7b7dbb645e40ffb4c045c1cc215a
--- /dev/null
+++ b/src/modules/butterflies/butterflies_generations.c
@@ -0,0 +1,5 @@
+//
+// Created by gattringera on 01/03/23.
+//
+
+#include "butterflies_generations.h"
diff --git a/src/modules/butterflies/butterflies_generations.h b/src/modules/butterflies/butterflies_generations.h
new file mode 100644
index 0000000000000000000000000000000000000000..d21b298b381ddd5e9b59d907f8a49c43fd6ecd5a
--- /dev/null
+++ b/src/modules/butterflies/butterflies_generations.h
@@ -0,0 +1,8 @@
+//
+// Created by gattringera on 01/03/23.
+//
+
+#ifndef CATS_BUTTERFLIES_GENERATIONS_H
+#define CATS_BUTTERFLIES_GENERATIONS_H
+
+#endif //CATS_BUTTERFLIES_GENERATIONS_H
diff --git a/src/modules/butterflies/butterflies_main.c b/src/modules/butterflies/butterflies_main.c
index ea657d5462e2ade2bed94d3da921b0720a7c8005..8737f997b366157c165b64ec0f7592d12cf0a4bc 100644
--- a/src/modules/butterflies/butterflies_main.c
+++ b/src/modules/butterflies/butterflies_main.c
@@ -4,8 +4,8 @@
 #include "configuration/load_configuration_species_params.h"
 #include "module.h"
 #include "actions/cats_actions.h"
-#include "butterfly_actions.h"
-#include "butterfly_vital_rates.h"
+#include "butterflies_actions.h"
+#include "butterflies_vital_rates.h"
 #include "cats_ini/cats_ini.h"
 
 struct cats_global global;
diff --git a/src/modules/butterflies/butterfly_vital_rates.c b/src/modules/butterflies/butterflies_vital_rates.c
similarity index 97%
rename from src/modules/butterflies/butterfly_vital_rates.c
rename to src/modules/butterflies/butterflies_vital_rates.c
index f40c73de5b166cdf7d1355ab36dea6102186c1b7..36c604c2019123dc249d4011c19f89ec28840024 100644
--- a/src/modules/butterflies/butterfly_vital_rates.c
+++ b/src/modules/butterflies/butterflies_vital_rates.c
@@ -1,6 +1,6 @@
 
 
-#include "butterfly_vital_rates.h"
+#include "butterflies_vital_rates.h"
 
 void add_vital_rates(struct cats_configuration *conf,  struct conf_data_butterflies *data)
 {
diff --git a/src/modules/butterflies/butterfly_vital_rates.h b/src/modules/butterflies/butterflies_vital_rates.h
similarity index 66%
rename from src/modules/butterflies/butterfly_vital_rates.h
rename to src/modules/butterflies/butterflies_vital_rates.h
index ab32c356889e4fb62fe9e1764b1fee6b7f12e81a..968f550198ecd29d6cce1bb1f24776d1b8b467b7 100644
--- a/src/modules/butterflies/butterfly_vital_rates.h
+++ b/src/modules/butterflies/butterflies_vital_rates.h
@@ -1,10 +1,10 @@
 
-#ifndef CATS_BUTTERFLY_VITAL_RATES_H
-#define CATS_BUTTERFLY_VITAL_RATES_H
+#ifndef CATS_BUTTERFLIES_VITAL_RATES_H
+#define CATS_BUTTERFLIES_VITAL_RATES_H
 #include "configuration/configuration.h"
 #include "butterflies_main.h"
 #include "vital_rates/setup_rates.h"
 #include "modules/module_header.h"
 
 void add_vital_rates(struct cats_configuration *conf,  struct conf_data_butterflies *data) ;
-#endif //CATS_BUTTERFLY_VITAL_RATES_H
+#endif //CATS_BUTTERFLIES_VITAL_RATES_H
diff --git a/src/modules/butterflies/butterfly_actions.h b/src/modules/butterflies/butterfly_actions.h
deleted file mode 100644
index 95595768f3ea4c4434e5591dde82d7a881b85916..0000000000000000000000000000000000000000
--- a/src/modules/butterflies/butterfly_actions.h
+++ /dev/null
@@ -1,6 +0,0 @@
-
-#ifndef CATS_BUTTERFLY_ACTIONS_H
-#define CATS_BUTTERFLY_ACTIONS_H
-#include "configuration/configuration.h"
-void add_actions(struct cats_configuration *conf);
-#endif //CATS_BUTTERFLY_ACTIONS_H