IBM Release 1.93 manual Perfectly-Matched Layers, Materials

Page 37

3.3.1. Perfectly-Matched Layers

PMLs are fictitious anisotropic materials that (usually) absorb whatever radiation falls on them from pre-specified directions. They work extremely well when they work at all, which isn’t 100% of the time.

PMLs don’t absorb in every direction, so different parts of the domain need different PMLs. This is such a pain that POEMS makes a valiant effort to automate it for you. It works as follows:

(i)If a PML touches a boundary, it will be set to absorb energy falling on that boundary from the centre of the domain.

(ii)If a PML touches more than one boundary, rule(i) will be applied to all of them. (iii)PMLs that touch both the upper and lower boundary of an axis will be automatically split in half down the middle so that (ii) can be applied to both halves.

(iv)PMLs must touch at least one boundary.

A solid block of PML filling the whole space is thus split into 8 blocks, each absorbing diagonally outwards. You can manipulate these rules to customize PMLs for your use. One common desire is to have PMLs covering the whole outer skin of the domain, with the faces, edges, and vertices all absorbing in different directions (26 blocks altogether). This is fiddly, so the HOLLOWBOX statement was added to POEMS to take care of it.

HOLLOWBOX is implemented by splitting the box up and letting the automatic PML handler apply rules (i)-(iv) to each block. The TILEDPLANE statement does the same for planar PML regions.

POEMS has heuristics for generating reasonable PMLs automatically, but these are not always reliable. Signs of trouble are checkerboard patterns, fields apparently originating in PML regions, floating-point runtime errors, and the generation of NaNs. This will happen every time if you put a material boundary near a PML, or if you have sources inside it. A reasonably safe rule is to put a PML no closer than 1 wavelength from a material boundary or a source. Plane waves and PMLs are a difficult combination in

TEMPEST.

3.4. MATERIALS

Materials used in POEMS are treated as isotropic, linear and time-invariant. tempest supports photoresist materials and has limited support for anistotropic ones, so if this becomes important it can be added in a future release.

3.5. SOURCES

POEMS has a rich array of sources, and when the PUPILFUNCTION order becomes available, it will be able to generate essentially any monochromatic propagating field.

3.5.1. POINT SOURCES

In continuous-space electrodynamics, static point sources are mathematically very simple. In electrodynamics, there are no monopole sources, since a monopole field is purely radial, whereas electromagnetic waves are purely transverse. The simplest physical

33

Image 37
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 Front-End Script poems.cmd Program OrganizationScript Operation Postprocessor Empost Fdtd Engine FIDO/TEMPESTCluster Control Visualization System VIS5DParallel Processing Poems Command-Line Options Command ReferenceGlobal Group Lambda FreqFunction HostsMacdef Which means that the host’s predefined hostname is not usedPrint MacroSET RandomseedSimulator Title World GroupVerbose BoundaryBasicstep Material GroupXrange Yrange DefineParameters epsReal epsImag muReal muImag Block Object GroupFAN Hollowbox GratingTiledplane 3DCURVE CurveCylinder Source Group Output Group Command GroupField Postprocess GroupCAD WebpageFlux FarfieldIntegral Modematch ListMOVIE3D MovieSlice DissipationVariables Optimize GroupGuess Store LimitPenalty Merit Parameters Schedule GroupRange 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 Worked Example Glass Ridge Waveguide to Free Space Coupler Worked Example Doped Silica Waveguide ModePredefined Constants Confine Reserved NamesArithmetic Operators Predefined Mathematical FunctionsABS Logical OperatorsAcos AcoshCeil ATAN2COS Elintk20. LN IntegralMAX MINROOT1D RandomRound SignMaterial Parameter Functions Analytical Pupil FunctionsFlattop Startup and Steady State Tempest and General Fdtd InformationTime step Page Appendix A. V-Antenna Optimization Run Poems Input DIPOLE2I.PAR END Material END Object END World Subdomain ALLEND Source END CommandEND Output 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 ConfigurationRelease Notes Running Vis5DWish list Beta Release Limitations Page Page Emdenormal Emunderflow IndexMatlab Maxordersources 81 Maxpointsources