Skip to content

Commit

Permalink
updates
Browse files Browse the repository at this point in the history
  • Loading branch information
oskooi committed May 16, 2019
1 parent c8f7f8d commit df73246
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions doc/docs/FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ For a linear system, you can use a [ContinuousSource](Python_User_Interface.md#c

### Why are the fields not being absorbed by the PML?

The decay coefficient of the fields within any PML contains a cos(θ) factor where θ is the incidence angle (θ=0° is normal incidence). The decay therefore becomes *slower* as glancing incidence (θ=90°) is approached. This is true in the continuum limit and can be demonstrated by verifying that the reflections from the PML do *not* change with resolution. Otherwise, if the reflection decreases with increasing resolution then it may be due to transition reflections (i.e., the impedance mismatch at the PML interface) which can also be reduced by making the PML thicker instead of increasing the resolution. Transition reflections also increase as glancing incidence is approached, because at glancing incidence the phase-velocity mismatch between incident and reflected waves goes to zero as described in [Optics Express, Vol. 16, pp. 11376-92, 2008](http://www.opticsinfobase.org/abstract.cfm?URI=oe-16-15-11376). Glancing-angle fields commonly arise in simulations where one direction is periodic and the other is terminated by a PML (such as in [diffraction gratings](Python_Tutorials/Mode_Decomposition.md#diffraction-spectrum-of-a-binary-grating)), in which case you can have spurious solutions that travel *parallel* to the PML interface; a workaround is to use a thicker non-PML [absorber](Python_User_Interface.md#absorber). This is demonstrated in the figure below by the fields remaining in the cell after a [source planewave](Python_Tutorials/Eigenmode_Source.md#planewaves-in-homogeneous-media) at 45° has long been turned off.
The decay coefficient of the fields within any PML contains a cos(θ) factor where θ is the incidence angle (θ=0° is normal incidence). The decay therefore becomes *slower* as glancing incidence (θ=90°) is approached. This is true in the continuum limit and can be demonstrated by verifying that the reflections from the PML do *not* change with resolution. Otherwise, if the reflection decreases with increasing resolution then it may be due to transition reflections (i.e., the impedance mismatch at the PML interface) which can also be reduced by making the PML thicker instead of increasing the resolution. Transition reflections also increase as glancing incidence is approached, because at glancing incidence the phase-velocity mismatch between incident and reflected waves goes to zero as described in [Optics Express, Vol. 16, pp. 11376-92, 2008](http://www.opticsinfobase.org/abstract.cfm?URI=oe-16-15-11376). Glancing-angle fields commonly arise in simulations where one direction is periodic and the other is terminated by a PML (such as in [diffraction gratings](Python_Tutorials/Mode_Decomposition.md#diffraction-spectrum-of-a-binary-grating)), in which case you can have spurious solutions that travel *parallel* to the PML interface; a workaround is to use a thicker non-PML [absorber](Python_User_Interface.md#absorber). This is demonstrated in the figure below by the glancing-angle fields remaining in the cell after a [source planewave](Python_Tutorials/Eigenmode_Source.md#planewaves-in-homogeneous-media) at 45° has long been turned off: the PML (left inset) is unable to absorb these fields unlike the absorber (right inset).

<center>
![](images/pml_glancing_field.png)
Expand Down Expand Up @@ -284,7 +284,7 @@ No. Currently, Meep only supports anisotropic, real-symmetric, permittivity tens

### When outputting the permittivity function to a file, I don't see any dispersive materials

Only the real, frequency-independent (i.e. non dispersive) part of ε/μ is written to an HDF5 file. As an example, many of the dispersive materials in the [materials library](Materials.md#materials-library) which have a broadband, complex, refractive index will appear as ε=1 in the output file. Thus, in order to verify the material geometry during debugging using visualization tools, etc., you may have to artificially adjust the `epsilon` value. If you want the frequency-dependent ε you must compute it yourself using the formula for [Lorentizian susceptbility](Materials.md#material-dispersion).
Only the real, frequency-independent (i.e. non dispersive) part of ε/μ is written to an HDF5 file. As an example, many of the dispersive materials in the [materials library](Materials.md#materials-library) which have a broadband, complex, refractive index will appear as ε=1 in the output file. Thus, in order to verify the material geometry during debugging using visualization tools, etc., you may have to artificially adjust the frequency-independent `epsilon` value. The ε and μ tensor can be obtained at the frequency `f` as a 3x3 Numpy array via the functions `epsilon(f)` and `mu(f)` of the [`Medium`](Python_User_Interface.md#medium) class.

### How do I model graphene or other 2d materials with single-atom thickness?

Expand Down Expand Up @@ -388,7 +388,7 @@ At least 8 pixels per wavelength in the lossless dielectric material with the hi

### What is a good rule of thumb for the PML thickness?

For homogeneous media, the PML thickness should typically be at least *half* the wavelength (because the incident wave is absorbed *twice* through a round-trip reflection at the cell edge). Note, however, that the boundary condition (e.g., metallic or periodic) is essentially irrelevant to the operation of the PML. For inhomogeneous media as well as backward-wave modes (i.e., surface-plasmon polaritons, etc), PML breaks down and should be replaced with a thicker non-PML [absorber](Python_User_Interface.md#absorber).
For homogeneous media, the PML thickness should typically be at least *half* the wavelength (because the incident wave is absorbed *twice* via a round-trip reflection at the cell edge). Note, however, that the boundary condition (e.g., metallic or periodic) is essentially irrelevant to the operation of the PML. For inhomogeneous media (e.g., gratings or other periodic structures, etc.) as well as backward-wave modes (i.e., surface-plasmon polaritons, etc), PML breaks down and should be replaced with a thicker non-PML [absorber](Python_User_Interface.md#absorber) as described in [Perfectly Matched Layers](Perfectly_Matched_Layer.md).

### What is Meep's frequency-domain solver and how does it work?

Expand Down

0 comments on commit df73246

Please sign in to comment.