Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.4.0 #419

Merged
merged 6 commits into from
Jul 13, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .codacy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@ exclude_paths:
- 'weldx/_version.py'
- 'scripts/**'
- 'CHANGELOG.md'
- 'README.md'
- '.github/pull_request_template.md'
22 changes: 21 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,26 @@
# Release Notes

## 0.4.0 (unreleased)
## 0.4.0 (13.07.2021)

Release `0.4.0` brings many new major features to `weldx`

### Highlights

- [Quality Standards](https://weldx.readthedocs.io/en/latest/tutorials/quality_standards.html):
Users can now create and integrate their own quality standards by defining new ASDF schema definitions and loading
them into weldx. It is possible to add new definitions or modify existing schemas to create your own flavour of the
weldx standard.
CagtayFabry marked this conversation as resolved.
Show resolved Hide resolved
- [WeldxFile](https://weldx.readthedocs.io/en/latest/tutorials/weldxfile.html):
Create/Load/Modify asdf files directly using ``WeldxFile`` with many helpful utility functions included.
- [TimeSeries support](https://weldx.readthedocs.io/en/latest/tutorials/welding_example_02_weaving.html#add-a-sine-wave-to-the-TCP-movement)
for ``LocalCoordinateSystem``:
It is now possible to define a time-dependent ``LocalCoordinateSystem`` with a simple function by passing
a ``TimeSeries``
object with a ``MathematicalExpression`` as ``coordinates``. For an example, click the link above.
- [MeasurementChain](https://weldx.readthedocs.io/en/latest/tutorials/measurement_chain.html) \
The ``MeasurementChain`` has been reworked to be easier and more flexible to use.

full changelog below:

### added

Expand Down
46 changes: 28 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ 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.
WelDX provides several Python API to perform standard tasks like experiment design, data analysis, and experimental data
archiving.

### Planning

Expand All @@ -41,38 +42,47 @@ WelDX provides several Python API to perform standard tasks like experiment desi

### 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 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
- 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.
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.
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 conda or mamba package manager from the :code:`conda-forge` channel.
These managers originate from the freely available [Anaconda Python stack](https://docs.conda.io/en/latest/miniconda.html).
If you do not have Anaconda or Miniconda installed yet, we ask you to install `Miniconda-3`.
Documentation for the installation procedure can be found [here](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html#regular-installation).
After this step you have access to the conda command and can proceed to installing the WelDX package.
The WelDX package can be installed using conda or mamba package manager from the :code:`conda-forge` channel. These
managers originate from the freely available [Anaconda Python stack](https://docs.conda.io/en/latest/miniconda.html). If
you do not have Anaconda or Miniconda installed yet, we ask you to install `Miniconda-3`. Documentation for the
installation procedure can be
found [here](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html#regular-installation). After
this step you have access to the conda command and can proceed to installing the WelDX package.

```console
conda install weldx -c conda-forge
Expand Down