Sep 12, 2022

STOP Analysis of High-Power Laser Systems - Part 4

Category: Product News

High power lasers are widely used in a variety of applications, such as laser cutting, wielding, drilling, etc. The effect caused by absorption laser light in the optical system is noticeable. The performance of such optical systems will be degraded by heating from the high power laser, either due to bulk absorption of the lens materials or surface absorption via coatings. Modeling of such effects is necessary to ensure the focal length stability and the laser beam size and quality. In this series of 5 blogs we simulate laser heating effects, including the change of refractive index due to the increased temperature in the lens materials, as well as the structural deformation caused by mechanical stress and thermal elastic effect.

Preparation for FEA analysis

In this post we open the full optomechanical system in OpticStudio and prepare to record the amount of laser power that is absorbed as the beam passes through the lenses and mirror. We’ll then export this data in a format that can be imported to our FEA software.

The Detector Volume object

To obtain the absorbed flux data in our lenses we will a Detector Volume lens element in the system.

When using the Detector Volume we can take advantage of the nesting rule in Non-Sequential Mode to compute the absorbed flux inside objects such as lenses. If two non-sequential objects overlap in space then the behavior of rays in the overlapping regions is determined by the nesting rule. The nesting rule states: if a ray strikes more than one object at the exact same point in space, the last object listed in the NSC Editor determines the properties of the surface or volume at that point.

Add Detector Volume objects

To get the absorbed flux for the lenses, a Detector Volume object is added for each element. According to the nesting rule, the Detector Volume, that is i slightly larger than the corresponding lens element, is inserted before each lens in the NSCE. Parameters # X Pixels, # Y Pixels, and # Z Pixels specify the total number of voxels in each Detector Volume object. Communication with the FEA engineer at this point is useful to ensure a high enough resolution for good FEA analysis while not having so many voxels that a prohibitively large number of rays is required. We have decided in this example to use a moderate pixel sampling of 100 x 100 x 100.

Apply coatings to mechanical components

We now apply reflection, absorption and scattering properties to all mechanical components (CAD objects 14-26 in the NSCE). The coating AL_LASER is used to specify reflection and absorption characteristics, and scattering is defined using a Lambertian model with a Scatter Fraction of 1.

Object property settings

With all the imported CAD parts still selected, we open Object Properties…Type and tick the option ‘Object is A Detector’. This sets these objects as detectors (the mesh triangles used to render the CAD object are treated as pixels) so the absorbed fluence on the object faces can be recorded.

For the CAD parts used as detectors, the default number of facets that are used as pixels will probably not provide enough resolution to record the data accurately. We can make the facets/pixels smaller (and increase to number of pixels) by changing the Object Properties…CAD...Maximum edge length parameter from the default value of 0.

In this case we use Maximum edge length of 0.8 mm for each of the CAD parts.

System Explorer: Non-Sequential settings

With the default Minimum Relative Ray Intensity setting, a ray reflected from the coated surface of the CAD parts is terminated when it falls below 0.1% (1e-3) of the ray’s initial power. In our analysis or this high power laser, even rays with a relatively low fraction of their initial power will still cause heating of the system and must be accounted for. To avoid losing energy due to the threshold, set the Minimum Relative Ray Intensity to 1.0000E-007.

Ray trace and retrieve absorption data

After running a ray trace with the settings shown below, the absorbed flux data will be stored in detectors and ready for use and retrieval through ZOS-API.

The irradiance on the face of any ‘Object is Detector’ can be visualized in the Shaded model.

And the absorbed flux inside the Detector Volumes can be viewed in the Detector Viewer.

ZOS-API is a powerful tool that can help automate the data export process. In the following section we show how to use ZOS-API script to retrieve the flux data stored on the detectors and configure the output to meet the input requirements of your FEA package. If you are new to ZOS-API please see Getting Started with ZOS-API – Zemax for full guidance and inspiration on how to make the most of its capabilities.

Data format required in the example

In OpticStudio the different detector types can store various types of data. The following table summarizes the types of data we’ll extract from each kind of detectors for use in the FEA analysis.

The FEA software used for this example is Ansys Mechanical, which can import our absorbed flux at data as an external heat source for use in thermal simulations. The required format for the imported data is as follows:

X  Y  Z  AbsorbedData

X, Y, Z are the global coordinates for the center of each pixel, and the AbsorbedData is the value of the data type listed above.

Using ZOS-API to export absorption data

It is good practice to use a single consistent global coordinate system throughout the STOP analysis. If data is to be exported in Global coordinates, the appropriate coordinate transformation must be applied.

To automate this process, we have created Python script to retrieve, format and export the data. The script performs the following main actions:

  • determine the rotation matrix of each object in our system

  • Calculation of local coordinates for each pixel and retrieval of absorbed flux values

  • Conversion from local coordinates into global coordinates

  • Save results to .csv files

How to use the Python code

We run this code as an Interactive Extension in OpticStudio as follows.

  1. First open the non-sequential lens file, and run a raytrace, with ‘Use Polarization’ checked.
  2. Click Programming…Interactive Extension from and then run the ExportAbsorbedFlux.py code in a Python IDE

  3. Data will be saved as txt file in the folder specified in the code. The status of the data appending is displayed during running of the code:

We have successfully simulated the absorption of our laser beam as it passes through the optical system and generated files of the absorbed flux data. The is data, along with a model of our complete optomechanical system will provide the inputs for the structural and thermal analysis in our FEA tool. In the next blog we will show how to take output of the structural and thermal analysis and import into OpticStudio with the STAR module.

Find the full article and downloadable sample files on our Knowledgebase here.

Experience the power of Ansys Zemax optical design software, request a free trial today!