weldx


Nameweldx JSON
Version 0.7.2 PyPI version JSON
download
home_pageNone
SummaryPython API for the WelDX file format and standard
upload_time2025-07-10 12:41:38
maintainerNone
docs_urlNone
authorNone
requires_python<3.14,>=3.9
licenseBSD 3-Clause License Copyright (c) 2020, BAMWelDX All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
keywords bam welding weldx
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # WelDX - data and quality standards for welding research data

<hl/>

[![CF](https://anaconda.org/conda-forge/weldx/badges/version.svg)](https://anaconda.org/conda-forge/weldx)
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/5e7ede6d978249a781e5c580ed1c813f)](https://www.codacy.com/gh/BAMWelDX/weldx)
[![DeepSource](https://static.deepsource.io/deepsource-badge-light-mini.svg)](https://deepsource.io/gh/BAMWelDX/weldx/?ref=repository-badge)
[![Documentation](https://readthedocs.org/projects/weldx/badge/?version=latest)](https://weldx.readthedocs.io/en/latest/?badge=latest)
[![License](https://img.shields.io/badge/License-BSD%203--Clause-orange.svg)](https://opensource.org/licenses/BSD-3-Clause)
[![Zenodo](https://zenodo.org/badge/DOI/10.5281/zenodo.5565185.svg)](https://doi.org/10.5281/zenodo.5565185)
[![codecov](https://codecov.io/gh/BAMWelDX/weldx/branch/master/graph/badge.svg)](https://codecov.io/gh/BAMWelDX/weldx)
[![package builds](https://github.com/BAMWelDX/weldx/actions/workflows/build_pkg.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/build_pkg.yml)
[![documentation builds](https://github.com/BAMWelDX/weldx/actions/workflows/docs.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/docs.yml)
[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/BAMWelDX/weldx/master.svg)](https://results.pre-commit.ci/latest/github/BAMWelDX/weldx/master)
[![pytest](https://github.com/BAMWelDX/weldx/actions/workflows/pytest.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/pytest.yml)
[![static analysis](https://github.com/BAMWelDX/weldx/actions/workflows/static_analysis.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/static_analysis.yml)

## Overview

Scientific welding data covers a wide range of physical domains and
timescales and are measured using various different sensors. Complex and
highly specialized experimental setups at different welding institutes
complicate the exchange of welding research data further.

The WelDX research project aims to foster the exchange of scientific
data inside the welding community by developing and establishing a new
open source file format suitable for the documentation of experimental
welding data and upholding associated quality standards. In addition to
fostering scientific collaboration inside the national and international
welding community an associated advisory committee will be established
to oversee the future development of the file format. The proposed file
format will be developed with regard to current needs of the community
regarding interoperability, data quality and performance and will be
published under an appropriate open source license. By using the file
format objectivity, comparability and reproducibility across different
experimental setups can be improved.

The project is under active development by the [Welding Technology](https://www.bam.de/Navigation/EN/About-us/Organisation/Organisation-Chart/President/Department-9/Division-93/division93.html)
division at Bundesanstalt für Materialforschung und -prüfung (BAM).

## Features

WelDX provides several Python API to perform standard tasks like
experiment design, data analysis, and experimental data archiving.

### Planning

- Define measurement chains with all involved devices, error sources,
  and metadata annotations.
- Handle complex coordinate transformations needed to describe the
  movement of welding robots, workpieces, and sensors.
- Planing of welding experiments.
- convenient creation of [ISO 9692-1](https://www.iso.org/standard/62520.html) welding groove types.

### Data analysis

- Plotting routines to inspect measurement chains, workpieces (planned
  and welded).
- Analysis functions for standard measurements like track energy,
  welding speed to fill an ISO groove, and more to come.

### Data archiving

The ultimate goal of this project is to store all information about the
experiment in a single file. We choose the popular [ASDF](https://en.wikipedia.org/wiki/Advanced_Scientific_Data_Format)
format for this task. This enables us to store arbitrary binary data,
while maintaining a human readable text based header. All information is
stored in a tree like structure, which makes it convenient to structure
the data in arbitrary complex ways.

The ASDF format and the provided extensions for WelDX types like

- workpiece information (used alloys, geometries)
- welding process parameters (GMAW parameters)
- measurement data
- coordinate systems (robot movement, sensors)

enables us to store the whole experimental pipeline performed in a
modern laboratory.

## Design goals

We seek to provide a user-friendly, well documented programming
interface. All functions and classes in WelDX have attached
documentation about the involved parameters (types and explanation), see
[API docs](https://weldx.readthedocs.io/en/stable/api.html). Further
we provide rich [Jupyter notebook tutorials](https://weldx.readthedocs.io/en/stable/tutorials.html) about the
handling of the basic workflows.

All involved physical quantities used in `weldx` (lengths, angles,
voltages, currents, etc.) should be attached with a unit to ensure
automatic conversion and correct mathematical handling. Units are being
used in all standard features of WelDX and are also archived in the ASDF
files. This is implemented by the popular Python library [Pint](https://pint.readthedocs.io/en/stable/), which flawlessly handles
the creation and conversion of units and dimensions.

## Publications

- Recommendations for an Open Science approach to welding process
  research data. Fabry, C., Pittner, A., Hirthammer, V. et al. *Weld
  World* (2021). <https://doi.org/10.1007/s40194-021-01151-x>

## Installation

The WelDX package can be installed using any conda or mamba package manager from the [Conda-Forge channel](https://conda-forge.org/#about).
If you have not yet installed a conda package manager, we recommend installing `Miniforge`.
The installer can then be found [here](https://conda-forge.org/download/), and a detailed documentation for the installation process is provided
[here](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html#regular-installation).
Once this step has been completed, you will gain access to both the `conda` and the `mamba` command and will be able to proceed with the installation of the WelDX package.

In order to create a new conda environment called `weldx` containing the WeldX package,
run the console command:

```shell
conda create --name weldx --channel conda-forge weldx weldx_widgets
```

To install the WeldX package into your existing environment instead, use:

```shell
conda install weldx weldx_widgets --channel conda-forge
```

If installed, all `conda` commands can be replaced by `mamba` to take advantage
of its faster solver.

The package is also available on pypi and can be installed via:

```shell
pip install weldx weldx-widgets
```

As weldx currently depends on the package `bottleneck`, which contains
C/C++ code, you will need a working C/C++ compiler. The conda package
does not have this requirement as it only installs pre-compiled
binaries. So if you do not know how to install a working compiler, we
strongly encourage using the conda package.

## Documentation

The full documentation is published on readthedocs.org. Click on one of
the following links to get to the desired version:

- [latest](https://weldx.readthedocs.io/en/latest/)
- [stable](https://weldx.readthedocs.io/en/stable/)

## Funding

This research is funded by the Federal Ministry of Education and
Research of Germany under project number 16QK12.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "weldx",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.14,>=3.9",
    "maintainer_email": null,
    "keywords": "bam, welding, weldx",
    "author": null,
    "author_email": "\u00c7a\u011ftay Fabry <cagtay.fabry@bam.de>, Volker Hirthammer <volker.hirthammer@bam.de>, \"Martin K. Scherer\" <martin.scherer@bam.de>, Michael Winkler <michael.winkler@bam.de>",
    "download_url": "https://files.pythonhosted.org/packages/04/2b/a06c575f2ac86e77f39c1bf8f7a7a954269cfde713e00d05d20a8d8d2e80/weldx-0.7.2.tar.gz",
    "platform": null,
    "description": "# WelDX - data and quality standards for welding research data\n\n<hl/>\n\n[![CF](https://anaconda.org/conda-forge/weldx/badges/version.svg)](https://anaconda.org/conda-forge/weldx)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/5e7ede6d978249a781e5c580ed1c813f)](https://www.codacy.com/gh/BAMWelDX/weldx)\n[![DeepSource](https://static.deepsource.io/deepsource-badge-light-mini.svg)](https://deepsource.io/gh/BAMWelDX/weldx/?ref=repository-badge)\n[![Documentation](https://readthedocs.org/projects/weldx/badge/?version=latest)](https://weldx.readthedocs.io/en/latest/?badge=latest)\n[![License](https://img.shields.io/badge/License-BSD%203--Clause-orange.svg)](https://opensource.org/licenses/BSD-3-Clause)\n[![Zenodo](https://zenodo.org/badge/DOI/10.5281/zenodo.5565185.svg)](https://doi.org/10.5281/zenodo.5565185)\n[![codecov](https://codecov.io/gh/BAMWelDX/weldx/branch/master/graph/badge.svg)](https://codecov.io/gh/BAMWelDX/weldx)\n[![package builds](https://github.com/BAMWelDX/weldx/actions/workflows/build_pkg.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/build_pkg.yml)\n[![documentation builds](https://github.com/BAMWelDX/weldx/actions/workflows/docs.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/docs.yml)\n[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/BAMWelDX/weldx/master.svg)](https://results.pre-commit.ci/latest/github/BAMWelDX/weldx/master)\n[![pytest](https://github.com/BAMWelDX/weldx/actions/workflows/pytest.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/pytest.yml)\n[![static analysis](https://github.com/BAMWelDX/weldx/actions/workflows/static_analysis.yml/badge.svg)](https://github.com/BAMWelDX/weldx/actions/workflows/static_analysis.yml)\n\n## Overview\n\nScientific welding data covers a wide range of physical domains and\ntimescales and are measured using various different sensors. Complex and\nhighly specialized experimental setups at different welding institutes\ncomplicate the exchange of welding research data further.\n\nThe WelDX research project aims to foster the exchange of scientific\ndata inside the welding community by developing and establishing a new\nopen source file format suitable for the documentation of experimental\nwelding data and upholding associated quality standards. In addition to\nfostering scientific collaboration inside the national and international\nwelding community an associated advisory committee will be established\nto oversee the future development of the file format. The proposed file\nformat will be developed with regard to current needs of the community\nregarding interoperability, data quality and performance and will be\npublished under an appropriate open source license. By using the file\nformat objectivity, comparability and reproducibility across different\nexperimental setups can be improved.\n\nThe project is under active development by the [Welding Technology](https://www.bam.de/Navigation/EN/About-us/Organisation/Organisation-Chart/President/Department-9/Division-93/division93.html)\ndivision at Bundesanstalt f\u00fcr Materialforschung und -pr\u00fcfung (BAM).\n\n## Features\n\nWelDX provides several Python API to perform standard tasks like\nexperiment design, data analysis, and experimental data archiving.\n\n### Planning\n\n- Define measurement chains with all involved devices, error sources,\n  and metadata annotations.\n- Handle complex coordinate transformations needed to describe the\n  movement of welding robots, workpieces, and sensors.\n- Planing of welding experiments.\n- convenient creation of [ISO 9692-1](https://www.iso.org/standard/62520.html) welding groove types.\n\n### Data analysis\n\n- Plotting routines to inspect measurement chains, workpieces (planned\n  and welded).\n- Analysis functions for standard measurements like track energy,\n  welding speed to fill an ISO groove, and more to come.\n\n### Data archiving\n\nThe ultimate goal of this project is to store all information about the\nexperiment in a single file. We choose the popular [ASDF](https://en.wikipedia.org/wiki/Advanced_Scientific_Data_Format)\nformat for this task. This enables us to store arbitrary binary data,\nwhile maintaining a human readable text based header. All information is\nstored in a tree like structure, which makes it convenient to structure\nthe data in arbitrary complex ways.\n\nThe ASDF format and the provided extensions for WelDX types like\n\n- workpiece information (used alloys, geometries)\n- welding process parameters (GMAW parameters)\n- measurement data\n- coordinate systems (robot movement, sensors)\n\nenables us to store the whole experimental pipeline performed in a\nmodern laboratory.\n\n## Design goals\n\nWe seek to provide a user-friendly, well documented programming\ninterface. All functions and classes in WelDX have attached\ndocumentation about the involved parameters (types and explanation), see\n[API docs](https://weldx.readthedocs.io/en/stable/api.html). Further\nwe provide rich [Jupyter notebook tutorials](https://weldx.readthedocs.io/en/stable/tutorials.html) about the\nhandling of the basic workflows.\n\nAll involved physical quantities used in `weldx` (lengths, angles,\nvoltages, currents, etc.) should be attached with a unit to ensure\nautomatic conversion and correct mathematical handling. Units are being\nused in all standard features of WelDX and are also archived in the ASDF\nfiles. This is implemented by the popular Python library [Pint](https://pint.readthedocs.io/en/stable/), which flawlessly handles\nthe creation and conversion of units and dimensions.\n\n## Publications\n\n- Recommendations for an Open Science approach to welding process\n  research data. Fabry, C., Pittner, A., Hirthammer, V. et al. *Weld\n  World* (2021). <https://doi.org/10.1007/s40194-021-01151-x>\n\n## Installation\n\nThe WelDX package can be installed using any conda or mamba package manager from the [Conda-Forge channel](https://conda-forge.org/#about).\nIf you have not yet installed a conda package manager, we recommend installing `Miniforge`.\nThe installer can then be found [here](https://conda-forge.org/download/), and a detailed documentation for the installation process is provided\n[here](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html#regular-installation).\nOnce this step has been completed, you will gain access to both the `conda` and the `mamba` command and will be able to proceed with the installation of the WelDX package.\n\nIn order to create a new conda environment called `weldx` containing the WeldX package,\nrun the console command:\n\n```shell\nconda create --name weldx --channel conda-forge weldx weldx_widgets\n```\n\nTo install the WeldX package into your existing environment instead, use:\n\n```shell\nconda install weldx weldx_widgets --channel conda-forge\n```\n\nIf installed, all `conda` commands can be replaced by `mamba` to take advantage\nof its faster solver.\n\nThe package is also available on pypi and can be installed via:\n\n```shell\npip install weldx weldx-widgets\n```\n\nAs weldx currently depends on the package `bottleneck`, which contains\nC/C++ code, you will need a working C/C++ compiler. The conda package\ndoes not have this requirement as it only installs pre-compiled\nbinaries. So if you do not know how to install a working compiler, we\nstrongly encourage using the conda package.\n\n## Documentation\n\nThe full documentation is published on readthedocs.org. Click on one of\nthe following links to get to the desired version:\n\n- [latest](https://weldx.readthedocs.io/en/latest/)\n- [stable](https://weldx.readthedocs.io/en/stable/)\n\n## Funding\n\nThis research is funded by the Federal Ministry of Education and\nResearch of Germany under project number 16QK12.\n",
    "bugtrack_url": null,
    "license": "BSD 3-Clause License\n        \n        Copyright (c) 2020, BAMWelDX\n        All rights reserved.\n        \n        Redistribution and use in source and binary forms, with or without\n        modification, are permitted provided that the following conditions are met:\n        \n        1. Redistributions of source code must retain the above copyright notice, this\n           list of conditions and the following disclaimer.\n        \n        2. Redistributions in binary form must reproduce the above copyright notice,\n           this list of conditions and the following disclaimer in the documentation\n           and/or other materials provided with the distribution.\n        \n        3. Neither the name of the copyright holder nor the names of its\n           contributors may be used to endorse or promote products derived from\n           this software without specific prior written permission.\n        \n        THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n        AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n        IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n        DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\n        FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n        DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n        SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n        CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n        OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n        OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n        ",
    "summary": "Python API for the WelDX file format and standard",
    "version": "0.7.2",
    "project_urls": {
        "bug_tracker": "https://github.com/BAMweldx/weldx/issues",
        "changelog": "https://github.com/BAMweldx/weldx/blob/master/CHANGELOG.md",
        "documentation": "https://weldx.readthedocs.io",
        "repository": "https://github.com/BAMweldx/weldx"
    },
    "split_keywords": [
        "bam",
        " welding",
        " weldx"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "05685d0ec6c42209b93364da5f3d4a94ff48b317ef06766108ca32bd8990edfa",
                "md5": "0387a55e82e554b140d8eaf3bf9202a4",
                "sha256": "0bb068f93dac78e915c89d5e463d7b78d94a9afa96522d3bb9535ded2e0beef8"
            },
            "downloads": -1,
            "filename": "weldx-0.7.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0387a55e82e554b140d8eaf3bf9202a4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.14,>=3.9",
            "size": 353804,
            "upload_time": "2025-07-10T12:41:37",
            "upload_time_iso_8601": "2025-07-10T12:41:37.044934Z",
            "url": "https://files.pythonhosted.org/packages/05/68/5d0ec6c42209b93364da5f3d4a94ff48b317ef06766108ca32bd8990edfa/weldx-0.7.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "042ba06c575f2ac86e77f39c1bf8f7a7a954269cfde713e00d05d20a8d8d2e80",
                "md5": "db5a50b5ed2c4a305612ebc9f076255f",
                "sha256": "5828ef362225fbb94e35f01fe439cb4f49bd6390f8ec6d096cbd29662fd75427"
            },
            "downloads": -1,
            "filename": "weldx-0.7.2.tar.gz",
            "has_sig": false,
            "md5_digest": "db5a50b5ed2c4a305612ebc9f076255f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.14,>=3.9",
            "size": 288675,
            "upload_time": "2025-07-10T12:41:38",
            "upload_time_iso_8601": "2025-07-10T12:41:38.343651Z",
            "url": "https://files.pythonhosted.org/packages/04/2b/a06c575f2ac86e77f39c1bf8f7a7a954269cfde713e00d05d20a8d8d2e80/weldx-0.7.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-10 12:41:38",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "BAMweldx",
    "github_project": "weldx",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "weldx"
}
        
Elapsed time: 1.77102s