Hello,

With MEEP I have tried to create an FDTD simulation of a
metallic structure that looks like the following:

A metal rod is encased by a dielectric (glass) and aligned along the z-axis.

Around this rod is a resonator that looks like a
box with a small gap on one side when viewed side-on (in phi-direction),
this "box" is rotationally symmetric (so actually a square donut
with a circle slit on one side of the inside of the donut).
2.45 GHz waves are created in a cavity inside this box.
The idea is that these waves escape through the gap, then
travel between the dielectric and the metal rod in the
positive z-direction (the ones to the negative-z direction should
be damped). So the result should be surface waves travelling along
the metal rod in the z-direction.

When I create the structure and use positive dielectric for the
metal cylinder and the metal box everything seems to be in the
right place (when I look at the epsilon-profile).

However when I change the epsilon to something negative, or
if I change the material to metal, all the fields in the png
disappear (and everything is black). I read through the mailing
list and saw that eps averaging should be turned off.
However I have done this and it does not seem to help.
I have tried increasing the time up to the point where it became
too slow but that did not seem to help either.

Thank you for any suggestions that might be useful.

Regards, Michiel

Here is the .ctl file:

; Units in cm
(define-param rodradius 0.7) ; radius of the metal cylinder rod
(define-param glassthickness 0.1) ; thickness of the glass
(define-param resonatorsep 0.1) ; distance between tube and resonator
(define-param resonatorlength 2.5) ; length (z) of the resonator interior
(define-param resonatorwidth 0.5) ; width (r) of the resonator
(define-param resonatorwallthickness 0.1); thickness of resonator walls, walls 
are outside
(define-param resonatorgapsize 0.5) ; size of the gap in the resonator
(define-param glassrefractindex 1.1) ; refractive index of glass
(define-param tempn 5.0) ; temporary refr index of resonator (to see in eps 
graph)

(set! eps-averaging? false)
(set! dimensions CYLINDRICAL)
(set! geometry-lattice (make lattice (size 2 no-size 10)))
(set! geometry (list
; air
;               (make block (center 0 0) (size infinity infinity infinity)
;                      (material air))
; metal rod, 7 mm by infinite
                (make block (center 0 0 0) (size rodradius infinity infinity)
;                      (material metal)
                      (material (make dielectric (epsilon tempn)))
                )
; glass tube around it
                (make block (center (+ rodradius (/ glassthickness 2)) 0 0)
                      (size glassthickness infinity infinity)
                      (material (make dielectric (epsilon glassrefractindex))))
; lower plate of the resonator
                (make block (center (+ rodradius glassthickness resonatorsep) 0 
(- resonatorgapsize))
                      (size resonatorwallthickness infinity (- resonatorlength 
resonatorgapsize))
                      (material (make dielectric (epsilon tempn))))
; left plate of the resonator
                (make block
                      (center (+ rodradius glassthickness resonatorsep (/ 
resonatorwidth 2)) 0 (- (/ resonatorlength 2)))
                      (size resonatorwidth infinity resonatorwallthickness)
                      (material (make dielectric (epsilon tempn))))
; right plate of the resonator (where wave comes out)
                (make block
                      (center (+ rodradius glassthickness resonatorsep (/ 
resonatorwidth 2)) 0 (+ (/ resonatorlength 2)))
                      (size resonatorwidth infinity resonatorwallthickness)
                      (material (make dielectric (epsilon tempn))))
; upper plate of the resonator
                (make block (center (+ rodradius glassthickness resonatorsep 
resonatorwidth) 0 0)
                      (size resonatorwallthickness infinity resonatorlength)
                      (material (make dielectric (epsilon tempn))))
; extra dot to check source position
;                (make block (center (+ rodradius glassthickness resonatorsep 
(/ resonatorwidth 2)) 0 (- (/ resonatorlength 4)))
;                      (size 0.1 infinity 0.1)
;                      (material (make dielectric (epsilon tempn))))
              ))
(set! sources (list
               (make source
                 (src (make continuous-src (frequency 0.83))) ; 2.45 GHz
                 (component Er)
;                 (amplitude 1.0)
                 (center (+ rodradius glassthickness resonatorsep (/ 
resonatorwidth 2)) 0 (- (/ resonatorlength 4)) ))))
(set! pml-layers (list (make pml (thickness 0.1))))
(set! resolution 20)
(run-until 2000
           (at-beginning output-epsilon)
;           (at-end output-efield-z)
;           (at-beginning (output-png epsilon "-Zc dkbluered"))
           (at-end (output-png Er "-Zc dkbluered"))
;           (at-end output-tot-pwr)
)

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

Reply via email to