about summary refs log tree commit diff
path: root/gn/runner
diff options
context:
space:
mode:
Diffstat (limited to 'gn/runner')
-rw-r--r--gn/runner/gemma.scm11
1 files changed, 7 insertions, 4 deletions
diff --git a/gn/runner/gemma.scm b/gn/runner/gemma.scm
index 067800e..d6b08f2 100644
--- a/gn/runner/gemma.scm
+++ b/gn/runner/gemma.scm
@@ -12,7 +12,7 @@
             run-gemma
             ))
 
-(define (run-gemma data-id name trait-name traits)
+(define (run-gemma population data-id name trait-name traits)
   (define bxd-inds (geno-inds-bxd "BXD.json"))
   (assert (= 235 (length bxd-inds)))
   (if name
@@ -40,6 +40,9 @@
   ;; ---- to start GEMMA precompute inside container
   ;; env TMPDIR=. LD_LIBRARY_PATH=$GUIX_ENVIRONMENT/lib/ guile -L . -s ./scripts/precompute/precompute-hits.scm
   ;; --- First we compute K - control output goes to K.json
-  (system (string-append "env GEMMA_COMMAND=gemma /gemma-wrapper/bin/gemma-wrapper --name " name " --trait " trait-name " --verbose --loco --json --debug --parallel -- -gk -g BXD.8_geno.txt.gz -p pheno.txt -a BXD.8_snps.txt > K.json"  ))
-  (system (string-append "env GEMMA_COMMAND=gemma /gemma-wrapper/bin/gemma-wrapper --name " name " --trait " trait-name " --verbose --loco --json --debug --parallel --input K.json -- -g BXD.8_geno.txt.gz -p pheno.txt -a BXD.8_snps.txt -lmm 2 -maf 0.1 > GWA.json"))
-  )
+  (let [(err (system (string-append "env GEMMA_COMMAND=gemma /gemma-wrapper/bin/gemma-wrapper --population \"" population "\" --name \"" name "\" --trait \"" trait-name "\" --verbose --loco --json --debug --parallel -- -gk -g BXD.8_geno.txt.gz -p pheno.txt -a BXD.8_snps.txt > K.json"  )))]
+    (if (not (= err 0))
+    (exit err)))
+  (let [(err (system (string-append "env GEMMA_COMMAND=gemma /gemma-wrapper/bin/gemma-wrapper --population \"" population "\" --name \"" name "\" --trait \"" trait-name "\" --verbose --loco --json --debug --parallel --input K.json -- -g BXD.8_geno.txt.gz -p pheno.txt -a BXD.8_snps.txt -lmm 2 -maf 0.1 > GWA.json")))]
+    (if (not (= err 0))
+        (exit err))))