diff --git a/.gitignore b/.gitignore
index 3521b353ec4b1c4dea7192047e197596f083fe99..671dcf9bf292b17805d920dc453c66a6c8015f06 100644
--- a/.gitignore
+++ b/.gitignore
@@ -70,7 +70,7 @@ tests/testPair.sh
 tests/testPairPerturbed.sh
 tests/testParser.sh
 tests/testReading.sh
-
+tests/testRiemann
 
 theory/latex/swift.pdf
 theory/kernel/kernels.pdf
diff --git a/src/adiabatic_index.h b/src/adiabatic_index.h
index 34d7095d6c6bc7c82794b60ebbcf6dfc48db033f..5e4d626e47d0b422c622cca8d14da5d2736cd506 100644
--- a/src/adiabatic_index.h
+++ b/src/adiabatic_index.h
@@ -36,18 +36,42 @@
 #define hydro_gamma 1.66666666666666667f
 #define hydro_gamma_minus_one 0.66666666666666667f
 #define hydro_one_over_gamma_minus_one 1.5f
+#define hydro_gamma_plus_one_over_two_gamma 0.8f
+#define hydro_gamma_minus_one_over_two_gamma 0.2f
+#define hydro_gamma_minus_one_over_gamma_plus_one 0.25f
+#define hydro_two_over_gamma_plus_one 0.75f
+#define hydro_two_over_gamma_minus_one 3.0f
+#define hydro_gamma_minus_one_over_two 0.33333333333333333f
+#define hydro_two_gamma_over_gamma_minus_one 5.0f
+#define hydro_one_over_gamma 0.6f
 
 #elif defined(HYDRO_GAMMA_4_3)
 
 #define hydro_gamma 1.33333333333333333f
 #define hydro_gamma_minus_one 0.33333333333333333f
 #define hydro_one_over_gamma_minus_one 3.f
+#define hydro_gamma_plus_one_over_two_gamma 0.875f
+#define hydro_gamma_minus_one_over_two_gamma 0.125f
+#define hydro_gamma_minus_one_over_gamma_plus_one 0.142857143f
+#define hydro_two_over_gamma_plus_one 0.857142857f
+#define hydro_two_over_gamma_minus_one 6.0f
+#define hydro_gamma_minus_one_over_two 0.166666666666666666f
+#define hydro_two_gamma_over_gamma_minus_one 8.0f
+#define hydro_one_over_gamma 0.75f
 
 #elif defined(HYDRO_GAMMA_2_1)
 
 #define hydro_gamma 2.f
 #define hydro_gamma_minus_one 1.f
 #define hydro_one_over_gamma_minus_one 1.f
+#define hydro_gamma_plus_one_over_two_gamma 0.75f
+#define hydro_gamma_minus_one_over_two_gamma 0.25f
+#define hydro_gamma_minus_one_over_gamma_plus_one 0.33333333333333333f
+#define hydro_two_over_gamma_plus_one 0.66666666666666666f
+#define hydro_two_over_gamma_minus_one 2.0f
+#define hydro_gamma_minus_one_over_two 0.5f
+#define hydro_two_gamma_over_gamma_minus_one 4.0f
+#define hydro_one_over_gamma 0.5f
 
 #else
 
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 2adce2c90985b537a668adfccec0d5241113314e..34b5472c3f64a42918dc5a14a92bc36e016f60db 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -23,12 +23,14 @@ AM_LDFLAGS = ../src/.libs/libswiftsim.a $(HDF5_LDFLAGS) $(HDF5_LIBS) $(FFTW_LIBS
 # List of programs and scripts to run in the test suite
 TESTS = testGreetings testMaths testReading.sh testSingle testKernel testSymmetry \
         testPair.sh testPairPerturbed.sh test27cells.sh test27cellsPerturbed.sh  \
-        testParser.sh testSPHStep test125cells.sh testKernelGrav testFFT
+        testParser.sh testSPHStep test125cells.sh testKernelGrav testFFT \
+        testRiemann
 
 # List of test programs to compile
 check_PROGRAMS = testGreetings testReading testSingle testTimeIntegration \
 		 testSPHStep testPair test27cells test125cells testParser \
-                 testKernel testKernelGrav testFFT testInteractions testMaths testSymmetry
+                 testKernel testKernelGrav testFFT testInteractions testMaths testSymmetry \
+                 testRiemann
 
 # Sources for the individual programs
 testGreetings_SOURCES = testGreetings.c
@@ -61,6 +63,8 @@ testFFT_SOURCES = testFFT.c
 
 testInteractions_SOURCES = testInteractions.c
 
+testRiemann_SOURCES = testRiemann.c
+
 # Files necessary for distribution
 EXTRA_DIST = testReading.sh makeInput.py testPair.sh testPairPerturbed.sh \
 	     test27cells.sh test27cellsPerturbed.sh tolerance.dat testParser.sh \
diff --git a/tests/testRiemann.c b/tests/testRiemann.c
new file mode 100644
index 0000000000000000000000000000000000000000..06da511aef89f9df97ea9e2bfc9abf603ba361bd
--- /dev/null
+++ b/tests/testRiemann.c
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * This file is part of SWIFT.
+ * Copyright (C) 2016 Bert Vandenbroucke (bert.vandenbroucke@gmail.com).
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published
+ * by the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ ******************************************************************************/
+
+#include "adiabatic_index.h"
+#include "error.h"
+
+void check_value(float a, float b, const char* s) {
+  if (fabsf(a - b) > 1.e-6f) {
+    error("Values are inconsistent: %g %g (%s)!", a, b, s);
+  } else {
+    message("Values are consistent: %g %g (%s).", a, b, s);
+  }
+}
+
+void check_constants() {
+  float val;
+
+  val = 0.5 * (hydro_gamma + 1.0f) / hydro_gamma;
+  check_value(val, hydro_gamma_plus_one_over_two_gamma, "(gamma+1)/(2 gamma)");
+
+  val = 0.5 * (hydro_gamma - 1.0f) / hydro_gamma;
+  check_value(val, hydro_gamma_minus_one_over_two_gamma, "(gamma-1)/(2 gamma)");
+
+  val = (hydro_gamma - 1.0f) / (hydro_gamma + 1.0f);
+  check_value(val, hydro_gamma_minus_one_over_gamma_plus_one,
+              "(gamma-1)/(gamma+1)");
+
+  val = 2.0f / (hydro_gamma + 1.0f);
+  check_value(val, hydro_two_over_gamma_plus_one, "2/(gamma+1)");
+
+  val = 2.0f / (hydro_gamma - 1.0f);
+  check_value(val, hydro_two_over_gamma_minus_one, "2/(gamma-1)");
+
+  val = 0.5f * (hydro_gamma - 1.0f);
+  check_value(val, hydro_gamma_minus_one_over_two, "(gamma-1)/2");
+
+  val = 2.0f * hydro_gamma / (hydro_gamma - 1.0f);
+  check_value(val, hydro_two_gamma_over_gamma_minus_one, "(2 gamma)/(gamma-1)");
+
+  val = 1.0f / hydro_gamma;
+  check_value(val, hydro_one_over_gamma, "1/gamma");
+}
+
+int main() {
+
+  check_constants();
+
+  return 0;
+}