BinMD Coordinate Transformations¶
Begin with an initial MD Workspace called
original_wswith two dimensions,
The BinMD v1 algorithm can transform these coordinates into a new coordinate space with, for example, a rotation and a translation:
The output MD Histogram Workspace, called
binned_wsstill has two dimensions, now called
binned_wsworkspace holds a reference to the original workspace.
This can be seen in the details of the workspace in the Workspaces widget (
Binned from 'original_ws').
In C++, calling
binned_ws->getOriginalWorkspace(0)will return a pointer to
It also holds the coordinate transformations between workspaces:
(H, K) -> (Qx, Qy): Binned coordinates back to original coordinates.
In C++, this can be accessed via
(Qx, Qy) -> (H, K): original coordinates to the binned coordinates.
In C++, this is accessible via
When moving the mouse in the Sliceviewer, for example, the coordinates in BOTH spaces will be displayed.
It is possible to call BinMD v1 on an MD Histogram Workspace that has already been binned.
For example, if you are viewing
binned_ws in the Sliceviewer, you can use the
Non-axis aligned cutting tool to bin a line from that.
Say you bin
binned_wsto a line with a width:
line_wsworkspace has 2 dimensions (since it has a width).
The dimensions of
line_wshave the generic names:
Xdimension has more than one bin, but the
Ydimension still exists.
Each point in
(X,Y)space has an equivalent in
The integration will actually be performed on the event data in the
There are then two ‘original’ workspaces recorded in ‘line_ws’:
original_ws(the event data).
(X,Y) -> (Qx,Qy)transform.
(Qx,Qy) -> (X,Y)transform.
line_ws->getOriginalWorkspace(1)returns the intermediate workspace
binned_ws(the 2D histogram data).
(X,Y) -> (H,K)transform.
(H,K) -> (X,Y)transform.
When using the
Plot MDmenu on the
line_ws, you can display the plot as the coordinates of the intermediate workspace.
In this example, this would be the