Skip to main content

Python interface for data on refractiveindex.info

Project description

PyPI - Version PyPI - Python Version GitHub Actions Workflow Status GitHub Actions Workflow Status

PyIndexRepo

This package gives access to the refractive index data from RefractiveIndex.info.

The focus of this package is to provide a convenient interface to the data, and be efficient in the calculation of (temperature-dependent) refractive indices.

Usage

Basics

from pyindexrepo import RefractiveIndexLibrary

db = RefractiveIndexLibrary(auto_upgrade=True)
bk7 = db.search_material_by_page_name('N-BK7')[0]  # returns a list of different BK7 glasses
print(bk7.get_n(0.5875618))

When executed for the first time, the database from the RefractiveIndex Github Repo will be downloaded and converted to a python object. This process takes a few minutes. Consecutive calls will load the database object from a local file (almost instantaneously).

Auto-upgrade of the library is supported, but switched off by default.

There are two main classes that allow interacting with the data: the RefractiveIndexLibrary class and the Material class.

Temperature data

When temperature data is available, the refractive index of a material can be queried at any temperature within the valid temperature range:

import numpy as np
from pyindexrepo import RefractiveIndexLibrary

db = RefractiveIndexLibrary(auto_upgrade=True)
bk7 = db.search_material_by_page_name('N-BK7')[0]  # returns a list of different BK7 glasses
wl = np.linspace(0.4, 0.7, 10000)
print(bk7.get_n_at_temperature(wl, temperature=30))
[1.53088657 1.53088257 1.53087857 ... 1.51309187 1.51309107 1.51309027]

Installation

pip install pyindexrepo

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

pyindexrepo-0.1.4.tar.gz (13.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyindexrepo-0.1.4-py3-none-any.whl (14.0 kB view details)

Uploaded Python 3

File details

Details for the file pyindexrepo-0.1.4.tar.gz.

File metadata

  • Download URL: pyindexrepo-0.1.4.tar.gz
  • Upload date:
  • Size: 13.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pyindexrepo-0.1.4.tar.gz
Algorithm Hash digest
SHA256 e6618c94ed87558b121d270e2610e630cfaaea62c4a12ed0dcc43ebaa5fa52a6
MD5 7dcb0c2243b600c867f350fa81082994
BLAKE2b-256 e6cde3ad720f6d5cddc898681ce6b55f37a509de0c0a82565349987b6a88dc99

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyindexrepo-0.1.4.tar.gz:

Publisher: release.yaml on Stuermer/PyIndexRepo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyindexrepo-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: pyindexrepo-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 14.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pyindexrepo-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4a676458a23d04bcd692e82ca9f4fc64e8f713c3c05f1c129dcb59dc606bcd79
MD5 c766adf2f9c2b2e09e8a72a607660063
BLAKE2b-256 d3ae5e000b58542c9ab7d9ee2537d83b17698364c35e652b20c8aa44c25fca2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyindexrepo-0.1.4-py3-none-any.whl:

Publisher: release.yaml on Stuermer/PyIndexRepo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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