0
|
1 #!/usr/bin/env Rscript
|
|
2 library(optparse, quiet = TRUE)
|
|
3 library(parallel)
|
|
4 if (interactive()){
|
|
5 ## define functions only and exit
|
|
6 ## assume that working directory was changes with source( chdir=TRUE)!!!
|
|
7 script.dir=normalizePath('.')
|
|
8 source('methods.R')
|
|
9 source('logo_methods.R')
|
|
10 source('htmlheader.R')
|
|
11 options(OGDF = paste0(script.dir,"/OGDF/runOGDFlayout"))
|
|
12
|
|
13 }else{
|
|
14 ## get options from command line
|
|
15 initial.options <- commandArgs(trailingOnly = FALSE)
|
|
16 file.arg.name <- "--file="
|
|
17 script.name <- sub(file.arg.name, "", initial.options[grep(file.arg.name, initial.options)])
|
|
18 script.dir <- normalizePath(dirname(script.name))
|
|
19 oridir=getwd()
|
|
20 ## parse arguments
|
|
21 option_list = list(
|
|
22 make_option(c('-i', '--input_sequences'),action='store',type='character',help='fasta file with input sequences',default=NA),
|
|
23 make_option(c('-o', '--output_dir'),action='store',type='character',help='output directory',default="./kmer_analysis"),
|
|
24 make_option(c('-m', '--min_kmer_length'),action='store',type='numeric',help='min kmer length',default=11),
|
|
25 make_option(c('-x', '--max_kmer_length'),action='store',type='numeric',help='min kmer length',default=27),
|
|
26 make_option(c('-n', '--cpu'),action='store',type='numeric',help='number of cpu to use',default=NULL),
|
|
27 make_option(c('-s', '--sample_size'),action='store',type='numeric',help='number of sequences to use for analysis, is set to 0 all sequences are used',default=10000),
|
|
28 make_option(c('-r', '--reorient_reads'),action='store_true',type='logical',help='number of cpu to use',default=FALSE),
|
|
29 make_option(c('-l', '--no_layout'),action='store_true',type='logical',help='do not calculate graph layout',default=FALSE),
|
|
30 make_option(c('-p', '--paired'),action='store_true',type='logical',help='reads are paired',default=FALSE),
|
|
31 make_option(c('-t', '--tRNA_database='), action='store',type='character',help='path to tRNA database, is set PBS detection is performed',default=NULL)
|
|
32
|
|
33 )
|
|
34
|
|
35 description = paste (strwrap(" put decription here"), collapse ="\n")
|
|
36 epilogue = paste (strwrap(" put epilogue here"), collapse ="\n")
|
|
37 parser=OptionParser(
|
|
38 option_list=option_list,
|
|
39 epilogue=epilogue,
|
|
40 description=description,
|
|
41 )
|
|
42 opt = parse_args(parser, args=commandArgs(TRUE))
|
|
43 ## as Rscript
|
|
44 options(OGDF = paste0(script.dir,"/OGDF/runOGDFlayout"))
|
|
45 CPU = ifelse(is.null(opt$cpu), detectCores(), opt$cpu)
|
|
46 source(paste(script.dir,"/","methods.R", sep=''))
|
|
47 source(paste(script.dir,"/","logo_methods.R", sep=''))
|
|
48 source(paste(script.dir,"/","htmlheader.R", sep=''))
|
|
49 ## set number of CPU to use
|
|
50
|
|
51
|
|
52
|
|
53 ## run tarean:
|
|
54 tarean(
|
|
55 opt$input_sequences,
|
|
56 opt$output_dir,
|
|
57 opt$min_kmer_length,
|
|
58 opt$max_kmer_length,
|
|
59 CPU,
|
|
60 opt$sample_size,
|
|
61 opt$reorient_reads,
|
|
62 opt$tRNA_database,
|
|
63 !opt$no_layout,
|
|
64 paired = opt$paired
|
|
65 )
|
|
66 }
|