A Programmable Optimizing Electro-Magnetic Simulator Release
January 22 Updated January 23 Phil Hobbs
IBM T. J. Watson Research Center Yorktown Heights, NY
?88,.d88b, d8888b d8888b
Page
August 21 Phil Hobbs
A Programmable Optimizing Electro-Magnetic Simulator Release
IBM T. J. Watson Research Center Yorktown Heights, NY
POEMS
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
Front-End Script POEMS.CMD
Optimization Loop
FDTD Engine FIDO + CLUSTER SCRIPT or TEMPEST
Postprocessor
2.1. Program Organization
2. HOW POEMS WORKS
2.2. The Front-End Script poems.cmd
2.2.1. Script Operation
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. Command Reference
3. USING POEMS
3.1.1. poems Command-Line Options
3.1.2. GLOBAL Group
FREQ 200*THz
$HOSTNAME environment variable, rather than by IP address. This
NB Hosts are identified by their hostname as specified by the
aliases in different SUBDOMAIN statements in the parameters file
which means that the host’s predefined hostname is not used
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
xhi2 ylo2 yhi2 zlo2 zhi2
phasefunc interval
Parameters matname orientation xlo xhi ylo yhi zlo zhi widthfunc
Parameters mattype xlo xhi ylo yhi zlo zhi thickness
Parameters mattype slo shi perp hfunc vfunc
Parameters mattype xlo xhi ylo yhi zlo zhi
Not implemented in this release
Parameters mattype axis lo hi maxradius insidefunc
Parameters x y z kx ky kz Ex Ey Ez mag phase orientation
Parameters x y z width kx ky kz Ex Ey Ez mag phase n k orientation
3.1.6. SOURCE Group
ParametersNot implemented in this release
Parameters x y z Ex Ey Ez mag phase
3.1.7. COMMAND Group
3.1.8. OUTPUT Group
Parameters reltolerance maxcycles mincycles timestep
3.1.9. POSTPROCESS Group
phase state
Parameters variable xlo xhi ylo yhi zlo zhi x y z file
Parameters name xlo xhi ylo yhi zlo zhi file direction
supplied plane, xmin ≤ x ≤ xmax, ymin ≤ y≤ ymax, zmin ≤ z ≤ zmax
towards from xInside, yInside, zInside
Parameters name xinside yinside zinside xlo xhi ylo yhi zlo zhi
The value of coordinates can be polar or rectangular, and arrangement
Parameters file orientation xlo xhi ylo yhi zlo zhi phase indexn
Parameters frames variable1 variable2 variable3 variable4 variable5
Parametersfile orientation xlo xhi ylo yhi zlo zhi dt frames variable
variable6 variable7 variable8 variable9 xlo xhi ylo yhi zlo zhi file
MOVIE
level
Parameters name xlo xhi ylo yhi zlo zhi file xinside yinside zinside
DISSIPATION
level
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
PENALTY expression
3.1.11. SCHEDULE Group
Parameters iterations tolerance restarts
Stepping is not implemented in this release
3.2.1. Symmetry
3.2. The Computational Domain
Unfolded 2N-2 Rows
Actual Domain N rows Image Domain N-2 Rows Next Period
3.3. OBJECTS
3.4. MATERIALS
3.3.1. Perfectly-Matched Layers
3.5. SOURCES
3.5.1. POINT 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
e. Power dissipation in a load dissipation
c. Phase uniformity across a plane
d. RMS Voltage across terminal points
f. Reflection from an interface
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.3. ABS
3.8.2. Logical Operators
3.8.4. ACOS
3.8.5. ACOSH
3.8.11. CEIL
3.8.10. ATAN2
3.8.12. COS
3.8.13. ELINTK
3.8.20. LN
3.8.19. INTEGRAL
3.8.21. MAX
3.8.22. MIN
3.8.27. ROOT1D
3.8.26. RANDOM
3.8.28. ROUND
3.8.29. SIGN
3.10. Material Parameter Functions
3.9. Analytical Pupil Functions
1. Startup and Steady State
A. TEMPEST and General FDTD Information
2. Time step
periodstep+=2 i=periodstep%4 if i!=0 periodstep=periodstep+4-i
printftime step after adjustment %e\n,dtfflushstdout
dt=2.0*PI/omega*FLOATperiodstep
fprintfstderr,periodstep %d\n,periodstep
The run will produce lots of bitmaps at appropriately chosen locations
Appendix A. V-Antenna Optimization Run
A.1. POEMS INPUT DIPOLE2I.PAR
set phi=0 /* phase of excitation */ set ky0=step/lambda
Fundamental dimensions
set dipoleheight=0.2*um set dipolethickness=0.30*um
set kx0=0 /* direction of plane wave set loadlength=2*step
type=dielectric n=nload
DEFINE matname= Load
k=kload
END WORLD SUBDOMAIN ALL XRANGE 0 xsize YRANGE 0 ysize ZRANGE 0 zsize
zhi=zsize phase=0 state=steady file=Dipole2Iexi
END COMMAND COMPUTE maxcycles = 25 reltolerance = END OUTPUT
zlo2 = Zvertex-DipoleThickness/2 zhi2= Zvertex+DipoleThickness/2
FAN matname=PCL taper=linear taperpar=0
STORE Dipole2I.simplex MERIT diss*1e12
END OPTIMIZE
xlo=0 xhi=xsize ylo=0 yhi=ysize zlo=0 zhi=zsize file=Dipole2IPhaseEx
PHASEEX
POSTPROCESS
AMPLEX
file=Dipole2IPZXY.bmp phase=0 palette=redblue
zlo=zsize/2+step zhi=zsize/2+step, file=Dipole2IIndexXY.bmp phase=0
zhi = zsize-Tpml-step xinside=xsize/2 yinside=ysize/2 zinside=zsize/2
FLUX name=MiddleFlux , /* crossing the middle z=zsize/2 xLo = Tpml
file=Dipole2IPXXY.bmp phase=0 palette=redblue
file=Dipole2IPZZX.bmp phase=0 palette=redblue
file=Dipole2IPXZX.bmp phase=0 palette=redblue
file=Dipole2IAmpExZX.bmp phase=0 palette=flame
SLICE orientation=zx variable=PhaseEx , xlo=0 xhi=xsize
SLICE orientation=xy variable=PhaseEx , xlo=0 xhi=xsize
file=Dipole2IExIZX.bmp phase=0 palette=redblue
file=Dipole2IDissXY.bmp palette=redblue
ylo=ysize/2 yhi=ysize/2, zlo=0 zhi=zsize
file=Dipole2IExQZX.bmp phase=pi/2 palette=redblue END
rectangle node
A.2. tempest Input File DIPOLE2I.PAR.IN
0 100 index 1.000000
plot hy steady 0.250000 node 0 99 0 99 0 99 dipole2ihyq
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.00000064767135 98.83191 0.000001519205 Penalty =
Contracting by 0.5 in 1D 1-D shrink unsuccessful
0.00000069266248611 90.849532778 0.00000152214633334 Penalty =
0.000000883423566665 77.7563866665 0.0000017351705 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
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
1-D shrink unsuccessful
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
Converged in 56 function evaluations
B.1. FDTD and TEMPEST
Appendix B. Configuration
B.1.1. tempest patches
B.1.2. tempest limitations
B.1.3. Advice common to all or most FDTD programs
b. Understanding convergence
c. Hints and Kinks
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
Airy pattern Antenna 1, 39, 40, 45, 51, 52
INDEX
BASICSTEP 16, 18, 24, 54, 62 Boundary 7, 15, 19, 29, 31
C++ 7
Periodic boundary conditions 31, 34