Index: /trunk/doc/doxygen.config.in
===================================================================
--- /trunk/doc/doxygen.config.in (revision 1813)
+++ /trunk/doc/doxygen.config.in (revision 1814)
@@ -273,5 +273,10 @@
# You can put \n's in the value part of an alias to insert newlines.
-ALIASES =
+ALIASES = "trivial_iterator=Trivial Iterator"
+ALIASES += "input_iterator=Input Iterator"
+ALIASES += "output_iterator=Output Iterator"
+ALIASES += "forward_iterator=Forward Iterator"
+ALIASES += "bidirectional_iterator=Bidirectional Iterator"
+ALIASES += "random_access_iterator=Random Access Iterator"
# The ENABLED_SECTIONS tag can be used to enable conditional
Index: /trunk/yat/normalizer/qQuantileNormalizer.h
===================================================================
--- /trunk/yat/normalizer/qQuantileNormalizer.h (revision 1813)
+++ /trunk/yat/normalizer/qQuantileNormalizer.h (revision 1814)
@@ -100,8 +100,8 @@
the cspline fit utilized in the normalization.
- Requirements:
- - ForwardIterator must be a model of Forward Iterator
- - ForwardIterator's value type is either convertible to double
- or in the weighted case convertible to utility::DataWeight.
+ \tparam ForwardIterator is a model of \forward_iterator, and is
+ either a \ref concept_weighted_iterator or unweighted with
+ value type convertible to \c double.
+
*/
template
@@ -114,5 +114,7 @@
Elements in [\a first, \a last) are normalized as described
above and the result is assigned to [\a result, \a result + \a
- last-\a first). In the weighted case, weights are copied from
+ last-\a first). Input range [\a first, \a last) is not
+ modified. If ranges are weighted, the weights are copied from
+ [\a first, \a last) to \a result range.
It is possible to normalize "in place"; it is permissible for
@@ -121,12 +123,13 @@
the same as any in range [\a first, \a last).
- Requirements:
- - RandomAccessIterator1 is a model of Random Access Iterator
- - RandomAccessIterator2 is a model of Random Access Iterator
- - RandomAccessIterator2 is mutable
- - Either RandomAccessIterator1's and RandomAccessIterator2's
- value types are convertible to double OR
- RandomAccessIterator1 and RandomAccessIterator2 are models of
- \ref concept_weighted_iterator
+ \tparam RandomAccessIterator1 is a model of
+ \random_access_iterator, and is either a \ref
+ concept_weighted_iterator or unweighted with value type
+ convertible to \c double.
+
+ \tparam RandomAccessIterator2 is a model of
+ \random_access_iterator and its value type is convertible from
+ \c double. \a RandomAccessIterator2 is mutable.
+
*/
template
@@ -138,4 +141,10 @@
/**
\brief Partition a range of data into equal sizes.
+
+ Copy the range [first, last), sort the copy, and divide the
+ sorted copy in N parts. The parts are created such that the total
+ weight in a part is approximately W/N where W is the total weight
+ (over all parts). The class calculates the average value in each
+ part and also the "quantile".
The class also calculates the average of each part and assigns
@@ -161,5 +170,13 @@
/**
- \brief Return the mid point for each partition.
+ The quantile (here) is defined as (w_lower + w_upper) / 2W,
+ where w_lower is the total weight of elements smaller than the
+ smallest element in the part, and w_upper is the total weight
+ of elements smaller (or equal) than the largest value in the
+ part.
+
+ In the unweighted case all weights are 1.0, which implies q_0 =
+ n_0/N, q_1 = (n_0+n_1/2)/N, q_2 = (n_0+n_1+n_2/2)/N where n_i
+ is number of elements in ith part.
\return The quantiles vector.