Skip to main content

The ARTOF is a tool to read, process and analyze data collected from angle resolved time of flight (ARToF) electron analyzer.

Project description

artof

The artof package is a jupyter notebook tool to read, process and analyze data collected from angle resolved time of flight (ARTOF) sensors.

Getting started

To use this package python version >=3.10 is needed. The installation can be done using the command:

pip install artof

Documentation

The documentation can be found here. It is automatically generated from the docstrings in all python classes.

Workflow

The implementation of a new feature should be conducted as follows:

  1. Create a new branch with a sensible name as a fork from dev.
  2. Implement features including documentation.
  3. If required, make changes to the Sphinx documentation under docs/source/.
  4. Check if all existing tests are still working (cmd: pytest) and write new test functions.
  5. If there were changes to dev since the initial fork, merge it into your branch and resolve conflicts. Check again if all tests are running.
  6. Make sure the pylint rating of each file is 8 or higher. To do so run
pylint src/artof/{file}
  1. Update documentation in the ./docs folder using .rst and sphinx. For automatic doc generation use .. automodule:: artof.{module} or .. autoclass:: artof.{module}.{class}. Do not forget to add new .rst-files to index.
  2. Test the doc generation and ensure there are no warnings (else the pipeline will fail). To do so run
sphinx-build -M html docs/source docs/build
  1. Increase version number in setup.cfg and CITATION.cff file.
  2. Push all changes to the remote repository and create a merge request to dev.
  3. Make sure all tests succeed in the pipeline and merge.
  4. When enough changes accumulate, create a merge request to main once enough features accumulated to roll out a new version. Make again sure all test pipelines succeed.
  5. After merging to main a new version of the package is released to PyPi upon a successful pipeline run.

Major releases

In case of major releases, it is recommended to deploy seperate version for the docs, that will be available in the future. To do so, add a new entry to the versions.json-file (root directory).

[
    {
        "name": "latest (main)",
        "version": "main",
        "url": "https://artof-42d889.pages.hzdr.de/main/"
    },
    {
        "name": "testing (dev)",
        "version": "dev",
        "url": "https://artof-42d889.pages.hzdr.de/dev/"
    },  
    ...  
    {
        "name": "vx.x.x",
        "version": "vx.x.x",
        "url": "https://artof-42d889.pages.hzdr.de/vx.x.x/"
    },
]

After getting this version merged onto the main branch, add a tag to the according commit with the exact name of the version (vx.x.x). A new page deployment will be run automatically.

Issues and new features

Issues and new feature requests can be added here.

Development version

A version with features under development is available under the TestPyPi repository and can be installed as followed:

pip install --index-url https://test.pypi.org/simple/ artof

The documentation can be found here.

Terminology

General

  • Iteration: One full measurements cycle
  • Step/Frame: Step within one iteration
  • Window: Span of iterations used for spectral evolution.
  • Trigger period: Time between two triggers. Usually the trigger is synched to revolution period (BESSY, approx. 800 ns / 32000 ticks).

Pump probe

  • Run: Individual run, where settings like f.e. the delay stage or oscillator delay have been changed.
  • Revolution: Revolutions of the synchrotron, which range from -1 to 205. Revolution 0 is the revolution of the pumb pulse.
  • Revolution period: Average time between two revolutions, often given in TDC ticks ( approx. 800 ns / 32000 ticks).

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

artof-1.3.0.tar.gz (54.3 kB view details)

Uploaded Source

Built Distribution

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

artof-1.3.0-py3-none-any.whl (59.5 kB view details)

Uploaded Python 3

File details

Details for the file artof-1.3.0.tar.gz.

File metadata

  • Download URL: artof-1.3.0.tar.gz
  • Upload date:
  • Size: 54.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for artof-1.3.0.tar.gz
Algorithm Hash digest
SHA256 eae7e13374fe0b6dcadeb9d013b314cdc4582348c8be954e4d7840a8380bfab1
MD5 a07b71fadd5f26896c7961cb38823ce5
BLAKE2b-256 6b5d2eb52d43b2bea75d5a0d3bedbd25aa3b1886426464975e6f514e501cea2b

See more details on using hashes here.

File details

Details for the file artof-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: artof-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 59.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for artof-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 10d3bbf47d3a3f8824e2a05410a1790ecff2ad6ac1af0bc7c004808623e23bbd
MD5 644806c5f0419e3b9809817ca7778b06
BLAKE2b-256 6ce331ba6b901640eb3acbfa1cf26dc8c98b66cf3461a3530b769651be2ba514

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