|
|
|
|
Guide to Madagascar programs |
This operation is adjoint to sfstack.
| int | axis=2 | which axis to spray | |
|---|---|---|---|
| float | d= | Sampling of the newly created dimension | |
| string | label= | Label of the newly created dimension | |
| int | n= | Size of the newly created dimension | |
| float | o= | Origin of the newly created dimension | |
| string | unit= | Units of the newly created dimension |
sfspray extends the input hypercube by replicating the data in one of the dimensions. The output dataset acquires one additional dimension. Here is an example:
Start with a 2-D dataset
bash$ sfmath n1=5 n2=2 output=x1+x2 > test.rsf
bash$ sfin test.rsf
test.rsf:
in="/var/tmp/test.rsf@"
esize=4 type=float form=native
n1=5 d1=1 o1=0
n2=2 d2=1 o2=0
10 elements 40 bytes
bash$ < test.rsf sfdisfil
0: 0 1 2 3 4
5: 1 2 3 4 5
Extend the data in the second dimension
bash$ < test.rsf sfspray axis=2 n=3 > test2.rsf
bash$ sfin test2.rsf
test2.rsf:
in="/var/tmp/test2.rsf@"
esize=4 type=float form=native
n1=5 d1=1 o1=0
n2=3 d2=1 o2=0
n3=2 d3=1 o3=0
30 elements 120 bytes
bash$ < test2.rsf sfdisfil
0: 0 1 2 3 4
5: 0 1 2 3 4
10: 0 1 2 3 4
15: 1 2 3 4 5
20: 1 2 3 4 5
25: 1 2 3 4 5
The output is three-dimensional, with traces from the original
data duplicated along the second axis.
Extend the data in the third dimension
bash$ < test.rsf sfspray axis=3 n=2 > test3.rsf
bash$ sfin test3.rsf
test3.rsf:
in="/var/tmp/test3.rsf@"
esize=4 type=float form=native
n1=5 d1=1 o1=0
n2=2 d2=1 o2=0
n3=2 d3=? o3=?
20 elements 80 bytes
bash$ < test3.rsf sfdisfil
0: 0 1 2 3 4
5: 1 2 3 4 5
10: 0 1 2 3 4
15: 1 2 3 4 5
The output is also three-dimensional, with the original data replicated
along the third axis.
|
|
|
|
Guide to Madagascar programs |