Input task needs to be simplified: all formats give the same data
- All data consists of several channels with random names.
- Every channel inside each file will have a URL.
- Every channel has either the shape
(Nchan,)
or the shape(..., Nchan)
HDF5, DAT, CSV, XMU: it is all the same, except for the URLs and the data reading.
Essentially you have energy, mu, i0, i1, i2, ... and each has shape[-1]==Nchan
.
Note that the energy could have shape (Nfiles, Nchan)
for .dat files but est
only allows selecting 1 .dat file.
ewoks-canvas ~/exafs_example/exafs.ows
ewoks execute ~/exafs_example/exafs.ows --outputs=end -p input_information='{"spectra_url": "silx:///home/denolf/exafs_example/cu_rt01.h5?/1.1/measurement/mu", "channel_url": "silx:///home/denolf/exafs_example/cu_rt01.h5?/1.1/measurement/energy", "dimensions": [2, 1, 0], "energy_unit": "electron_volt"}'
ewoks execute ~/exafs_example/exafs.ows --outputs=end -p input_information='{"spectra_url": "spec:///home/denolf/exafs_example/EXAFS_Cu.dat?1 cu.dat 1.1 Column 2/Column 2", "channel_url": "spec:///home/denolf/exafs_example/EXAFS_Cu.dat?1 cu.dat 1.1 Column 2/Column 1", "energy_unit": "electron_volt"}'
ewoks execute ~/exafs_example/exafs.ows --outputs=end -p input_information='{"spectra_url": "larch:///home/denolf/exafs_example/cu_rt01.xmu", "channel_url": "larch:///home/denolf/exafs_example/cu_rt01.xmu", "energy_unit": "electron_volt"}'
ewoks execute ~/exafs_example/exafs.ows --outputs=end -p input_information='{"spectra_url": "spec:///home/denolf/exafs_example/EXAFS_Ge.csv?mu", "channel_url": "spec:///home/denolf/exafs_example/EXAFS_Ge.dat?energy", "energy_unit": "electron_volt"}'