From 3c5dc4c00ff66af5ae76f2e42a8bbda64dcef955 Mon Sep 17 00:00:00 2001
From: "theodore.efremov" <theodore.efremov@cea.fr>
Date: Thu, 17 Oct 2024 16:21:29 +0200
Subject: [PATCH] Added Snakemake for paralellisation

---
 Projects/AlPhaPha/2024/Snakefile            | 38 +++++++++++++++++++++
 Projects/AlPhaPha/2024/convert_snakemake.sh |  4 +++
 2 files changed, 42 insertions(+)
 create mode 100644 Projects/AlPhaPha/2024/Snakefile
 create mode 100755 Projects/AlPhaPha/2024/convert_snakemake.sh

diff --git a/Projects/AlPhaPha/2024/Snakefile b/Projects/AlPhaPha/2024/Snakefile
new file mode 100644
index 000000000..438df75fa
--- /dev/null
+++ b/Projects/AlPhaPha/2024/Snakefile
@@ -0,0 +1,38 @@
+import os
+import subprocess
+
+# Lire le répertoire d'entrée depuis les arguments de configuration
+#input_directory = config["folder"]
+input_directory = "/home/efremovt/bin/nptool/Projects/AlPhaPha/DataMacro/output/"
+origin = [] 
+# Iterate over files in input_directory
+for filename in os.listdir(input_directory):
+  f = os.path.join(input_directory, filename)
+  if f.endswith(".root"):
+    origin.append(filename)
+
+# Définir le répertoire de sortie pour les fichiers convertis
+phy_directory = "/home/efremovt/bin/nptool/Projects/AlPhaPha/DataMacro/output/analysis"
+#phy_directory = "./"
+
+# define target files directory
+analysedfile = []
+for inputfile in origin:
+  #analysedfile.append("/home/morfouacep/Physics/NPTool/nptool/Projects/ana_e850/root/analysis/"+inputfile.replace("_raw_","_"))
+  analysedfile.append("/home/efremovt/bin/nptool/Projects/AlPhaPha/DataMacro/output/analysis/"+inputfile)
+
+## batch rules
+rule all:
+  input:
+    expand("{file}",file=analysedfile)
+
+# Règle pour convertir les fichiers .fast dans le dossier .cat en .root
+rule npanalysis:
+    input:
+       f"{input_directory}/{{name}}.root"
+    output:
+        f"{phy_directory}/{{name}}.root"
+    shell:
+        "npanalysis -T {input} RawTree -C Calibration.txt -D pista_e850_2024.detector -O {output}"
+
+
diff --git a/Projects/AlPhaPha/2024/convert_snakemake.sh b/Projects/AlPhaPha/2024/convert_snakemake.sh
new file mode 100755
index 000000000..b81c889af
--- /dev/null
+++ b/Projects/AlPhaPha/2024/convert_snakemake.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+echo "- executing snakemake file for npanalysis..."
+snakemake --cores 8 --forceall --keep-incomplete --keep-going --rerun-incomplete
+echo "- snakemake executed successfully!"
-- 
GitLab