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:

$$ \omega_{\mathrm{eV}} = \frac{\mathrm{EV_TO_NM}}{\lambda_{\mathrm{nm}}} $$

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.2.tar.gz (89.5 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.2-py3-none-any.whl (97.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mnpbem_material-0.1.2.tar.gz
  • Upload date:
  • Size: 89.5 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.2.tar.gz
Algorithm Hash digest
SHA256 a70ad79dca93f7307d13bebefea931f9c697adaeb3373afed0a97e3ee28d0ec8
MD5 3f4fac480d937c9799329ffac6e5be02
BLAKE2b-256 5c84647f458234b5825018482edec984cbd61476a10f22c0fbf274f64e1eb2b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mnpbem_material-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 18d24677a088fe59a5eef32fcb82a21ca1064653a76445bc84d00dd107c99305
MD5 f58a0daa553710d64b3f69883436e08d
BLAKE2b-256 51722756d11ceca40496b06e866d30d38eac5c43ad7b0cde4451c673362984f9

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