NanoComp / meep

free finite-difference time-domain (FDTD) software for electromagnetic simulations
GNU General Public License v2.0
1.16k stars 596 forks source link

Meep's ability to work with negative epsilon #2715

Closed leSemaleon closed 7 months ago

leSemaleon commented 7 months ago

I work in the THz range. For copper, for example, in this range dielectric constant is approximately $\hat{\varepsilon}=-75e3+i1.5e6$. How can this be indicated in the material?

stevengj commented 7 months ago

This is a FAQ: https://meep.readthedocs.io/en/latest/FAQ/#why-does-my-simulation-diverge-if-the-permittivity-is-less-than-0

You can have a negative ε in Meep, but it must be done by introducing a dispersive material. This is fundamental to Maxwell's equations in the time domain.

stevengj commented 7 months ago

That being said, in the THz range where the conductivity is that high, the skin depth will be extremely small, so you will have difficulty resolving the penetration of the field into the metal with your grid.

You might be better off putting in the metal as a PEC, and then putting in the effect of absorption perturbatively. (People in the FEM world do something similar with impedance boundary conditions, which give a first-order approximation to Ohmic losses.)