annotate CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/opt/bbmap-39.01-1/summarizeseal.sh @ 69:33d812a61356

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 17:55:14 -0400
parents
children
rev   line source
jpayne@69 1 #!/bin/bash
jpayne@69 2
jpayne@69 3 usage(){
jpayne@69 4 echo "
jpayne@69 5 Written by Brian Bushnell
jpayne@69 6 Last modified June 22, 2016
jpayne@69 7
jpayne@69 8 Description: Summarizes the stats output of Seal for evaluation of
jpayne@69 9 cross-contamination. The intended use is to map multiple libraries or
jpayne@69 10 assemblies, of different multiplexed organisms, to a concatenated reference
jpayne@69 11 containing one fused scaffold per organism. This will convert all of the
jpayne@69 12 resulting stats files (one per library) to a single text file, with multiple
jpayne@69 13 columns, indicating how much of the input hit the primary versus nonprimary
jpayne@69 14 scaffolds.
jpayne@69 15
jpayne@69 16 If ingoresametaxa or ignoresamebarcode are used, ref names must be
jpayne@69 17 in this format:
jpayne@69 18 barcode,library,tax,location
jpayne@69 19 For example:
jpayne@69 20 6-G,N0296,gammaproteobacteria_bacterium,deep_ocean
jpayne@69 21
jpayne@69 22 Usage: summarizeseal.sh in=<file,file...> out=<file>
jpayne@69 23
jpayne@69 24 You can alternately run 'summarizeseal.sh *.txt out=out.txt'
jpayne@69 25
jpayne@69 26 Parameters:
jpayne@69 27 in=<file> A list of stats files, or a text file containing one stats file name per line.
jpayne@69 28 out=<file> Destination for summary.
jpayne@69 29 printtotal=t (pt) Print a line summarizing the total contamination rate of all assemblies.
jpayne@69 30 ignoresametaxa=f Ignore secondary hits sharing taxonomy.
jpayne@69 31 ignoresamebarcode=f Ignore secondary hits sharing a barcode.
jpayne@69 32 ignoresamelocation=f Ignore secondary hits sharing a sampling site.
jpayne@69 33 totaldenominator=f (td) Use all bases as denominator rather than mapped bases.
jpayne@69 34
jpayne@69 35 Please contact Brian Bushnell at bbushnell@lbl.gov if you encounter any problems.
jpayne@69 36 "
jpayne@69 37 }
jpayne@69 38
jpayne@69 39 #This block allows symlinked shellscripts to correctly set classpath.
jpayne@69 40 pushd . > /dev/null
jpayne@69 41 DIR="${BASH_SOURCE[0]}"
jpayne@69 42 while [ -h "$DIR" ]; do
jpayne@69 43 cd "$(dirname "$DIR")"
jpayne@69 44 DIR="$(readlink "$(basename "$DIR")")"
jpayne@69 45 done
jpayne@69 46 cd "$(dirname "$DIR")"
jpayne@69 47 DIR="$(pwd)/"
jpayne@69 48 popd > /dev/null
jpayne@69 49
jpayne@69 50 #DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )/"
jpayne@69 51 CP="$DIR""current/"
jpayne@69 52
jpayne@69 53 z="-Xmx120m"
jpayne@69 54 set=0
jpayne@69 55
jpayne@69 56 if [ -z "$1" ] || [[ $1 == -h ]] || [[ $1 == --help ]]; then
jpayne@69 57 usage
jpayne@69 58 exit
jpayne@69 59 fi
jpayne@69 60
jpayne@69 61 calcXmx () {
jpayne@69 62 source "$DIR""/calcmem.sh"
jpayne@69 63 setEnvironment
jpayne@69 64 parseXmx "$@"
jpayne@69 65 }
jpayne@69 66 calcXmx "$@"
jpayne@69 67
jpayne@69 68 summarizeseal() {
jpayne@69 69 local CMD="java $EA $EOOM $z -cp $CP driver.SummarizeSealStats $@"
jpayne@69 70 # echo $CMD >&2
jpayne@69 71 eval $CMD
jpayne@69 72 }
jpayne@69 73
jpayne@69 74 summarizeseal "$@"