Is there any way to setup a tolerance on the m^2 of a beam?
I’m trying to see the effects of variating m^2 on my optical system.
Thanks,
Eli
Is there any way to setup a tolerance on the m^2 of a beam?
I’m trying to see the effects of variating m^2 on my optical system.
Thanks,
Eli
Best answer by Jeff.Wilde
Hi Eli,
Just to expand on the previous comments, if your problem can be handled in POP (i.e., if your system criteria can be evaluated using POP), then I think there is a reasonably straightforward way to obtain the results you may be seeking.
Let’s assume the non-unity M^2 value arises from a laser beam that is slightly multimode. To look at this situation from a statistical perspective, start by defining a beam in POP that is a coherent superposition of a fundamental Gaussian mode plus random contributions from the next higher-order mode (e.g., LG_00 + some amount of LG_01) as shown here:
Note the weights for the LG_01 modes are negative, which creates random values (see the help documentation). Now, in POP, set the “Seed” value equal to zero, so that every time POP is updated, it will do so with a different random combination of modes.
Here are a couple of examples of the generated beams:
Now, let’s assume that we are interested in coupling the beam into a single-mode fiber that supports only the lowest-order LG_00 mode (i.e., this is our system performance criterion).
For this demo case, I’m not using any optics (the lens data editor is empty), instead I’m just defining a multimode beam and then seeing how much of it couples into the fundamental mode. However, in general, you would have some optical path with the receiving fiber at the end.
Next, use POPD merit function operands to compute the M^2 values for a given beam (i.e., values of M^2 for x & y directions, along with their average and/or rms values). Also, include the fiber coupling value. There is one very important detail to take into account when using multiple POPD operands if the intention is for all of them to operate on the same beam. As noted in the help documentation:
So, we construct the MF as follows:
At this point, we can utilize the Monte Carlo tolerancing capability of OpticStudio to generate a random set of beams and record the M^2 and fiber coupling values. To do this, use a simple tolerance user script:
Note the tolerance data editor can remain blank, as the random beam generation is managed by the multimode beam script in POP. You can skip the sensitivity analysis, and conduct only a Monte Carlo run. Here are example M^2 distributions for 2,000 MC iterations, plotted using the histogram feature:
You can see that M^2 spans values from 1.0 to 1.5.
We can also plot the fiber coupling distribution. Moreover, we can easily copy/paste the results into Excel or Matlab and then plot the fiber coupling vs M^2.
As expected, we see a correlation between M^2 and coupling efficiency. So, we’ve accomplished our goal of seeing how a variation in M^2 affects the system performance metric.
Another interesting test is to change the initial POP beam definition so that constant amounts of the LG_00 and LG_01 modes are always present (i.e., turn off the random amplitudes for the LG_01 modes), but retain the random phasing between the modes, like this:
In this case, you should see the M^2 and fiber coupling values remain essentially constant across the MC samples even though the beam is changing its apparent shape.
Sorry for the long post, but I hope this is of some help.
Regards,
Jeff
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.