-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpredict-germline-model-production-chen-windows-kmer-size.sh
62 lines (49 loc) · 1.92 KB
/
predict-germline-model-production-chen-windows-kmer-size.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#!/bin/bash
#SBATCH --time=8:00:00
#SBATCH --account=redwood-gpu
#SBATCH --partition=redwood-gpu
#SBATCH --mem=20g # sacct -o reqmem,maxrss,averss,elapsed -j JOBID
# previously used:
# --account=quinlan-rw
# --partition=quinlan-shared-rw
# https://devhints.io/bash#miscellaneous
# put option-fetching before "set -o nounset" so that we can detect flags without arguments
while [[ "$1" =~ ^- ]]; do
case $1 in
--kmer-size ) shift; [[ ! $1 =~ ^- ]] && kmer_size=$1;;
*) error "$0: " "$1 is an invalid flag"; exit 1;;
esac
shift
done
set -o errexit
set -o pipefail
set -o nounset
# set -o noclobber
# set -o xtrace
info "Computing z-scores on Chen windows using kmers of size:" "${kmer_size}bp"
PATH=${CONSTRAINT_TOOLS}:$PATH
model="${CONSTRAINT_TOOLS}/dist/model-germline-grch38.kmerSize-${kmer_size}.json"
genome_wide_predictions_directory="${CONSTRAINT_TOOLS_DATA}/genome-wide-predictions"
zscores="${genome_wide_predictions_directory}/predict-germline-grch38.chen-windows.kmerSize-${kmer_size}.bed.gz"
progress_bars="disk"
# progress_bars="stdout"
work_directory="work-predict-germline-model-production.chen-windows.kmerSize-${kmer_size}"
work_directory_should_be_clean="true"
work="${genome_wide_predictions_directory}/${work_directory}" # path to directory to store intermediate work and logs
if [[ ${work_directory_should_be_clean} == "true" && -d ${work} ]]; then
error "the following work directory already exists:" ${work}
exit 1
else
mkdir --parents ${work}
fi
chen_windows_with_scores="${CONSTRAINT_TOOLS_DATA}/chen-et-al-2022/Supplementary_Datasets/Supplementary_Data_2.bed"
chen_windows="${work}/chen-windows.bed"
cut -f1-3 ${chen_windows_with_scores} | tail -n +2 > ${chen_windows}
info "Windows:" ${chen_windows}
constraint-tools predict-germline-model \
--model ${model} \
--zscores ${zscores} \
--work ${work} \
--progress-bars ${progress_bars} \
--number-of-jobs 500 \
--windows ${chen_windows}