Hi all,

I have a following problem, and any clues are much appreciated.
I want to do a simple 1D simulation of normal reflectance from air to a 
dielectric of constant epsilon (eps=9). According to Fresnel's equations 
reflectance should be 0.25 regardless of frequency.

But, when I send a Gaussian pulse (fmin = 0 fmax =1.0) I get about 4% 
discrepancy for f=1.0 (0.238 instead of 0.25, resolution 36). Initially I 
assumed that the tails of the Gaussian source produce some numerical errors but 
even with fmin=0.5, fmax=1.5, such that fcen=1.0 I still get the same answer. 
As 
resolution is increased convergence gets better, but even at resolution=52 it's 
still not ideal. I know that wavelengths close to lattice spacing cause issues 
but f=1 <=> lambda = 1  >> 1/52. Or is  it?

Here is my code below:


(define-param norm? true)
(define-param dpml 2)
(define-param sx (* 2 (+ 1 dpml)))
(set-param! resolution 36)

(define-param fmin 1e-3)
(define-param fmax 1.0)
(define-param fcen (* 0.5 (+ fmin fmax)))
(define-param df (- fmax fmin))
(define-param nfreq 100)

(define-param material1
    (make dielectric (epsilon 9)))

(define slab
  (make block (center (* 0.25 sx))
    (size (+ 1 dpml) infinity infinity)
    (material material1)))

(set! default-material air)
(set! geometry-lattice (make lattice (size sx no-size no-size)))
(set! geometry (if  (not norm?) 
           (list slab)
           '()))

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

(set! sources  (list
           (make source
         (src (make gaussian-src (frequency fcen) (fwidth df)))
         (component Ez) (center (- 0.1))
         (size 0) (amplitude 1.0) )      
           ))

(define refl
    (add-flux fcen df nfreq
        (make flux-region
          (center 0) (size 0))))

(if (not norm?) (load-minus-flux "refl-flux" refl))
(run-until 1000
)
(if norm? (save-flux "refl-flux" refl))

(display-fluxes refl)



      
_______________________________________________
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