IBM Release 1.93 manual Tempest and General Fdtd Information, Startup and Steady State, Time step

Page 53

A. TEMPEST and General FDTD Information

POEMS relies on the finite-difference time domain algorithm of Yee for its calculations. The Yee algorithm simulates the Maxwell curl equations directly, on two interpenetrating grids, half a step apart in each axis: one for H and one for E. Because each E component is completely surrounded by H nodes, and vice-versa, Ampere’s and Faraday’s laws can be simulated in small-scale integral form, rather than differential form, and because the desired simulation point is exactly in the middle of the block, the Yee algorithm achieves second- order accuracy in both space and time.

Compared with finite-element techniques, FDTD tends to be faster but much more memory- intensive, because each cell requires six floats for the field components plus (in the simplest implementation) an int specifying which of the known materials occupies the cell. FDTD is also harder to apply on an irregular grid, so most FDTD codes specify a uniform cubical grid over the whole simulation domain, and FIDO/TEMPEST is no exception. There’s a very great deal of information about FDTD and related methods in Taflove & Hagness, Computational Electrodynamics: the Finite Difference Time Domain Method., 2nd Ed., Artech, 2000.

1. Startup and Steady State

TEMPEST uses a hard-coded 2-cycle soft start. By turning on the sources gradually, settling artifacts are reduced and convergence time reduced. For many purposes, e.g. computing amplitudes, phases, Poynting vectors, and power dissipation density, both the real and imaginary parts of the field variables are required. POEMS computes these by the simple expedient of letting FIDO/TEMPEST run for an extra quarter cycle, which works fine for steady state, but gives rise to edge artifacts in transient simulations. These artifacts, which can be seen clearly in Figure 2.9, arise because the quadrature component has had a quarter cycle longer to propagate into the simulation domain, so its leading edge and the two-cycle taper are in different places compared with those of the in-phase component, giving rise to odd ripples and unphysical apparent energy sources and sinks.

2. Time step

Being a nearest-neighbour algorithm, FDTD advances information across the grid at the rate of one block per time step. As one might expect, if this rate is faster than the speed of light in the materials, the simulation becomes unstable. Because of the interpenetrating grids for E and H, the simulation actually proceeds in half-steps, deriving H from E and then E from H. Adjacent E and H nodes are separated by half the body diagonal of a cell, and the minimum half-step is the time taken to cross this distance in the fastest (lowest-index) material. Thus the minimum full time step Δtmin is given by

TEMPEST chooses its time step just longer than this value, and then adds a little more to make sure that the number of time steps per period (period_step) is an integer divisible by 4. This isn’t numerology. We usually need to get in-phase (I) and quadrature (Q) field components for further processing. The I and Q components are a quarter cycle apart, so choosing the time step this way avoids the need for interpolation.

49

Image 53
Contents IBM T. J. Watson Research Center Yorktown Heights, NY Page IBM T. J. Watson Research Center Yorktown Heights, NY HOW Poems Works Using PoemsMotivation Chapter IntroductionPhilosophy Optimization StructurePage Poems system organization Script Operation Program OrganizationFront-End Script poems.cmd Postprocessor Empost Fdtd Engine FIDO/TEMPESTCluster Control Visualization System VIS5DParallel Processing Global Group Command ReferencePoems Command-Line Options Lambda FreqFunction HostsMacdef Which means that the host’s predefined hostname is not usedPrint MacroSimulator RandomseedSET Title World GroupVerbose BoundaryBasicstep Material GroupXrange Yrange DefineParameters epsReal epsImag muReal muImag FAN Object GroupBlock Tiledplane GratingHollowbox Cylinder Curve3DCURVE Source Group Output Group Command GroupField Postprocess GroupCAD WebpageIntegral FarfieldFlux Modematch ListMOVIE3D MovieSlice DissipationGuess Optimize GroupVariables Penalty Merit LimitStore Range Schedule GroupParameters Symmetry Computational DomainObjects Materials Perfectly-Matched LayersPlane Waves Page Beam Sources Merit Functions OptimizationPhase uniformity across a plane 10 Optimized V antenna refractive Worked Example Optimizing a V AntennaPage Predefined Constants Worked Example Doped Silica Waveguide ModeWorked Example Glass Ridge Waveguide to Free Space Coupler Confine Reserved NamesArithmetic Operators Predefined Mathematical FunctionsABS Logical OperatorsAcos AcoshCeil ATAN2COS Elintk20. LN IntegralMAX MINROOT1D RandomRound SignFlattop Analytical Pupil FunctionsMaterial Parameter Functions Time step Tempest and General Fdtd InformationStartup and Steady State Page Appendix A. V-Antenna Optimization Run Poems Input DIPOLE2I.PAR END Material END Object END World Subdomain ALLEND Output END CommandEND Source END Optimize END Postprocess Amplex PhaseexPage Page Page END Tempest Input File DIPOLE2I.PAR.IN Written by Phil Hobbs Pages of pointsource statements omitted ALL Postprocessor orders DIPOLE2I.ORDERSDIPOLE2IEXI DIPOLE2IEXQDIPOLE2IEYQ DIPOLE2IEYIDIPOLE2IEZI DIPOLE2IEZQPOSTPROC.1.NAME MiddlefluxArray Amplex POSTPROC.1.PARMSTRINGArray DIPOLE2IPHASEEXPOSTPROC.2.PARMSTRING FF2POSTPROC.6.NAME DIPOLE2IPXArray Poyntingz DIPOLE2IPZPOSTPROC.10.PARMSTRING POSTPROC.9.PARMSTRINGPOSTPROC.11.NAME Slice IndexnPOSTPROC.13.COMPARISONDOMAIN Slice PoyntingzDIPOLE2IPZXY0.BMP POSTPROC.14.NAMEDIPOLE2IPXZX0.BMP POSTPROC.16.COMPARISONDOMAINPOSTPROC.17.NAME Slice AmplexDIPOLE2IPHASEEXZX0.BMP DIPOLE2IPHASEEXXY0.BMPPOSTPROC.20.COMPARISONDOMAIN DIPOLE2IDISSZX0.BMPDIPOLE2IEXQZX0.BMP POSTPROC.24.COMPARISONDOMAINRun Results DIPOLE2I.SIMPLEX Page Page Page Page Page Tempest patches Fdtd and TempestTempest limitations Advice common to all or most Fdtd programsSample X11 Configuration Window System ConfigurationWish list Running Vis5DRelease Notes Beta Release Limitations Page Page Matlab IndexEmdenormal Emunderflow Maxordersources 81 Maxpointsources