微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > 电磁仿真讨论 > Problems with reflectivity spectrum calculations in MEEP

Problems with reflectivity spectrum calculations in MEEP

时间:03-30 整理:3721RD 点击:
I am trying to calculate the reflectivity spectrum for a dielectric mirror, but i get unrealistic results. Mazbe someone can help me and tell me where the mistake is.
Code:
(reset-meep)

(define-param sx 50)                                                                ; size of cell in X direction
(define-param sy 50)                                                                ; size of cell in Y direction
(define-param N 15)                                                                 ; number of layers
(define-param xsiz 10)                                                              ; xsize of the layers 
(define-param ysiz 0.25)                                                            ; ysize of the layers
(define-param yq 4)
(define-param exist? true)                                                                 ; ysize of the quartz substrate 

(set! geometry-lattice (make lattice (size sx sy no-size)))
(set! geometry (if exist? 
      	 (append
      	  (list    (make block       (center 0 -2)      (size xsiz yq)      (material (make dielectric (epsilon 3.5)))))
          (geometric-object-duplicates (vector3 0 0.5 0) 0 (- N 1)    (make block       (center 0 (* 1.5 ysiz))      (size xsiz ysiz)      (material (make dielectric (epsilon 1.69)))))   (geometric-object-duplicates (vector3 0 0.5 0) 0 (- N 1)    (make block       (center 0 (/ ysiz 2))      (size xsiz ysiz)      (material (make dielectric (epsilon 4.84))))))      (list)))
  
(define-param fcen 2.9167) ; pulse center frequency
(define-param df 4.1667)  ; pulse width in frequency
(set! sources (list       (make source 	 (src (make gaussian-src (frequency fcen) (fwidth df)))	 (component Ez)
                 (center 0 20)	 (size xsiz 0))))

(set! pml-layers (list (make pml (thickness 1.0))))
(set-param! resolution 10)


(define-param nfreq 100) ; number of frequencies at which to compute flux
(define trans ; transmitted flux   (add-flux fcen df nfreq	    (make flux-region      (center 0 -5) (size xsiz 0))))
(define refl; reflected flux
                    (add-flux fcen df nfreq	    (make flux-region 	      (center 0 12) (size xsiz 0))))


(if (not exist?) (load-minus-flux "refl-flux" refl))

(run-sources+ 500 
(at-beginning output-epsilon)
(to-appended "ez" (at-every 0.6 output-efield-z)))


(if exist? (save-flux "refl-flux" refl))

(display-fluxes trans refl)
上一篇:wire transmissiion in Feko
下一篇:最后一页

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top