?88,.d88b, d8888b d8888b
January 22 Updated January 23 Phil Hobbs
A Programmable Optimizing Electro-Magnetic Simulator Release
IBM T. J. Watson Research Center Yorktown Heights, NY
Page
POEMS
A Programmable Optimizing Electro-Magnetic Simulator Release
August 21 Phil Hobbs
IBM T. J. Watson Research Center Yorktown Heights, NY
Appendix A. V-Antenna Optimization Run
Chapter
1.1. Motivation
Chapter Introduction
1.1.1. Philosophy
1.1.3. Optimization
1.1.2. Structure
Page
Postprocessor
Optimization Loop
Front-End Script POEMS.CMD
FDTD Engine FIDO + CLUSTER SCRIPT or TEMPEST
2.2.1. Script Operation
2. HOW POEMS WORKS
2.1. Program Organization
2.2. The Front-End Script poems.cmd
2.4. The Postprocessor EMPOST
2.3. The FDTD Engine FIDO/TEMPEST
2.6. Cluster Control
2.5. The Visualization System VIS5D
empost ordersfile resultsfile
2.6.1. Parallel Processing
3.1.2. GLOBAL Group
3. USING POEMS
3.1. Command Reference
3.1.1. poems Command-Line Options
FREQ 200*THz
which means that the host’s predefined hostname is not used
NB Hosts are identified by their hostname as specified by the
$HOSTNAME environment variable, rather than by IP address. This
aliases in different SUBDOMAIN statements in the parameters file
MACRO
Syntax PRINT string expression
3.1.3. WORLD Group
Syntax XRANGE minexpression maxexpression
3.1.4. MATERIAL Group
DEFINE matname= BlackGlass type=dielectric n=1.52 k=1e-3
Parameters epsReal epsImag muReal muImag
DEFINE matname=copper type=conductor conductivity=5.8e7
xhi1,yhi1,zhi1 and xlo2,ylo2,zlo2, xhi2,yhi2,zhi2. These must be
3.1.5. OBJECT Group
Parameters mattype xlo xhi ylo yhi zlo zhi thickness
phasefunc interval
xhi2 ylo2 yhi2 zlo2 zhi2
Parameters matname orientation xlo xhi ylo yhi zlo zhi widthfunc
Parameters mattype axis lo hi maxradius insidefunc
Parameters mattype xlo xhi ylo yhi zlo zhi
Parameters mattype slo shi perp hfunc vfunc
Not implemented in this release
ParametersNot implemented in this release
Parameters x y z width kx ky kz Ex Ey Ez mag phase n k orientation
Parameters x y z kx ky kz Ex Ey Ez mag phase orientation
3.1.6. SOURCE Group
Parameters reltolerance maxcycles mincycles timestep
3.1.7. COMMAND Group
Parameters x y z Ex Ey Ez mag phase
3.1.8. OUTPUT Group
3.1.9. POSTPROCESS Group
phase state
Parameters variable xlo xhi ylo yhi zlo zhi x y z file
Parameters name xinside yinside zinside xlo xhi ylo yhi zlo zhi
supplied plane, xmin ≤ x ≤ xmax, ymin ≤ y≤ ymax, zmin ≤ z ≤ zmax
Parameters name xlo xhi ylo yhi zlo zhi file direction
towards from xInside, yInside, zInside
The value of coordinates can be polar or rectangular, and arrangement
Parameters file orientation xlo xhi ylo yhi zlo zhi phase indexn
MOVIE
Parametersfile orientation xlo xhi ylo yhi zlo zhi dt frames variable
Parameters frames variable1 variable2 variable3 variable4 variable5
variable6 variable7 variable8 variable9 xlo xhi ylo yhi zlo zhi file
level
Parameters name xlo xhi ylo yhi zlo zhi file xinside yinside zinside
level
DISSIPATION
3.1.10. OPTIMIZE Group
Syntax GUESS var1 = expression var2 =, expression
not be updated at postprocessing time. That means that the
arbitrary boundary. Not implemented in this release
Stepping is not implemented in this release
3.1.11. SCHEDULE Group
PENALTY expression
Parameters iterations tolerance restarts
Actual Domain N rows Image Domain N-2 Rows Next Period
3.2. The Computational Domain
3.2.1. Symmetry
Unfolded 2N-2 Rows
3.3. OBJECTS
3.5.1. POINT SOURCES
3.3.1. Perfectly-Matched Layers
3.4. MATERIALS
3.5. SOURCES
3.5.2. PLANE WAVES
Page
3.5.4. MODEFILE SOURCES
3.5.3. BEAM SOURCES
3.6.1. Merit Functions
3.6. Optimization
f. Reflection from an interface
c. Phase uniformity across a plane
e. Power dissipation in a load dissipation
d. RMS Voltage across terminal points
F i g u r e 2 . 1 2 Optimized V-antenna
3.6.2. Worked Example Optimizing a V Antenna
Page
3.6.4. Worked Example Glass Ridge Waveguide to Free Space Coupler
3.6.3. Worked Example Doped Silica Waveguide Mode
3.7. Predefined Constants
i l l u m i n a t i o n p l a n e a f t e r
3.7.1. Reserved Names
3.8.1. Arithmetic Operators
3.8. Predefined Mathematical Functions
a. Differences from C/C++
3.8.5. ACOSH
3.8.2. Logical Operators
3.8.3. ABS
3.8.4. ACOS
3.8.13. ELINTK
3.8.10. ATAN2
3.8.11. CEIL
3.8.12. COS
3.8.22. MIN
3.8.19. INTEGRAL
3.8.20. LN
3.8.21. MAX
3.8.29. SIGN
3.8.26. RANDOM
3.8.27. ROOT1D
3.8.28. ROUND
3.10. Material Parameter Functions
3.9. Analytical Pupil Functions
1. Startup and Steady State
A. TEMPEST and General FDTD Information
2. Time step
fprintfstderr,periodstep %d\n,periodstep
printftime step after adjustment %e\n,dtfflushstdout
periodstep+=2 i=periodstep%4 if i!=0 periodstep=periodstep+4-i
dt=2.0*PI/omega*FLOATperiodstep
The run will produce lots of bitmaps at appropriately chosen locations
Appendix A. V-Antenna Optimization Run
A.1. POEMS INPUT DIPOLE2I.PAR
set kx0=0 /* direction of plane wave set loadlength=2*step
Fundamental dimensions
set phi=0 /* phase of excitation */ set ky0=step/lambda
set dipoleheight=0.2*um set dipolethickness=0.30*um
END WORLD SUBDOMAIN ALL XRANGE 0 xsize YRANGE 0 ysize ZRANGE 0 zsize
DEFINE matname= Load
type=dielectric n=nload
k=kload
FAN matname=PCL taper=linear taperpar=0
END COMMAND COMPUTE maxcycles = 25 reltolerance = END OUTPUT
zhi=zsize phase=0 state=steady file=Dipole2Iexi
zlo2 = Zvertex-DipoleThickness/2 zhi2= Zvertex+DipoleThickness/2
STORE Dipole2I.simplex MERIT diss*1e12
END OPTIMIZE
AMPLEX
PHASEEX
xlo=0 xhi=xsize ylo=0 yhi=ysize zlo=0 zhi=zsize file=Dipole2IPhaseEx
POSTPROCESS
FLUX name=MiddleFlux , /* crossing the middle z=zsize/2 xLo = Tpml
zlo=zsize/2+step zhi=zsize/2+step, file=Dipole2IIndexXY.bmp phase=0
file=Dipole2IPZXY.bmp phase=0 palette=redblue
zhi = zsize-Tpml-step xinside=xsize/2 yinside=ysize/2 zinside=zsize/2
file=Dipole2IAmpExZX.bmp phase=0 palette=flame
file=Dipole2IPZZX.bmp phase=0 palette=redblue
file=Dipole2IPXXY.bmp phase=0 palette=redblue
file=Dipole2IPXZX.bmp phase=0 palette=redblue
file=Dipole2IDissXY.bmp palette=redblue
SLICE orientation=xy variable=PhaseEx , xlo=0 xhi=xsize
SLICE orientation=zx variable=PhaseEx , xlo=0 xhi=xsize
file=Dipole2IExIZX.bmp phase=0 palette=redblue
ylo=ysize/2 yhi=ysize/2, zlo=0 zhi=zsize
file=Dipole2IExQZX.bmp phase=pi/2 palette=redblue END
plot hy steady 0.250000 node 0 99 0 99 0 99 dipole2ihyq
A.2. tempest Input File DIPOLE2I.PAR.IN
rectangle node
0 100 index 1.000000
Written by
56 pages of pointsource statements omitted
empost dipole2i.orders outfile v5dfile
A.3. Postprocessor orders DIPOLE2I.ORDERS
DIPOLE2IEYI
NULLEXI
ARRAY
Domain for comparison e.g. modematch
0.00000
SLICE
POSTPROC.16.COMPARISONDOMAIN
0.00000
SLICE
A.4. Run Results DIPOLE2I.SIMPLEX
0.000000883423566665 77.7563866665 0.0000017351705 Penalty =
Contracting by 0.5 in 1D 1-D shrink unsuccessful
0.00000064767135 98.83191 0.000001519205 Penalty =
0.00000069266248611 90.849532778 0.00000152214633334 Penalty =
Reflecting through centroid. Contracting by 0.5 in 1D
Reflecting through centroid. Contracting by 0.5 in 1D
Reflecting through centroid. Contracting by 0.5 in 1D
Reflecting through centroid. Contracting by 0.5 in 1D
Failed to converge in 36 function evaluations
Reflecting through centroid. Contracting by 0.5 in 1D
Reflecting through centroid. Contracting by 0.5 in 1D
Reflecting through centroid. Contracting by 0.5 in 1D
0.000000572297880735 102.392565535 0.00000148853488604 Penalty =
Reflecting through centroid. Contracting by 0.5 in 1D
Reflecting through centroid. Contracting by 0.5 in 1D
1-D shrink unsuccessful
Reflecting through centroid. Contracting by 0.5 in 1D
Reflecting through centroid. Contracting by 0.5 in 1D
Converged in 56 function evaluations
B.1. FDTD and TEMPEST
Appendix B. Configuration
B.1.1. tempest patches
c. Hints and Kinks
B.1.3. Advice common to all or most FDTD programs
B.1.2. tempest limitations
b. Understanding convergence
B.3.1. Sample X11 Configuration
B.3. X Window System Configuration
B.2. REXX
B.4. Release Notes
B.3.2. Running Vis5D
B.4.1. Wish list
B.4.2. Beta Release Limitations
YZ plane X perpendicular +Y right, +Z up, +X out of screen
XY plane Z perpendicular +X right, +Y up, +Z out of screen
ZX plane Y perpendicular +Z right, +X up, +Y out of screen
Appendix C. Multiprocessing
C++ 7
INDEX
Airy pattern Antenna 1, 39, 40, 45, 51, 52
BASICSTEP 16, 18, 24, 54, 62 Boundary 7, 15, 19, 29, 31
Periodic boundary conditions 31, 34