Dear users,

I'm trying to simulate a 3D L3 cavity with end-hold displacement. I'm
interested in the transmission spectrum. I placed a line source over the
slap and computed the flux in a region under the slab. For the
normalization; fist I divided the flux calculated over the flux calculated
when there was not holes, (just a block) and it didn't work.

Then, I tried with the case when there was not anything, just the
computational cel. But, again, the transmission is not normalized.


This is the .ctl

(define-param eps 13) ; epsilon
(define-param a 1); red constant
(define-param s (* a 0.15)); endhole displacement
(define-param r 0.29) ;
(define-param b 0.5) ; deep
(define-param hhx 11) ; huecos x
(define-param hhy 13) ; huecos y
(define-param pad 4) ;
(define-param dpml 1) ;  PML

(set! geometry-lattice (make lattice (size 18 18 4)))

(set! geometry (list
        (make block (center 0 0 0) (size 12 12 b)
            (material (make dielectric (epsilon eps))))))

(do ((j 1 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center (* -1 j) 0 0) (radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center j 0 0) (radius r) (height b) (material air))))))

(do ((j 1 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center (* -1 j) (sqrt 3) 0) (radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center j (sqrt 3) 0) (radius r) (height b) (material air))))))

(do ((j 1 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center (* -1 j) (* -1(sqrt 3)) 0) (radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center j (* -1 (sqrt 3)) 0) (radius r) (height b) (material air))))))

(do ((j 1 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center (* -1 j) (* 2 (sqrt 3)) 0) (radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center j (* 2 (sqrt 3)) 0) (radius r) (height b) (material air))))))

(do ((j 1 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center (* -1 j) (* -2 (sqrt 3)) 0) (radius r) (height b) (material
air))))))

(do ((j 0 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center j (* -2 (sqrt 3)) 0) (radius r) (height b) (material air))))))

(do ((j 1 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center (* -1 j) (* 3 (sqrt 3)) 0) (radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center j (* 3 (sqrt 3)) 0) (radius r) (height b) (material air))))))

(do ((j 1 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center (* -1 j) (* -3 (sqrt 3)) 0) (radius r) (height b) (material
air))))))

(do ((j 0 (+ j 1))) ((= j 6))
                (set! geometry (append geometry (list (make cylinder
(center j (* -3 (sqrt 3)) 0) (radius r) (height b) (material air))))))


(do ((j 0 (+ j 1))) ((= j 5))
                (set! geometry (append geometry (list
                (make cylinder (center (* -1 (+ j 0.5)) (* 0.5 (sqrt 3)) 0)
(radius r) (height b) (material air))
                (make cylinder (center (+ j 0.5) (* 0.5 (sqrt 3)) 0)
(radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 5))
                (set! geometry (append geometry (list
                (make cylinder (center (* -1 (+ j 0.5)) (* 1.5 (sqrt 3)) 0)
(radius r) (height b) (material air))
                (make cylinder (center (+ j 0.5) (* 1.5 (sqrt 3)) 0)
(radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 5))
                (set! geometry (append geometry (list
                (make cylinder (center (* -1 (+ j 0.5)) (* 2.5 (sqrt 3)) 0)
(radius r) (height b) (material air))
                (make cylinder (center (+ j 0.5) (* 2.5 (sqrt 3)) 0)
(radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 5))
                (set! geometry (append geometry (list
                (make cylinder (center (* -1 (+ j 0.5)) (* -0.5 (sqrt 3))
0) (radius r) (height b) (material air))
                (make cylinder (center (+ j 0.5) (* -0.5 (sqrt 3)) 0)
(radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 5))
                (set! geometry (append geometry (list
                (make cylinder (center (* -1 (+ j 0.5)) (* -1.5 (sqrt 3))
0) (radius r) (height b) (material air))
                (make cylinder (center (+ j 0.5) (* -1.5 (sqrt 3)) 0)
(radius r) (height b) (material air))))))

(do ((j 0 (+ j 1))) ((= j 5))
                (set! geometry (append geometry (list
                (make cylinder (center (* -1 (+ j 0.5)) (* -2.5 (sqrt 3))
0) (radius r) (height b) (material air))
                (make cylinder (center (+ j 0.5) (* -2.5 (sqrt 3)) 0)
(radius r) (height b) (material air))))))


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

;-----------------------------------------------------------

(set! geometry (append geometry (list (make cylinder (center 0 0 0) (radius
r) (height b) (material (make dielectric (epsilon 13)))))))
(set! geometry (append geometry (list (make cylinder (center 1 0 0) (radius
r) (height b) (material (make dielectric (epsilon 13)))))))
(set! geometry (append geometry (list (make cylinder (center -1 0 0)
(radius r) (height b) (material (make dielectric (epsilon 13)))))))
(set! geometry (append geometry (list (make cylinder (center 2 0 0) (radius
r) (height b) (material (make dielectric (epsilon 13)))))))
(set! geometry (append geometry (list (make cylinder (center -2 0 0)
(radius r) (height b) (material (make dielectric (epsilon 13)))))))

(set! geometry (append geometry (list (make cylinder (center (+ 2 s) 0 0)
(radius r) (height b) (material air)))))
(set! geometry (append geometry (list (make cylinder (center (* -1 (+ 2 s))
0 0) (radius r) (height b) (material air)))))


;-----------------------------------------------------------


(define-param fcen 0.25) ; centro del pulso
(define-param df 0.2)  ; ancho del pulso
(define-param nfreq 500)  ; numero de frecuencias


(set! sources (list
               (make source
                 (src (make gaussian-src (frequency fcen) (fwidth df)))
                 (component Ey)
                 (center 0 0 0.9)
                 (size 0 12 0))))

(define trans
        (add-flux fcen df nfreq
                  (make flux-region
                    (center 0 0 -0.5) (size 0 14 0) (direction Z)(weight
-1))))


(run-sources+ (stop-when-fields-decayed
               50 Ey
               (vector3 0 0 -0.5)
               1e-3)
              (at-beginning output-epsilon))

(display-fluxes trans)


What I am doing wrong?


-- 
Cristian Javier Mora Montaño
National University of Colombia
Undergraduate Physics
Research Associate
GOIC



-- 
Cristian Javier Mora Montaño
Universidad Nacional de Colombia
Departamento de Física
_______________________________________________
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