yat
0.11.3pre
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
yat
statistics
PearsonDistance.h
1
#ifndef theplu_yat_statistics_pearson_distance_h
2
#define theplu_yat_statistics_pearson_distance_h
3
4
// $Id: PearsonDistance.h 2202 2010-02-21 18:39:13Z peter $
5
6
/*
7
Copyright (C) 2007, 2008 Jari Häkkinen, Peter Johansson, Markus Ringnér
8
Copyright (C) 2010 Peter Johansson
9
10
This file is part of the yat library, http://dev.thep.lu.se/yat
11
12
The yat library is free software; you can redistribute it and/or
13
modify it under the terms of the GNU General Public License as
14
published by the Free Software Foundation; either version 3 of the
15
License, or (at your option) any later version.
16
17
The yat library is distributed in the hope that it will be useful,
18
but WITHOUT ANY WARRANTY; without even the implied warranty of
19
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20
General Public License for more details.
21
22
You should have received a copy of the GNU General Public License
23
along with yat. If not, see <http://www.gnu.org/licenses/>.
24
*/
25
26
#include "averager_traits.h"
27
#include "yat/utility/iterator_traits.h"
28
29
namespace
theplu {
30
namespace
yat {
31
namespace
statistics {
32
38
struct
PearsonDistance
39
{
58
template
<
typename
ForwardIterator1,
typename
ForwardIterator2>
59
double
operator()
(ForwardIterator1 beg1, ForwardIterator1 end1,
60
ForwardIterator2 beg2)
const
61
{
62
typename
averager_pair<ForwardIterator1, ForwardIterator2>::type
ap;
63
add
(ap,beg1,end1,beg2);
64
return
1-ap.correlation();
65
}
66
};
67
68
}}}
// of namespace statistics, yat, and theplu
69
70
#endif
Generated on Sat May 24 2014 03:33:05 for yat by
1.8.2