Hi,

I tried to calculate the transmission spectra of a gold particle chain.
The incident light illuminates perpendicularly to the chain. So I
assumed a plane source in the XY plane; the light propagates to the Z
direction. The chain direction is X. The transmission spectra are
expected to be different according to the polarization of the incident
light. I checked for the cases that source component is Ex or Ey. The
flux region (plane) was located far (more than two wave length) from the
source and the chain. The calculated spectrum was normalized by the
spectrum without the chain.

-------------------
    PML
-------------------
====Source=========   ->X direction    |
                                       V     Z direction
      OOOOOO          <= gold particles









==flux region=======
--------------------
     PML
--------------------


As a result of calculation, I got results that transmittance > 1, which
is unreasonable.
I'm wondering how I should correct my ctl file.

Can someone help me?

-- 
-----------------------------------------------------------
Masatoshi Tosaka
-----------------------------------------------------------
; Meep control file for transimittance simulation (in nm units)
(define-param sx 500) ; size of cell in X direction
(define-param sy 300) ; size of cell in Y direction
(define-param sz 1700) ; size of cell in Z direction
(define-param pml-t 50) ; thickness of PML
(set! geometry-lattice (make lattice (size sx sy sz)))

(define-param gap 1) ; width of interparticle gap
(define-param r 25) ; radius of Au particle
(define-param np 6) ; number of particles

(define omega_d 7.050E-03) ; plasma frequency of Au in Drude model


(define Au ; definition of material dispersion
        (make dielectric (epsilon 5.967)
                (polarizations
                  (make polarizability
                    (omega 1e-20) (gamma 5.310E-05) 
                    (delta-epsilon (* (* omega_d omega_d) 1e+40)))
                  (make polarizability
                    (omega 2.168E-03) (gamma 3.498E-04) 
                    (delta-epsilon 1.09)))))

(define c2c (+ (* 2 r) gap)) ; center to center distance of particles

(define-param no-reference true) ; if false, no particle chain

(if no-reference
 (set! geometry ; particle chains of Au
  (list
           (make sphere
             (center (* (- 1 np) (+ r (* 0.5 gap))) 0 (* -0.25 sz))
             (radius r)
             (material Au))
           (make sphere
             (center (+ (* (- 1 np) (+ r (* 0.5 gap))) c2c) 0 (* -0.25 sz))
             (radius r)
             (material Au))
           (make sphere
             (center (+ (* (- 1 np) (+ r (* 0.5 gap))) (* 2 c2c)) 0 (* -0.25 
sz))
             (radius r)
             (material Au))
           (make sphere
             (center (+ (* (- 1 np) (+ r (* 0.5 gap))) (* 3 c2c)) 0 (* -0.25 
sz))
             (radius r)
             (material Au))
           (make sphere
             (center (+ (* (- 1 np) (+ r (* 0.5 gap))) (* 4 c2c)) 0 (* -0.25 
sz))
             (radius r)
             (material Au))
           (make sphere
             (center (+ (* (- 1 np) (+ r (* 0.5 gap))) (* 5 c2c)) 0 (* -0.25 
sz))
             (radius r)
             (material Au)))))

(define-param fcen 1.916e-3) ; pulse center frequency
(define-param df 1.167e-3)  ; pulse width (in frequency)
(define-param src-pol Ex) ; electric field component of source
(set! sources (list
               (make source 
                 (src (make gaussian-src (frequency fcen) (fwidth df)))
                 (component src-pol)
                 (center 0 0 (- (+ pml-t 1.5) (/ sz 2)))
                 (size sx sy 0))))

(set! pml-layers (list (make pml (thickness pml-t))))
(set-param! resolution 0.2)

(define-param nfreq 100) ; number of frequencies at which to compute flux
(define trans ; transmitted flux
      (add-flux fcen df nfreq 
                    (make flux-region
                      (direction Z)
                      (center 0 0 (- (/ sz 2) (+ pml-t 1.5)) (size sx sy 1)))))


(run-sources+ 
 (stop-when-fields-decayed 50 src-pol
                       (vector3 0 0 (- (+ pml-t 1.5) (/ sz 2)))
                           1e-3)
 (at-beginning output-epsilon)
)

(display-fluxes trans)

<<inline: Au_chain.gif>>

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

Reply via email to