Using Amplitude Phase Masks
The Amplitude/Phase Mask is a positional apodization used to apply custom apodizations to a source. This feature is located on the Power Tab of the Detailed Source dialog.
The Amplitude/Phase Mask can be read from a file or constructed manually within the feature’s spreadsheet environment. Format of the spreadsheet allows for entry of two quantities per cell; Real & Imaginary, Power & Waves, or Amplitude and Phase.
The Amplitude/Phase Mask feature is located on the Power Tab of the Detailed Source dialog as shown below. Each cell of the spreadsheet contains two sub-cells denoted as Top and Bottom. The defaults for these sub-cells are 1 and zero, respectively.
Options for this feature are exposed by right-clicking in the spreadsheet region. These options, shown in the next image, allow the user to set the array size and dimensions, modify the contents of cells, import bitmaps into either the Top or Bottom cells, load data from a file, and set how the Top and Bottom cells are to be interpreted. The default format sets the Top cells as Power and the Bottom cells as Waves referenced to the source wavelength(s).
Bitmaps can be loaded into the Amplitude/Phase Mask. Typical applications include loading measured beam profiles, interferograms or phase screens. When a bitmap is loaded, FRED automatically sets the number of samples from the bitmap pixel counts in X and Y. However, the physical dimensions of the bitmap must be entered by the user either before or after loading.
The Set Sampling Array Size option provides this capability. Individual cells can be modified directly within the spreadsheet. Values either inside or outside a highlighted region of cells can be modified using Modify Cell Values. The dialog includes options for setting, multiplying by or adding to Top or Bottom cells a constant, linear, quadratic or Gaussian function. These cell modification options are available only in the GUI.
Loading from file
There are two options available from populating the Amplitude/Phase Mask from file data. First is the option Replace Data with File Data. When using this option, the file must be formatted as described in the associated Help article. The first line of the file header specifies the file type as shown below. The second line contains the word format followed by two keywords and two numerical factors. The keywords specify the data type and the numerical factors specify the x- and y-dimensions of the data array. These header lines are followed by data formatted in N rows and 2N columns.
format [real,power,amplitude] [imaginary, waves, OPL,phase] xdim ydim
A second option relies upon the script included with this article (see below). This script has been designed to read both legacy *.dat files (Irradiance only) and the current FRED Grid Data *.fgd file formats containing Irradiance or Complex Scalar Field data. When run, the user first chooses a source from a list and specifies if the source is to be coherent or not. Next, a file dialog is presented allowing selection of either an *.fgd or *.dat file. If a *.data file is selected, the script creates and saves the data in an *.fgd file. The script then populates the Amplitude/Phase Mask for the selected source and sets the data type. The user should always verify the source by creating its rays and calculating either the Irradiance or Scalar Field.
Note regarding dimensions:
The Min/Max X & Y values of the Amplitude/Phase Mask spreadsheet (set in the or xdim-ydim) are values at the edge of the outer pixel. The Min/Max X & Y values associated with Analysis Surfaces is user-selectable (at edge or at center of outer pixel). The default is at edge. Pixel data stored in *.dat files is at the center of the outer pixel. Pixel data stored in *.fgd files is at edge of outer pixel.
Note regarding Ray Grid:
Since the Amplitude/Phase Mask is a rectilinear grid of data, we recommend using the Ray Positions type Grid Plane on the source Positions/Directions Tab. In order to achieve the highest fidelity between the Amplitude/Phase Mask distribution and that of the source, the user should endeavor to locate one ray in each cell. The script provided imposes this condition.
Script file: load_ampphzmsk.frs