For a 2d cell, you need to set force_all_components=True in the Simulation constructor.

Note, however, that the GaussianBeamSource is only strictly valid in 3d. As described in the manual <https://meep.readthedocs.io/en/latest/Python_User_Interface/#gaussianbeamsource>:

"In 3d, we use a"complex point-source" method <https://doi.org/10.1364/JOSAA.16.001381>to define a source that generates an exact Gaussian-beam solution. In 2d, we currently use the simple approximation of taking a cross-section of the 3d beam. In both cases, the beam is most accurate near the source's center frequency."

See: https://github.com/NanoComp/meep/issues/1308.

On 11/10/20 04:42, Ian Sage wrote:
If I set beam_E0=mp.Vector3(1,0,0) or beam_E0=mp.Vector3(0,0,1) it works fine, but if E0 is set to any other direction such as beam_E0=mp.Vector3(1,0,1) or beam_E0=mp.Vector3(1j,0,1) then I end up with fields of zero. Normalizing |E0| to 1 doesn't help.

Is there any way to generate a circular polarized Gaussian beam in 2d? (it's possible with a simulated QWP, of course)


_______________________________________________
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