These monitors provide time-domain information for field components over the course of the simulation. Time-domain monitors can consist of point, line, or area monitors to capture this information over different spatial extents within the FDTD and varFDTD simulation regions. For the purposes of extracting line widths of resonant structures through Fourier analysis, point time monitors with a down sample time of 1 are sufficient.
Memory and computational requirements: Generally, time monitors don't have a large effect on the simulation time. However, they can require large amounts of memory when recording data over a large spatial domain. When possible, use 1D rather than 2D or 3D monitors. Similarly, you can reduce the duration of time where data is recorded. Temporal down sampling is also used to minimize the amount of data collected. Finally, it is possible to control which field components are recorded on the Data to record tab.
The general tab for the time domain monitor includes options to edit the amount of data, and time period over which data is collected.
- Simulation type: Record the type of simulation data, default setting is ALL
- Stop method: End of simulation, Choose stop time, choose number of snapshots
- Start time: The time to start recording
- Stop time: The time to stop recording, choose stop time option
- Number of snapshots: the number of time step to record, related to the dt setting in mesh settings tab
Monitor type: The monitor type and orientation, this option will control the available of spatial setting below
- X, Y, Z: The center position of the simulation region
- X MIN, X MAX: X min, X max position
- Y MIN, Y MAX: Y min, Y max position
- Z MIN, Z MAX: Z min, Z max position
- X SPAN, Y SPAN, Z SPAN: X, Y, Z span of the simulation region
The DOWN SAMPLE X, Y, Z option is used to set the spatial downsampling performed by the monitor. A down sample value of N corresponds to sampling (recording) the data every Nth grid points. Setting the down sample value to 1 gives the most detailed spatial information (i.e. information at each grid point).
Data to record
- OUTPUT Ex, Ey, Ez, Hx, Hy, Hz, Px, Py, Pz: A set of fields with which the user can select what field components (Ex, Ey, Ez, Hx, Hy, Hz) or Poynting vector (Px, Py, Pz) to measure. In 2D simulations, only some components are non-zero (i.e. only Ex, Ey, and Hz are applicable for TE simulations). All the field quantities remain active to facilitate easy change between TE and TM simulations.
- OUTPUT POWER: For surface monitors (3D) and line monitors (2D) only. You can calculate the integrated power over the monitor surface. This requires much less memory after the simulation is completed and is particularly suitable for large parallel simulations where only the integrated power across a surface is required.
- PLUGIN MATERIAL: For point monitors only. When a plugin material is used in a simulation, the time monitor can return the storage fields if the material is chosen. Note: the point monitor has to be placed in the object that uses this plugin material in order to return meaningful storage fields.
|WARNING: This tab includes options which should only be changed if you are quite familiar with the meshing algorithm and techniques used.|
- SPATIAL INTERPOLATION: In FDTD generally, the electromagnetic field components are not recorded at the same point in space. Instead each component of the vectorial electric and magnetic fields are recorded at different locations in the Yee cell. In order to properly calculate the Poynting vector and electromagnetic energy density, the fields are interpolated to the same location in the Yee cell. This setting controls how the fields are interpolated. The options for time monitors are NEAREST MESH CELL (Default) and NONE. With NEAREST MESH CELL, the fields are interpolated to the nearest FDTD mesh cell boundary. With NONE, no interpolation is performed and each electromagnetic field component is recorded at a different position within the Yee cell.
Note: Spatial interpolation - NONE setting
Disabling the spatial interpolation is a very advanced feature. Only expert users that are very familiar with the FDTD method should consider using this feature. Most standard analysis functions (such as the transmission script function, the data visualizer, etc) assume that the spatial interpolation is enabled. They may not give the most accurate result when used to analyze such monitor data. All analysis must be done manually.
- RECORD DATA WITHIN PML: Collect monitor data within the PML boundary condition region. This is a very advanced option that should rarely be used. Contact Lumerical support before enabling this option. The simulation region - EXTEND STRUCTURE THROUGH PML option must be disabled when using this option.
- MIN SAMPLING PER CYCLE: This parameter determines the minimum amount of sampling per optical cycle that can be used. By default, it is set at 10.
- SAMPLING RATE: The actual sampling rate in Hz.
- DOWN SAMPLE TIME: This is the time step downsampling.
- E: Electric field data as a function of position and time.
- H: Magnetic field data as a function of position and time.
- P: Poynting vector as a function of position and time.
- SPECTRUM: The fourier transform of the electric and magnetic fields as a function of position and frequency/wavelength. (point monitor only)
- RESONANCES: Returns frequency, decay constant, Q-factor, amplitude and phase of resonances. For more information, see findresonances. (point monitor only)
Note: Manual calculation of SPECTRUM result
The following code can be used to manually calculate the spectrum data (eg. if it is necessary to adjust the frequency range of the data).
# this code can be used to manually calculate the # spectrum result from time monitor data # get E/H time domain fields E = getresult("monitor","E"); H = getresult("monitor","H"); # user can specify frequency range of interest f = linspace(50e12,1000e12,10000); # calculate czt of time domain data Exw = czt(pinch(E.Ex),E.t,2*pi*f); Eyw = czt(pinch(E.Ey),E.t,2*pi*f); Ezw = czt(pinch(E.Ez),E.t,2*pi*f); Hxw = czt(pinch(H.Hx),H.t,2*pi*f); Hyw = czt(pinch(H.Hy),H.t,2*pi*f); Hzw = czt(pinch(H.Hz),H.t,2*pi*f); # package results into a dataset spectrum = rectilineardataset("spectrum",E.x,E.y,E.z); spectrum.addparameter("lambda",c/f,"f",f); spectrum.addattribute("E",Exw,Eyw,Ezw); spectrum.addattribute("H",Hxw,Hyw,Hzw); # visualize dataset visualize(spectrum);
Note: Plugin material - storage fields
For point monitors inside an object that uses a plugin material, the data in the storage fields can be found in the rawdata returned by the monitor (see below).
- POWER: Instantaneous power as a function of time. This data is only returned when surface monitor (3D simulation) or line monitor (2D simulation) is used, with the "output power" option checked in the Data to record tab. For more information or an example using this data, see Parseval's theorem.
- STORAGE_FIELDS: Only for plugin materials. Extra data is available if the storage field is properly specified in the .cpp file when the material is complied. The software automatically chooses the x,y,z-direction where the fields are meaningful to show. For more information, see plugin material.