On Sep 1, 2012, at 8:55 PM, Simon Huskier wrote:
>
> > 1. For Bloch-periodic boundary condition, the usual way is setting the
> > k-point and ensure-periodicity as following.
> > (set! k-point (vector3 0 0 0))
> > (set! ensure-periodicity true)
> > But in the code, they set the k-point to (kx 0 0).
> > (set! k-point (vector3 kx 0 0))
> > If I change the above kx to zero, then I will get a wrong picture of
> > plane wave.
>
> I can't replicate your problem; with your code if I set theta=0 (hence kx=0)
> then the output looks fine. (Replied by Steven)
>
> Thank you to clarify my questions, Steven. My problem is that keep theta =
> pi/4, and only change kx to 0, and then the output looks not correct (I
> copied the code after the message). According to the explanation on the MEEP
> wiki page, there are two possible values for the k-point: false or vector3.
If theta=pi/4, that not consistent with kx=0. A planewave that is not at
normal incidence is not periodic.
>
> Are there any differences between (set! k-point (vector3 0 0 0)) and (set!
> k-point (vector3 kx 0 0))? Here, assume kx is not equal zero.
I'm not sure I understand your question. If kx is nonzero, then the boundary
conditions in the two cases are different. In the first case (0,0,0), the
boundaries are periodic, whereas in the second case (kx,0,0) the fields differ
from periodic by a phase shift in the x direction.
(Also, for k-point = 0,0,0 the fields are purely real; as soon as you set a
nonzero kx then the fields everywhere are complex. But you can remove this
difference by setting force-complex-fields? to true.)
--SGJ
_______________________________________________
meep-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss