Metadata-Version: 2.1
Name: beamprofiler
Version: 1.2.0
Summary: 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.
Home-page: https://github.com/wagnojunior/beamprofiler
Author: Wagno Alves Braganca Jr.
Author-email: wagnojunior@gmail.com
License: GNU General Public License v3
Keywords: beamprofiler
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Requires-Python: >=3.6
Description-Content-Type: text/x-rst
License-File: LICENSE
License-File: AUTHORS.rst

============
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

