Electromagnetic Template Library (EMTL)
Loading...
Searching...
No Matches
Detectors

In order to measure the fields inside the computational volume, detectors are needed. Detectors record the values of the fields at the points where they are placed. The values on the detectors are obtained by interpolation over nearby grid nodes. During the numerical experiment, the detectors record their readings in binary files. At the end of the calculations, when the Analyze() function is run, readable text files are created based on these binary files.

There are various types of detectors in EMTL that can be divided into two groups: universal and special detectors. At the same time, it is customary in EMTL to operate not with individual detectors, but with sets of detectors.

Universal detectors include:

  • a universal detector that records the history of the signal in the form of a table with columns t, x, y, z, Ex, Ey, Ez, Hx, Hy, Hz for time, coordinates and values of the fields E and H respectively. Based on its data, for example, you can build graphs using, e.g. Gnuplot or other plotting tools.
  • a special detector that creates input files with time, coordinates and values of the E and H fields for plotting and 3d representation in the ParaView program.

You can add a set of universal detectors using the AddDetectorSet() function, and a set of special detectors for ParaView using the AddVTKDetectorSet() function. In this case, it is necessary to specify two opposite corners of the detector grid and the number of detectors along the axes. If only one detector is needed, you can create a grid of detectors with dimension along the axes = 1 and coordinates of opposite angles equal to the necessary coordinates of the detector being created.

For universal detectors, you can also specify the following configuration flags (you can specify several by separating them with the symbol '|'):

  • DET_POINT (set by default) - create a separate file for each detector in this set of detectors;
  • ‘DET_TSTEP’ - create a separate file for each time step, but with readings from all detectors at once (this can be useful when creating animations);
  • ‘DET_MESH’ (set by default) - records data taken from the grid of fields E and H;
  • DET_SRC - records the analytical waveform at the point where the detector is located from the default set of sources or from the set specified in the srcid;
  • DET_F - the frequency Fourier transform is applied to the recorded data (only for point sources);
  • DET_ONFLY - at the same time, if the frequency Fourier transform is applied, it indicates that it must be done immediately during the calculation (after each time step).

For special detectors intended for use in the ParaView program, you can specify the number of domains, but which output data needs to be split. By default, this parameter is 1. Splitting the output data into domains may be useful when using a ParaView server running on a cluster that will process them in parallel.

Special detectors include:

  • NearToFar - used to convert fields from near field to far field;
  • RTA - is used to measure the transmission, reflection and absorption of a signal from a structure;
  • Flux - used to measure energy flows through surfaces.

The following detectors can be set:

  • task.AddDetectorSet: adds of detectors that capture the field distribution;
  • task.AddVTKDetectorSet: adds of detectors that capture the field distribution and output it in VTK format;
  • task.AddNearToFarSet: adds for converting the near field to the far field;
  • task.AddRTASet: adds a set of sensors formed by a maximum of two parallel planes perpendicular to some axis.