Skip to main content

The Reduced-Order Scattering Emulator (rose) is a user-friendly software for building efficient surrogate models for nuclear scattering.

Project description

Python package

ROSE - The Reduced-Order Scattering Emulator

ROSE makes it easy to build and train a scattering emulator. ROSE enables aspiring graduate students and long-suffering postdocs to emulate nuclear scattering observables with optical potentials, trading negligible amounts of accuracy for orders-of-magnitude gains in speed.

For any bug reports or feature requests, please make use of the Github issues tab on the repository. We also welcome all pull requests for software, documentation, and user-contributed tutorials!

Installation

ROSE is hosted at pypi.org/project/nuclear-rose/. To install as a user, run the following

pip install nuclear-rose.

To install as a developer, clone the repository and run

pip install -e .

from within the project root directory.

Testing

ROSE uses pytest for testing. To run the tests, simply run pytest from the project root directory.

Usage

To emulate an interaction, you will make an Interaction class, or something similar. Then you will typically make a ScatteringAmplitudeEmulator, which will train an emulator to emulate elastic cross sections.

For a full set of examples walking through emulation and calibration, check the tutorials directory.

Documentation

You can also check out the documentation page.

More software

You could even check the other BAND softwares and start combining them to write all your Bayesian papers!

Citation

ROSE, and the theory behind it, were introduced in this publication. If you use ROSE, please cite it like so:

@article{PhysRevC.109.044612,
  title = {ROSE: A reduced-order scattering emulator for optical models},
  author = {Odell, D. and Giuliani, P. and Beyer, K. and Catacora-Rios, M. and Chan, M. Y.-H. and Bonilla, E. and Furnstahl, R. J. and Godbey, K. and Nunes, F. M.},
  journal = {Phys. Rev. C},
  volume = {109},
  issue = {4},
  pages = {044612},
  numpages = {17},
  year = {2024},
  month = {Apr},
  publisher = {American Physical Society},
  doi = {10.1103/PhysRevC.109.044612},
  url = {https://link.aps.org/doi/10.1103/PhysRevC.109.044612}
}

Additionally, as ROSE is part of the BAND software framework, please consider citing the BAND Manifesto.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nuclear_rose-1.1.7.tar.gz (9.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nuclear_rose-1.1.7-py3-none-any.whl (218.4 kB view details)

Uploaded Python 3

File details

Details for the file nuclear_rose-1.1.7.tar.gz.

File metadata

  • Download URL: nuclear_rose-1.1.7.tar.gz
  • Upload date:
  • Size: 9.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nuclear_rose-1.1.7.tar.gz
Algorithm Hash digest
SHA256 91775fb799cb9bc9cc7980a1f0e7c6455b09740592b61b9279c6e4a6cc5c9a25
MD5 130ae0c05a4132d3be50de4585dc43de
BLAKE2b-256 93d13f8626b151de4c1dcc8227eb6ae2227604abd5dfd927332ec0f27163128c

See more details on using hashes here.

File details

Details for the file nuclear_rose-1.1.7-py3-none-any.whl.

File metadata

  • Download URL: nuclear_rose-1.1.7-py3-none-any.whl
  • Upload date:
  • Size: 218.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nuclear_rose-1.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 274dac05542e7bcc2b3706fc33848d5a28f02a2462180778ac1b91281d6408ce
MD5 0b9cf6834047ca7b56332948458e4b83
BLAKE2b-256 0e3bc4b82bc2134a0508813db246cda15fedd4c2df9b53cf382fca59fe55327b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page