Skip to main content

POCAL

POCAL (Python Optical Coating Analysis Library) allows to easily design optical coatings both as single layer and as multilayer stack, monitoring a wide variety of optical properties and, moreover, giving the possibility to automatically refine the multilayer design to achieve the desired optical goals. The library is completely open source, and it can be easily coupled to several Python-based ray tracers or libraries to work on more complex simulations. The results have been extensively tested and are comparable with the ones obtained using commercial software.

Downloading POCAL

Downloading the library is very easy using pip :

pip install pocal

Supporting files can be downloaded from: https://github.com/tommasofontanot/pocal/tree/main/resources

The folder with the resources needs to be made the current working directory.

import os
os.chdir(resources folder)

Cite POCAL

If you use the library, please cite the paper published in Optics Continuum: Fontanot, T., Bhaumik, U., Kishore, R. and Meuret, Y., 2023. POCAL: a Python-based library to perform optical coating analysis and design. Optics Continuum, 2(4), pp.810-824. DOI: https://doi.org/10.1364/OPTCON.484972

Using the library

The library can be called as follows:

import pocal
import os
os.chdir('resources folder')
#upload the prescription file(here 3layers.txt), angle of incidence, minimum wavelength, maximum wavelength, wavelength resolution, 
#reference wavelength, optical thickness and type of refinement
test = pocal.pocal(r'3layers.txt',40,200,1500,1,600,False,None)

Defining the Prescription file

The prescription file represents the stacking of the materials. An example is shown below:

+----Immersing Medium----+-Glass----------+

+----Layer3----------------+-TiO2-------------50 nm+

+----Layer2----------------+-SiO2-------------60 nm+

+----Layer1----------------+-TiO2-------------70 nm+

+----Substrate-------------+-Glass------------+

To simulate the proposed design, the prescription text file must be written as follows:

image

Python tutorial

An in-depth tutorial to use the library can be found here: POCAL Tutorial

License

License: MIT

Metadata

Release files for pocal 2.449

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pocal 2.449
File Size Uploaded Provenance
pocal-2.449.tar.gz 12.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pocal 2.449
File Interpreter ABI Platform
pocal-2.449-py3-none-any.whl Python 3 none any Details

Total release size: 23.4 kB

Release files / pocal-2.449.tar.gz

Download URL pocal-2.449.tar.gz
Size 12.2 kB
Tags Source
SHA-256 checksum
How to use checksums
b7c74698051f229786706f5b6f605a660f5dcce71d01b488337d0a3859f22117
BLAKE2b-256 checksum
How to use checksums
b4cf7f0fa937adbc4364223a34705ee7c125d407a2eff545b0cb0c2b67bd926e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.0

Release files / pocal-2.449-py3-none-any.whl

Download URL pocal-2.449-py3-none-any.whl
Size 11.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4869473f7f3433c1e10e377a499e766719b56a695111d1004b650f6f843e467d
BLAKE2b-256 checksum
How to use checksums
7ba01d5c43401f359794cf014c7e266ccfa9dae1be9b8131295e2f5385037fe0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.0

Security for pocal 2.449

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page