I use a material function to set material in an annulus 2 < r < 3. But the
mu values are irgnored: mu is constant 1. Am I missing something?

Regards,
RB


Code:

; Gets the square of a number
(define (sqr x) (* x x))

; Gets the length of a vector
(define (cr p)
    (sqrt (+ (sqr (vector3-x p)) (sqr (vector3-y p))))
)

; Material function
(define (material01 p)
    (if (> (cr p) 2)
        (make dielectric (mu-diag 3 1 1)(epsilon-diag 1 1 3))
    )
)

;(set! extra-materials (list material01))

(set! geometry-lattice (make lattice (size 10 10 no-size)))

(set! geometry
    (list
         (make cylinder (center 0 0) (radius 3) (height infinity)
            (material (make material-function (material-func material01)))
         )
    )
)

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

(set! sources
    (list
        (make source
            (src (make continuous-src (wavelength 1) (width 20)))
            (component Ez)
            (center 4 0) (size 0 10)
        )
    )
)

(use-output-directory)

(run-until 50
           (at-beginning output-epsilon)
           (at-beginning output-mu)
           (at-every 5.0 (output-png Ez "-Zc bluered")))
_______________________________________________
meep-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss

Reply via email to