Dear meep users and Prof. Steven Johnson
   i am new to meep. i am trying to simulate the transmission spectrum
of a finite 3D pc slab containing holes in square arrangement in which
 third order nonlinearity is created by incidenting picosecond
ultrashort pulses from the top of the slab and normal to the surface
(defect region)
of the slab.i am referring to the paper Vol. 19, No. 3 / OPTICS
EXPRESS. But i am unable to see any change in the transmittance
whether i set the amplitude
zero or any nonzero value. My aim is to observe a shift in the
mode(peak transmittance) towards low frequency when pump light is
on.But i am getting
the peak at the same frequency although transmittance is changed. Also
i want to know how how to normlize the transmission flux when
pumplight is on.
Please help me in this regards.
My ctl file is as given below :

(define-param amp 500) ; amplitude of pump source
(define-param k 4.19e-2) ; Kerr susceptibility

(define-param ind1 1.59) ; index of layer
(define-param ind3 1) ; index of holes in layer (default=air)

(define-param r 0.25) ; radius of hole (default no hole)
(define-param Nx 33) ; number of holes in x-direction
(define-param Ny 21) ; number of holes in y-direction
(define-param d 1) ; distance between center of holes
(define-param dpml 1) ; PML thickness
(define-param pad 1) ; padding between last hole and PML edge
(define-param t 1.5)
(define v1 (vector3 d 0 0 )) ; Define basis vectors
(define v2 (vector3 0 d 0 ))
; structure
(define sx (+ (* d (- Nx 1)) (* 2 (+ pad dpml r))))
(define sy (+ (* d (- Ny 1)) (* 2 (+ pad dpml r))))
(define sz 10)

(set! geometry-lattice (make lattice (size sx sy sz)))
(set! geometry
  (append
      (list
         (make block (center 0 0 0) (size sx sy t) (material (make
dielectric (index ind1) (chi3 k)))))
         (geometric-objects-duplicates v2 -10 10
            (geometric-object-duplicates v1 -16 16
                (make cylinder (center 0 0 0)
                               (radius r)
                               (height t)
                               (axis (vector3 0 0 1))
                               (material (make dielectric (index ind3))) )))
(geometric-object-duplicates v2 -3 3 (make cylinder (center  0 0 0)
(radius r) (height t) (material (make dielectric (index ind1) (chi3
k)))))
(geometric-object-duplicates v2 -3 3 (make cylinder (center -1 0 0)
(radius r) (height t) (material (make dielectric (index ind1) (chi3
k)))))
(geometric-object-duplicates v2 -3 3 (make cylinder (center  1 0 0)
(radius r) (height t) (material (make dielectric (index ind1) (chi3
k)))))
(geometric-object-duplicates v2 -3 3 (make cylinder (center -2 0 0)
(radius r) (height t) (material (make dielectric (index ind1) (chi3
k)))))
(geometric-object-duplicates v2 -3 3 (make cylinder (center  2 0 0)
(radius r) (height t) (material (make dielectric (index ind1) (chi3
k)))))

(geometric-object-duplicates v2 -3 3 (make cylinder (center -1.2 0 0)
(radius 0.2) (height t) (material (make dielectric (index ind3))) ))
(geometric-object-duplicates v2 -3 3 (make cylinder (center  1.2 0 0)
(radius 0.2) (height t) (material (make dielectric (index ind3))) ))
(geometric-object-duplicates v2 -3 3 (make cylinder (center -2.1 0 0)
(radius 0.2) (height t) (material (make dielectric (index ind3))) ))
(geometric-object-duplicates v2 -3 3 (make cylinder (center  2.1 0 0)
(radius 0.2) (height t) (material (make dielectric (index ind3))) ))
))

(set! pml-layers (list (make pml (thickness dpml))))
(set! resolution 8)

(define-param fcen 0.4 ) ; pulse center frequency
(define-param df 0.2)  ; pulse width (in frequency)
(define-param nfreq 100) ; number frequencies at which to compute flux

(set! sources
     (append
          (list
                 (make source
                       (src (make gaussian-src (frequency 0.4) (width
1e-12)))
                            (component Ex) (center 0 0 (- (* 0.5 sz)
dpml)) (size 1 5 0) (amplitude amp))
                 (make source
                       (src (make gaussian-src (frequency fcen)
(fwidth df) (start-time 100)  ))
                            (component Ey) (center (+ (* -0.5 sx)
dpml) 0 0) (size 0 5 t) (amplitude 1))
              )
)
)
(define trans
        (add-flux fcen df nfreq
                  (make flux-region
                    (center (- (* 0.5 sx) dpml 0.5) 0 0) (size 0 10 (* 2 t)))))

(run-until 500
  (at-beginning output-epsilon))

(display-fluxes trans) ; print out the flux spectrum
_______________________________________________
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