Hi,

I still haven't gotten this to work. It seems to work in the wavelength range 300-1000 nm (which is with different fits), but not 1000-1200 nm (with fit shown in the previous email).

For what it's worth, my colleague got a converged result using Lumerical FDTD Solutions, specifically a "stretched coordinate" PML (SCPML). I have been trying to map the parameters in MEEP's PML class to the parameters used by Lumerical, but without much luck. Is there any documentation for how to change more "standard" PML parameters (what Lumerical calls layers (=thickness?), kappa, sigma, polynomial (which I assume = degree of pml_profile))? This would help me benchmark his results with MEEP.

Also, what does the mean_stretch parameter in meep.PML do? It is listed in the documentation <https://meep.readthedocs.io/en/latest/Python_User_Interface/#pml> but not explained.

Best regards,
Philip

On 2020-07-31 11:44 a.m., J. Philip Haupt wrote:
Thanks, but it seems like this doesn't change much. I turned off subpixel averaging, increased the resolution to 100, and also increased the PML thickness to 1.2 (=max wavelength). I have run so far for 1800 time units. At 25 time units, the field decay was 0.0090 whereas at 1725 time units the field decay is 0.0433 (and some absorption values are negative). I get the same problem if I replace the sidewall-angle-Prism pyramid with a set of Block objects to approximate a pyramid.

On 2020-07-30 9:46 p.m., Ardavan Oskooi wrote:
Try turning off subpixel averaging since it sometimes causes instabilities with the prism sidewall angle feature. This means that you will also need to increase the resolution.

On 7/29/20 16:38, J. Philip Haupt wrote:

I get that the fields diverge (albeit very slowly), at least so it seems. Boundary conditions are k_point=Vector3(0,0,0) with PML in the Z direction. My guess has been that the pyramid reflects light such that it hits the PML at a glancing angle and this gives reflective artefacts. I've hence played with PML parameters (thickness, profile, R_asymptotic) and the distance between sources, monitors and structure, but so far haven't gotten anything to work. Is perhaps the absorption too small for MEEP to handle (i.e. leading to significant roundoff errors)? Is there a workaround? What are some typical values to try if the defaults do not work?


_______________________________________________
meep-discuss mailing list
meep-discuss@ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss

Reply via email to