| 5 |
|
.SH SYNOPSIS |
| 6 |
|
.B rcollate |
| 7 |
|
[ |
| 8 |
< |
.B \-h |
| 8 |
> |
.B \-h[io] |
| 9 |
|
][ |
| 10 |
< |
.B \-f[afdb][N]] |
| 10 |
> |
.B \-w |
| 11 |
|
][ |
| 12 |
+ |
.B \-f[afdb][N] |
| 13 |
+ |
][ |
| 14 |
|
.B \-t |
| 15 |
|
][ |
| 16 |
|
.B "\-ic in_col" |
| 31 |
|
.I \-oc |
| 32 |
|
option. |
| 33 |
|
By default, the file is assumed to include an information header, which |
| 34 |
< |
is copied to the standard output along with the command name, but the |
| 34 |
> |
is copied to the standard output along with the command name. |
| 35 |
> |
The |
| 36 |
> |
.I \-hi |
| 37 |
> |
option may be used to turn off the expectation of a header on input. |
| 38 |
> |
The |
| 39 |
> |
.I \-ho |
| 40 |
> |
option turns off header output, and |
| 41 |
|
.I \-h |
| 42 |
< |
option may be used to turn this behavior off. |
| 42 |
> |
by itself turns off both input and output headers. |
| 43 |
> |
The |
| 44 |
> |
.I \-w |
| 45 |
> |
option turns off non-fatal warning messages, such as unexpected EOD. |
| 46 |
|
.PP |
| 47 |
|
The input format is assumed to be ASCII, with three white-space separated words |
| 48 |
|
(typically numbers) in each record. |
| 70 |
|
and |
| 71 |
|
.I \-fb24 |
| 72 |
|
would all be equivalent. |
| 73 |
< |
Note also that the lack of row separators in binary files means that |
| 73 |
> |
Note that the lack of row separators in binary files means that |
| 74 |
|
.I rcollate |
| 75 |
|
does not actually do anything for binary files unless the transpose |
| 65 |
– |
.I \(\-t\) |
| 76 |
|
option is given, also. |
| 77 |
|
.PP |
| 78 |
+ |
If an input header is present, it may contain the format, number of components |
| 79 |
+ |
and matrix dimensions. |
| 80 |
+ |
In such cases, the |
| 81 |
+ |
.I \-ic, |
| 82 |
+ |
.I \-ir |
| 83 |
+ |
and |
| 84 |
+ |
.I \-f |
| 85 |
+ |
options are not required, but will be checked against the header |
| 86 |
+ |
information if provided. |
| 87 |
+ |
.PP |
| 88 |
|
The transpose option, |
| 89 |
|
.I \-t |
| 90 |
|
swaps rows and columns on the input. |
| 94 |
|
.I rcollate |
| 95 |
|
will automatically determine the number of columns based on the |
| 96 |
|
position of the first EOL (end-of-line) character, and the number |
| 97 |
< |
of rows based on the count of records in the file. |
| 97 |
> |
of rows based on the total count of records in the file. |
| 98 |
|
The user may override these determinations, allowing the matrix to |
| 99 |
|
be resized as well as transposed. |
| 100 |
|
If input and output dimensions are given, the number of input rows |
| 101 |
|
must equal the number of output columns, |
| 102 |
< |
and the number of input columns must equal the number of output rows |
| 103 |
< |
with the |
| 84 |
< |
.I \-t |
| 85 |
< |
option. |
| 86 |
< |
For large transpose operations on Unix systems, it is much more efficient |
| 102 |
> |
and the number of input columns must equal the number of output rows. |
| 103 |
> |
For large transpose operations on Unix systems, it is most efficient |
| 104 |
|
to specify the input file on the command line, rather than reading |
| 105 |
|
from the standard input, since |
| 106 |
|
.I rcollate |
| 107 |
< |
can map the file directly into memory. |
| 108 |
< |
.SH EXAMPLE |
| 107 |
> |
can map the file directly into virtual memory. |
| 108 |
> |
.SH EXAMPLES |
| 109 |
|
To change put 8760 color triplets per row in a matrix with no header: |
| 110 |
|
.IP "" .2i |
| 111 |
|
rcollate -h \-oc 8760 input.dat > col8760.dat |
| 113 |
|
To transpose a binary file with 145 float triplets per input row: |
| 114 |
|
.IP "" .2i |
| 115 |
|
rcollate -ff3 -ic 145 -t orig.flt > transpose.flt |
| 116 |
+ |
.PP |
| 117 |
+ |
To create an appropriate header for a binary float matrix as required by |
| 118 |
+ |
.I rmtxop(1)\: |
| 119 |
+ |
.IP "" .2i |
| 120 |
+ |
rcollate -hi -ff3 -or 145 -oc 8760 input.smx | rmtxop dcoef.dmx - > res.txt |
| 121 |
|
.SH AUTHOR |
| 122 |
|
Greg Ward |
| 123 |
|
.SH NOTES |
| 125 |
|
.I rcollate |
| 126 |
|
command is rather inflexible when it comes to output field and record |
| 127 |
|
separators for ASCII data. |
| 128 |
< |
It accepts any number or type of white space between input fields |
| 128 |
> |
It accepts any amount of white space between fields |
| 129 |
|
on input, but only produces spaces as field separators |
| 130 |
< |
between words and tabs as record separators. |
| 130 |
> |
between words and tabs as record separators on output. |
| 131 |
|
Output row separtors will always be an EOL, which may differ between systems. |
| 132 |
|
.PP |
| 133 |
|
If no options are given on the command line, or a binary file is specified |
| 134 |
|
without a transpose, |
| 135 |
|
.I rcollate |
| 136 |
< |
issues a warning and simply copies its input to the standard output. |
| 136 |
> |
issues a warning and simply copies its input to its standard output. |
| 137 |
|
.SH "SEE ALSO" |
| 138 |
< |
cnt(1), histo(1), neaten(1), rcalc(1), rlam(1), tabfunc(1), total(1) |
| 138 |
> |
cnt(1), histo(1), neaten(1), rcalc(1), rlam(1), rmtxop(1), |
| 139 |
> |
rsplit(1), tabfunc(1), total(1) |