The workflow is as follows. The word "script" is used to denote a distict step in processing the data rather than actual script.
- Start with a nexus file. As in,
/HFIR/HB2B/IPTS-22731/nexus/HB2B_439.nxs.h5- This is read in by something that will split into sub-scans and create a project file [script 1 - currently convert_nexus_to_hidra.py]
- This is read in by something that will create powder patterns and add them to the project file [script 2 - currently reduce_HB2B.py]
- This is read in by the gui to do the peak fitting and add the results to the project file [script 3 - currently somewhere in the gui]
- This is read in by the gui and used to create the summary .csv file [script 4 - currently being written]
Some other things to note * scripts 1-2 will be refactored/combined to create a new reduce_HB2B.py that can be run by autoreduction * scripts 2-4 (more like functionality 2-4) will all live in the gui in some way * going back any number of steps will delete the following steps from the project file. This is to prevent users from having a project file with powder patterns that are not associated with the peak fitting from the project file.
If you've never used PyRS before, you can get started quickly by doing the following.
- Install basic dependencies: Pixi, Python, and PyQt. Pixi installation requires linux.
- Create a new Pixi environment with additional dependencies:
Pixi environments are only supported on OSx (x86) and Linux using python 3.11
- Configure Pixi environment:
pixi install
- Run PyRs with Pixi:
pixi run pyrs
To start main window from analysis machine
pixi run pyrs
To develop
To run all of the tests
pixi run test
Running specific tests can be done through standard ways <https://docs.pytest.org/en/stable/usage.html>`_. For example
pixi run python -m pytest tests/unit
will only run the unit tests
- Mantid - The Mantid project provides a framework that supports high-performance computing and visualisation of scientific data.
- Steca2 - The stress and texture calculator used by the Heinz Maier-Leibnitz Zentrum Garching facility.
If you want to suggest changes of a feature or the inclusion of new features, you can either 1) [fork](https://github.com/neutrons/PyRS/fork) the repository to work on it and create an [issue](https://github.com/neutrons/PyRS/issues/new) to discuss it before proceeding with a pull request, or 2) create an [issue](https://github.com/neutrons/PyRS/issues/new) with your suggestion for others to discuss and potentially work on it.
Please report any bugs or ask for help by creating a new [issue](https://github.com/neutrons/PyRS/issues/new).
This material is based upon work supported by the U.S. Department of Energy, Office of Science, Office of Basic Energy Sciences.