In my simulations using the meep c++ libraries, I have a 3D simulation with the following properties:
resolution = 0.02 size ~= 8.5 x 9 x 20.5 Bloch periodicity using fields::use_bloch(vec(0,0,0)) pml specified in the structure constructor using pml(1.0, Z) completely uniform epsilon ~= 1.8 (obviously my baseline conditions for comparison) plane source extending from (0,0,4) to (x,y,4) (i.e., it covers the entire x-y plane @ z=4) frequency range of source is ~1.5 to 2.5 (with a = 1 micron, corresponding approximately to visible light in the 400nm-700nm range) I have two separate but most likely related problems: First, the ex waveform differs a bit from what would be expected from that produced by the source's dipole() function. Second, plotted against Z, the +Z moving ex waveform changes slightly over time as it propagates toward the end of the volume, which wouldn't be expected in a uniform, lossless medium. This difference in the wave matters to me because the high-frequency components are over-represented in the wave. This is fine if the entirety of my source wave propagates in the +Z direction through my structure. However, I need to be able to distinguish flux that passes through my structure vs. flux that doesn't (either due to reflections or wrapping-around due to Bloch periodicity). I suspect that I'm looking at a combination of the original wave superimposed with both its +Z and -Z reflections at the PML interfaces and the remnants of the waves that manage to wrap-around through the Z=0 boundary without being completely absorbed by the PML. Because my source wavelengths are < ~800nm and I'm using a 1 micron PML thickness, I thought my PML was safely designed. I've also tried doubling the PML thickness without seeing much change. I've read in these discussion boards that one can set the "strength" parameter of the PML in structure_chunk::use_pml(), but it isn't clear to me from looking at the source code how I would do that. Does anyone have any advice? Thanks in advance.
_______________________________________________ meep-discuss mailing list [email protected] http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss

