Dear Steven and all MEEP users,

I'm having trouble using periodic boundary conditions in 3D simulation (2D 
works fine.). It always gives me 'bug in create_geom_box_tree0'. Does anyone 
know what is the problem? My 3D simulation script is posted below:

(define-param zLen 8)           ; Propagation length in z direction
(define-param Radius 0.25)      ; Radius of sphere particle
(define-param sphereEps 2.79)   ; Epsilon of sphere (Polystyrene)
(define-param subEps 3) ; Epsilon of substrate (SU-8)
(define-param Lambda 0.325)     ; Wavelength of source
(define-param xLen 4)   ; Lattice size in x direction
(define-param yLen (* 1.7321 2) )       ; Lattice size in y direction
(define-param sourceZ (+ 1 (/ zLen -2)))        ; Position of source in z 
direction
(define-param sphereZ (+ 1 sourceZ))                    ; Position of sphere 
center in z direction
(define-param subZ (/ (+ (+ sphereZ Radius) (/ zLen 2)) 2))     ; Position of 
substrate center in z direction
(define-param pmlThick 0.4)     ; Thickness of PML

(set! geometry-lattice (make lattice (size xLen yLen zLen)))

(set! geometry (list
        (make block (center 0 0 subZ) (size infinity infinity (- zLen 2 
Radius)) (material (make dielectric (epsilon subEps))))
        (make sphere (center 0 0 sphereZ) (radius Radius) (material (make 
dielectric (epsilon sphereEps))))
        (make sphere (center 2 0 sphereZ) (radius Radius) (material (make 
dielectric (epsilon sphereEps))))
        (make sphere (center -2 0 sphereZ) (radius Radius) (material (make 
dielectric (epsilon sphereEps))))
        (make sphere (center 1 1.7321 sphereZ) (radius Radius) (material (make 
dielectric (epsilon sphereEps))))
        (make sphere (center 1 -1.7321 sphereZ) (radius Radius) (material (make 
dielectric (epsilon sphereEps))))
        (make sphere (center -1 1.7321 sphereZ) (radius Radius) (material (make 
dielectric (epsilon sphereEps))))
        (make sphere (center -1 -1.7321 sphereZ) (radius Radius) (material 
(make dielectric (epsilon sphereEps))))
))
                                          
(set! sources (list
               (make source
                 (src (make continuous-src (frequency (/ 1 Lambda))))
                 (component Ex)
                 (center 0 0 sourceZ)
                                 (size xLen yLen 0))))
                                 
(set! force-complex-fields? true) 
(set! resolution 20)
(set! k-point (vector3 0 0 0))
(set! ensure-periodicity true)
(set! pml-layers (list (make pml (direction Z) (thickness pmlThick))))


(run-until 40
           (at-beginning output-epsilon)
          (at-end synchronized-magnetic output-tot-pwr))

Output is as follows:

Initializing structure...
Working in 3D dimensions.
Computational cell is 4 x 3.4642 x 8 with resolution 20
     block, center = (0,0,1.125)
          size (1e+20,1e+20,5.75)
          axes (1,0,0), (0,1,0), (0,0,1)
          dielectric constant epsilon diagonal = (3,3,3)
     sphere, center = (0,0,-2)
          radius 0.25
          dielectric constant epsilon diagonal = (2.79,2.79,2.79)
     sphere, center = (2,0,-2)
          radius 0.25
          dielectric constant epsilon diagonal = (2.79,2.79,2.79)
     sphere, center = (-2,0,-2)
          radius 0.25
          dielectric constant epsilon diagonal = (2.79,2.79,2.79)
     sphere, center = (1,1.7321,-2)
          radius 0.25
          dielectric constant epsilon diagonal = (2.79,2.79,2.79)
     sphere, center = (1,-1.7321,-2)
          radius 0.25
          dielectric constant epsilon diagonal = (2.79,2.79,2.79)
     sphere, center = (-1,1.7321,-2)
          radius 0.25
          dielectric constant epsilon diagonal = (2.79,2.79,2.79)
     sphere, center = (-1,-1.7321,-2)
          radius 0.25
          dielectric constant epsilon diagonal = (2.79,2.79,2.79)
bug in create_geom_box_tree0
                 

Thanks!
Xu
                   
_______________________________________________
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