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:
  • 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. (BESSY, 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.2.4.tar.gz (49.4 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.2.4-py3-none-any.whl (54.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for artof-1.2.4.tar.gz
Algorithm Hash digest
SHA256 da249676321137aaca49b0f68338691b0867df90e18f015eb0efb2ce5822a241
MD5 06fccf6b4048c3d2b5206d2feebf2e23
BLAKE2b-256 be2c362ce26523197345176b45a8861426c2a862b25c56e50c0e988800521f4c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for artof-1.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 761924da3b275573a012c7eb2bcfa9eaf80a557d2b7225e54b405659dcd15255
MD5 a62834557c9851f04ec662fc593b990c
BLAKE2b-256 a3e4e2ecdc3e4752cdbd8850fd7d9a228448f2d006f6f710e1c7cfcccf93fea3

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