I also met this problem before.
If your structure is so large and calculation time is too long, you should
activate non-averaging to avoid divergence issue just like;
(set! eps-averaging? false)



Quoting dy zhao <[EMAIL PROTECTED]>:

> Dear Dr. Steven and meep users,
>
> Recently, I have met the divergence problem several times. Here is just one
> example. In order to get the more accurate transmission of a PC slab, I set
> a relatively long run-time, but the field is divergent at about 800
> meep-time-step for r=0.25. When r=0.20,  it is also divergent, but when
> r=0.28,0.30 or other values, they are not divergent. I think the resolution
> 40 is enough and the values of the other parameters are also reasonable.
> Why is it divergent for some special PC structures? Please give me some
> advice.
>
> Thanks!
>
> Best regards,
>
> Deyin
>
> The following is the ctl file:
>
> (define-param n1 3.48)
> (define-param eps (* n1 n1))
> (define-param r 0.25)
> (define-param thick 0.34)
> (define-param supercellhight 6)
>
> (set! geometry-lattice (make lattice (size 1 1 supercellhight)));the
> computional cell
> ;(set! eps-averaging? false)
> (set! geometry
>            (list
>                 (make block
>                          (center 0 0 -1.0)
>                          (size 1 1 thick)
>                          (material (make dielectric (epsilon
> eps))))
>         (make cylinder
>                  (center 0 0 -1.0)
>                          (radius r)
>                          (height thick)
>                          (material (make dielectric (epsilon 1))))))
> (define-param fcen 0.625) ; pulse center frequency
> (define-param df 0.5) ; pulse width (in frequency)
>
> (set! sources
>    (list
>     (make source
>        (src (make gaussian-src (frequency fcen) (fwidth df)))
>         (component Ey)
>         (center 0 0 1.5)
>     (size 1 1 0))))
>
> (set! k-point (vector3 0 0 0))
> (set! pml-layers (list (make pml (direction Z) (thickness 1.0))))
> (set-param! resolution 40)
>
> (define (Eoutput)
>         (print "Eoutput, " (meep-time) ", "
>         (get-field-point Ey (vector3 0 0 1.0)) ", "
>        (get-field-point Ey (vector3 0 0 -1.8)) "\n"))
>
> (run-until 1638.4  Eoutput)
>



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

Reply via email to