1 |
.\" RCSid "$Id: total.1,v 1.10 2017/05/02 02:51:01 greg Exp $" |
2 |
.TH TOTAL 1 2/3/95 RADIANCE |
3 |
.SH NAME |
4 |
total - sum up columns |
5 |
.SH SYNOPSIS |
6 |
.B total |
7 |
[ |
8 |
.B \-m |
9 |
][ |
10 |
.B \-sE |
11 |
| |
12 |
.B \-p |
13 |
| |
14 |
.B \-u |
15 |
| |
16 |
.B \-l |
17 |
][ |
18 |
.B \-i{f|d}[N] |
19 |
][ |
20 |
.B \-o{f|d} |
21 |
][ |
22 |
.B "\-in M" |
23 |
][ |
24 |
.B "\-on M" |
25 |
][ |
26 |
.B \-tC |
27 |
][ |
28 |
.B \-N |
29 |
[ |
30 |
.B \-r |
31 |
]] |
32 |
[ |
33 |
file .. |
34 |
] |
35 |
.SH DESCRIPTION |
36 |
.I Total |
37 |
sums up columns of real numbers from one or more files |
38 |
and prints out the result on its standard output. |
39 |
.PP |
40 |
By default, |
41 |
.I total |
42 |
computes the straigt sum of each input column, but multiplication |
43 |
can be specified instead with the |
44 |
.I \-p |
45 |
option. |
46 |
Likewise, the |
47 |
.I \-u |
48 |
option means find the upper limit (maximum), and |
49 |
.I \-l |
50 |
means find the lower limit (minimum). |
51 |
.PP |
52 |
Sums of powers can be computed by giving an exponent with the |
53 |
.I \-s |
54 |
option. |
55 |
(Note that there is no space between the |
56 |
.I \-s |
57 |
and the exponent.) |
58 |
This exponent can be any real number, positive or negative. |
59 |
The absolute value of the input is always taken before the |
60 |
power is computed in order to avoid complex results. |
61 |
Thus, |
62 |
.I \-s1 |
63 |
will produce a sum of absolute values. |
64 |
The default power (zero) is interpreted as a straight sum without |
65 |
taking absolute values. |
66 |
.PP |
67 |
The |
68 |
.I \-m |
69 |
option can be used to compute the mean rather than the total. |
70 |
For sums, the arithmetic mean is computed. |
71 |
If a power is also specified using the |
72 |
.I \-s |
73 |
option, the inverse power will be applied to the averaged result. |
74 |
For products, the geometric mean is computed. |
75 |
(A logarithmic sum of absolute values is used to avoid overflow, and |
76 |
zero values are silently ignored.) |
77 |
.PP |
78 |
If the input data is binary, the |
79 |
.I \-id |
80 |
or |
81 |
.I \-if |
82 |
option may be given for 64-bit double or 32-bit float values, respectively. |
83 |
Either option may be followed immediately by an optional |
84 |
count, which defaults to 1, indicating the number of double or float |
85 |
binary values to read per record on the input file. |
86 |
(There can be no space between the option and this count.)\0 |
87 |
Similarly, the |
88 |
.I \-od |
89 |
and |
90 |
.I \-of |
91 |
options specify binary double or float output, respectively. |
92 |
These options do not need a count, as this will be determined by the |
93 |
number of input channels. |
94 |
.PP |
95 |
A count can be given as the number of lines to read before |
96 |
computing a result. |
97 |
Normally, |
98 |
.I total |
99 |
reads each file to its end before producing its result, |
100 |
but this behavior may be overridden by inserting blank lines in |
101 |
the input. |
102 |
For each blank input line, total produces a result as if the |
103 |
end-of-file had been reached. |
104 |
If two blank lines immediately follow each other, total closes |
105 |
the file and proceeds to the next one (after reporting the result). |
106 |
The |
107 |
.I \-N |
108 |
option (where N is a decimal integer) tells |
109 |
.I total |
110 |
to produce a result and reset the calculation after |
111 |
every N input lines. |
112 |
In addition, the |
113 |
.I \-r |
114 |
option can be specified to override reinitialization and thus |
115 |
give a running total every N lines (or every blank line). |
116 |
If the end of file is reached, the current total is printed |
117 |
and the calculation is reset before the next file (with or without the |
118 |
.I \-r |
119 |
option). |
120 |
.PP |
121 |
The |
122 |
.I \-in |
123 |
option if present, will limit the number of input records read |
124 |
(per input file). |
125 |
The |
126 |
.I \-on |
127 |
option may be used to limit the total number of outut records produced. |
128 |
.PP |
129 |
The |
130 |
.I \-tC |
131 |
option can be used to specify the input and output tab character. |
132 |
The default tab character is TAB. |
133 |
.PP |
134 |
If no files are given, the standard input is read. |
135 |
.SH EXAMPLES |
136 |
To compute the RMS value of colon-separated columns in a file: |
137 |
.IP "" .2i |
138 |
total \-t: \-m \-s2 input |
139 |
.PP |
140 |
To produce a running product of values from a file: |
141 |
.IP "" .2i |
142 |
total \-p \-1 \-r input |
143 |
.SH BUGS |
144 |
If the input files have varying numbers of columns, mean values |
145 |
will certainly be off. |
146 |
.I Total |
147 |
will ignore missing column entries if the tab separator is a non-white |
148 |
character, but cannot tell where a missing column should have been if |
149 |
the tab character is white. |
150 |
.SH AUTHOR |
151 |
Greg Ward |
152 |
.SH "SEE ALSO" |
153 |
cnt(1), neaten(1), rcalc(1), rcollate(1), rlam(1), rsplit(1), tabfunc(1) |