Hello, All
   I'm trying to use meep to calculate the reflection spectra of a gold 
slab and try to compare with the experimental data.
The reflection spectra calculated by MEEP has about 0.05 higher than the 
result calculated by matching the boundary condition with other software 
with the same gold modeling and also the experimental results at the 
wavelength ranging from 400nm to 500nm. 
When I increase the resolution, the reflection amplitude decreased a 
little. But still I cannot get the results even when I use the resolution 
100. 
Is there any things wrong in my ctl?

(define-param dpml 1) ; PML thickness (z direction only!)
(define-param sx 1) ; size of x
(define-param sy 1) ; size of y
(define-param sz 5) ; size of z
(define-param res 100) ; resolution
(set! ensure-periodicity true)
(set! k-point (vector3 (/ 1 sx) (/ 1 sy) 0))
(set! force-complex-fields? true)
(define-param structure? false)
(set! geometry-lattice (make lattice (size sx sy sz)))

(define gold (make dielectric (epsilon 5.339)
                             (polarizations
                               (make polarizability
                                  (omega 1e-20) (gamma 0.0486) 
(delta-epsilon 6.2634e41))
                               (make polarizability
                                  (omega 2.1201) (gamma 0.1772) 
(delta-epsilon 0.1906))
                               (make polarizability
                                  (omega 4.4214) (gamma 1.9662) 
(delta-epsilon 0.9835))
                               (make polarizability
                                  (omega 3.353) (gamma 1.1844) 
(delta-epsilon 1.5974))
                               (make polarizability
                                  (omega 2.7116) (gamma 0.578) 
(delta-epsilon 0.6653))
                               (make polarizability
                                  (omega 2.3525) (gamma 0.3012) 
(delta-epsilon 0.4508)))))


;;;;;;;;;;;;;;;reflection
(set! geometry (if structure?
              (list (make block (center 0 0 0) (size sx sy 0.3)
                   (material gold)))

                 (list (make block (center 0 0 (* sz 0.25)) (size sx sy (* 
sz 0.5))
                   (material (make dielectric (epsilon 1)))))))

(set! pml-layers (list (make pml (direction Z) (thickness dpml))))

(define-param fcen 1.8)
(define-param df 1.4)
(define-param amp 1)

(set! sources (list
               (make source
                 (src (make gaussian-src (frequency fcen) (fwidth df)))
                 (component Ex)
                 (center 0 0 (+ (* sz -0.5) (+ dpml 0.5)))
                 (size sx sy 0))))

(set! resolution res)
(define-param nfreq 100) ; number of frequencies at which to compute flux
(define refl ; reflected flux
      (add-flux fcen df nfreq
                 (make flux-region
                   (center 0 0 (+ (* sz -0.25) 0.5))(size sx sy 0) 
(direction Z))))
(define ref2 ; reflected flux
      (add-flux fcen df nfreq
                 (make flux-region
                   (center 0 0 (* sz -0.125 ))(size sx sy 0) (direction 
Z))))
(define trans ; reflected flux
      (add-flux fcen df nfreq
                 (make flux-region
                   (center 0 0 (* sz 0.25 ))(size sx sy 0) (direction Z))))


(if structure? (load-minus-flux "refl-flux" refl))
(run-sources+  (stop-when-fields-decayed 50 Ex
                               (vector3 0 0  (* 0.25 sz) )
                            1e-3))
(if (not structure?)
         (save-flux "refl-flux" refl))
(display-fluxes refl ref2 trans)

_____________________________
There is another question. When I use meep-mpi, I parallel 1node with 4 
processor. each processor can only have 20-30% efficiency. Which is much 
lower than 1node with 2 processor with 70-80% efficiency. Is that normal?

Iu Hei

_________________________________________________________________
MSN Tool Bar 幫你刪除惱人的廣告 ! http://toolbar.msn.com.hk 


_______________________________________________
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