#!/bin/bash

shopt -s expand_aliases

alias ~=”:«’~bash’”

:«’~~~bash’

Usage

param1=value1 param2=value2 ... runWorkFlow.sh [options]
---
title: runWorkflow.sh
---
flowchart TD
    PF[(
        

plasmid_file

adapter#0040;20bp#0041; + sgRNA#0040;20bp#0041; + scaffold#0040;83/93bp#0041; + query#0040;44bp#0041; + 3bp + RCbarcode#0040;18bp#0041; + RCprimer#0040;21bp#0041;
...
)] --> GSPFR[getSxPlasmidFileRef.sh] GF[(

genome_file

)] --> GSPFR BI[(

bowtie2index

)] --> GSPFR EXT[(

extentions

ext1up ext1down ext2up ext2down
)] --> GSPFR GSPFR --> REF[(

reference_file

start1 ref1 end1 start2 ref2 end2
... ... ... ... ... ...
)] PF --> SEM[sxExtractMarker.sh] SEM --> MK1[(

stdout

primer#0040;21bp#0041; + barcode#0040;18bp#0041;
...
)] SEM --> MK2[(

fd3

adapter#0040;20bp#0041; + sgRNA#0040;20bp#0041; + scaffold#0040;83/93bp#0041;
...
)] R1[(fastqR1)] --> RD[removeDuplicates.sh] R2[(faqstR2)] --> RD RD --> UNIQUE[(

removeDuplicates_file

R1 R2 #
... ... ...
)] UNIQUE --> DM[demultiplex.sh] SCORE[(

minScores

score1 score2
... ...
)] MK1 --> DM MK2 --> DM SCORE --> DM DM --> ONTARGET[(

demultiplex_file

R1 R2 # id rstart1 rend1 qstart1 qend1 rstart2 rend2 qstart2 qend2
... ... ... ... ... ... ... ... ... ... ... ...
)] ONTARGET --> sxCRAFC[sxCutR2AdapterFilterCumulate.sh] --> QUERY[(

input_file

query # id
... ... ...
)] --> REARR[rearrangement] REF --> REARR REARR --> ALG[(

rearrangement_file

idx # score id
ref1 ref2
query
)] REF --> CMH[correct_micro_homology.awk] DIRECTION[(

direction_file

up/down
...
)] --> CMH ALG --> CMH CMH --> CORRECTED[(

correct_micro_homology_file

idx # score id udangle rstart1 qstart1 rend1 qend1 random rstart2 qstart2 rend2 qend2 ddangle cut1 ref1+cut2
ref1 ref2
query
)]

Source

# The following parameters should be replaced.
makeTarget=${makeTarget:-test/test_work_flow/rearr.alg}
fastqFiles=${fastqFiles:-test/test_work_flow/A2-g1n-3.R2.fq.gz,test/test_work_flow/A2-g1n-3.fq.gz}
markerIndices=${markerIndices:-test/test_work_flow/final_hgsgrna_libb_all_0811_NGG_scaffold_nor_G1.csv.target.fa,test/test_work_flow/final_hgsgrna_libb_all_0811_NGG_scaffold_nor_G1.csv.pair.fa}
minScores=${minScores:-30,100}

minToMapShear=${minToMapShear:-30}
refFile=${refFile:-test/test_work_flow/final_hgsgrna_libb_all_0811_NGG_scaffold_nor_G1.csv.ref}
directionFile=${directionFile:-"${refFile}.direct"}
ext1up=${ext1up:-50}
ext1down=${ext1down:-0}
ext2up=${ext2up:-10}
ext2down=${ext2down:-100}

# The following parameters are default in most cases.
genome=${genome:-"${GENOME}"}
bowtie2index=${bowtie2index:-"${BOWTIE2INDEX}"}
s0=${s0:--6}
s1=${s1:-4}
s2=${s2:-2}
u=${u:--3}
v=${v:--9}
ru=${ru:-0}
rv=${rv:-0}
qu=${qu:-0}
qv=${qv:--5}

if [ -f "workFlow.mak" ]
then
    make_file="workFlow.mak"
else
    make_file="$CONDA_PREFIX/share/rearr/workFlow.mak"
fi

make $@ -f "${make_file}" "${makeTarget}" \
    fastqFiles="${fastqFiles}" \
    markerIndices="${markerIndices}" \
    minScores="${minScores}" \
    genome="${genome}" \
    bowtie2index="${bowtie2index}" \
    refFile="${refFile}" \
    directionFile="${directionFile}" \
    s0="${s0}" \
    s1="${s1}" \
    s2="${s2}" \
    u="${u}" \
    v="${v}" \
    ru="${ru}" \
    rv="${rv}" \
    qu="${qu}" \
    qv="${qv}" \
    minToMapShear="${minToMapShear}"
alias ~~~=":" # This suppresses a warning and is not part of source.