#!/usr/bin/runAmos -C
# `AMOScmp' - The AMOS Comparative Assembler Pipeline

#--------------------------------------- USER DEFINED VALUES ------------------#

BINDIR=/usr/bin
NUCMER=:

#------------------------------------------------------------------------------#

MINMATCH        = 20
MINCLUSTER      = 20
MINOVL          = 5
MAXTRIM         = 10
MAJORITY        = 50
ALIGNWIGGLE     = 2
CONSERR         = 0.06

#------------------------------------------------------------------------------#

TGT     = $(PREFIX).afg
REF     = $(PREFIX).1con
SEQS	= $(PREFIX).seq
BANK	= $(PREFIX).bnk
ALIGN	= $(PREFIX).delta
LAYOUT	= $(PREFIX).layout
CONFLICT= $(PREFIX).conflict
CONTIG	= $(PREFIX).contig
FASTA	= $(PREFIX).fasta
EXCLUDE	= $(PREFIX).exclude.seqs
SCAFF	= $(PREFIX).scaff
SCAFFFASTA = $(PREFIX).scaffold.fasta

#------------------------------------------------------------------------------#

INPUTS   = $(TGT) $(REF)
OUTPUTS  = $(CONTIG) $(FASTA) $(SCAFF) $(SCAFFFASTA)

#------------------------------------------------------------------------------#

## Building AMOS bank
10: $(BINDIR)/bank-transact -c -z -b $(BANK) -m $(TGT)

## Collecting clear range sequences
20: $(BINDIR)/dumpreads $(BANK) > $(SEQS)

## Running nucmer
30: $(NUCMER) --maxmatch --prefix=$(PREFIX) -l $(MINMATCH) -c $(MINCLUSTER) $(REF) $(SEQS)

## Running layout
40: $(BINDIR)/casm-layout -r -S -t $(MAXTRIM) -o $(MINOVL) -m $(MAJORITY) -U $(LAYOUT) -C $(CONFLICT) -b $(BANK) $(ALIGN)

## Running consensus
50: $(BINDIR)/make-consensus -B -b $(BANK) -e $(CONSERR) -w $(ALIGNWIGGLE) -x $(EXCLUDE)

## Outputting contigs
60: $(BINDIR)/bank2contig $(BANK) > $(CONTIG)

## Outputting fasta
70: $(BINDIR)/bank2fasta -b $(BANK) > $(FASTA)

## Outputting scaff
80: $(BINDIR)/bank2scaff $(BANK) > $(SCAFF)

## Outputting scaff fasta
90: $(BINDIR)/bank2scaff -g $(BANK) > $(SCAFFFASTA)

