2012 Data Discussion Examples

From canSAS

1D

example of simple 1D SAS data, I(Q)

SASroot
	SASentry
		SASdata
			@Q="Q"
			@Qindices="*"
			@Iindices="Q"
			I: float[100]
			Q: float[100]


example of simple 1D SAS data in a time series, I(Q, t)

SASroot
	SASentry
		SASdata
			@Q="Q"
			@Qindices="*"
			@Iindices="Q,time"
			I: float[100, ntime]
			Q: float[100]
			t: float[ntime]


(see the Discussion page for an XML representation with the recommended minimum content)

example of generic 1D SAS data in a time series, I(Q(t), t)

SASroot
	SASentry
		SASdata
			@Q="Q"
			@Qindices="*,time"
			@Iindices="Q,time"
			I: float[100, ntime]
			Q: float[100, ntime]
			t: float[ntime]



2D

example of simple 2D (image) SAS data, I(Q)

SASroot
	SASentry
		SASdata
			@Q="Qx,Qy"
			@Qindices="*,*"
			@Iindices="Q,Q"
			I: float[100, 512]
			Qx: float[100, 512]
			Qy: float[100, 512]

example of generic 2D SAS data, I(Q)

SASroot
	SASentry
		SASdata
			@Q="Qx,Qy,Qz"
			@Qindices="*"
			@Iindices="Q"
			I: float[100*512]
			Qx: float[100*512]
			Qy: float[100*512]
			Qz: float[100*512]

example of generic 2D SAS data in a time series, I(Q(t),t)

SASroot
	SASentry
		SASdata
			@Q="Qx,Qy,Qz"
			@Qindices="*,time"
			@Iindices="Q,time"
			I: float[100*512,ntime]
			Qx: float[100*512,ntime]
			Qy: float[100*512,ntime]
			Qz: float[100*512,ntime]
			t: float[ntime]

example of generic 2D SAS data in a time, T, & P series, I(Q(t,T,P),t,T,P)

SASroot
	SASentry
		SASdata
			@Q="Qx,Qy,Qz"
			@Qindices="*,time,T,P"
			@Iindices="Q,time,T,P"
			I: float[100*512,ntime,nT,nP]
			Qx: float[100*512,ntime,nT,nP]
			Qy: float[100*512,ntime,nT,nP]
			Qz: float[100*512,ntime,nT,nP]
			t: float[ntime]
			T: float[nT]
			P: float[nP]

example of generic 2D SAS data in a time, T, & P series, I(T,Q(t),t,P)

SASroot
	SASentry
		SASdata
			@Q="Qx,Qy,Qz"
			@Qindices=",*,*,time,"
			@Iindices="T,Q,Q,time,P"
			I: float[nT,100,512,ntime,nP]
			Qx: float[100,512,ntime]
			Qy: float[100,512,ntime]
			Qz: float[100,512,ntime]
			t: float[ntime]
			T: float[nT]
			P: float[nP]

invalid case

example of **over-simple** 2D (image) SAS data, I(Q)

Invalid because the method of addressing the Q values is different from all the above.


SASroot
	SASentry
		SASdata
			@Q="Qx,Qy"
			@Qindices="*,*"
			@Iindices=" ??? "
			I: float[100, 512]
			Qx: float[100]
			Qy: float[512]

terms

SASroot

same use as original 1D format

SASentry

some changes from the original 1D format

SASdata

different use from original 1D format, refers to a single reduced data set that can be represented thus (such as from one detector)

SASdata has three possible attributes, as shown in this example:

@Q="Qx,Qy,Qz"
@Qindices=",*,*,time,"
@Iindices="T,Q,Q,time,P"

Commas are used as delimiters in all cases.

@Q

Comma-separated list that describes the names of the actual data objects that describe Q.

@Qindices

Comma-separated list that describes which indices are used (from the I object) to reference Q. Leave a position empty if that index is not used to describe Q, Use a "*" to describe an index that uses the Q definition. For other data storage objects, name the object for the position where it should appear.

@Iindices

Comma-separated list that describes which objects correspond to the indices of the I object. For indices that involve Q, use the term "Q" and the @Qindices attribute will provide more information.