Hi Alex and all,

Thank you for your response and I will look into how to extract scattered,
total flux and near-to-far-field transformation as you suggested.
The parameter defined at the beginning are left-over from a previous
simulation that I was running and I modified them as below.
The inner flux region encloses the structure. I intended to use this as a
enclosing surface which calculates the absorption of the structure. As Wabs
= Integral of Poyting Vector dot Surface normal.
I used another set of flux region to enclose the source, in order to verify
that in this case I can recover the source power irradiation across the flux
regions, which turns out to be the same result that I got for the inner flux
region, what does it mean?




 ;Unit: um
(define-param sx 4)                                                ;' Size
of cell in X-direction
(define-param sy 4)                            ; ' Size of cell in
Y-direction
(define-param dpml 1)                             ; ' thickness of PML
Layers 3.0
(define-param l 0.1)                                ; ' radius of cylinder
(define-param w 0.3)                              ; ' width of total  field
flux-region
- Show quoted text -

(define-param slen 0.2)                          ;source length
(define-param offy 0)                              ; Offset value in
y-direction
(define-param res 200)                           ; resolution of simulation
box
(define-param standard? false)                ;condition for choosing sample
run or reference run
(define-param d_e (/(* w_p w_p) (* w_n w_n))) ;
(define-param fmax 1)                                   ; ' Maximum
Frequency
(define-param fmin 0.1)                              ; ' Minimum Frequency
(define-param fcen (* 0.5 (+ fmax fmin)))                 ; 'Frequency
Centered at 0.7 or wavelength = 1.428 micrometer
(define-param df (* 2 (- fmax fcen)))                    ; 'Frequency Width
Gives range from 0.4 to 1.0
(define-param nfreq 100)                       ; ' Number of Frequencies to
calculate flux
(set! geometry-lattice (make lattice (size sx sy no-size)))
(define gold (make dielectric (epsilon 5.339)
                   (polarizations
                    (make polarizability
                     (omega 1e-20) (gamma 0.0486) (sigma 6.2634e41))
                    (make polarizability
                      (omega 2.1201) (gamma 0.1772)(sigma 0.1906))
                   (make polarizability
                      (omega 4.4214) (gamma 1.9662)(sigma 0.9835))
                    (make polarizability
                     (omega 3.353) (gamma 1.1844)(sigma 1.5974))
                    (make polarizability
                      (omega 2.7116) (gamma 0.578)(sigma 0.6653))
                   (make polarizability
                     (omega 2.3525) (gamma 0.3012)(sigma 0.4508)))))
  ;=================defining simulation cell======================
  (set! geometry
   (append; combine all objects
  ;==================set standard and experiment runs=============
      (if standard?
       (list (make block
         (center 0 (+ 0 offy))
          (size w (- l underlayer))
                 (e1 (cos theta_rad) (* (sin theta_rad) -1) 0)
                 (e2 (sin theta_rad) (cos theta_rad) 0)
                 (e3 0 0 1)
                 (material air)))
          (list (make cylinder
          (center 0 (+ 0 offy))
          (radius l)
                 (height infinity)
                 (material gold)))

  )))  ; end of if and append and set-geo

  ;================running procedure=====================
(set! pml-layers (list (make pml (thickness dpml))))
(set! resolution (* fmax res))
(set! sources (list
                (make source
                  (src (make gaussian-src (frequency fcen) (fwidth
  df)))
                  (component Hz)
                  (center -0.4 0)
                  (size 0 slen))))
  ;================total field region calc================
  (define left            ;left side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center (/ w -2) 0) (size 0 w)(direction X))))

  (define right           ;right side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center (/ w 2) 0) (size 0 w)(direction X))))

  (define top            ; left side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center 0 (/ w 2)) (size w 0)(direction Y))))

  (define btm            ; left side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center 0 (/ w -2) ) (size w 0)(direction Y))))
  ;===============scattered field region calc==============
  (define sleft            ;left side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center -0.25 0) (size 0 0.5)(direction X))))
  (define sright           ;right side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center 0.25 0) (size 0 0.5)(direction X))))
  (define stop            ; left side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center 0 0.25) (size 0.5 0)(direction Y))))
  (define sbtm            ; left side of the region
     (add-flux fcen df nfreq
           (make flux-region
              (center 0 -0.25) (size 0.5 0)(direction Y))))
       (run-sources+
            (stop-when-fields-decayed 0.5 Hz (vector3 (- -0.01 l) 0)
  1e-3)
            (at-beginning output-epsilon)
            (to-appended "pwr" (at-every (/ 1 fcen 20) output-dpwr)))

  (display-fluxes left right top btm sleft sright stop sbtm)

On Fri, Aug 27, 2010 at 12:14 PM, <[email protected]>wrote:

> Send meep-discuss mailing list submissions to
>        [email protected]
>
> To subscribe or unsubscribe via the World Wide Web, visit
>        http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss
> or, via email, send a message with subject or body 'help' to
>        [email protected]
>
> You can reach the person managing the list at
>        [email protected]
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of meep-discuss digest..."
>
>
> Today's Topics:
>
>   1. Re: Simulation in mid-infrared (Alex McLeod)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Fri, 27 Aug 2010 10:14:02 -0700
> From: Alex McLeod <[email protected]>
> Subject: Re: [Meep-discuss] Simulation in mid-infrared
> To: [email protected]
> Message-ID: <[email protected]>
> Content-Type: text/plain; charset="us-ascii"; Format="flowed";
>        DelSp="yes"
>
> Hi Mike,
>
> A couple comments.  I'm not sure I understand your set-up for this
> scattering problem.  A proper measurement of scattering cross section
> requires a few things:
>
> 1. If you want a plane wave, make your source extend spatially along
> an entire PML boundary at the side of incidence.  For example, use
> (size sx 0 0).  Otherwise your incident fields are likely to diffract.
> 2. Make sure your your flux regions enclose the ENTIRE simulation
> geometry, but don't enclose any sources.  Otherwise your notion of
> scattering cross section is ill-defined.  It looks to me that your
> flux regions are too small to enclose the cylinders, or am I missing
> something?
> 3. MEEP does not support the TFSF formalism.  That's a fundamentally
> different method as I understand it; you'd have to revise the the MEEP
> source code.  It can't be kludged in.  Instead, do something more
> simple: run the simulation without geometric objects, then again with
> geometric objects.  The scattered field is given by
> E_scattered=E_total-E_incident.  Get E_incident with this
> "normalization" run.  You'll have to subtract these fields by hand,
> then compute scattered fluxes in the normal way: S_scattered=1/2
> E_scattered "cross" B_scattered.  You'll have to use some scripting to
> accomplish this.  So, output E and B fields from enclosing volume
> surfaces instead of using flux regions.
> 4. The cross section equals your scattered flux divided by incident
> flux-per-area.  If you're not normalizing by the incident flux then
> that would explain why your response spectrum has the same peak
> wavelength as your incident source.
>
> Also, the above steps even give you all the fields you need to
> calculate far-field radiation patterns.  Just apply a near-to-far-
> field transform to scattered field values along all enclosing volume
> surfaces.  Cool stuff!
>
> Good luck,
> Alex
> ____________________________________________________________________
>
> Alexander S. McLeod
> B.A. Physics and Astrophysics - University of California at Berkeley
> Simulation Engineer - Theory Group, Molecular Foundry (LBNL)
> Site Lead - Network for Computational Nanotechnology at Berkeley / MIT
> [email protected]    707-853-0716
> __________________________________
>



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

Reply via email to