Skip to main content

Material dielectric models for plasmonic electrodynamics in MNPBEM-Python.

Project description

mnpbem-material

mnpbem-material implements dielectric function models commonly used in plasmonic simulations. The module provides simple analytical models and tabulated optical data for metallic materials such as Au, Ag, and Al.


Implemented Formulations

1. Constant Dielectric Function

The simplest dielectric model assumes a wavelength-independent dielectric constant.

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

The corresponding wave number is

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

where

$$v* ( \varepsilon_0 )$$ : constant dielectric permittivity $$v* ( \lambda )$$ : wavelength


2. Drude Model

The Drude model describes the optical response of free-electron metals.

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

where

$$* ( \varepsilon_\infty )$$ : high-frequency dielectric constant $$* ( \omega_p )$$ : plasma frequency $$* ( \gamma )$$ : damping constant $$* ( \omega )$$ : angular frequency

Energy–Wavelength Conversion

The following relation is used to convert wavelength to photon energy:

$$ [ \omega_{eV} = \frac{EV_TO_NM}{\lambda_{nm}} ] $$

Material parameters for Au, Ag, and Al follow the formulation used in the MATLAB implementation:

Material/@epsdrude/init.m

from the original MNPBEM toolbox.


3. Tabulated Material Model

For tabulated optical data ( (E, n, k) ), the dielectric function is computed as

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

where

$$* ( n )$$ : refractive index $$* ( k )v$$ : extinction coefficient

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 when the package is installed.

  • numpy ≥ 1.24

Example Usage

A runnable example is provided in:

examples/basic_usage.py

Run the example with:

python examples/basic_usage.py

Author

GALIH RIDHO UTOMO g4lihru@students.unnes.ac.id

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.1.tar.gz (89.7 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.1-py3-none-any.whl (97.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mnpbem_material-0.1.1.tar.gz
  • Upload date:
  • Size: 89.7 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.1.tar.gz
Algorithm Hash digest
SHA256 3b24c72bfcd9045d6a76dee3912843b5a17bb36ac9cc0536932824cace28d328
MD5 9b58edc2108573618e7e4d68dcd3cd4b
BLAKE2b-256 4f309fcba92ecc70a40b6ffe0df418fdbb41533235e62c96746ead8c7ed05096

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for mnpbem_material-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 32f8e39ee258112e58ae3b61cecb08f54460fa808aed57c685c97f1756ea4ed2
MD5 ef7f133705387d8cd3d9c86337b62e90
BLAKE2b-256 6818748cd0f27a997f05ab888d88422c9f0e2a9302f12b46e53232bd43a1c0a3

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