| Class HardwiredShape A structure to define a fixed gapped shape. HardwiredShape<P1, P2, ..., Pn> Include Headers seqan/index.h Parameters
Pi | Pi is the distance of the i'th '1' to the next '1' in the shape. Remarks: At most 20 parameters are allowed, so the maximal shape weight is 21.
Remarks You can use this structure to define your one gapped shapes in conjunction with GappedShape. Note: The shape 1100101 corresponds to HardwiredShape<1,3,2>. Note: The following predefined shapes are already available in seqan/index/shape_predefined.h: File "shape_predefined.h"
1 | // ==========================================================================
2 | // SeqAn - The Library for Sequence Analysis
3 | // ==========================================================================
4 | // Copyright (c) 2006-2010, Knut Reinert, FU Berlin
5 | // All rights reserved.
6 | //
7 | // Redistribution and use in source and binary forms, with or without
8 | // modification, are permitted provided that the following conditions are met:
9 | //
10 | // * Redistributions of source code must retain the above copyright
11 | // notice, this list of conditions and the following disclaimer.
12 | // * Redistributions in binary form must reproduce the above copyright
13 | // notice, this list of conditions and the following disclaimer in the
14 | // documentation and/or other materials provided with the distribution.
15 | // * Neither the name of Knut Reinert or the FU Berlin nor the names of
16 | // its contributors may be used to endorse or promote products derived
17 | // from this software without specific prior written permission.
18 | //
19 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 | // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 | // ARE DISCLAIMED. IN NO EVENT SHALL KNUT REINERT OR THE FU BERLIN BE LIABLE
23 | // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 | // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
25 | // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26 | // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 | // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28 | // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
29 | // DAMAGE.
30 | //
31 | // ==========================================================================
32 | // Author: David Weese <david.weese@fu-berlin.de>
33 | // ==========================================================================
34 |
35 | #ifndef SEQAN_HEADER_SHAPE_PREDEFINED_H
36 | #define SEQAN_HEADER_SHAPE_PREDEFINED_H
37 |
38 | //SEQAN_NO_GENERATED_FORWARDS: no forwards are generated for this file
39 |
40 | namespace SEQAN_NAMESPACE_MAIN
41 | {
42 |
43 | //////////////////////////////////////////////////////////////////////////////
44 | // some predefined gapped shapes
45 |
46 |
47 | //////////////////////////////////////////////////////////////////////////////
48 | // Single seed of
49 | // B.Ma and J.Tromp and M.Li,
50 | // "PatternHunter: faster and more sensitive homology search"
51 | // Bioinformatics 18, 2002
52 | //
53 | // weight:11
54 | // length:18
55 | //
56 | // shape:
57 | // 111010010100110111
58 |
59 | typedef GappedShape<
60 | HardwiredShape< 1, 1, 2, 3, 2, 3, 1, 2, 1, 1 >
61 | > ShapePatternHunter;
62 |
63 |
64 |
65 | //////////////////////////////////////////////////////////////////////////////
66 | // Multiple seeds of
67 | // L.Ilie and S.Ilie, "Fast Computation of Good Multiple Spaced Seeds"
68 | // WABI, 2007
69 | //
70 | // weight:9
71 | // length:15
72 | //
73 | // shapes:
74 | // 111010100100111
75 | // 110100110011101
76 | // 111010001011011
77 | //
78 | // sensitivity:
79 | // 65% 0.747975 70% 0.897741
80 | // 75% 0.973134 80% 0.996226
81 |
82 | typedef GappedShape<
83 | HardwiredShape< 1, 1, 2, 2, 3, 3, 1, 1 >
84 | > ShapeIlieA1;
85 |
86 | typedef GappedShape<
87 | HardwiredShape< 1, 2, 3, 1, 3, 1, 1, 2 >
88 | > ShapeIlieA2;
89 |
90 | typedef GappedShape<
91 | HardwiredShape< 1, 1, 2, 4, 2, 1, 2, 1 >
92 | > ShapeIlieA3;
93 |
94 |
95 |
96 | //////////////////////////////////////////////////////////////////////////////
97 | // Multiple seeds of
98 | // L.Ilie and S.Ilie, "Fast Computation of Good Multiple Spaced Seeds"
99 | // WABI 2007
100 | //
101 | // weight:9
102 | // length:13..23
103 | //
104 | // shapes:
105 | // 1110110100111
106 | // 11010000110010111
107 | // 11100010010000101011
108 | //
109 | // sensitivity:
110 | // 65% 0.767413 70% 0.910949
111 | // 75% 0.978558 80% 0.997357
112 |
113 | typedef GappedShape<
114 | HardwiredShape< 1, 1, 2, 1, 2, 3, 1, 1 >
115 | > ShapeIlieB1;
116 |
117 | typedef GappedShape<
118 | HardwiredShape< 1, 2, 5, 1, 3, 2, 1, 1 >
119 | > ShapeIlieB2;
120 |
121 | typedef GappedShape<
122 | HardwiredShape< 1, 1, 4, 3, 5, 2, 2, 1 >
123 | > ShapeIlieB3;
124 |
125 |
126 | } // namespace seqan
127 |
128 | #endif
See Also GappedShape, Shape SeqAn - Sequence Analysis Library - www.seqan.de

Page built @2012/03/14 16:34:45