============
BeamProfiler
============
.. image:: https://img.shields.io/pypi/v/beamprofiler.svg
:target: https://pypi.python.org/pypi/beamprofiler
.. image:: https://app.travis-ci.com/wagnojunior/beamprofiler.svg?branch=main
:target: https://app.travis-ci.com/wagnojunior/beamprofiler
.. image:: https://readthedocs.org/projects/beamprofiler/badge/?version=latest
:target: https://beamprofiler.readthedocs.io/en/latest/?version=latest
:alt: Documentation Status
**BeamProfiler** is a Python package for laser beam analysis and characterization
according to ISO 13694, ISO 11145, and other non-ISO definitions commonly used
in the industry.
* Free software: GNU General Public License v3
* Documentation: https://beamprofiler.readthedocs.io.
Features
--------
**BeamProfiler** imports the power density distribution of a laser beam and
generates a `.xlsx` report with the following items:
ISO parameters:
total power, clip-level power, maximum power density, clip-level
power density, clip-level average power density, clip-level irradiation
area, beam aspect ratio, fractional power, flatness factor, beam
uniformity, plateau uniformity, edge steepness, beam centroid, beam width.
Non-ISO parameters:
clip-level beam width, clip-level edge width, modified plateau uniformity,
top-hat factor.
Auxiliary graphs
histogram, 2D heat map, 3D heat map, normalized energy curve.
Below are some illustrations:
.. figure:: docs/images/example_report.png
:width: 100 %
:alt: Beam analysis report of ISO parameters
Beam analysis report of ISO and non-ISO parameters
.. figure:: docs/images/example_histogram_2.png
:width: 50 %
:alt: Histogram
Histogram
.. figure:: docs/images/example_2d_heatmap_1.png
:width: 50 %
:alt: 2D heat map
2D heat map
.. figure:: docs/images/example_3d_heatmap_1.png
:width: 50 %
:alt: 3D heat map
3D heat map
.. figure:: docs/images/example_energy_curve.png
:width: 50 %
:alt: Normalized energy curve
Normalized energy curve
Credits
-------
This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
=======
History
=======
Version 1
---------
* 1.2.0 (2023.03.13)
- New features:
+ Reference rectangle on 2D, 3D heat maps (issue #7): add a reference rectangle of any size and position to the 2D, 3D heat maps
+ Test for auxiliary graphs: check whether the graphs are generated
- Documentation
+ Added new feature
* 1.1.0 (2022.09.16)
- New features:
+ User-defined file format for auxiliary graphs (issue #5): save the auxiliary graphs using any format
- Documentation
+ Added new feature
+ Improved clarity
+ Corrected typos
* 1.0.1 (2022.09.02)
- Bug fixes
+ Removed unecessary imports
+ Corrected Travis CI address
+ Fixed truncated output file name (issue #3)
- Documentation
+ Fixed typos
* 1.0.0 (2022.08.15)
- First release on PyPI.
Version 0
---------
* 0.1.3 (2022-08-01)
- Fourth pre-release on PyPI
* 0.1.2 (2022-08-01)
- Third pre-release on PyPI
* 0.1.1 (2022-07-31)
- Second pre-release on PyPI
* 0.1.0 (2022-07-28)
- First pre-release on PyPI