easyScience is an initiative from the European Spallation Neutron Source (ESS) to unify simulation software across neutron scattering. DON’T PANIC! While this goal seems an unsurmountable challenge, it is achievable as demonstrated by our current releases. The easyScience project has the following aims; Provide a unified method to interact the most popular technique specific simulation software/libraries, a professional and welcoming graphical interface for new users, JuPyter notebooks for experienced users, unified data structures and workflows across multiple techniques.
As an opening to this project, diffraction and reflectometry techniques were chosen to demonstrate the easy philosophy. These techniques have multiple complex calculation engines available, which it is unrealistic to expect users to master. easyReflectometry and easyDiffraction unifies these calculation engines for their respective techniques and provides a complete, feature rich and easy to use interface. In the future QENS and spectroscopy will also be targeted. As a bonus, the technologies behind the easyScience programs allow for advanced modelling and statistical analysis techniques with the ability to scale for large datasets.
Behind these programs is easyCore, a unified simulation, optimisation and analysis package. easyCore is built on the latest techniques and libraries including scipp (developed at ESS) for dataset handling, jax for machine learning and PyMC for Bayesian analysis. Hence all these features are available for all easyScience software. We present the main features of easyScience, where it came from, where it’s going and how it will be used to enhance the analysis workflow with the latest analysis techniques.