Skip to main content

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-196205.gitlab.io/main/"
    },
    {
        "name": "testing (dev)",
        "version": "dev",
        "url": "https://artof-196205.gitlab.io/dev/"
    },  
    ...  
    {
        "name": "vx.x.x",
        "version": "vx.x.x",
        "url": "https://artof-196205.gitlab.io/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).

Release files for artof 1.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for artof 1.4.1
File Size Uploaded
artof-1.4.1.tar.gz 55.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for artof 1.4.1
File Interpreter ABI Platform
artof-1.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 116.9 kB

Release files / artof-1.4.1.tar.gz

Download URL artof-1.4.1.tar.gz
Size 55.7 kB
Tags Source
SHA-256 checksum
How to use checksums
128a66c2cc3cfbb4962f55faecc4955a8ad46fef465b8c25505f3b093b930a81
BLAKE2b-256 checksum
How to use checksums
853888f39fc7b10cd6df42e5bffe417b9ea7f93bfa3c47d40d4a29740ea4da30
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release files / artof-1.4.1-py3-none-any.whl

Download URL artof-1.4.1-py3-none-any.whl
Size 61.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c9f92b2f1a422845531bbf90138c26fb785773b940f343af313efd433c6ae333
BLAKE2b-256 checksum
How to use checksums
4b1d4dcb0eba8c631e97f36f3edfe0bd2a44cb10820e90a07c5868584c9de645
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release history Release notifications | RSS feed

This release

1.4.1 This release

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.4

2 release files

1.2.1

2 release files

1.1.5

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.0

2 release files

0.3.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page