Send meep-discuss mailing list submissions to
meep-discuss@ab-initio.mit.edu
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
meep-discuss-requ...@ab-initio.mit.edu
You can reach the person managing the list at
meep-discuss-ow...@ab-initio.mit.edu
When replying, please edit your Subject line so it is more specific
than "Re: Contents of meep-discuss digest..."
Today's Topics:
1. meep installation problem (guile related) (Hua Bao)
2. Complex field in meep (adrian)
3. meep initial field (Michal Martin?)
4. regarding single pulse source (prabhat behere)
5. Unstable simulation with evanescent fields in active medium
(Nathan)
----------------------------------------------------------------------
Message: 1
Date: Wed, 04 Mar 2009 22:20:42 -0500
From: Hua Bao <h...@purdue.edu>
Subject: [Meep-discuss] meep installation problem (guile related)
To: meep-discuss@ab-initio.mit.edu
Message-ID: <49af450a.9070...@purdue.edu>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Dear All,
I am a new user of meep.
I was trying to build up a meep executable but it shows error at the
configure step.
checking for guile-config... no
checking for readline in -lreadline... no
checking for dlopen in -ldl... yes
checking for scm_lt_dlinit in -lguile-ltdl... no
checking for dlopen in -lltdl... no
checking for gh_eval_str in -lguile... no
configure: error: linking to guile failed
The linux cluster (amd64) has guile installed. There is no problem to
run guile --version. Also, there is a libguile.so under /usr/lib64.
********
/usr/lib64/libguile-srfi-srfi-1-v-3.so
/usr/lib64/libguile-srfi-srfi-1-v-3.so.3
/usr/lib64/libguile-srfi-srfi-1-v-3.so.3.0.0
/usr/lib64/libguile-srfi-srfi-13-14-v-3.so
/usr/lib64/libguile-srfi-srfi-13-14-v-3.so.3
/usr/lib64/libguile-srfi-srfi-13-14-v-3.so.3.0.0
/usr/lib64/libguile-srfi-srfi-4-v-3.so
/usr/lib64/libguile-srfi-srfi-4-v-3.so.3
/usr/lib64/libguile-srfi-srfi-4-v-3.so.3.0.0
/usr/lib64/libguile-srfi-srfi-60-v-2.so
/usr/lib64/libguile-srfi-srfi-60-v-2.so.2
/usr/lib64/libguile-srfi-srfi-60-v-2.so.2.0.0
/usr/lib64/libguile.so.17
/usr/lib64/libguile.so.17.0.0
/usr/lib64/libguilereadline-v-17.so
/usr/lib64/libguilereadline-v-17.so.17
/usr/lib64/libguilereadline-v-17.so.17.0.0
******
I tried
setenv LDFLAGS "-L/usr/lib64"
It is still not working.
Also, it can not find lapack and blas on the cluster, either. And I am
very sure they are appropriately installed.
Can anyone give me some suggestions on this problem?
Thanks,
Hua
------------------------------
Message: 2
Date: Thu, 5 Mar 2009 13:12:48 +0800 (CST)
From: adrian <hiaquar...@yahoo.com.tw>
Subject: [Meep-discuss] Complex field in meep
To: meep-discuss@ab-initio.mit.edu
Message-ID: <825480.96270...@web73705.mail.tp2.yahoo.com>
Content-Type: text/plain; charset="utf-8"
? Hi Meep users and Steven:
? ? I know this question has been discussed but I can't find the
answer to previous poster.
? ? My question is:
??? 1. what is the definition of complex field in FDTD. Is it just
E0*exp(j(wt - kr)) and the real field and imaginary field correspond
to real part and imaginary part, respectively?
????? If so, if we set force-complex-fields? false, then the real
field we normally got is E0 times cos(wt - kr)?
? ? ? I try to reach "Complex field in meep"? but it requires
password. so I can't find the definition of complex fields in meep.
???? The purpose for getting complex field is to get the far field
patterns from the near field patterns calculated by meep
Thanks in advanced
Adrian
??
______________________________________________________________________________________________________
?????????Yahoo!??????2.0????????????? http://tw.mg0.mail.yahoo.com/dc/landing
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://ab-initio.mit.edu/pipermail/meep-discuss/attachments/20090305/9896d4d6/attachment.html
>
------------------------------
Message: 3
Date: Thu, 5 Mar 2009 08:33:59 +0100
From: Michal Martin? <cmelak9...@centrum.cz>
Subject: [Meep-discuss] meep initial field
To: <meep-discuss@ab-initio.mit.edu>
Message-ID: <000001c99d64$bf8dee10$6f01a...@michalp4>
Content-Type: text/plain; charset="iso-8859-2"
Please, could you help me more? I do not understand it well.
I can have for 2D task from the static 2D analysis such file:
X Y Z HX HY HZ
1.0000E+01 1.1000E+01 0.0000E+01 2.1454E+00 1.4513E+00 0.0000E+01
1.1000E+01 1.1000E+01 0.0000E+01 4.5454E+00 1.3213E+00 0.0000E+01
1.2000E+01 1.1000E+01 0.0000E+01 8.8454E+00 1.2213E+00 0.0000E+01
1.3000E+01 1.1000E+01 0.0000E+01 9.9454E+01 1.4313E+01 0.0000E+01
.....
...
..
.
This I can get to input text file from static analysis from another
software. How the procedures Hx, Hy have to look like? Is it in the
"clt" file, or they are external execucable in C? Must nodes fit?
Thanks. Michal
http://www.free-motor.org
-----Original Message-----
From: meep-discuss-boun...@ab-initio.mit.edu
[mailto:meep-discuss-boun...@ab-initio.mit.edu] On Behalf Of
schmi...@we.fh-osnabrueck.de
Sent: Monday, January 26, 2009 6:18 PM
To: meep-discuss@ab-initio.mit.edu
Subject: [Meep-discuss] initialize fields
Use something like:
(define (my_Hmagx v3)
Hx..
)
(define (my_Hmagy v3)
Hy..
)
(define (my_Hmagz v3)
Hz..
)
Hx.., Hy.., Hz.. are procedures calculating/reading the initial field
values for each vector3 (x y z) position v3.
Then:
(init-fields)
(meep-fields-initialize-field fields Hx my_Hmagx)
(meep-fields-initialize-field fields Hy my_Hmagy)
(meep-fields-initialize-field fields Hz my_Hmagz)
(run ....
------------------------------
Message: 4
Date: Thu, 05 Mar 2009 13:18:07 +0530
From: "prabhat behere" <behereprab...@in.com>
Subject: [Meep-discuss] regarding single pulse source
To: "meep-discuss" <meep-discuss@ab-initio.mit.edu>
Message-ID: <1236239287.68aea522760347926520bfa959f15...@mail.in.com>
Content-Type: text/plain; charset="utf-8"
Dear Steven,recently I had submitted a query regarding the pulse
source. in your replyyou talked about difference between the time
step and time unit. I am thankful for the reply.here I am sending
you the ctl code . I have two questions:1. i want a single pulsed
source. can i make it wtth continuous souce function.if yes, how? in
the ctl code that follows i tried to change source to continuoussrc
function. i have used in source definition width =0.1 which means
approximately 100 time steps.but after 100 time steps the source
does not vanish. how do i get a single pulse source.2. i think i am
able to get a single pulse sorce with guassiansrc fucntion.but i
want to work with nearly a single frequency. My requirement is a
single nearmonochromatic femtosecond pulse. is guassiunsrc suited
for my use? CTL code:(set! geometrylattice (make lattice (size 2 2
nosize)))(set! geometry (list(make block (size 0.5 0.5)(center 00)
(material(make dielectric (epsilon 1.5))))))(set! sources (lis
t (make source (src (make guassiansrc (frequency 1.53233)(width
0.1)))(direction Y) (component Hz) (center 0 0 0) (starttime 0)
(endtime 0.1) (size 0 0 0))))(set! pmllayers (list (make pml
(thickness 0.1))))(set! resolution 100)(runsources+ 5 (atbeginning
outputepsilon);(atevery .5 outputefieldx)thank youprabhat(atevery .5
outputefieldy)) ;(atevery .5 outputdpwr))Dear meepdiscuss ! Get
Yourself a cool, short @in.com Email ID now!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://ab-initio.mit.edu/pipermail/meep-discuss/attachments/20090305/441a297e/attachment-0001.htm
>
------------------------------
Message: 5
Date: Thu, 5 Mar 2009 01:54:29 -0600
From: Nathan <nhunt...@smu.edu>
Subject: [Meep-discuss] Unstable simulation with evanescent fields in
active medium
To: <meep-discuss@ab-initio.mit.edu>
Message-ID: <49af8535.3040...@smu.edu>
Content-Type: text/plain; charset="ISO-8859-1"; format=flowed
Dear Meep users,
I'm trying to simulate Enhanced Frustrated Total Internal Reflection
and
my simulations are blowing up. I want to launch a wave (plane wave
preferably but I recently changed to a gaussian to get better control)
at an angle inside a medium, and have the wave hit a very thin
trench of
lower index. If the trench is thin enough, the power in the wave will
be partially reflected and partially transmitted, or FTIR. I can do
this fine, and the numerical results match theory. Where I get in
trouble is if I specify a conductivity in the thin trench,
specifically
a negative conductivity for gain. I have developed a theory on how
this
'should' work, and I want to gain confidence in my model via numerical
analysis. When I try and model this, I am getting reflected and
transmitted powers that are on the order of 10e200!!! Obviously this
isn't right. I have spent the last two weeks looking at everything I
can think of that will cause this, the launch field, numerical
stability, the pmls, and I can't see what the problem is. I should
mention that for small conductivities the model doesn't blow up, but
it
still doesn't match theory. For large conductivities though it goes
crazy. For example, if I use the parameters
gap_width=.150, gap_eps=1.89, gap_epspp=-3.4 (n=1.7- i 1) my reflected
flux's are on the order of 10E200. I know that complex part of
permeability with magnitude 3.4 is huge, and unphysical, but it
shouldn't cause that large of a field. My only thought left is to try
using complex fields, but I don't see how that will change
anything. If
you have any suggestions I would greatly appreciate hearing them.
Regards
Nathan
(define-param good 4); size of 'good' region desired. Size of flux
regions
(define-param sy 12)
(define ymin (/ sy -2))
(define-param sx (+ (* 2 sy) good)); sx = 2 sy + size of good region
to
keep out of bad regions on side
(define-param sz no-size); set z to zero for 2D
(define-param res 50); grid size 20nm
(define-param dpml 1)
(set-param! resolution res)
(define-param tstop 20)
(set! eps-averaging? false)
(set! geometry-lattice (make lattice (size sx sy sz)))
(define-param wg_eps 10.24)
(define n 1)
(print "sx: " sx " sy: " sy " res: " res "\n")
(define-param gap? false)
(define-param gap_width 0)
(define-param gap_eps 1)
(define-param gap_epspp 0)
(define-param fcen 0.635) ;center frequency of plane wave
(define-param df 0.1) ; turn-on bandwidth
(define wlength (/ 1 fcen)); pulse waveleght in free space
(set! geometry
(if gap?
(list
(make block
(center 0 0) (size sx sy)
(material (make dielectric (epsilon wg_eps))))
(make block
(center 0 0) (size sx gap_width)
(material (make dielectric (epsilon gap_eps) (D-conductivity
(/
(* 2 pi fcen gap_epspp) gap_eps))))))
(list
(make block
(center 0 0)
(size sx sy)
(material (make dielectric (epsilon wg_eps)))))))
(set! n (sqrt wg_eps))
(set! pml-layers (list (make pml (thickness dpml))))
;copy this for a TM wave capabale of prop in any direction along +x,+y
(define-param source-component Ez)
(define-param theta_deg 45); this is the launch angle
; theta goes from 0 (+Y prop) to 90 (+X prop)
(define theta_rad (/ (* pi theta_deg) 180)); change theta to radians
;pw-amp is a function that returns the amplitude exp(ik(x+x0)at
;a given point x. (We need x- because current amplitude functions
;in Meep are defines relative to the center of the current source,
;whereas we want a fixed origin.) Actually it is a fucntion of k
; and x0 that returns a function x
(define ((pw-amp k x0) x)
(exp( * 0+1i (vector3-dot k (vector3+ x x0)))))
(define-param kdir (vector3 (sin theta_rad) (cos theta_rad)));
direction
of k
(define k (vector3-scale (* 2 pi fcen n) (unit-vector3 kdir))); set
k to
be proper length in direction of kdir
(set! sources (list
(make source
(src (make gaussian-src (frequency fcen) (fwidth df)))
(component source-component)
(center (/ sx -2) (+ ymin 1.25)) (size (- sx dpml) 0)
(amp-func (pw-amp k (vector3 0 (* -0.5 sx)))))))
;end of source definition
;(print "defined source k: "k" \n")
(define-param nfreq 10)
(define transx
(add-flux fcen df nfreq
(make flux-region
(center 0 1); center at 0,y/4,0
(size good 0)
(direction X)))); size = good,0,sz/2
(define transy
(add-flux fcen df nfreq
(make flux-region
(center 0 1); center at 0,y/4,0
(size good 0)
(direction Y)))); size = good,0,sz/2
(define reflx
(add-flux fcen df nfreq
(make flux-region
(center 0 -1); center at 0,y/4,0
(size good 0)
(direction X)
(weight 1.0)))); size = good,0,sz/2
(define refly
(add-flux fcen df nfreq
(make flux-region
(center 0 -1)
(size good 0)
(direction Y)
(weight -1.0))))
(define cut (volume (center 0 0) (size (/ sx 2) 0)))
(if gap?
(list
(load-minus-flux "refl-fluxX" reflx)
(load-minus-flux "refl-fluxY" refly)
(define dir "")
;;(set! dir (number->string gap_width))
(set! dir (number->string gap_epspp))
(set-param! filename-prefix dir)
(use-output-directory)))
;;(run-sources+ tstop (in-volume cut (at-every 1 output-efield)
(at-every 1 output-hfield)))
(run-sources+ tstop)
(if (not gap?)
(list
(save-flux "refl-fluxX" reflx)
(save-flux "refl-fluxY" refly)))
(display-fluxes transx transy reflx refly)
------------------------------
_______________________________________________
meep-discuss mailing list
meep-discuss@ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss
End of meep-discuss Digest, Vol 37, Issue 3
*******************************************