Zemax Physical Optics Propagation tool – POP - provides a way of modelling coherent beams as they would move through a sequential optical system and the ZBF format provides a simple bidirectional interface between Lumerical and Zemax Optic Studio. In contrast to ray-tracing methods, POP works by tracking the amplitude and phase of the wavefront, a more accurate picture for structured light. Physical optics generally requires more computing power and is more challenging to use; however, it can be a powerful tool when the following ray tracing assumptions break down:
- There is complicated coherent phase structure to the beam.
- The beam is collimated over long distances or has multiple foci.
- Diffraction effects are important in regions away from the focus,
POP is appropriate for tracking a paraxial\skew Gaussian laser beam or for coupling a laser to simple fiber, and uses scaler diffraction theory with paraxial approximations.
Ansys Lumerical provides methods of solving Maxwell’s equations numerically making minimal approximations. This level of accuracy is important when looking at wavelength scale resonance, scattering, or light guiding structures, for example, diffraction gratings, holographic coatings, or photonic crystal fibers.
Together with Lumerical it can be useful to look at coupling to more exotic guided mode structures or looking laser beam interaction with wavelength scale structures.
For complex optical systems that require tracking the evolution of coherent structured light, and the interaction with advanced micro-structured optical components we provide a bidirectional gateway for transferring field information through the ZBF format.
Given the complicated nature of these workflows we have provided some guidelines to help users get started as quickly as possible, avoid common pitfalls and provide insight into whether the workflow is appropriate in the first place.
Export ZBF from Lumerical
To export ZBF results from Lumerical optical solvers there are several options available. In MODE or FDTD can export the mode solutions and monitor results directly to ZBF format via GUI or through script. Alternatively, you can export E field rectilinear data through zbfwrite command. Performing far-field projections on field datasets before exporting allows you to avoid directly passing the near field data, which is important in certain cases. To bring the results one needs to copy the relevant ZBF files to the correct folder.
From FDTD
To export a field profile from a 2D monitor in FDTD you can simply right click on the results and click export to ZBF. The script command zbfexport will perform the same function, by passing the name of the monitor.
From Mode
From MODE FDE one can use the zbfexport command or the GUI to directly export the modes in global deck. This is usually OK, when looking at low index contrast waveguides like fibers - where the mode size is comparable to the vacuum wavelength. However, when you have something like a single mode silicon waveguide the divergence of such a terminated structure is too high for POP to handle – see beam divergence.
Export Far-field Projection
Due to POP’s assumptions, it is not always appropriate to export the fields from Lumerical directly. See important considerations for more discussion. Far-field Projections FFP allow you to project some distance through a transformation that is mathematically similar POP; however, FFP methods incorporate all E, and H fields and can account for many non-idealities. POP makes assumptions to speed up the calculations for larger systems, and by projecting to the far-field you can usually minimize any errors associated with these assumptions. POP is required for looking at interactions with other surfaces in the optical system.
The FFP methods can return the fields on a Spherical and Cartesian bases. To work with POP, we need to choose a cartesian plane, normal to the optical axis. This can be done via the farfieldexact script command. Once we have transformed the nearfields to the specified plane through script, we can export E fields through script zbfwrite.
Import ZBF to Lumerical
If you are looking at the propagation of a coherent beam and need to understand how it will behave in some region with wavelength scale features, then you should bring your fields from Zemax to Lumerical using a ZBF file. For example, you may wish to use MODE to understand how a given beam profile will couple to a particular fiber or edge coupler. Alternatively, you may want to use a realistic beam profile in FDTD to precisely observe how sub-wavelength structures affect the wavefront scattering.
FDE Deck
In MODE one can load a ZBF profile by right clicking in the deck window of the eigensolver analysis window. The solver will load your ZBF data, but will use the XY plane used by the zbf file. If you are not using a z-oriented FDE solver you should use the script command.
The script command zbfload works the same way, loading the file data into the FDE DECK as zbf_data. Each subsequent import will be appended with a number if the zbf_data has not been cleared. Uses the axis argument to Note that you will lose the longitudinal fields through this export -> import process.
FDTD Import Source
To simply import the ZBF data one can use zbfread, which returns beam data as structure containing the field and index. One can inspect this result and use it as a source. When defining an import source, the field profile is sufficient, but without H field data it is not unique. This will result in the source injecting light both forwards and backwards from the plane. Because of the coordinate mismatch you can use the axis parameter to specify the injection direction.
One can also import the ZBF beam profile using zbfload script command. This creates a dataset that can then be used to define the import source. This has E, and H field information that has been interpreted from the ZBF data. It accepts an argument to specify the injection axis, and the ability to offset the field data based on a vector in R3. This doesn’t support backwards propagation though; manual post-processing is required.
EME Port
The EME port allows you to import ZBF data directly through GUI. When using a script, you must first convert ZBF to .mat file though, and use the importdataset.
Important Considerations
Pop breaks down in two cases, rapidly diverging\converging beams, and propagation at non-normal incidence to the plane. In both cases the longitudinal field components play an important role in the physics. Lumerical FFP methods can be used to avoid inaccuracies in either case.
Longitudinal Components
Zemax Optic Studio assumes TEM propagation in POP meaning that there are zero field components normal to the plane of interest. Furthermore, it assumes that the light is propagating normal to the plane and so can readily calculate the H fields from these assumptions. This approximation breaks down for quickly diverging\converging beams, typically a half angle of 20 degree is used as a guideline; although, there is no strict cutoff.
Coordinates and Sampling
The ZBF file will always use an XY plane since the coordinate system in Optic Studio is naturally propagating along Z. The Lumerical data will be resampled to the nearest power 2^n with (0,0) at {n/2+1,m/2+1} point. The spatial extent of the field profile is considered, but the actual coordinates are not. Therefore, when reimporting the values will be nearly centered around zero in the XY plane. One needs to use the axis argument and use the offsets argument in zbfload. Alternatively, one could permute the X,Y,Z field values and shift the coordinates through script.
Non-normal propagation
Given that the field components normal to the plane of the field profile are ignored, one cannot necessarily take an arbitrary field profile from Lumerical and export it to Zemax. There is an inherent assumption that the light is propagating normally to the field profile. It is best to apply a coordinate transformation to the fields use FFP. One needs to know the propagation direction of the light to define an appropriate plane to export.
Guard Band
Mathematically POP is a spatial fourier transform, much like the farfield projection techniques. To avoid artifacts in the results it is critical to ensure there is sufficient space around the beam.
Phase Reference
Outside the Rayleigh Range the phase is referenced to a sphere with radius equal to the distance from the beam waist. This reference sphere is not accounted for in Lumerical, so avoid working between Lumerical and Optic Studio outside of the Rayleigh range.
See Also
- Using Physical Optics Propagation (POP), Part 1: Inspecting the beams
- Using Physical Optics Propagation (POP), Part 2: Inspecting the beam intensities
- Using Physical Optics Propagation (POP), Part 3: Inspecting the beam phases
For ray tracing interoperability refer to the following documentation regarding regular periodic subwavelength structures.