- The paper introduces plasmonX, an open-source code that employs frequency-responsive charge and dipole models to accurately simulate nanoplasmonic phenomena.
- The methodology integrates advanced numerical solvers and boundary element methods, demonstrating superior scalability and speed for large-scale nanostructure simulations.
- Performance benchmarks confirm plasmonX’s efficient handling of systems with millions of atoms and successful application in studying nanoalloy optical properties.
"plasmonX: an Open-Source Code for Nanoplasmonics" Summary
Introduction
The paper details the introduction and capabilities of plasmonX, an open-source software designed for simulating the plasmonic response of complex nanostructures. This code provides both atomistic and implicit models to address the computational challenges associated with the optical response of nanomaterials, including the frequency-dependent fluctuating charges ωFQ and dipoles ωFQFμ models. These models are geared towards providing high accuracy while remaining computationally efficient, thus bridging the gap between quantum-level accuracy and classical scalability.
Theoretical Models
The ωFQ and ωFQFμ methods endow each atom of the nanostructure with frequency-responsive charges and dipoles. They utilize the Drude conduction model, including a mechanism for quantum tunneling via a Fermi-like damping function. These approaches extend the classical electrodynamics framework to support atomistic-level simulations of nanoplasmonics.
Figure 1: Nanostructure morphologies that can be created by plasmonX through the GEOM interface.
Boundary Element Method (BEM)
For the implicit representation of nanostructures, plasmonX integrates the Boundary Element Method, specifically offering both the Dielectric Polarizable Continuum Model (DPCM) and the Integral Equation Formalism PCM (IEFPCM). These methods compute the surface charges that determine optical responses, operationalized through a continuous surface discretized into mesh elements.
Implementation and Usage
plasmonX is implemented in Fortran with a Python interface for input parsing. It supports efficient numerical solvers, including an on-the-fly Generalized Minimum RESidual (GMRES) algorithm, optimizing memory usage and computational speed. The code is cross-platform, expandable, and composed for both small-scale desktop computations and large-scale HPC (High-Performance Computing) environments.
The iterative solvers within plasmonX, specifically the iterative on-the-fly algorithm, demonstrate superior scalability for large systems compared to traditional matrix inversion techniques. Benchmarks illustrate its high efficiency and speed on systems with upwards of millions of atoms, indicating robust parallel capabilities.
Figure 2: Elapsed time required to solve the ωFQ linear system as a function of the number of atoms for selected graphene disks at the plasmon resonance frequency by using inversion and iterative (on-the-fly) algorithms implemented in plasmonX.
Figure 3: Speedup of the ωFQFμ linear system solution using the iterative on-the-fly algorithm as a function of the OMP threads.
Practical Observations
plasmonX has been applied to study spherical nanoalloys, demonstrating accurate reproduction of experimental trends across varying compositions. This includes proper simulation of the optical properties and structural characteristics of nanoalloys, highlighting plasmonX's ability to capture complex, real-world nanostructure dynamics effectively.
Figure 4: (a) Graphical depiction of spherical Ag-Au nanoalloys. (b) ωFQFμ plasmon resonance frequency (PRF) as a function of Au percentage.
Post-Processing and Analysis
The software includes an analysis suite that allows the extraction and visualization of induced densities and electromagnetic fields, providing a comprehensive post-process analysis of plasmonic simulations. It validates theoretical calculations by enabling visual comparison to empirical data, such as plasmon fields and response patterns.
Figure 5: (a) Graphical depiction of Au561 dimers; (b-d) ωFQFμ absorption cross section (b), induced density (c), and enhanced electric field computed at the PRF using a polarization field along the x axis.
Conclusion
plasmonX is distinguished by its capability to simulate elaborate plasmonic phenomena with high efficiency, leveraging both classical and atomistic methodologies. The ongoing development aims to extend its real-time simulation capabilities and incorporate mixed-method approaches, promising further contributions to modeling plasmonic systems in various environments and configurations. Future enhancements may include fast multipole algorithms to maintain scalability as system complexity increases.