blockquote {padding-left: 1ex; margin: 0px 0px 0px 0.8ex; border-left: #cccccc 1px solid;} p {margin: 0px;padding: 0px;}

Hi
I'm using meep for a while, but still I'm a freshman, and I have a little problem...

ERROR: In procedure length:
ERROR: Wrong type argument in position 1: #<unspecified>

This is a few lines that I've wrote:

; Parameters describeing the structure
(define-param eps-gan 5.0625)     ; dielectric constant GaN
(define-param r 0.3)            ; radius of holes
(define-param N 3)            ; number of holes on either side of waveguide
(define-param a 0.57)        ; period
(define-param d 1)            ; defect spaceing (ordinary 1)
(define-param w 1)            ; width of waveguide

; Cell dimensons
(define-param sx 18)                    ; size of ceel in "x" direction
(define-param dpml 1)                ; pml thickness
(define-param pad 4)                    ; padding betwen last hole and PLM edge

(define-param no-wvg? false)

(define sy (+ (* 2 (+ pad dpml N)) w))        ; size of ceel in "y" direction

(set! geometry-lattice (make lattice (size sx sy no-size)))

(set! geometry
    (if no-wvg?
   
    (append ;combine list of objects

        (list (make block (center 0 0) (size infinity w)
            (material (make dielectric (epsilon eps-gan)))))
   
        (geometric-objects-duplicates (vector3 0 (sqrt 3)) 5 ( - sy 5)
            (geometric-object-duplicates (vector3 1 0) (/ sx -2) (/ sx 2)
        (make cylinder (center (/ sx -2) (* (sqrt 3) (/ sy -2))) (radius r)
            (material air))))

        (geometric-objects-duplicates (vector3 0 (sqrt 3)) 5 ( - sy 6)
            (geometric-object-duplicates (vector3 1 0) (+ (/ sx -2) 1) (- (/ sx 2) 1)
        (make cylinder (center (/(- sx 1) -2) (* (sqrt 3)(/ (- sy 1) -2))) (radius r)
            (material air))))
    )
    )
)

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

;(run-until 200 (at-beginning output-epsilon))

(define-param fcen 0.35)
(define-param df 0.2)
(define-param nfreq 500)

(set! sources (list
        (make source
        (src x(make gaussian-src x(frequency fcen) (fwidth df)))
        (component Ey)
        (center (+ dpml (/ sx -2)) 0)
        (size 0 w))
        )
)

;(define trans
;    (add-flux fcen df nfreq
;        (make flux-region
;            (center (- (/ sx 2) dpml 0.5) 0) (size 0 w))))

;(run-sources+ (stop-when-fields-decayed
;        50 Ey
;        (vector3 (- (* 0.5 sx) dpml 0.5) 0)
;        1e-3)
;        (at-begining output-epsilon)
;        (during-sources
;            (in-volume (volume (center 0 0) (size sx 0))
;            (to-appended "hz-slice" (at-every 0.4 output-hfield-z)))))
;
;(display-fluxses trans)

I have absolutely no idea why this error appears when I'm computing my waveguide. When I comment this line:
(run-until 200 (at-beginning output-epsilon))
error disappears, but I don't know why.
Any help or tip will be very helpfull for me. Thanks for help
Best regards
Konrad

 


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

Reply via email to