First of all, which version of meep are you using?

Here is my code for dispersive Ag:
; Parameters
(define a 100e-9) ; define the unit of length in meters
(define cc (/ (* 2 (* pi 3e+8)) a)) ; unit of frequency in meep
; eV->radpersec
(define (ev->radpersec l)
  (/ l 6.5821e-16) ; divide by the reduced Planck's slab
)

; Ag
; Parameters from http://arxiv.org/pdf/0911.2737.pdf
(define Ag_epsb 3.7)
(define Ag_wp (/ (ev->radpersec 9.2) cc))
(define Ag_gamma (/ (ev->radpersec 0.02) cc))

(define Ag
  (make dielectric (epsilon Ag_epsb)
    (E-susceptibilities
      (make drude-susceptibility (sigma 1.0) (omega Ag_wp) (gamma Ag_gamma)
)
)
))

Then, write
(material Ag)

in your geometry definition..

Regards,

Charalampos


On Mon, Apr 14, 2014 at 11:12 AM, Allen Spencer
<falcon_dai...@hotmail.com>wrote:

> Dear Meep users,
>
> I am a beginner of MEEP.  I am wondering to know how to calculate the
> material dispersion for metallic material like gold and silver as shown in
> the Tutorial
> http://ab-initio.mit.edu/wiki/index.php/Meep_Tutorial/Material_dispersion
> .
> I tried to use the same method as given in the tutorial but it seems that
> the source doesn't work in a PEC like material.  Here is my code:
>
> (set! geometry-lattice (make lattice (size no-size no-size no-size)))
> (set-param! resolution 200)
> (set! default-material
> (make dielectric (epsilon 1)
> (E-polarizations
> (make polarizability
> (omega 1e-20) (gamma 0.038715) (sigma 4.4625e+41))
> (make polarizability
> (omega 0.65815) (gamma 3.1343) (sigma 7.9247))
> (make polarizability
> (omega 3.6142) (gamma 0.36456) (sigma 0.50133))
> (make polarizability
> (omega 6.6017) (gamma 0.052426) (sigma 0.013329))
> (make polarizability
> (omega 7.3259) (gamma 0.7388) (sigma 0.82655))
> (make polarizability
> (omega 16.365) (gamma 1.9511) (sigma 1.1133))
> )))
> (define-param fcen 0.5)
> (define-param df 0.5)
> (set! sources (list (make source
>                       (src (make gaussian-src (frequency fcen) (fwidth
> df)))
>                       (component Ez) (center 0 0 0))))
>
> (define-param kmin 0.1)
> (define-param kmax 1)
> (define-param k-interp 99)
> (define kpts (interpolate k-interp (list (vector3 kmin) (vector3 kmax))))
>
> (define all-freqs (run-k-points 200 kpts)) ; a list of lists of
> frequencies 20)
>
> (map (lambda (kx fs)
>        (map (lambda (f)
>               (print "eps:, " (real-part f) ", " (imag-part f)
>                      ", " (real-part (sqr (/ kx f))) "," (imag-part (sqr
> (/ kx f))) "\n"))
>             fs))
>      (map vector3-x kpts) all-freqs)
>
> In Aaron Webster's note, meep-fields-analtic-chi1 has been used but in the
> newest version, I didn't find it. Can anyone tell me how to solve this
> problem? Thanks in advance!
>
> Regards Spencer
>
> _______________________________________________
> meep-discuss mailing list
> meep-discuss@ab-initio.mit.edu
> http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss
>
_______________________________________________
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