メインコンテンツ

addCoating

Add optical coating to lens surfaces in optical system

Since R2026a

Description

Add-On Required: This feature requires the Optical Design and Simulation Library for Image Processing Toolbox add-on.

addCoating(opsys,oc) adds an optical coating oc to both sides of the front and back surfaces of all lens elements in the optical system opsys. If the optical system opsys contains nested opticalSystem objects, the function does not apply the coating to lens elements in the nested optical systems.

example

addCoating(opsys,oc,CoatingSide=surfaceside) specifies the side of the lens surfaces to which to apply the coating.

Examples

collapse all

Create a broadband anti-reflective (AR) optical coating that consists of two alternating TiO2/SiO2 material layer stacks.

ocBBAR = opticalCoating(Name="BBAR_4l", ...
CoatingMaterial = ["TiO2" "SiO2"], ...
LayerMaterialIndex = [1 2 1 2], ...
ThicknessUnit = "nm", ...
LayerThickness = [14.6 36.5 129.1 95.5])
ocBBAR = 
  opticalCoating with properties:

                  Name: "BBAR_4l"
    IncidentAngleRange: [0 15]
       WavelengthRange: [300 800]
     PrimaryWavelength: 587.5618
                Medium: [1×1 opticalMaterial]
             Substrate: [1×1 opticalMaterial]
      CoatingMaterials: [2×1 opticalMaterial]
    LayerMaterialIndex: [1 2 1 2]
        LayerThickness: [14.6000 36.5000 129.1000 95.5000]
         ThicknessUnit: "nm"
             NumLayers: 4
        TotalThickness: 275.7000

Create an optical system containing an uncoated double Gauss lens by using the createDoubleGauss helper function, attached to this example as a supporting file. View the optical system in 2-D using the view2d function.

opsys = createDoubleGauss;
view2d(opsys);

Figure contains an object of type optics.ui.opticalsystemviewer2d. The chart of type optics.ui.opticalsystemviewer2d has title 55-mm F/1.2 for 35-mm SLR.

Apply the broadband AR coating you created to all lens surfaces of the optical system using the addCoating function.

addCoating(opsys,ocBBAR)

Input Arguments

collapse all

Optical system in which to add the coating to all lens elements, specified as an opticalSystem object.

Note

For lens elements with more than two surfaces, such as triplets, the addCoating function applies the coating to only the front and back lens surfaces.

Optical coating to apply to all lens elements in the optical system, specified as an opticalCoating object.

Lens surface side to which to apply the coating, specified as one of these options:

  • "front" — Applies the coating to only the fronts of the lens surfaces.

  • "back" — Applies the coating to only the backs of the lens surfaces.

  • "both" — Applies the coating to both the fronts and backs of the surfaces of each lens.

Tips

If you want to apply a coating to a only single lens or mirror element in an optical system, you must set the Coatings property of the corresponding LensElement or Mirror object, respectively. For example, to specify the front surface coating of the second element in the optical system opsys, as the broadband AR coating BBAR_4l, enter:

Lens1 = opsys.Components(2)
Lens1.Coatings = BBAR_4l;

Note that the back surface of the component remains uncoated. For more information about applying optical coatings to optical system components, see Apply Optical Coatings.

Version History

Introduced in R2026a