A Perfectly Matched Layers (
) is added to the model in the
Definitions node in the component where the physics is solved. In the frequency domain the PMLs can be used for the Pressure Acoustics, Acoustic-Structure Interaction, Aeroacoustics, and Thermoviscous Acoustics interfaces. In the time domain the PMLs only exist for the Pressure Acoustics, Transient interface. Note that for Pressure Acoustics, Frequency Domain models, the
Perfectly Matched Boundary is an alternative to the PML for radiation and scattering problems. This boundary conditions applies the PML automatically using the extra dimension machinery of COMSOL Multiphysics.
When creating the geometry for your model, it is advantageous to use the Layers feature in the geometry to create the PML domains. This ensures that the geometry is suited for a structured mesh. The physical thickness of the layers is not important in frequency domain models. Here a real stretching is applied to mathematically scale the thickness relative to the wavelength. The thickness should however be such that the mesh is more or less regular (avoid too thin mesh elements). In the time domain the thickness is important, see
Time Domain Perfectly Matched Layers for details.
When setting up a PML, you select the geometry type of the layer. This is only related to how the layer looks in the geometry. Typically, the predefined options Cartesian,
Cylindrical, or
Spherical can apply in most situations. Using these, COMSOL will automatically detect the layer thickness and define the local coordinates inside the PML. In some cases the automatic detection can fail (this can, for example, happen for certain imported CAD geometries). The automatic detection also fails if the domain is not the outer most entity in the geometry.
A workaround, when the automatic detection fails, is then to use the User defined geometry type. This advanced option makes it possible to define the local
Distance functions and layer
Thickness manually. For example, for a spherical PML geometry the typical distance function is
sqrt(x^2+y^2+z^2)-r0, where
r0 is the radius of the inner domain. The user-defined option can also be used for special layer shapes.
To verify that the geometry detection is correct, or a user defined geometry type is set up correctly, it can be useful to plot the normalized distance functions of the PMLs. The values should lie be between 0 and 1. Select Get Initial Value on the study (it is not necessary to solve) and then plot the variable <
tag>.sDist<i>, where
<tag> is the PML tag (
pml1,
pml2, and so on) and a number
<i> (1, 2, and so on) is added if several stretching functions are used in the PML, for example in a corner.
The choice of the Coordinate stretching type and the
PML scaling factor and the
PML curvature parameter depends on the problem at hand. A detailed description is given in the
PML Implementation section of the
COMSOL Multiphysics Reference Manual. In general, the
Rational stretching option is used for open radiation problems for propagating waves (it is efficient for many angles of incidence). The
Polynomial stretching option is good for systems with a mix of different wave types, for example, in multiphysics problems involving structural and acoustic waves, or problems containing a combination of propagating and evanescent waves. For the polynomial stretching type, the
PML scaling curvature parameter can in general be increase to a value between 3 and 5 for better performance at low frequencies. Note that when solving a model using an iterative solver the
Polynomial scaling should always be used to ensure convergence.
There is also a User Defined coordinate stretching type which allow users to define advanced stretching functions to handle special cases. The stretching can in this way be optimized to a special problem.
When a model contains a Background Pressure Field and PMLs, certain configurations will create incompatibilities that lead to erroneous behavior. The problem arises if a domain with a background pressure field is next to a domain without the feature (for example when setting up absorption problems) and the two domains have a common PML attached to them. Meaning that the PML next to the background pressure field touches the PML next to the domain without the background pressure field. In this case, there is an incompatibility at the common edge of the PMLs. In one PML domain the pressure DOF is interpreted as a scattered field, while it is the total field in the other. Note that you can set up models that contain this feature configuration as long as the PMLs do not touch.
In the time domain the PML does not include a real stretching component. This means that the geometrical thickness L, of the layer in the geometry, needs to be set adequately. When meshing the PMLs for time domain simulations, it is recommended to use a structured mesh in the same way as in the frequency domain. Use at least 8 mesh layers for the rational scaling and 6 for the polynomial scaling and the same mesh element size as that in the adjacent physical domain (a detailed investigation is available in
Ref. 41).
The frequency content of the transient signal should be considered when defining the layer thickness L. Assume most of th energy is carried in a band from
fmin to
fmax. This represents wavelengths from
λmax to
λmin (remember
λ =
c/
f). The geometrical thickness of the layer has two considerations to fulfill:
The recommended values of the PML scaling factor and the
PML scaling curvature parameter are
1, 3 and
1, 1 for the
Polynomial and the
Rational stretching types, respectively. For the
Polynomial stretching, the
PML scaling factor equal to
1 corresponds to the theoretical reflection coefficient
R0 = 10-3 from the interface between the physical domain and the PML for a plane wave.