A Dash application to visualize the observables and parameters of a collider built and configured with Xsuite.
Project description
Collider Dashboard
A Dash application to visualize the observables and parameters of a collider built and configured with Xsuite.
Installation
The dashboard can be installed from PyPI with pip:
pip install collider-dashboard
This will install the required packages and build the application. If you haven't done it already, it is recommended to prebuild the Xsuite kernel to gain some computation time:
xsuite-prebuild
Usage
For personal usage, the simplest way to use the dashboard is to run the package as a development server from the command line, providing a few arguments:
python -m collider_dashboard --collider-path path_to_collider.json --filling-path path_to_scheme.json --port 8080 --force-reload --ignore-footprint --full-twiss --type-particles proton --debug
--collider-path
, or-c
, sets the path to the collider configuration file. Default value to the path of a dummy collider used for testing.--filling-path
, or-f
, sets the path to the filling scheme, instead of using the one in the collider configuration file. Optional.--port
, or-p
, sets the port on which the dashboard will be deployed. Default value to `8080``.--force-reload
, or-r
, sets a boolean indicating whether the collider dashboard data should be reloaded if already existing. Optional.--ignore-footprint
, or-i
, sets a boolean indicating whether the footprint should be ignored to gain computation time. Optional.--full-twiss
, or-t
, sets a boolean indicating whether the Twiss/Survey tables should be computed fully (not removing duplicates and entry/exit elements), at the expense of computation time. Optional.--type-particles
, or-a
, sets the type of particles to be used for the collider. Default value toproton
.--debug
, or-d
, sets a boolean indicating whether the dashboard should be run in debug mode. Optional.
After computing some temporary variables (this may take a while the first time), this will deploy a local server and open the dashboard in a browser window.
Alternatively, one can import the dashboard as a module and use it in a custom script:
# my-awesome-dashboard.py
from collider_dashboard import build_app
app, server = build_app(path_to_collider.json,
path_scheme=path_to_scheme.json,
port=8080,
force_reload=False,
ignore_footprint=False,
debug = False,
simplify_tw=True
type_particles='proton'
)
The dashboard can then be deployed e.g. with gunicorn:
gunicorn my-awesome-dashboard:server -b :8080
Note that, as the dashboard deals with global variables, it is not thread-safe. It is therefore recommended to run it with a single worker (it's the case by default).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file collider_dashboard-1.3.0.0.tar.gz
.
File metadata
- Download URL: collider_dashboard-1.3.0.0.tar.gz
- Upload date:
- Size: 2.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.8.10 Linux/5.15.0-100-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26400cc0682621cb3308d8105330b894054eef98881659600c867c08cd78a762 |
|
MD5 | 5ee0ff96f35a92cdd820aab49633ca59 |
|
BLAKE2b-256 | 0b5481c818273607f921f5bef8e136b8b090e45f3aca594d1f08038a3bfd9f47 |
File details
Details for the file collider_dashboard-1.3.0.0-py3-none-any.whl
.
File metadata
- Download URL: collider_dashboard-1.3.0.0-py3-none-any.whl
- Upload date:
- Size: 2.3 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.2 CPython/3.8.10 Linux/5.15.0-100-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ddee105587dd9ed2cde28bd05fa1e679a42cab6b84360454c42d382c9220fd2 |
|
MD5 | 464584078ed7b5d2b0a1682e437e4aa2 |
|
BLAKE2b-256 | ab7a1a59cca19789b85c070fd17606fc68b88fcefba9caf044b5bca0f33d64a0 |