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.1.tar.gz (44.0 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.1-py3-none-any.whl (48.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for artof-1.2.1.tar.gz
Algorithm Hash digest
SHA256 a0e81d8c21a7ac0216a70f57b3148532dce2590a852fca94453bd6c34379c153
MD5 6747764ac85f28b1faa5ffa45133db39
BLAKE2b-256 61569054a59f2178de5607f3c9a6fb354b447cbfdd0950333250041cefb217b5

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for artof-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 17d264791cc1a08833fabe4ee2972e8ad18d1dfa0ffe760195e7836e9d042053
MD5 949a8197883608d9f50d7ddf5afce1be
BLAKE2b-256 91ccff1b24104f2487895491e901933324fd74443c6d5a1818f258379bb04211

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