@BeginModule
@NewPage
@Name      = Daypctl
@Title     = Daily percentile values
@Section   = Statistical values
@Class     = Statistic
@Arguments = ifile1 ifile2 ifile3 ofile
@Operators = daypctl

@BeginDescription
This module computes percentiles over all time steps in @file{ifile1}
of the same day.
The algorithm uses histograms with minimum and maximum bounds given in
@file{ifile2} and @file{ifile3}, respectively. The default number of
histogram bins is 100. The default can be overridden by defining the
environment variable CDO_PCTL_NBINS. The files @file{ifile2} and
@file{ifile3} must be the result of corresponding daymin and daymax
operations, respectively.
The date information for a time step in @file{ofile} is the date of the
last contributing time step in @file{ifile1}.
@EndDescription
@EndModule


@BeginOperator_daypctl
@Title     = Daily percentiles
@Parameter = p

@BeginDescription
@IfMan
For every adjacent sequence t_1, ...,t_n of time steps of the same day, it is

o(t,x) = pth percentile {i(t',x), t_1<t'<=t_n}
@EndifMan
@IfDoc
For every adjacent sequence \begin{math}t_1, ...,t_n\end{math} of time steps of the same day, it is: \\
@BeginMath
o(t,x) = \mbox{\bf pth percentile} \{i(t',x), t_1 < t' \leq t_n\}
@EndMath
@EndifDoc
@EndDescription
@EndOperator


@BeginParameter
@Item = p
INTEGER  Percentile number in {1, ..., 99}
@EndParameter


@BeginExample
To compute the daily 90th percentile of a time series, use:
@BeginVerbatim
   cdo daymin ifile minfile
   cdo daymax ifile maxfile
   cdo daypctl,90 ifile minfile maxfile ofile
@EndVerbatim
Or shorter using operator piping:
@BeginVerbatim
   cdo daypctl,90 ifile -daymin ifile -daymax ifile ofile
@EndVerbatim
@EndExample
