# DO NOT USE THIS FILE IF YOU HAVE READS CREATED BY A
# GUPPY VERSION OLDER THAN 3.6.0.

# This file contains Shasta options which attempt to partially automate
# parameter selection. It is based on an earlier config, which, as of Jun 2020,
# was known to work with Oxford Nanopore reads under the following circumstances:

# - Human genome assembly.
# - Coverage between 40x and 80x. If you have more coverage than that,
#   you can use option "--Reads.minReadLength" to adjust coverage as desired.
# - Reads from Guppy 3.6.0 base caller. If you have reads
#   from an older version of Guppy, use configuration file
#   Nanopore-UL-Dec2019.conf instead.

# The automation provided by this config is particularly applicable to
# low coverage or non-human samples. It also matches or exceeds continuity
# in human samples, relative to the appropriately chosen 3.6.0 or 3.6.0-UL conf.
# Automation can be activated with parameters designed for earlier basecallers,
# if needed, but updating to guppy 3.6.0 or higher will greatly improve assembly
# quality and is therefore strongly recommended.

# In most cases, for best performance on a large assembly 
# you will usually also want to use the following options, which 
# cannot be specified in a configuration file:
# --memoryMode filesystem
# --memoryBacking 2M
# Using these options requires root access.

# For detailed information on all available options see here:
# https://chanzuckerberg.github.io/shasta/CommandLineOptions.html

# For information on running a small assembly for which 
# performance is not essential see here:
# https://chanzuckerberg.github.io/shasta/QuickStart.html

# For more information on running an assembly see here:
# https://chanzuckerberg.github.io/shasta/Running.html

# For information on optimizing assembly performance see here:
# https://chanzuckerberg.github.io/shasta/Performance.html



[Reads]
# If you have extra coverage, use this option to adjust coverage.
minReadLength = 50000
noCache = True

[Kmers]
# Due to the higher accuracy of Guppy 3.6.0 we use longer
# markers than usual.
k = 14

[MinHash]
minBucketSize = 10
maxBucketSize = 30
minFrequency = 5

[Align]
alignMethod = 3
downsamplingFactor = 0.05
matchScore = 6
sameChannelReadAlignment.suppressDeltaThreshold = 30

# The following Align parameters are set to very permissive values to allow the majority of alignments
# to be assessed during the initial stage of automatic alignment parameter selection
maxSkip = 100
maxDrift = 100
maxTrim = 100
minAlignedMarkerCount = 10
minAlignedFraction = 0.1

[ReadGraph]
# This method uses the observed distribution of alignment stats to choose a cutoff for
# maxSkip, maxDrift, maxTrim, minAlignedMarkerCount, and minAlignedFraction
creationMethod = 2

[MarkerGraph]
simplifyMaxLength = 10,100,1000,10000,100000
crossEdgeCoverageThreshold = 3

# Automatically determine this using PeakFinder
minCoverage = 0

[Assembly]
consensusCaller = Bayesian:guppy-3.6.0-a
detangleMethod = 2


