1. You do not want to run SNLO on a Mac or under Linux.
You can run mlSNLO anywhere MATLAB runs - Windows, Mac OSX and Linux!
We offer both a standalone version (doesn't require MATLAB) and a MATLAB App version (requires MATLAB 2012b or later; MATLAB 2014b or later is recommended for best compatibility).
2. You never want to automate batch runs of SNLO functions.
mlSNLO includes the ability to call SNLO functions from MATLAB script files (this feature is available in the MATLAB App version only) - this lets you automate the process of optimizing a parameter in your design such as crystal length, input pulse energies, or mirror reflectivities. Detailed example script files are included for these SNLO functions: QPM, Opoangles, GVM, PW-mix-LP, PW-mix-SP, PW-mix-BB, 2D-mix-LP, 2D-mix-SP, PW-cav-LP, PW-OPO-SP, PW-OPO-BB, and 2D-cav-LP.
Here are two example plots that we generated with a single call to a MATLAB script:
3. You are never interested in modeling temperature profiles or thermal lensing in crystals.
mlSNLO includes a fast and accurate three-dimensional steady-state thermal model for rectangular crystals. You specify the shape of the heat source with supergaussian transverse shape and exponential longitudinal shape. The four sides of a crystal can be individually cooled (with temperature clamped at zero), or uncooled (with zero slope, indicating no heat flow out of that face). The model computes the three-dimensional temperature profile, the strength of the thermal lense and the thermal tilt at beam center.
Input form and computed temperature profile for a crystal with 1 cooled side:
4. You enjoy staring at your computer screen for long periods as a slow model grinds away.
On modern computers, the more complex models are around five times faster in mlSNLO than in the free version of SNLO!
5. You're happy with incomprehensible 3d plots, and don't wish to take advantage of MATLAB's powerful graphics manipulation.
Here are three examples of the improved graphics in mlSNLO. With a few tweaks the plots MATLAB produces are publication-ready!
MATLAB graphics allow you to rotate, zoom, and pan surface plots, and includes data cursors to retrieve (X,Y,Z) values. Movie playback is improved and movies can be paused and reversed.
Screenshots of a 2D beam profile, a d-effective surface, and a temperature profile
6. You hope AS-Photonics goes out of business because you want to see SNLO disappear.
If we shut our doors, it's likely neither the fancy & affordable MATLAB-based mlSNLO nor the old, free version of SNLO will be maintained & remain available for download.
7. You believe the price of mlSNLO is outrageous.
It will take you a up to a whole day to recoup the cost of mlSNLO in time saved! Besides, expert technical assistance is never useful.
8. You already got a copy of those suckers's software off your pals.
Takes advantage of highly optimized numerical libraries for low execution times
Takes advantage of hardware graphics acceleration for fast & attractive plotting
Allows for interactive zoom, pan, and rotation of 3D plots
Labels the axes in 3D plots, and includes tick marks to enable quantitative interpretion of 3D plots
Lets you save publication-quality plots
 Versions of Windows past Windows XP require the user to ensure that Data Execution Prevention is disabled for the executable file in the SNLO installation, but the end user might not have security privileges to modify this system setting. Additionally, some users report trouble printing from SNLO in Windows 10.
 "Batch processing" here means generating SNLO results from a range of input parameters. In the MATLAB App version of mlSNLO, you can call each of the SNLO model functions from the MATLAB commandline with a full set of input parameters - the same input parameters which are visible on the SNLO input form. You can also run a command to simulate pressing the SNLO function's buttons. This combination lets you create a program to automates the optimization of a nonlinear optical device. At least one batch processing example MATLAB script is included for each of the SNLO functions. One limitation of the standalone version of mlSNLO is that user-generated MATLAB scripts cannot be executed, meaning batch processing is not available in that version.
 Execution times are similar for both versions of MATLAB-based mlSNLO. In our comparisons, on a modern computer it takes roughly one fifth as long for complex 2D modeling (with a Intel Core i5 and 8 GB of memory).
Single User License Agreement
Single end-user license agreement for AS-Photonics software mlSNLO, a version of SNLO running as a Matlab app or running as a standalone application under Matlab runtime.
This agreement grants you, the computer software end-user, the following rights to use this product:
Your copy of mlSNLO may be used only directly by you.
You may install and use your copy of mlSNLO on any PCs used exclusively by you.
You may not rent, lease, or lend mlSNLO to any party.
Support services. AS-Photonics may provide you with support services related to mlSNLO. The provision and use of support services is governed by AS-Photonics policies described online. Any supplemental software code provided you as part of the support services shall be considered part of the mlSNLO product and subject to the terms of this agreement. If you provide technical information to AS-Photonics as part of the support service, AS-Photonics may use the information for its business purpose, including for product updates and development. AS-Photonics will use its best efforts to avoid using the information in a form that identifies you.
mlSNLO is protected by copyright and trademark laws and international treaty provisions. You must treat mlSNLO like any other copyrighted material for archival purposes only.
You may not alter, merge, modify, adapt, reverse engineer, decompile, or disassemble mlSNLO unless express authorization to do so is given to you by AS-Photonics.
AS-Photonics warrants that mlSNLO will, for a period of one year from the date of your receipt, perform substantially in accordance with AS-Photonics’ written materials accompanying it.
Support shall be substantially as described in written materials provided by AS-Photonics.
AS-Photonics will make reasonable efforts to solve any problem with mlSNLO.
Some states do not allow disclaimers of limitations to the duration of an implied warranty, so the above one year limit may not apply to you.
You expressly acknowledge and agree that use of mlSNLO is at your sole risk and that the entire risk as to satisfactory quality, performance, accuracy and efforts is with you.
To the extent not prohibited by law, in no event shall AS-Photonics be liable for personal injury, or any incidental, special, indirect or consequential damages, including without limitation, damages for loss of profits, loss of data, business interruption or any other commercial damages or losses, arising out of or related to your use or inability to use mlSNLO, however caused, regardless of the theory of liability, and even if AS-Photonics has been advised of the possibility of such damages. Some jurisdictions do not allow the limitation of liability for personal injury or of incidental consequential damages so this limitation may not apply to you.
mlSNLO comes with free updates (upon request) for a period of one year from the date of delivery of the software.