Skip to main content

Routines for analysis of polarization

Project description

A collection of routines to track and visualize polarization through polarizers and birefringent elements. Some ellipsometry support is also included.

There are four numeric modules

  • pypolar.fresnel - Fresnel reflection and transmission calculations

  • pypolar.jones - Routines to support the Jones calculus

  • pypolar.mueller - Routines to support the Mueller calculus

  • pypolar.ellipsometry - Routines to support ellipsometry

A module for visualization

  • pypolar.visualization - Routines to support visualization

and three modules that support symbolic algebra

  • pypolar.sym_fresnel - Symbolic Fresnel reflection and transmission

  • pypolar.sym_jones - Symbolic Jones calculus

  • pypolar.sym_mueller - Symbolic Mueller calculus

Detailed documentation is available at Read the Docs.

Installation

Use pip:

pip install pypolar

Usage

Create an optical isolator:

import pypolar.mueller as mueller

# Optical Isolator example, no light returning

A = mueller.stokes_right_circular()       # incident light
B = mueller.op_linear_polarizer(np.pi/4)  # polarizer at 45°
C = mueller.op_quarter_wave_plate(0)      # QWP with fast axis horizontal
D = mueller.op_mirror()                   # first surface mirror
E = mueller.op_quarter_wave_plate(0)      # QWP still has fast axis horizontal
F = mueller.op_linear_polarizer(-np.pi/4) # now at -45° because travelling backwards

F @ E @ D @ C @ B @ A

License

pypolar is licensed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypolar-0.7.0.tar.gz (26.2 kB view details)

Uploaded Source

File details

Details for the file pypolar-0.7.0.tar.gz.

File metadata

  • Download URL: pypolar-0.7.0.tar.gz
  • Upload date:
  • Size: 26.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1.post20200802 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.6

File hashes

Hashes for pypolar-0.7.0.tar.gz
Algorithm Hash digest
SHA256 b4e38318f16f9b90e32ee87621fdd6dfb3ab177d55e5b5d0a1e30a4b97396402
MD5 bf791bc8a3e959ca121edc7e4ab6ddc2
BLAKE2b-256 4a5f629ef8f877587e51425f310871eaaa56af484d32c5853518b21273ebddcf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page