Awesome
Easy Python interface to RefractiveIndex database
The original database<br> https://github.com/polyanskiy/refractiveindex.info-database
Database files parsing was made with a modified version of refractiveIndex.py
from PyTMM project by Pavel Dmitriev.
Installation
pip install refractiveindex
Usage
from refractiveindex import RefractiveIndexMaterial
SiO = RefractiveIndexMaterial(shelf='main', book='SiO', page='Hass')
wavelength_nm = 600 # [nm]
SiO.get_epsilon(wavelength_nm)
# (3.8633404437869827+0.003931076923076923j)
SiO.get_refractive_index(wavelength_nm)
# (1.96553846)
SiO.get_extinction_coefficient(wavelength_nm)
# (0.001)
Notes:
- here the time dependence is assumed to be $\mathrm{e}^{-\mathrm{i} \omega t}$, so $\mathrm{Im}(\varepsilon) > 0$ is responsible for the losses.
- if there is a space in the name, one should write underscore instead of it, i.e. not
page='Rodriguez-de Marcos'
butpage='Rodriguez-de_Marcos'
.
How to get material page names
You can find the proper “page” name by hovering your cursor on the link in the Data section
Or you can look up folders in this repository<br> https://github.com/polyanskiy/refractiveindex.info-database
Simular projects for Julia
Julia interface to refractiveindex.info database<br> https://github.com/stillyslalom/RefractiveIndex.jl
Possible problems
Refractive index changed naming in its database, please upgrade the package
pip install --upgrade refractiveindex
and remove database folder at ~/.refractiveindex.info-database
.
The database is currently limited to dispersion and extinction ('n-k') data.