Hi everyone,
I want to know how much light of certain wavelength willbe confined in the
air core when I put a dipole source in the air core of the hollow core
silica/air photonic crystal fiber. I also want to know at which direction
the light willbe totally confined in the air core. Can Meep or MPB do
these tasks ? And how?
I try to find the bandgap corresponding to a certain frequency with the
structure of the photonic crystal fiber. The air holes are arranged as
a triangular lattice. The periodic structure is on the x-y plane. The
parameters are as follows: the hole radius is 0.75um, and the pitch is
1.6um. The wavelength at which I want to get the bandgap is 785nm. I
have found that there is no bandgap on the x-y plane throuth simulation
with MPB. So I wonder how to set the components of wavevector, that is
kx, ky and kz, in order to get the bandgap corresponding to 785nm?
Below is the ctl file I found in the mailist of MPB. And I have changed
the parameters to my own. I can draw the band structures varying kx and
ky after fixing kz. In order to find the bandgap corresponding to 785nm,
It is still cumbersome. Are there better suggestions? Thanks a lot!
attached ctl file
;With the parameters of 785nm pcf.
; first, define the lattice vectors and k-points for a triangular lattice:
(set! geometry-lattice (make lattice (size 1 1 no-size)
(basis1 (/ (sqrt 3) 2) 0.5)
(basis2 (/ (sqrt 3) 2) -0.5)
(basis-size 1.6 1.6 1))
)
(define-param kz-min 0)
(define-param kz-max 5)
(define-param kxy-interp 4)
(define-param kz-interp 25)
(define Gamma (vector3 0 0 0))
(define M (vector3 0 0.5 0))
(define K (vector3 (/ -3) (/ 3) 0))
(define IBZ (list Gamma M K))
(define-param boundaries-only? true)
(define-param gamma-only? false)
(set! k-points
(fold-left
append '()
(map
(lambda (kz)
(interpolate kxy-interp
(list (vector3 0 0 kz) ; Gamma
(vector3 0 0.5 kz) ; M
(vector3 (/ -3) (/ 3) kz) ; K
(vector3 0 0 kz) ; Gamma
)))
(interpolate kz-interp (list kz-min kz-max)))))
(if gamma-only?
(set! k-points (interpolate kz-interp (list (vector3 0 0 kz-min)
(vector3 0 0 kz-max)))))
; Now, define the geometry, etcetera:
(define-param n 1.45) ; dielectric constant of silica
(define-param r 0.75) ; the hole radius
; hollow cylinder outer radius (can overlap) (defaults to no corner voids)
(define-param r-outer infinity)
(define C->L (compose cartesian->lattice vector3))
(define (hexagon r c m)
(list
(make block (center c) (material m) (size (* r (sqrt 4/3)) (* 2 r))
(e1 (C->L 1 0)) (e2 (C->L 0 1)))
(make block (center c) (material m) (size (* r (sqrt 4/3)) (* 2 r))
(e2 (C->L (/ (sqrt 3) 2) 0.5)) (e1 (C->L -0.5 (/ (sqrt 3) 2))))
(make block (center c) (material m) (size (* r (sqrt 4/3)) (* 2 r))
(e2 (C->L (/ (sqrt 3) 2) -0.5)) (e1 (C->L 0.5 (/ (sqrt 3) 2))))
))
(define-param hex? false)
(define diel (make dielectric (index n)))
(if hex?
(begin
(set! default-material diel)
(set! geometry (hexagon r (vector3 0) air)))
(set! geometry (list (make cylinder (center 0) (material diel)
(radius r-outer)
(height infinity))
(make cylinder (center 0) (material air)
(radius r) (height infinity)))))
(set-param! resolution 32)
(set-param! num-bands 50)
(run)
_______________________________________________
mpb-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss