Hi,
I just ran a code for calculating the flux through a hollow 3-d metallic
pipe. The simulation gave me the following results:
flux1:, 0.45, #.#
flux1:, 0.454166666666667, #.#
flux1:, 0.458333333333333, #.#
flux1:, 0.4625, #.#
flux1:, 0.466666666666667, #.#
flux1:, 0.470833333333333, #.#
flux1:, 0.475, #.#
flux1:, 0.479166666666667, #.#
flux1:, 0.483333333333333, #.#
flux1:, 0.4875, #.#
flux1:, 0.491666666666667, #.#
flux1:, 0.495833333333333, #.#
flux1:, 0.5, #.#
flux1:, 0.504166666666667, #.#
flux1:, 0.508333333333333, #.#
flux1:, 0.5125, #.#
flux1:, 0.516666666666666, #.#
flux1:, 0.520833333333333, #.#
flux1:, 0.525, #.#
flux1:, 0.529166666666666, #.#
flux1:, 0.533333333333333, #.#
flux1:, 0.5375, #.#
flux1:, 0.541666666666666, #.#
flux1:, 0.545833333333333, #.#
flux1:, 0.55, #.#
What is #.#?
The code i used is :------------
; define constants
(define-param length_z 20)
(define-param width_x 4); of the inner air
(define-param height_y 1); of the inner air
(define-param metal_thickness 2); each side.. thickness of 2
(define-param pml_thickness 2); each side... thickness of 1 !!!!!(THIS IS
DOUBLE)******
(define air (make dielectric (epsilon 1)))
;(define metal (make perfect-metal))
(define-param center_freq 0.5) ; with a = 1m and c = 1 I get w_c =
pi*c/width_x < 0.5
(define-param freq-samples 25)
(define-param df 0.1)
;set lattice
(set! geometry-lattice (make lattice (size (+ width_x metal_thickness
metal_thickness pml_thickness)
(+ height_y metal_thickness
metal_thickness pml_thickness)
(+ length_z pml_thickness) ) ) )
(set! geometry (list
(make block (center 0 0 0) (size width_x height_y
length_z)(material air) ) ; middle air
(make block (center 0 (+ (/ height_y 2) (/ metal_thickness 2))
0) ; bottom metal
(size (+ width_x (* metal_thickness 2)) metal_thickness
length_z)
(material metal)
)
(make block (center 0 (* -1 (+ (/ height_y 2) (/
metal_thickness 2))) 0 ); top metal
(size (+ width_x (* metal_thickness 2))
metal_thickness length_z)
(material metal)
)
(make block (center (+ (/ width_x 2) (/ metal_thickness 2))
0 0) ; right side metal
(size metal_thickness (+ height_y (* metal_thickness
2)) length_z)
(material metal)
)
(make block (center (* -1 (+ (/ width_x 2) (/
metal_thickness 2))) 0 0) ; left metal
(size metal_thickness (+ height_y (*
metal_thickness 2)) length_z)
(material metal)
)
)
)
(set! pml-layers (list
(make pml (thickness (/ pml_thickness 2) )) ; because pml is 1
unit thick
)
)
;THIS LOOKS BAD--- MOVE SOURCE OUT???
(set! sources (list
(make source (src (make gaussian-src (frequency
center_freq)(width 6)))
(component Ez)
(center 0 0 (/ length_z 2.5))
(size 0 (* .9 height_y) 0)
)
)
)
(set! resolution 5)
(define trans ; transmitted flux
(add-flux center_freq df freq-samples
(make flux-region
(center 0 0 (* length_z -0.4) )
(size width_x height_y no-size))))
(run-sources+ 100
(at-beginning output-epsilon)
(to-appended "ez" (at-every 0.6 output-efield-z)))
(display-fluxes trans )
Kindly let me know if anyone know where I'm messing this up.
Thanks a pile,
Rohan.
_______________________________________________
meep-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss