diff --git a/setup_reruns.py b/setup_reruns.py
new file mode 100644
index 0000000000000000000000000000000000000000..0527b5916fff7ae2d8c6b330e4d65cc8408858b8
--- /dev/null
+++ b/setup_reruns.py
@@ -0,0 +1,78 @@
+import os
+from pathlib import Path
+import shutil
+import glob
+import re
+
+from data.create_ics_from_snapshot import ics_from_snapshot
+
+##########################################
+# Select mass resolution and snapshotnumber
+##########################################
+mass_resolution_levels = ["M5"]
+snapshotnumber = 100
+##########################################
+
+
+
+localdir = os.getcwd()
+for mass in mass_resolution_levels:
+    os.chdir(os.path.join(localdir,mass))
+    for runfolder in glob.glob("Galaxy*/"):
+        ##########################################
+        # setting runfolder name and creating rerunfolder
+        ##########################################
+        runfolder_absolute_path   = os.path.join(localdir, mass, runfolder)
+        rerunfolder_absolute_path = os.path.join(localdir, mass+"_reruns_snap%4.4i"%(snapshotnumber), "Rerun"+runfolder)
+        Path(rerunfolder_absolute_path).mkdir(parents=True, exist_ok=True)
+        print (runfolder_absolute_path)
+
+        ##########################################
+        # change working directory to rerunfolder
+        ##########################################
+        os.chdir(rerunfolder_absolute_path)
+
+        ##########################################
+        # copy files into rerunfolder
+        ##########################################
+        shutil.copy2(os.path.join(runfolder_absolute_path, "isolated_galaxy.yml"), "./")
+        shutil.copy2(os.path.join(runfolder_absolute_path, "swift"), "./")
+        shutil.copy2(os.path.join(runfolder_absolute_path, "output_%4.4i.hdf5"%(int(snapshotnumber))), "./")
+
+        ##########################################
+        # create ICs for rerun
+        ##########################################
+        ics_from_snapshot(os.path.join(rerunfolder_absolute_path, "output_%4.4i.hdf5"%(int(snapshotnumber))), \
+                          os.path.join(rerunfolder_absolute_path, "ICs.hdf5"))
+
+        ##########################################
+        # update yml file for rerun
+        ##########################################
+        f = open("isolated_galaxy.yml", "rt")
+        data = f.read()
+        data = re.sub(r'^.*disk\.hdf5.*$', '  file_name:               ICs.hdf5', data, flags=re.MULTILINE)
+        data = re.sub(r'^.*h_min_ratio.*$', '  h_min_ratio:           0.0001', data, flags=re.MULTILINE)
+        data = re.sub(r'^.*time_end.*$', '  time_end:         0.00001025', data, flags=re.MULTILINE)
+        data = re.sub(r'^.*delta_time\:  0.*$', '  delta_time:  0.00001023', data, flags=re.MULTILINE)
+        data = re.sub(r'^.*dt_max\:.*$', '  dt_max:            1e-8', data, flags=re.MULTILINE)
+
+        f.close()
+        f = open("isolated_galaxy.yml", "wt")
+        f.write(data)
+        f.close()        
+
+        ##########################################
+        # start swift for one timestep
+        ##########################################
+
+        os.system("./swift --threads=28 --external-gravity --self-gravity --stars --star-formation --cooling --temperature --hydro --feedback --limiter --sync -n 1 isolated_galaxy.yml")
+
+
+
+
+
+
+
+
+
+