![]() ![]() BRAHMS
User Guide » Timely Aside » DataML
This documentation is offline - click here to go online
Index | Search: Go online to use Search
| ||
OverviewDataML is an XML flavour that can represent most variables in a one-to-one fashion. It is a more-or-less general way of representing pretty much any data. Support for DataML is made available to component authors through the Typical UsageIf you parametrize your Process using DataML, things will work as follows. You will write a Matlab script that uses This state data will then be presented to your 1199 Process as a DataML (XML) node. In your Process, you will use the FormatThe format of DataML is not documented. Use the SystemML Toolbox (implicitly, see above) to interact with DataML from Matlab, and use the NotesSince there's nowhere else to put this, note the potentially confusing storage arrangements for complex numeric data. Numeric data may be interleaved (first dimension is size 2 and is interpreted as real/imag) or adjacent (last dimension is ...). Simply enough, a storage class suffixed "x" indicates complex adjacent, "y" indicates complex interleaved. Generally, we want to be able to store any way the data is supplied, so we only do JIT translation as required. This is complicated when storing unencapsulated, using a binary file, because binary files are always written with time as the last dimension, for obvious reasons. In this case, each sample is still adjacent or interleaved, as indicated by "x" and "y", but the whole log has time as the last dimension. Therefore, in adjacent form, the second-to-last dimension of the whole file is actually real/imag. Unpacking is fairly straightforward once one of these three possibilities is divined. The key is that binary files always use the last dimension for time, regardless of complexity. Matlab requires unpacking to adjacent format. Numpy requires unpacking to interleaved format. So there's no gain in choosing one over the other, as far as I can see. We stay agnostic.
A node with no attributes is a special way to store a 1xN row vector of characters, i.e. a simple string. |
||
This is a documentation page for the BRAHMS Modular Execution (Simulation) Framework. For details of licensing and distribution, please click here. To advise of an error or omission, please click here. |