...
 
Commits (3)
......@@ -23,7 +23,7 @@ IF(NOT BUILD_STATIC)
FORCE)
ENDIF()
IF(BUILD_STATIC)
MESSAGE("-- Static linkage requested.")
MESSAGE(STATUS "Static linkage requested.")
SET (CMAKE_CXX_FLAGS "-static -static-libgcc ${CMAKE_CXX_FLAGS}")
ENDIF()
......@@ -50,7 +50,8 @@ else ()
# Generate command line args (always add -c to output compressed file to stdout)
if (${COMPRESS_PROGRAM} STREQUAL "gzip")
# -n for no timestamp in files (reproducible builds)
set (COMPRESS_ARGS -c -n)
# -9 for maximum compression (lintian error)
set (COMPRESS_ARGS -c -n -9)
else ()
set (COMPRESS_ARGS -c)
endif ()
......@@ -152,10 +153,10 @@ ADD_SUBDIRECTORY(man)
# Packager
SET(CPACK_PACKAGE_NAME "maffilter")
SET(CPACK_PACKAGE_VENDOR "Julien Y. Dutheil")
SET(CPACK_PACKAGE_VERSION "1.3.0")
SET(CPACK_PACKAGE_VERSION "1.3.1")
SET(CPACK_PACKAGE_VERSION_MAJOR "1")
SET(CPACK_PACKAGE_VERSION_MINOR "3")
SET(CPACK_PACKAGE_VERSION_PATCH "0")
SET(CPACK_PACKAGE_VERSION_PATCH "1")
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Filtering of genome alignment in the Multiple Alignment Format (MAF)")
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE")
SET(CPACK_RESOURCE_FILE_AUTHORS "${CMAKE_SOURCE_DIR}/AUTHORS")
......
......@@ -133,7 +133,7 @@ void help()
(*ApplicationTools::message << " ... param=option_file").endLine();
(*ApplicationTools::message).endLine();
(*ApplicationTools::message << " Refer to the MafFilter Manual for a list of available options.").endLine();
(*ApplicationTools::message << " Online version: http://biopp.univ-montp2.fr/manual/html/maffilter/").endLine();
(*ApplicationTools::message << " Online version: https://jydu.github.io/maffilter/Manual/index.html").endLine();
(*ApplicationTools::message << " Or type 'info maffilter' in a terminal.").endLine();
(*ApplicationTools::message << "__________________________________________________________________________").endLine();
}
......@@ -141,9 +141,9 @@ void help()
int main(int args, char** argv)
{
cout << "******************************************************************" << endl;
cout << "* MAF Filter, version 1.3.0 *" << endl;
cout << "* MAF Filter, version 1.3.1 *" << endl;
cout << "* Author: J. Dutheil Created on 10/09/10 *" << endl;
cout << "* Last Modif. 09/03/18 *" << endl;
cout << "* Last Modif. 18/08/18 *" << endl;
cout << "******************************************************************" << endl;
cout << endl;
......@@ -1617,7 +1617,7 @@ int main(int args, char** argv)
ApplicationTools::displayResult("-- Reference sequence", reference);
bool map3 = ApplicationTools::getBooleanParameter("map3", cmdArgs, false);
ApplicationTools::displayBooleanResult("-- Ouput map3 file", map3);
ApplicationTools::displayBooleanResult("-- Output map3 file", map3);
bool recodeChr = ApplicationTools::getBooleanParameter("recode_chr", cmdArgs, false);
ApplicationTools::displayBooleanResult("-- Recode chromosomes", recodeChr);
......
#! /bin/sh
arch=`uname -m`
version=1.1.99-1
version=1.3.0-1
strip MafFilter/maffilter
tar cvzf maffilter-${arch}-bin-static-${version}.tar.gz MafFilter/maffilter
......
maffilter (1.3.1+dfsg-1) UNRELEASED; urgency=medium
* New upstream version.
-- Julien Dutheil <julien.dutheil@univ-montp2.fr> Wed, 22 Aug 2018 11:39:47 +0200
maffilter (1.3.0+dfsg-1) unstable; urgency=medium
[ Steffen Moeller ]
......
......@@ -7,7 +7,7 @@ Priority: optional
Build-Depends: debhelper (>= 11~),
cmake,
texinfo,
libbpp-phyl-omics-dev (>= 2.4.0),
libbpp-phyl-omics-dev (>= 2.4.1),
libboost-iostreams-dev (>= 1.54.0),
zlib1g-dev,
libbz2-dev
......
Author: Julien Y. Dutheil
Last-Udpate: 2018-04-30 15:26:01 +0200
Description: Maximum compression for documentation
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2d4085b..0ee0c4d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -50,7 +50,8 @@ else ()
# Generate command line args (always add -c to output compressed file to stdout)
if (${COMPRESS_PROGRAM} STREQUAL "gzip")
# -n for no timestamp in files (reproducible builds)
- set (COMPRESS_ARGS -c -n)
+ # -9 for maximum compression (lintian error)
+ set (COMPRESS_ARGS -c -n -9)
else ()
set (COMPRESS_ARGS -c)
endif ()
......@@ -13,7 +13,7 @@ find_program (MAKEINFO NAMES makeinfo texi2any DOC "makeinfo doc generator progr
if (NOT MAKEINFO)
message (STATUS "makeinfo program not found: 'info' and 'html' target disabled (builds info/html doc)")
else (NOT MAKEINFO)
message (STATUS "Found makeinfo as '${MAKEINFO}': 'info' and 'html' target enabled (builds info/html doc)")
message (STATUS "Found ${MAKEINFO}: 'info' and 'html' target enabled (builds info/html doc)")
set (input ${CMAKE_CURRENT_SOURCE_DIR}/maffilter.texi)
......@@ -58,6 +58,19 @@ else (NOT MAKEINFO)
)
add_custom_target (html DEPENDS ${output})
# Also provide a "html-multipages" target that builds html doc (not installed, and not part of "all").
set (output ${CMAKE_CURRENT_BINARY_DIR}/html/)
set (makeinfo-css "http://www.w3.org/StyleSheets/Core/Steely")
add_custom_command (
OUTPUT ${output}
COMMAND ${MAKEINFO} --html --no-headers --css-ref=${makeinfo-css} -o ${output} ${input}
DEPENDS ${input}
COMMENT "Generating html (multipages) doc"
VERBATIM
)
add_custom_target (html-multipages DEPENDS ${output})
# Provide a "pdf" target that builds pdf doc (not installed, not part of "all").
find_program (TEXIDVI NAMES texi2dvi)
if (TEXIDVI)
......
\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename maffilter.info
@settitle MafFilter Manual 1.3.0
@settitle MafFilter Manual 1.3.1
@c @documentencoding UTF-8
@afourpaper
@dircategory Science Biology Genetics
......@@ -12,7 +12,7 @@
@copying
This is the manual of MafFilter, version 1.3.0.
This is the manual of MafFilter, version 1.3.1.
Copyright @copyright{} 2018 Julien Y. Dutheil
@end copying
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: AlnFilter</title>
<meta name="description" content="MafFilter Manual 1.3.1: AlnFilter">
<meta name="keywords" content="MafFilter Manual 1.3.1: AlnFilter">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Cleaning.html#Cleaning" rel="up" title="Cleaning">
<link href="AlnFilter2.html#AlnFilter2" rel="next" title="AlnFilter2">
<link href="RemoveEmptySequences.html#RemoveEmptySequences" rel="prev" title="RemoveEmptySequences">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="AlnFilter"></a>
<div class="header">
<p>
Next: <a href="AlnFilter2.html#AlnFilter2" accesskey="n" rel="next">AlnFilter2</a>, Previous: <a href="RemoveEmptySequences.html#RemoveEmptySequences" accesskey="p" rel="prev">RemoveEmptySequences</a>, Up: <a href="Cleaning.html#Cleaning" accesskey="u" rel="up">Cleaning</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Alignment-filtering"></a>
<h4 class="subsection">2.2.5 Alignment filtering</h4>
<p>Split alignment blocks by removing regions with ambiguous alignments.
The local uncertainty in the alignment is determined through a sliding window based approach.
For each window, the number of gap characters and the total entropy are computed. Any window
for which both the entropy and number of gaps exceed the given thresholds will be removed from
the alignment, and the corresponding block split accordingly.
</p>
<a name="Synopsis_003a-13"></a>
<h3 class="heading">Synopsis:</h3>
<table class="cartouche" border="1"><tr><td>
<div class="example">
<pre class="example">maf.filter= \
[...],
AlnFilter( \
species=(species1,species2,etc), \
window.size=10, \
window.step=1, \
max.gap=9, \
max.ent=0.2, \
missing_as_gap=yes, \
relative=no, \
file=data.trash_aln.maf.gz, \
compression=gzip), \
[...]
</pre></div>
</td></tr></table>
<a name="Arguments_003a-12"></a>
<h3 class="heading">Arguments:</h3>
<dl compact="compact">
<dt><code>species=(species1, species2, etc)</code></dt>
<dd><p>A coma separated, within parentheses, list of species. All calculations will be performed on the sub-alignment corresponding to these species only.
</p>
</dd>
<dt><code>window.size={int&gt;0}</code></dt>
<dd><p>The width, in bp, of the sliding window.
</p>
</dd>
<dt><code>window.step={int&gt;0}</code></dt>
<dd><p>The step by which the window is moved, in bp.
</p>
</dd>
<dt><code>relative={boolean}</code></dt>
<dd><p>Tell if maximum amount of gap is relative (that is, as a proportion of the total amount of character in each window).
</p>
</dd>
<dt><code>max.gap={int&gt;0|1&gt;double&gt;0}</code></dt>
<dd><p>The maximum number of gaps allowed in each window (if relative is set to no), or the maximum proportion of gaps (if relative is set to yes)
</p>
</dd>
<dt><code>max.ent={float}</code></dt>
<dd><p>The maximum entropy allowed in each window.
</p>
</dd>
<dt><code>missing_as_gap={yes/no}</code></dt>
<dd><p>Tell if missing sequences should be considered as gaps.
</p>
</dd>
<dt><code>file={none|{path}}</code></dt>
<dd><p>An optional file were removed alignment parts will be stored, in the MAF format.
This can be helpful for visual inspection and fine tuning of the filter parameters.
</p>
</dd>
<dt><code>compression={none|gzip|zip|bzip2}</code></dt>
<dd><p>Compression format for output file (if file != none).
</p>
</dd>
</dl>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: AlnFilter2</title>
<meta name="description" content="MafFilter Manual 1.3.1: AlnFilter2">
<meta name="keywords" content="MafFilter Manual 1.3.1: AlnFilter2">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Cleaning.html#Cleaning" rel="up" title="Cleaning">
<link href="EntropyFilter.html#EntropyFilter" rel="next" title="EntropyFilter">
<link href="AlnFilter.html#AlnFilter" rel="prev" title="AlnFilter">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="AlnFilter2"></a>
<div class="header">
<p>
Next: <a href="EntropyFilter.html#EntropyFilter" accesskey="n" rel="next">EntropyFilter</a>, Previous: <a href="AlnFilter.html#AlnFilter" accesskey="p" rel="prev">AlnFilter</a>, Up: <a href="Cleaning.html#Cleaning" accesskey="u" rel="up">Cleaning</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Alignment-filtering-2"></a>
<h4 class="subsection">2.2.6 Alignment filtering 2</h4>
<p>This is another algorithm for cleaning alignment blocks (see AlnFilter), using sliding windows.
The number of gaps in each alignment column in the window is counted, and the column is masked if it contains more than a given threshold of gaps. consecutive patterns in the window are only counted ones. In the follwing 10nt window:
</p><pre class="verbatim">AATCGGGCGT
AA---GCGGA
AA---CGGGT
CA---CGGGA
</pre><p>positions 3, 4 and 5 will be masked if the maximum number of gaps allowed is 2 or less. The three columns will however count as only one indel event.
The window is then discarded if it contains more than a given number of indel events.
</p>
<a name="Synopsis_003a-14"></a>
<h3 class="heading">Synopsis:</h3>
<table class="cartouche" border="1"><tr><td>
<div class="example">
<pre class="example">maf.filter= \
[...],
AlnFilter2( \
species=(species1,species2,etc), \
window.size=10, \
window.step=1, \
max.gap=1, \
max.pos=1, \
relative=no, \
missing_as_gap=yes, \
file=data.trash_aln.maf.gz, \
compression=gzip), \
[...]
</pre></div>
</td></tr></table>
<a name="Arguments_003a-13"></a>
<h3 class="heading">Arguments:</h3>
<dl compact="compact">
<dt><code>species=(species1, species2, etc)</code></dt>
<dd><p>A coma separated, within parentheses, list of species. All calculations will be performed on the sub-alignment corresponding to these species only.
</p>
</dd>
<dt><code>window.size={int&gt;0}</code></dt>
<dd><p>The width, in bp, of the sliding window.
</p>
</dd>
<dt><code>window.step={int&gt;0}</code></dt>
<dd><p>The step by which the window is moved, in bp.
</p>
</dd>
<dt><code>relative={boolean}</code></dt>
<dd><p>Tell if maximum amount of gap is relative (that is, as a proportion of the total amount of character in each site).
</p>
</dd>
<dt><code>max.gap={int&gt;0|1&gt;double&gt;0}</code></dt>
<dd><p>The maximum number of gaps allowed in each site (if relative is set to no), or the maximum proportion of gaps (if relative is set to yes)
</p>
</dd>
<dt><code>max.pos={int&gt;0}</code></dt>
<dd><p>The maximum number of positions with gaps (&ldquo;indel events&rdquo;).
</p>
</dd>
<dt><code>missing_as_gap={yes/no}</code></dt>
<dd><p>Tell if missing sequences should be considered as gaps.
</p>
</dd>
<dt><code>file={none|{path}}</code></dt>
<dd><p>An optional file were removed alignment parts will be stored, in the MAF format.
This can be helpful for visual inspection and fine tuning of the filter parameters.
</p>
</dd>
<dt><code>compression={none|gzip|zip|bzip2}</code></dt>
<dd><p>Compression format for output file (if file != none).
</p>
</dd>
</dl>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: AlnScore</title>
<meta name="description" content="MafFilter Manual 1.3.1: AlnScore">
<meta name="keywords" content="MafFilter Manual 1.3.1: AlnScore">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Descriptive.html#Descriptive" rel="up" title="Descriptive">
<link href="BlockCounts.html#BlockCounts" rel="next" title="BlockCounts">
<link href="SequenceLength.html#SequenceLength" rel="prev" title="SequenceLength">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="AlnScore"></a>
<div class="header">
<p>
Next: <a href="BlockCounts.html#BlockCounts" accesskey="n" rel="next">BlockCounts</a>, Previous: <a href="SequenceLength.html#SequenceLength" accesskey="p" rel="prev">SequenceLength</a>, Up: <a href="Descriptive.html#Descriptive" accesskey="u" rel="up">Descriptive</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Alignment-score"></a>
<h4 class="subsubsection">2.3.1.4 Alignment score</h4>
<p>The <code>AlnScore</code> statistics reports the alignment score associated to the block, if any.
</p>
<p>(No argument)
</p>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: Analyzing</title>
<meta name="description" content="MafFilter Manual 1.3.1: Analyzing">
<meta name="keywords" content="MafFilter Manual 1.3.1: Analyzing">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Filters.html#Filters" rel="up" title="Filters">
<link href="Descriptive.html#Descriptive" rel="next" title="Descriptive">
<link href="FeatureFilter.html#FeatureFilter" rel="prev" title="FeatureFilter">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="Analyzing"></a>
<div class="header">
<p>
Next: <a href="Exporting.html#Exporting" accesskey="n" rel="next">Exporting</a>, Previous: <a href="Cleaning.html#Cleaning" accesskey="p" rel="prev">Cleaning</a>, Up: <a href="Filters.html#Filters" accesskey="u" rel="up">Filters</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Statistical-analysis"></a>
<h3 class="section">2.3 Statistical analysis</h3>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: BlockCounts</title>
<meta name="description" content="MafFilter Manual 1.3.1: BlockCounts">
<meta name="keywords" content="MafFilter Manual 1.3.1: BlockCounts">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Descriptive.html#Descriptive" rel="up" title="Descriptive">
<link href="PairwiseDivergence.html#PairwiseDivergence" rel="next" title="PairwiseDivergence">
<link href="AlnScore.html#AlnScore" rel="prev" title="AlnScore">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="BlockCounts"></a>
<div class="header">
<p>
Next: <a href="PairwiseDivergence.html#PairwiseDivergence" accesskey="n" rel="next">PairwiseDivergence</a>, Previous: <a href="AlnScore.html#AlnScore" accesskey="p" rel="prev">AlnScore</a>, Up: <a href="Descriptive.html#Descriptive" accesskey="u" rel="up">Descriptive</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Character-frequencies"></a>
<h4 class="subsubsection">2.3.1.5 Character frequencies</h4>
<p>The <code>BlockCounts</code> statistics reports the count of each character found in the block.
</p>
<p>Note: this statistics does not work in case of duplicated sequences (multiple hits from the same chromosome / scaffold / contig).
</p>
<a name="Arguments_003a-20"></a>
<h3 class="heading">Arguments:</h3>
<dl compact="compact">
<dt><code>species={list}</code></dt>
<dd><p>A list of species to be considered in the counts calculations. If no species is given, all sequences are used.
</p></dd>
<dt><code>suffix={string}</code></dt>
<dd><p>An (optional) suffix to append to the statistics name. Useful in case the statistics should be computed for several species independently.
</p></dd>
</dl>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: BlockLength</title>
<meta name="description" content="MafFilter Manual 1.3.1: BlockLength">
<meta name="keywords" content="MafFilter Manual 1.3.1: BlockLength">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Descriptive.html#Descriptive" rel="up" title="Descriptive">
<link href="SequenceLength.html#SequenceLength" rel="next" title="SequenceLength">
<link href="BlockSize.html#BlockSize" rel="prev" title="BlockSize">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="BlockLength"></a>
<div class="header">
<p>
Next: <a href="SequenceLength.html#SequenceLength" accesskey="n" rel="next">SequenceLength</a>, Previous: <a href="BlockSize.html#BlockSize" accesskey="p" rel="prev">BlockSize</a>, Up: <a href="Descriptive.html#Descriptive" accesskey="u" rel="up">Descriptive</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Length-of-alignment-blocks"></a>
<h4 class="subsubsection">2.3.1.2 Length of alignment blocks</h4>
<p>The <code>BlockLength</code> statistics reports the number of sites in the block.
</p>
<p>(No argument)
</p>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: BlockSize</title>
<meta name="description" content="MafFilter Manual 1.3.1: BlockSize">
<meta name="keywords" content="MafFilter Manual 1.3.1: BlockSize">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Descriptive.html#Descriptive" rel="up" title="Descriptive">
<link href="BlockLength.html#BlockLength" rel="next" title="BlockLength">
<link href="Descriptive.html#Descriptive" rel="prev" title="Descriptive">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="BlockSize"></a>
<div class="header">
<p>
Next: <a href="BlockLength.html#BlockLength" accesskey="n" rel="next">BlockLength</a>, Previous: <a href="Descriptive.html#Descriptive" accesskey="p" rel="prev">Descriptive</a>, Up: <a href="Descriptive.html#Descriptive" accesskey="u" rel="up">Descriptive</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Size-of-alignment-blocks"></a>
<h4 class="subsubsection">2.3.1.1 Size of alignment blocks</h4>
<p>The <code>BlockSize</code> statistics reports the number of sequences in the block.
</p>
<p>(No argument)
</p>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: Cleaning</title>
<meta name="description" content="MafFilter Manual 1.3.1: Cleaning">
<meta name="keywords" content="MafFilter Manual 1.3.1: Cleaning">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Filters.html#Filters" rel="up" title="Filters">
<link href="MinBlockLength.html#MinBlockLength" rel="next" title="MinBlockLength">
<link href="WindowSplit.html#WindowSplit" rel="prev" title="WindowSplit">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="Cleaning"></a>
<div class="header">
<p>
Next: <a href="Analyzing.html#Analyzing" accesskey="n" rel="next">Analyzing</a>, Previous: <a href="Extracting.html#Extracting" accesskey="p" rel="prev">Extracting</a>, Up: <a href="Filters.html#Filters" accesskey="u" rel="up">Filters</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Cleaning-alignment-blocks"></a>
<h3 class="section">2.2 Cleaning alignment blocks</h3>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: Concatenate</title>
<meta name="description" content="MafFilter Manual 1.3.1: Concatenate">
<meta name="keywords" content="MafFilter Manual 1.3.1: Concatenate">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Extracting.html#Extracting" rel="up" title="Extracting">
<link href="OrderFilter.html#OrderFilter" rel="next" title="OrderFilter">
<link href="Merge.html#Merge" rel="prev" title="Merge">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="Concatenate"></a>
<div class="header">
<p>
Next: <a href="OrderFilter.html#OrderFilter" accesskey="n" rel="next">OrderFilter</a>, Previous: <a href="Merge.html#Merge" accesskey="p" rel="prev">Merge</a>, Up: <a href="Extracting.html#Extracting" accesskey="u" rel="up">Extracting</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Concatenating_003a-merge-consecutive-blocks-up-to-a-certain-size"></a>
<h4 class="subsection">2.1.4 Concatenating: merge consecutive blocks up to a certain size</h4>
<p>The <code>Concatenate</code> filter fuses consecutive blocks until the concatenated block reaches a minimal size.
</p>
<a name="Synopsis_003a-4"></a>
<h3 class="heading">Synopsis:</h3>
<table class="cartouche" border="1"><tr><td>
<div class="example">
<pre class="example">maf.filter= \
[...],
Concatenate(minimum_size=10000, ref_species=Hsapiens), \
[...]
</pre></div>
</td></tr></table>
<a name="Arguments_003a-3"></a>
<h3 class="heading">Arguments:</h3>
<dl compact="compact">
<dt><code>minimum_size={int}</code></dt>
<dd><p>The minimum size for the blocks to be reached.
</p>
</dd>
<dt><code>ref_species={string}</code></dt>
<dd><p>If given, only blocks with identical chromosome tags in the reference species will be merged.
</p>
</dd>
</dl>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: CountClusters</title>
<meta name="description" content="MafFilter Manual 1.3.1: CountClusters">
<meta name="keywords" content="MafFilter Manual 1.3.1: CountClusters">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Descriptive.html#Descriptive" rel="up" title="Descriptive">
<link href="ModelFit.html#ModelFit" rel="next" title="ModelFit">
<link href="DiversityStatistics.html#DiversityStatistics" rel="prev" title="DiversityStatistics">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="CountClusters"></a>
<div class="header">
<p>
Next: <a href="ModelFit.html#ModelFit" accesskey="n" rel="next">ModelFit</a>, Previous: <a href="DiversityStatistics.html#DiversityStatistics" accesskey="p" rel="prev">DiversityStatistics</a>, Up: <a href="Descriptive.html#Descriptive" accesskey="u" rel="up">Descriptive</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Number-of-sequence-clusters_002e"></a>
<h4 class="subsubsection">2.3.1.12 Number of sequence clusters.</h4>
<p><code>CountClusters</code> counts the number of sequence clusters. This requires that a clustering tree was previously computed (see below).
</p>
<a name="Synopsis_003a-27"></a>
<h3 class="heading">Synopsis:</h3>
<table class="cartouche" border="1"><tr><td>
<div class="example">
<pre class="example">maf.filter= \
[...],
SequenceStatistics( \
statistics=(\ \
[...],
CountClusters( \
tree=bionj, \
threshold=0.001), \
[...]), \
ref_species=species1, \
file=data.statistics.csv), \
[...]
</pre></div>
</td></tr></table>
<a name="Arguments_003a-27"></a>
<h3 class="heading">Arguments:</h3>
<dl compact="compact">
<dt><code>tree={string}</code></dt>
<dd><p>The tag name used to store the previously computed tree.
</p>
</dd>
<dt><code>threshold={double}</code></dt>
<dd><p>The threshold to use in order to compute clusters. A threshold of 0.001 for instance means that sequences within each cluster will be divergent by maximum 0.001, while sequences in distinct clusters will be divergent by at least 0.001.
</p>
</dd>
</dl>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: Description</title>
<meta name="description" content="MafFilter Manual 1.3.1: Description">
<meta name="keywords" content="MafFilter Manual 1.3.1: Description">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Introduction.html#Introduction" rel="up" title="Introduction">
<link href="Run.html#Run" rel="next" title="Run">
<link href="Introduction.html#Introduction" rel="prev" title="Introduction">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="Description"></a>
<div class="header">
<p>
Next: <a href="Run.html#Run" accesskey="n" rel="next">Run</a>, Previous: <a href="Introduction.html#Introduction" accesskey="p" rel="prev">Introduction</a>, Up: <a href="Introduction.html#Introduction" accesskey="u" rel="up">Introduction</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Description-of-the-program"></a>
<h3 class="section">1.1 Description of the program</h3>
<p>The main goal of MafFilter is to apply a series of &quot;filters&quot; to the original input file.
A &ldquo;filter&rdquo; can be seen as a small program that takes as input one or several maf blocks, and outputs one or several maf block, after performing some actions on them:
</p>
<pre class="verbatim"> +--------+
Alignment block(s) | | Alignment block(s)
------------------------&gt;+ Filter +------------------------&gt;
| |
+--------+
</pre>
<p>We can roughly distinguish four types of filters:
</p>
<ul>
<li> Filters that take one block as input, and output one single block, possibly after removing some sequences, or even the full block if it did not match a certain criterion,
</li><li> Filters that take one block as input, and split them into several smaller blocks, for instance of a fixed size,
</li><li> Filters that take several blocks as input and output a larger one, typically after concatenating the input blocks,
</li><li> Filters that do not modify the input block and simply forward it, yet after having performed some computations, for instance calculating various statistics.
</li></ul>
<p>A run of MafFilter typically consists in a workflow of filters, applied in a serial way, the output of one filter being taken as input as the next one.
In the current version of MafFilter, only linear workflows are possible, without branching:
</p>
<pre class="verbatim"> +----------+ +----------+ +----------+
| | | | | |
---&gt;+ Filter 1 +---&gt;+ Filter 2 +---&gt;+ Filter 3 +---&gt; Etc.
| | | | | |
+----------+ +----------+ +----------+
</pre>
<p>Branching processes can however be achieved by outputing the alignment blocks at the branching point, and run various instances of MafFilter on the resulting files:
</p>
<pre class="verbatim"> Run 1
+----------+ +----------+ +----------+
| | | | | |
---&gt;+ Filter 1 +---&gt;+ Filter 2 +---&gt;+ Filter 3 +---&gt; Etc.
| | | | | |
+----------+ +----+-----+ +----------+
|
| +------------+
| | |
Run 2 +---&gt;+ Filter 2.1 +---&gt; Etc.
| |
+------------+
</pre>
<p>Some filters allow to generate additional data associated to each alignment block, such as phylogenetic trees.
Such data cannot be written to file together with the blocks, as the MAF format does not support this.
These data are however stored in memory by MafFilter together with the block, as &ldquo;extra-data&rdquo;.
Extra-data are associated with a special tag which is used for refering to them, including for writting them in appropriate output files.
</p>
<p>The next section describes how to specify the series of filters to be applied, and the next chapter provides an exhaustive list of available filters.
</p>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: Descriptive</title>
<meta name="description" content="MafFilter Manual 1.3.1: Descriptive">
<meta name="keywords" content="MafFilter Manual 1.3.1: Descriptive">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Analyzing.html#Analyzing" rel="up" title="Analyzing">
<link href="BlockSize.html#BlockSize" rel="next" title="BlockSize">
<link href="Analyzing.html#Analyzing" rel="prev" title="Analyzing">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="Descriptive"></a>
<div class="header">
<p>
Next: <a href="Phylogenetics.html#Phylogenetics" accesskey="n" rel="next">Phylogenetics</a>, Previous: <a href="Analyzing.html#Analyzing" accesskey="p" rel="prev">Analyzing</a>, Up: <a href="Analyzing.html#Analyzing" accesskey="u" rel="up">Analyzing</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Descriptive-statistics"></a>
<h4 class="subsection">2.3.1 Descriptive statistics</h4>
<p>The section describes how to compute simple statistics for each alignment block.
For the sake of computer efficiency, several statistics can be computed simultaneously on each alignment block.
The results are written in a text file, with one line per block and one column per statistics.
In addition, the coordinates of the block will be reported according to a specified reference species.
The choice of statistics is specified by the user. Some of them output several results, which will appear each in a column in the output file.
</p>
<p>Descriptive statistics are computed through the <code>SequenceStatistics</code> filter, which takes the following arguments:
</p>
<a name="Synopsis_003a-19"></a>
<h3 class="heading">Synopsis:</h3>
<table class="cartouche" border="1"><tr><td>
<div class="example">
<pre class="example">maf.filter= \
[...],
SequenceStatistics( \
statistics=(\ \
BlockLength, \
AlnScore, \
BlockCounts), \
ref_species=species1, \
file=data.statistics.csv, \
compression=none), \
[...]
</pre></div>
</td></tr></table>
<a name="Arguments_003a-18"></a>
<h3 class="heading">Arguments:</h3>
<dl compact="compact">
<dt><code>statistics={list of statistics functions}</code></dt>
<dd><p>See below for the list of possible functions and their detailed description.
</p>
</dd>
<dt><code>ref_species={string}</code></dt>
<dd><p>The species to use to report block coordinates in the output file. For block where the reference species is missing, NA will be output.
</p>
</dd>
<dt><code>file={path}</code></dt>
<dd><p>A file path for the output file.
</p>
</dd>
<dt><code>compression={none|gzip|zip|bzip2}</code></dt>
<dd><p>Compression format for output file.
</p>
</dd>
</dl>
<p>The statistics to compute take the form of functions (just like filters themselves), which can potentially take arguments.
Here is the list of currently available statistical functions:
</p>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: DistanceBasedPhylogeny</title>
<meta name="description" content="MafFilter Manual 1.3.1: DistanceBasedPhylogeny">
<meta name="keywords" content="MafFilter Manual 1.3.1: DistanceBasedPhylogeny">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Phylogenetics.html#Phylogenetics" rel="up" title="Phylogenetics">
<link href="NewOutgroup.html#NewOutgroup" rel="next" title="NewOutgroup">
<link href="DistanceEstimation.html#DistanceEstimation" rel="prev" title="DistanceEstimation">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/Core/Steely">
</head>
<body lang="en">
<a name="DistanceBasedPhylogeny"></a>
<div class="header">
<p>
Next: <a href="NewOutgroup.html#NewOutgroup" accesskey="n" rel="next">NewOutgroup</a>, Previous: <a href="DistanceEstimation.html#DistanceEstimation" accesskey="p" rel="prev">DistanceEstimation</a>, Up: <a href="Phylogenetics.html#Phylogenetics" accesskey="u" rel="up">Phylogenetics</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>]</p>
</div>
<a name="Hierarchical-clustering-based-on-distances"></a>
<h4 class="subsubsection">2.3.2.2 Hierarchical clustering based on distances</h4>
<p>Performs hierarchical clustering from a previously computed distance matrix.
</p>
<a name="Synopsis_003a-30"></a>
<h3 class="heading">Synopsis:</h3>
<table class="cartouche" border="1"><tr><td>
<div class="example">
<pre class="example">maf.filter= \
[...],
DistanceBasedPhylogeny( \
method=bionj, \
dist_mat=MLDistance), \
[...]
</pre></div>
</td></tr></table>
<a name="Arguments_003a-30"></a>
<h3 class="heading">Arguments:</h3>
<dl compact="compact">
<dt><code>method={string}</code></dt>
<dd><p>Method to use for reconstructing the tree:
</p><dl compact="compact">
<dt><code>upgma</code></dt>
<dd><p>Unweighted pair group method using arithmetic means
</p></dd>
<dt><code>wpgma</code></dt>
<dd><p>Weighted pair group method using aritmetic means
</p></dd>
<dt><code>nj</code></dt>
<dd><p>Neighbor-Joining (Saitou and Nei, 1987)
</p></dd>
<dt><code>bionj</code></dt>
<dd><p>BioNJ method (Gascuel, 1997)
</p></dd>
</dl>
</dd>
<dt><code>dist_mat={string}</code></dt>
<dd><p>The tag name of the distance matrix to use.
</p></dd>
</dl>
<a name="Extra_002ddata_003a-1"></a>
<h3 class="heading">Extra-data:</h3>
<dl compact="compact">
<dt><code>UPGMA|WPGMA|NJ|BioNJ</code></dt>
<dd><p>The resulting tree.
</p></dd>
</dl>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This is the manual of MafFilter, version 1.3.1.
Copyright (C) 2018 Julien Y. Dutheil -->
<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>MafFilter Manual 1.3.1: DistanceEstimation</title>
<meta name="description" content="MafFilter Manual 1.3.1: DistanceEstimation">
<meta name="keywords" content="MafFilter Manual 1.3.1: DistanceEstimation">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Phylogenetics.html#Phylogenetics" rel="up" title="Phylogenetics">
<link href="DistanceBasedPhylogeny.html#DistanceBasedPhylogeny" rel="next" title="DistanceBasedPhylogeny">
<link href="Phylogenetics.html#Phylogenetics" rel="prev" title="Phylogenetics">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}