diff --git a/configure.ac b/configure.ac
index c94f5c23b9cc5868a199ad4d177053c6f94f639d..b4641284e6874ee49cfe40a11a57af06db4bf944 100644
--- a/configure.ac
+++ b/configure.ac
@@ -582,7 +582,7 @@ fi
 # Hydro scheme.
 AC_ARG_WITH([hydro],
    [AS_HELP_STRING([--with-hydro=<scheme>],
-      [Hydro dynamics to use @<:@gadget2, minimal, hopkins, default, gizmo default: gadget2@:>@]
+      [Hydro dynamics to use @<:@gadget2, minimal, hopkins, default, gizmo, shadowfax default: gadget2@:>@]
    )],
    [with_hydro="$withval"],
    [with_hydro="gadget2"]
@@ -603,6 +603,9 @@ case "$with_hydro" in
    gizmo)
       AC_DEFINE([GIZMO_SPH], [1], [GIZMO SPH])
    ;; 
+   shadowfax)
+      AC_DEFINE([SHADOWFAX_SPH], [1], [Shadowfax SPH])
+   ;; 
 
    *)
       AC_MSG_ERROR([Unknown hydrodynamics scheme: $with_hydro])
diff --git a/src/hydro.h b/src/hydro.h
index 4b80487e837799791c227e4124e216c73cb90f4e..abb49d35b204bbaf986f502d796883e7eb778e7f 100644
--- a/src/hydro.h
+++ b/src/hydro.h
@@ -47,7 +47,7 @@
 #include "./hydro/Gizmo/hydro.h"
 #include "./hydro/Gizmo/hydro_iact.h"
 #define SPH_IMPLEMENTATION "GIZMO (Hopkins 2015)"
-#elif defined(SHADOWSWIFT)
+#elif defined(SHADOWFAX_SPH)
 #include "./hydro/Shadowswift/hydro.h"
 #include "./hydro/Shadowswift/hydro_iact.h"
 #define SPH_IMPLEMENTATION \
diff --git a/src/hydro/Shadowswift/hydro_part.h b/src/hydro/Shadowswift/hydro_part.h
index 34244c5e355f38150525b85a8134f5e4a67d35b6..7a5724c3300da8950022dad76f57ae3fa4b9e807 100644
--- a/src/hydro/Shadowswift/hydro_part.h
+++ b/src/hydro/Shadowswift/hydro_part.h
@@ -19,6 +19,7 @@
  *
  ******************************************************************************/
 
+#include "cooling_struct.h"
 #include "voronoi_cell.h"
 
 /* Extra particle data not needed during the computation. */
@@ -33,6 +34,9 @@ struct xpart {
   /* Old density. */
   float omega;
 
+  /* Additional data used to record cooling information */
+  struct cooling_xpart_data cooling_data;
+
 } __attribute__((aligned(xpart_align)));
 
 /* Data of a single particle. */
@@ -174,7 +178,20 @@ struct part {
   /* Variables needed for the code to compile (should be removed/replaced). */
   float rho;
 
+  /* Time-step length */
+  timebin_t time_bin;
+
+#ifdef SWIFT_DEBUG_CHECKS
+
+  /* Time of the last drift */
+  integertime_t ti_drift;
+
+  /* Time of the last kick */
+  integertime_t ti_kick;
+
+#endif
+
   /* Voronoi cell. */
   struct voronoi_cell cell;
 
-} __attribute__((aligned(part_align)));
+} SWIFT_STRUCT_ALIGN;
diff --git a/src/part.h b/src/part.h
index fd3f2e50cbc3f77e09beadcae1438213cdd60e25..1b40aee0db3deb4790e07e3da9807060900d0c55 100644
--- a/src/part.h
+++ b/src/part.h
@@ -58,8 +58,9 @@
 #include "./hydro/Gizmo/hydro_part.h"
 #define hydro_need_extra_init_loop 0
 #define EXTRA_HYDRO_LOOP
-#elif defined(SHADOWSWIFT)
+#elif defined(SHADOWFAX_SPH)
 #include "./hydro/Shadowswift/hydro_part.h"
+#define hydro_need_extra_init_loop 0
 #define EXTRA_HYDRO_LOOP
 #else
 #error "Invalid choice of SPH variant"