Hello,
I think it is because a Gaussian function can not be properly defined in
Meep. If you take a Gaussian pulse or beam and propagate it in Meep you
will see that the dispersion/diffraction given by meep is not the same as
that should be from theory. So this should be accounted when you add other
stuff in to the system.
Probably it is because the source is a point source radiating in both
direction and is not a good approximation for an actual Gaussian.
Br,
Jisha

On Fri, Apr 20, 2018 at 2:09 AM, Priscilla Kelly <priscilla.nor...@gmail.com
> wrote:

> Hello,
>
> I’m running into a strange problem! I hope someone can help.
>
> I have defined a chirped pulse in MEEP, and propagated it down a vacuum.
> On first glance, it overlays very well on the theoretical pulse (I adjusted
> the theory’s amplitude to match MEEPs, since I didn’t think amplitude
> mattered in this simulation). However, when I started to do some phase
> manipulations on more complex simulations, I could not get the expected
> effects.
>
> It turns out, my simulation pulse is slightly off-set from the theoretical
> description of it (about ~.2 femtoseconds in some places). When I take the
> difference of the MEEP pulse and the theoretical one, I get a smaller pulse
> with its own chirp, which shouldn’t happen in a vacuum over such a small
> distance.
>
> Am I adding something in the MEEP code I’m not supposed to? How can I make
> the output from MEEP match theory?
>
> Thank you for your time,
> Priscilla
>
> *I compare the output of meep to this theoretical function*
>
> *e^(-(time-t0)^2/(2*(1/width)^2)-1j*freq*2*np.pi*(time-t0)-1j*b*2*np.pi*(time-t0)^2)*
>
>
> (define-param sz 10) ; size of cell in z direction, 1 = 10 nm
> (define-param dpml 2) ; PML layer thickness
> (define-param t0 9000)
> (define-param b 5e-7)
>
> *(define (my-func meep-time)*
> *      ; gaussian shape*
> *  (* (exp (/ (* -1 (- meep-time t0) (- meep-time t0)) (* 2 (/ 1 df) (/ 1
> df))))*
> *      ; carrier freq*
> *     (exp (* 0+1i -1 fcen 2 pi (- meep-time t0)))*
> *      ; phase*
> *     (exp (* 0+1i -1 b 2 pi (- meep-time t0) (- meep-time t0)))*
> *  )*
> *)*
>
> (define-param fcen .0056219359395) ; center frequency of source
> (define-param df 0.000555420651148) ; frequency width of source
> (set! force-complex-fields? true) ; add complex output to field
>
> (set-param! dimensions 1)
>
> (set! geometry-lattice (make lattice (size no-size no-size sz))) ; create
> 1D system
> (set! pml-layers (list (make pml (thickness dpml)))) ; make the pml for
> +/- z boundaries
> (set-param! resolution 80) ;(usually 80) dx = 10 nm/#
>
> ; generate the TM ultrashort pulse
> (set! sources (list
>                (make source
> (src (make custom-src (src-func my-func) (end-time 12000)))
> (component Hy) ; needed for TM
>                  (center 0 0 (+ (* -0.5 sz) dpml)) ; located at - end of
> waveguide
> (amplitude 1))))
>
> ; call to save the field data, we are saving Ex here
> (define print-field (lambda()
>   (print " \n ex:, " (meep-time) ", " (get-field-point Ex (vector3 0 0 (-
> (* 0.5 sz) dpml))) "\n")))
>
> ; run sources until they've finished, add additional steps, print field
> every # time steps
> (run-sources+ 24000
>      (at-every .2 print-field))
>
> _______________________________________________
> meep-discuss mailing list
> meep-discuss@ab-initio.mit.edu
> http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss
>



-- 
----------------------------------------------------------------
Dr. Jisha Chandroth Pannian
FCT Postdoctoral Research Fellow
https://scholar.google.com/citations?user=KYmqGK8AAAAJ&hl=en
http://www.researcherid.com/rid/A-3066-2011
http://faraday.fc.up.pt/cfp/Members/jpannian/homepage.2012-04-13.5598446277
------
_______________________________________________
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