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 5The 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 5The output is also three-dimensional, with the original data replicated along the third axis.
Guide to Madagascar programs |