Dear Meep Users,

In the past month of trying to learn meep, I have benefited greatly from
these discussions.  So before my ramble I would like to thank everyone for
reading this.  I am truly grateful for your help.

I am trying to calculate the effective parameters (namely the permeability
and permittivity) of the structure I am simulating.  To do so, I must find
the transmission and reflection coefficients, which to my understanding can
be found by simply outputting the electric field components twice (with and
without the structure) and taking a ratio after performing fft on the
electric field components.

Reflection coefficients = fft(R-R0)/fft(T0)
Transmission coefficients = fft(T)/fft(T0)

This method has been described previously,
https://www.mail-archive.com/meep-discuss%40ab-initio.mit.edu/msg04262.html
https://www.mail-archive.com/meep-discuss%40ab-initio.mit.edu/msg00849.html

The problem I am having is that when I perform a sanity check on the
coefficients I arrive at, by taking the absolute value squared of the
reflection and transmission coefficients, I get values that do not make
sense, and do not match the (power) Reflection and Transmission values that
I get when I perform the simulation.

To provide additional information about the structure I am simulating, it
is a column of gold split ring resonators (periodic in the y direction).  I
included PML in the X direction only.


[R]  l          C             l
  l   [S]       C             [T]
  l    l          C             l
  l    l          C             l
  l    l          C             l
  l    l          C             l

[R]-Reflection line
[S]-Source line
[T]-Transmission line

Here is a snippet of my code, I omitted parts that are unimportant.

(set! ensure-periodicity true)

(set! k-point (vector3 0 0 0))

(set! eps-averaging? false)

(set! force-complex-fields? true)

(define-param no-grating? false); if true, then use control

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

(set! geometry
    (if no-grating?
        (list
        )
        (list
        (make cylinder (center 0 0) (radius outradius) (height infinity)
        (material gold))
        (make cylinder (center 0 0) (radius inradius) (height infinity)
        (material air))
        (make block (center 0.83 0) (size cube cube infinity)
        (material air))
        )))


(set! pml-layers (list (make pml (direction X) (thickness 1.0))))


(set! sources
    (list
        (make source
        (src (make gaussian-src (frequency fcen) (fwidth df)))
        (component Hz)
        (center -2.4 0 0)
        (size 0 sy))))

(run-until
    560
    (at-beginning output-epsilon)
    (in-volume (volume (center 2.9 0 0) (size 0 sy 0))
        (to-appended "T" (at-every 1 output-efield-y))))

Thank you all very much for your time.

Joshua Surya
Electrical and Computer Engineering
University of Illinois Urbana-Champaign | B.S. Class of 2015
_______________________________________________
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