On Sun, 11 Mar 2007, Andrew Andrew wrote:
I write a ctl according to some codes that Steven have given on this list, but I can't change the position of the waist of a gaussian beam.

(define ( (my-amp sigma k x0) x)
(exp (- (* 0+2i pi (vector3-dot k (vector3+ x x0) ))
     (/ (vector3-dot (vector3+ x x0) (vector3+ x x0)) (* 2 sigma sigma)))))

(set! sources (list
   (make source
       (src (make continuous-src (frequency fcen) (fwidth df)))
       (component Hz)
       (center  0 0) ;
       (size 0 10)
       (amp-func (my-amp 1 k (vector3 -15 0 0))))))

This isn't going to work because you put the center of your beam at -15, but your source only extends from -5 to 5. You need to make the size of your source bigger.

PS: The width of waist seems larger than what I have specified, i.e. 1 unit. What's wrong?

Look at the beam definition you are using. According to your definition, at the beam "waist", i.e. at x = -x0 +/- sigma/2, the field amplitude is exp(-0.5^2 / 2) = 0.883. It's not surprising that the beam looks wider than this, since visually you would tend to define the beam width as where the amplitude drops a lot more than 12%.

Steven

_______________________________________________
meep-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss

Reply via email to