big spell checking patch -- slif@bellsouth.net
[rrdtool.git] / doc / rrdgraph_rpn.src
index 3278f84..b765f9a 100644 (file)
@@ -1,6 +1,6 @@
 =include name
 
-=head1 SYNOPSYS
+=head1 SYNOPSIS
 
 I<E<lt>RPN expressionE<gt>> := 
 I<E<lt>vnameE<gt>>|I<E<lt>operatorE<gt>>|I<E<lt>valueE<gt>>
@@ -42,16 +42,12 @@ would do C<a = b, 3, +, 5, *> and need no parentheses.
 
 B<LT, LE, GT, GE, EQ, NE>
 
-I<Note: NE is not yet implemented>
-
 Pop two elements from the stack, compare them for the selected condition
 and return 1 for true or 0 for false. Comparing an I<unknown> or an
 I<infinite> value will always result in 0 (false).
 
 B<UN, ISINF>
 
-I<Note: ISINF is not yet implemented>
-
 Pop one element from the stack, compare this to I<unknown> respectively
 to I<positive or negative infinity>. Returns 1 for true or 0 for false.
 
@@ -102,6 +98,10 @@ B<SIN, COS, LOG, EXP>
 
 Sine, cosine (input in radians), log, exp (natural logarithm)
 
+B<ATAN>
+
+Arctangent. Output in radians.
+
 B<FLOOR, CEIL>
 
 Round down,up to the nearest integer
@@ -127,6 +127,20 @@ set or otherwise the result of this B<CDEF> at the previous time
 step. This allows you to do calculations across the data.  This
 function cannot be used in B<VDEF> instructions.
 
+B<PREV(vname)>
+
+Pushes an I<unknown> value if this is the first value of a data
+set or otherwise the result of vname variable at the previous time
+step. This allows you to do calculations across the data.  This
+function cannot be used in B<VDEF> instructions.
+
+B<COUNT>
+
+Pushes the number 1 if this is the first value of the data set, the 
+number 2 if it is the second, and so on. This special value, allows 
+you to make calculations based on the position of the value within 
+the data set. This function cannot be used in B<VDEF> instructions.
+
 Z<>
 
 =item Time
@@ -190,17 +204,35 @@ Z<>
 
 =item MAXIMUM, MINIMUM, AVERAGE
 
-Return the corresponding value
+Return the corresponding value, MAXIMUM and MINIMUM also return
+the first occurrence of that value in the time component.
+
+Example: C<VDEF:avg=mydata,AVERAGE>
 
 Z<>
 
 =item LAST, FIRST
 
-Return the last,first value including its time 
+Return the last,first value including its time.  The time for
+FIRST is actually the start of the corresponding interval, where
+the LAST time component returns the end of the corresponding interval.
+
+Example: C<VDEF:first=mydata,FIRST>
+
+Z<>
+
+=item TOTAL
+
+Returns the rate from each defined time slot multiplied with the
+step size.  This can for instance return total bytes transfered
+when you have logged bytes per second. The time component returns
+the amount of seconds 
+
+Example: C<VDEF:total=mydata,TOTAL>
 
 Z<>
 
-=item PERCENTILE
+=item PERCENT
 
 Should follow a B<DEF> or B<CDEF> I<vname>. This I<vname> is popped,
 another number is popped which is a certain percentage (0..100). The
@@ -208,9 +240,10 @@ data set is then sorted and the value returned is chosen such that
 I<percentage> percent of the values is lower or equal than the result.
 I<Unknown> values are considered lower than any finite number for this
 purpose so if this operator returns an I<unknown> you have quite a lot
-of them in your data...
+of them in your data.  B<Inf>inite numbers are lesser, or more, than the
+finite numbers and are always more than the I<Unknown> numbers.
 
-Example: C<VDEF:perc95=95,mydata,PERCENTILE>
+Example: C<VDEF:perc95=mydata,95,PERCENT>
 
 =back