IBM Release 1.93 manual Computational Domain, Symmetry

Page 35

3.2. The Computational Domain

3.2.1. Symmetry

Many technologically useful devices have a periodic structure. The periodic boundary conditions assumed by POEMS are a natural fit to such structures, which can be simulated very efficiently. This happens automatically if you leave out the absorbers on the sides facing the periodic direction. Almost as many devices exhibit symmetry planes. A domain with a symmetry plane, illuminated symmetrically, will exhibit completely symmetric fields, so no extra information is generated by simulating both halves. Splitting the domain in half down the symmetry boundary can save half the run time and half the memory, while preserving the same level of detail in the results. Domains with more than one symmetry boundary save even more (though this begins to restrict the illumination more severely). POEMS (via support built into TEMPEST, FIDO, and EMPOST) supports symmetrical simulations.

It’s important to visualize the symmetry arrangement correctly, and it isn’t what one might first think: A symmetry plane actually slices right through the centre of the outermost elements. Say the X axis has 100 cells, numbered 0-99. Normally, periodic boundary conditions apply, and cell 0’s neighbours are 1 and 99. If X is a symmetry direction, cell 0’s neighbour is cell 1 on both sides. That is, a 1-block wide layer lying against the symmetry axis has the same effect as a 1-block layer in the middle of the unfolded domain. A 2-block layer against the symmetry axis is equivalent to a 3-block layer down the middle of the unfolded domain.

Unfolded

2N-2 Rows

0

1

2

3

4

5

6

7

8

4

3

2

1

0

1

2

3

4

Actual Domain

N rows

Image Domain N-2 Rows

Next Period

Figure 2.2 Geometry of a symmetry boundary with N=5

31

Image 35
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 Hosts FreqLambda FunctionMacdef Which means that the host’s predefined hostname is not usedPrint MacroSimulator RandomseedSET Boundary World GroupTitle VerboseDefine Material GroupBasicstep Xrange YrangeParameters epsReal epsImag muReal muImag FAN Object GroupBlock Tiledplane GratingHollowbox Cylinder Curve3DCURVE Source Group Output Group Command GroupWebpage Postprocess GroupField CADIntegral 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 FunctionsAcosh Logical OperatorsABS AcosElintk ATAN2Ceil COSMIN Integral20. LN MAXSign RandomROOT1D RoundFlattop 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 DIPOLE2IEXQ Postprocessor orders DIPOLE2I.ORDERSALL DIPOLE2IEXIDIPOLE2IEZQ DIPOLE2IEYIDIPOLE2IEYQ DIPOLE2IEZIPOSTPROC.1.PARMSTRING MiddlefluxPOSTPROC.1.NAME Array AmplexFF2 DIPOLE2IPHASEEXArray POSTPROC.2.PARMSTRINGDIPOLE2IPZ DIPOLE2IPXPOSTPROC.6.NAME Array PoyntingzSlice Indexn POSTPROC.9.PARMSTRINGPOSTPROC.10.PARMSTRING POSTPROC.11.NAMEPOSTPROC.14.NAME Slice PoyntingzPOSTPROC.13.COMPARISONDOMAIN DIPOLE2IPZXY0.BMPSlice Amplex POSTPROC.16.COMPARISONDOMAINDIPOLE2IPXZX0.BMP POSTPROC.17.NAMEDIPOLE2IDISSZX0.BMP DIPOLE2IPHASEEXXY0.BMPDIPOLE2IPHASEEXZX0.BMP POSTPROC.20.COMPARISONDOMAINDIPOLE2IEXQZX0.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