diff --git a/.codacy.yml b/.codacy.yml index 00356a8a3..89c00df72 100644 --- a/.codacy.yml +++ b/.codacy.yml @@ -14,4 +14,5 @@ exclude_paths: - 'weldx/_version.py' - 'scripts/**' - 'CHANGELOG.md' + - 'README.md' - '.github/pull_request_template.md' diff --git a/CHANGELOG.md b/CHANGELOG.md index c09edd09d..4bf0cca29 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -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. +- [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 diff --git a/README.md b/README.md index 0c0f1bd8e..7c86eef0d 100644 --- a/README.md +++ b/README.md @@ -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 @@ -41,15 +42,15 @@ 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) @@ -57,22 +58,31 @@ enables us to store the whole experimental pipeline performed in a modern labora ## 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