Skip to main content

Material dielectric models for plasmonic electrodynamics in MNPBEM-Python.

Project description

mnpbem-material

mnpbem-material implements dielectric-function models used in plasmonic electrodynamics. The module provides analytical material models and tabulated optical constants for metals such as Au, Ag, and Al.

Features

  • Constant dielectric model for homogeneous media.
  • Drude dielectric model for free-electron metals.
  • Tabulated (E, n, k) optical constants with wavelength-domain interpolation.
  • Ready-to-use datasets for common plasmonic materials.

Implemented Formulations

1. Constant Dielectric Function

For wavelength-independent permittivity:

$$ \varepsilon(\lambda) = \varepsilon_0 $$

The wave number is:

$$ k(\lambda) = \frac{2\pi}{\lambda}\sqrt{\varepsilon} $$

where:

  • $\varepsilon_0$ is the constant dielectric permittivity.
  • $\lambda$ is the wavelength.

2. Drude Model

For free-electron metal response:

$$ \varepsilon(\omega) = \varepsilon_\infty - \frac{\omega_p^2}{\omega(\omega + i\gamma)} $$

where:

  • $\varepsilon_\infty$ is the high-frequency dielectric constant.
  • $\omega_p$ is the plasma frequency.
  • $\gamma$ is the damping constant.
  • $\omega$ is the angular frequency.

Energy-wavelength conversion used in the implementation (using the physical constant in eV*nm units):

$$ \omega_{\mathrm{eV}} = \frac{C_{\mathrm{eV\cdot nm}}}{\lambda_{\mathrm{nm}}}, \qquad C_{\mathrm{eV\cdot nm}} \approx 1239.841984 $$

Material parameters for Au, Ag, and Al are aligned with the established MNPBEM Drude-style parameterization.

3. Tabulated Material Model

Given tabulated optical constants $(E, n, k)$, the dielectric function is:

$$ \varepsilon = (n + i k)^2 $$

Interpolation is performed in the wavelength domain after converting tabulated energy values.

Implementation

  • Core implementation: src/mnpbem_material/models.py
  • Material datasets: src/mnpbem_material/data/*.dat

Dependencies

Runtime dependencies are installed automatically by pip:

  • numpy>=1.24

Installation

pip install mnpbem-material

Example Usage

Runnable example:

  • examples/basic_usage.py

Run:

python examples/basic_usage.py

Author

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

mnpbem_material-0.1.4.tar.gz (89.6 kB view details)

Uploaded Source

Built Distribution

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

mnpbem_material-0.1.4-py3-none-any.whl (97.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mnpbem_material-0.1.4.tar.gz
  • Upload date:
  • Size: 89.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for mnpbem_material-0.1.4.tar.gz
Algorithm Hash digest
SHA256 2aaa3a34d38abe4eb2820bb467bf9f73b36d348694e65b4209a2e9845d74c4e7
MD5 73a333eda388b22530bb93fed1919e68
BLAKE2b-256 3f3dba2d5070d4d65e2d9352cf0882c339c5f17943ba74a836af3b5150d64e37

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mnpbem_material-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8e9961e5c0e62252c7b4505a332a6b99e8ef88d53d204f5e0789410611d52bca
MD5 255fdaafd8800ae0d8ce737fe86c5c95
BLAKE2b-256 ac0270f43aadbada91ffa10a877ca547b2e1405f60838eb4689d653971085be8

See more details on using hashes here.

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