SonoAnalyzer Pro version 2.3.0 (beta)

Announcing the long-awaited release of a new SonoAnalyzer Pro, version 2.3.0 beta. This introduces a new, much requested model type called "STEP multi-element". As the name implies this allows combining multiple STEP files containing geometry, or a single STEP file containing the geometry for multiple components, or both. No matter how the component geometry is defined, different materials can be selected for each individual component. As this is a beta release and the new model type is for SonoAnalyzer Pro only, new versions of SonoAnalyzer OE and Free will not be released this time.

To demonstrate the new model type a simple demo model is included in the SonoAnalyzer Pro package. This is a concept for an ultrasonic scraper with a common utility-knife blade clamped into an aluminium stepped sonotrode using two small screws. All four components are defined in a single STEP file and entered as three geometry sub-tabs in SonoAnalyzer (one tab for each material - the two screws are selected together on the third tab).

In the SonoAnalyzer graphics window there is an additional option for this new model type only: Single material display. On the geometry view (alfer redraw, before analysis) and on the animation view (after analysis) the area on the left of the graphics window, normally used for a key on contour plots, now shows a list of materials used in the model. Click on any one of the material labels to show only that material, or click on the "All materials" label to return to the standard view of all components. This feature works alongside the existing sectional views (double-click on the graphics window to toggle through available sections).

Some deprecated features are not available in this model / version, notably external graphics using the CalculiX cgx program, .stl file import and the use of Netgen for mesh generation. If any users have a specific need for these please contact me to discuss your options.

To support the new analysis, new pro analysis servers are also required (designated v3, replacing the earlier v2 servers). For cloud-server users there is an option within SonoAnalyzer to request an upgrade - just click the OK button on the warning popup that appears when the new model type is selected with a v2 analysis server. For users of locally-installed analysis servers a new Windows binary will be available to download shortly.

As always, if you find any issues please let me know. More details follow.

SonoAnalyzer Pro, OE and Free - version 2.2.0 (release)

Announcing the long-awaited release of SonoAnalyzer version 2 - now available to download in the usual Pro, OE and Free editions. This is designated version 2.2.0. It includes dramatic improvements in performance and responsiveness on large models, several new features and many bug-fixes. As always, if you find any issues please let me know. Notable changes include:

Performance: Changes to the internal data structures and processing reduce load times by 50 to 90% on larger models.

New features: Auto-tune restored, new displacement contour options, new sectional views, improved control over startup and loading results from cache.

Bug-fixes: Several issues addressed.


More details follow.

SonoAnalyzer Pro, OE and Free - version 2.1.2 pre-release 6

A significant update release of SonoAnalyzer version 2 is now available to download in the usual Pro, OE and Free editions. This is the sixth(!) pre-release, or PR6. It includes some bug-fixes, some improvements to reduce memory usage and support for another auto-mesher: Gmsh. As always, if you find any issues please let me know. Notable changes include:

  • Alternative mesher Gmsh to replace / complement Netgen when meshing user-provided geometry.
  • Fixed a bug causing some analyses to fail when Windows was set to non-English regional settings.
  • Reduced memory usage by reading displacement / stress data only for visible surfaces.
  • Added new "High-frequency #4 user-defined" element. Length can be as small as 2mm - useful for small parts of multi-component analyses.
  • New dialog allows user to clear old calculation files from remote FEA servers, including cloud servers (freeing disk space as required).


More details follow.

SonoAnalyzer Pro, OE and Free - version 2.1.0 pre-release 5

A significant update release of SonoAnalyzer version 2 is now available to download in the usual Pro, OE and Free editions. This is the fifth (and possibly final) pre-release, or PR5. It includes several useful new features particularly for the new user-geometry models and fixes some bugs. As always, if you find any issues please let me know. Notable changes include:

  • Support for MS Windows 10 monitor scaling
  • Better control of exported images
  • Option to resume a consistent window size and location on restart
  • 3D axis display
  • New mouse controls on graphical display
  • Import .stl (stereolithography) format files
  • New job-handling and reporting system
  • Performance improvements processing complex geometry

For full details, read on...

FEAServer - setup.exe new version

I've uploaded a new build of the FEAServer package (CalculiX, FreeCAD and NetGen free software in a convenient standalone package), replacing FEAServer-setup.exe from June 2020. The new version FEAServer2.01-setup.exe contains the same software but with updated documentation and an improved RunOnce.exe program.

The Windows versions of FreeCAD and NetGen were compiled using Microsoft Visual C++ and have dependencies on two different versions of the Microsoft Redistributable package - FreeCAD uses the 2013 edition and NetGen the 2015. These libraries are also installed by a wide variety of other software and (in the case of 2015) even included in some versions of Windows 10, so in most cases there is no need to reinstall them. But if you do have a system on which these libraries aren't already installed, eg. a brand new PC, the included software will not run without them, whether standalone or through SonoAnalyzer.

In the case of FreeCAD and the 2013 edition the installer was included but instructions on how to install it were buried in the README.txt file. The installer for the 2015 edition required by NetGen was not even in the package. I apologise for this oversight on my part.

In the new package (version 2.01), both installers are included (in the Utilities directory) and will be installed automatically by the "RunOnce" program on completion of the install. In addition this program now creates Windows batch files in the Utilities directory to manage paths (for the different Python versions) and other environment variables so that FreeCAD and NetGen can be conveniently run as standalone programs. There is also a "startx" batch file to start the Cygwin X11 (graphics) server used by cgx (the CalculiX pre and post-processor) and a cgx batch file to run cgx itself.

If you have already downloaded an earlier version, either FEAServer-setup.exe or you can download only the new content in the much smaller package FEAServer2.01Utils-setup.exe. When running the installer please choose the same directory where you previously installed the full package.

The two new packages can be obtained from the links on the Downloads page.

SonoAnalyzer Pro, OE and Free - version 2.0.9 pre-release PR4

Another update release of SonoAnalyzer version 2 is now available to download in the usual Pro, OE and Free editions. This is the fourth "pre-release", or PR4, and fixes several bugs particularly in the user-geometry models. As always, if you find any issues please let me know.

This update includes mostly bug-fixes as follows.

Problems loading user-geometry models: In certain circumstances SonoAnalyzer would fail to read the original STEP file. Making this worse, the error messages produced were not representative of the real issue (eg. "Unknown / missing or conflicting units definition..."). This could occur even with the demo model provided.

"Save results" on STEP import models was failing to include the original STEP file in the package, requiring the separate loading of both the model (.sa1) and results (.saz).

Negative axis options (-x, -y and -z) were not working properly in demo mode - SonoAnalyzer Free and OE.

Meshing error handling: In the event of an unrecoverable meshing error the user has the option to send information about the problem to help improve SonoAnalyzer. However in the case of user-geometry models the critical STEP file was not included in the package of information. From 2.0.9 it will be. Note that all such information will be held in strict confidentiality and used only for the development of SonoAnalyzer.

"Preparing to save results. Please wait" status was being removed before the preparation was complete.

Additional interpretation of messages generated by Netgen (also shown in console).

Added additional information in Pro servers dialog - now includes "This server is currently selected for use."

Added option in File menu: "Reset SonoAnalyzer" - clears cache and returns SonoAnalyzer to initial state.

SonoAnalyzer Pro, OE and Free - version 2.0.8 pre-release PR3

Another update release of SonoAnalyzer version 2 is now available to download in the usual Pro, OE and Free editions. This is the third "pre-release", or PR3, and includes some useful developments in the user-geometry models. As always, if you find any issues please let me know.

This update includes some bug-fixes and new features, as follows.

New axis options: -x, -y and -z (user-provided / STEP geometry):

It's a convention for SonoAnalyzer that the sonotrode axis is aligned to the y axis and the lowest value of y (generally zero) corresponds to the input surface while the largest value is the output. However there's no particular reason why user-defined STEP geometry should follow the same convention. This was the reason for offering a choice of axis in SonoAnalyzer version 2, but it didn't address the possibility that the user geometry might be aligned in the opposite direction. With geometry that goes from inpu to output in the negative direction along the chosen axis, SonoAnalyzer up to version 2.0.7 would reverse the input and output faces, turning a step-up sonotrode into a step-down.

In version 2.0.8 this issue is addressed by allowing the user to choose negative axes, reversing the direction of input and output.

Sectional views:

Some further improvements have been added to the sectional views added in version 2.0.7. Now both the original elements and the elements divided at the cut-plane are now generated, with only one set being displayed (depending on whether sectional view is enabled). As a result there is no longer any down-side to having the sectional view available and accordingly the  new checkbox "Enable sectional view" (introduced in 2.0.7) has been removed.

In SonoAnalyzer Pro the export of STEP files from other models has also been modified to create surfaces that naturally break along the cut surface, minimising the need for modification when importing models generated by SonoAnalyzer itself. The same modification will also be done for OE

Performance improvements:

In complex models (user-provided STEP geometry) with thousands of elements there was a marked slow-down in loading / reloading the model view, caused by the conversion of the solid model (required for FEA) to a surface model used for viewing. In the initial generation a modest improvement has been achieved by code optimisation but once the surface model has been created it's now saved to file, making for a very significant speedup on subsequent reloads.

Smoothing improvements:

User-geometry models employ a mesh of 10-noded tetrahedral elements with mid-side nodes. While the corner positions are generated automatically by NetGen, SonoAnalyzer attempts to adjust the positions of the midside nodes to better conform to the shape of the sonotrode. Up to version 2.0.7 this was limited to searching for surface corner nodes at the same distance from the central axis and adjusting the midside node between them to match the radius. At version 2.0.8 the adjustment routines have been improved to directly read the imported STEP file and extract locations of cylindrical, conical and toroidal surfaces. This feature is still at an early stage of development and user feedback would be much appreciated.

SonoAnalyzer Pro, OE and Free - version 2.0.7 pre-release PR2

A quick update release of SonoAnalyzer version 2 is now available to download in the usual Pro, OE and Free editions. It's still nominally a "Pre-release" (PR2) but now close to full functionality. As always though, if you do discover an issue please let me know.

This update includes some bug-fixes and new features, as follows.

New tetrahedral meshing options (user-provided / STEP geometry):

The standard meshing parameters set by the "Very fine" to "Very coarse" mesh size options were found not to work well for some larger sonotrode designs, producing meshes that were too coarse in some regions and too fine in others. New options "Large, very fine" to "Large, very coarse" have been added, giving a more uniform distribution of element sizes that tend to work better for large models. For ultimate control a new "User defined" option has also been added which allows the user to specify NetGen parameters directly in the advanced Pro-Options dialog.

Sectional views:

Supporting sectioned views for tetrahedral elements required the development of new functions to calculate the intersection of the elements with a cut plane. This is now available in version 2.0.7. However, since this causes some disturbance in the exterior faces of the elements it's not always desirable. A new checkbox "Enable sectional view" is now included on the Outline tab of User Geometry models for users who wish to use it. Note that the breaking up of elements at the cut-plane is purely a viewing artefact - the original analysis is unchanged.

Sectional views can be chosen through the menu at Display -> Sectional display and Display -> Core display. In earlier models (stepped, conical, exponential and user-defined with core) the sectional views could be set automatically by leaving the menu settings at "Auto" and selecting different tabs from the model, eg. selecting the "Hole" tab would show the sectioned sonotrode without the core; selecting the "Core" tab would show the sectioned sonotrode with core. This obviously doesn't apply to the user-geometry models so a new control has been added: double-click on the graphics screen to toggle through available sectioned views. If the model doesn't feature a core this will switch the sectional view on and off with each double-click. For models that have a core defined the view will cycle from solid to sectioned (core not shown), sectioned (core solid), sectioned (core sectioned) and finally back to solid. Note that the menu option must be set to "Auto" in order to use double-click control.

SonoAnalyzer Pro, OE and Free - version 2.0.4 pre-release PR1

The first public release of SonoAnalyzer version 2 is now available to download in the usual Pro, OE and Free editions. This release is not a beta and has no fixed expiry time, but please be aware that it is a very new release. I've given it the designation "Pre-release" (PR1) because it has so many new features that testing everything fully has been a struggle. But many users have requested the new features that it brings, so I think it's better to release it now rather than keep you all waiting any longer. If you discover an issue please let me know and I'll do my best to work it out!

Geometry imported from STEP format (SonoAnalyzer Pro only)

The new version offers several new features and UI tweaks but without doubt the most requested is the ability to analyze user-geometry in STEP format. The user's selected STEP file is auto-meshed with tetrahedra and then the mesh is converted to 10-noded tetrahedral elements for FEA. In addition to the FEA program CalculiX, the version 2 analysis servers in the background are now using Netgen for the initial mesh generation and FreeCAD (OpenCascade) for STEP file creation.

SonoAnalyzer version 2 user-geometry from STEP-formatCompared to the earlier SonoAnalyzer models there are several advantages to this approach, but also some limitations:


  • Ability to handle a very wide range of possible geometries.
  • Much easier route to analyze an existing design.


  • Fine detail leads to a fine mesh which can slow the analysis, increase memory usage and in extreme cases cause the analysis to fail. Some simplification of real-world designs may be required.
  • Only one material is supported (transducer models are not possible).
  • Modifying a dimension requires returning to CAD, changing the design, exporting as STEP and re-importing to SonoAnalyzer.
  • No guidance towards producing a viable sonotrode design.

SonoAnalyzer version 2 - coming soon

Apologies for the long wait but it's finally coming. SonoAnalyzer version 2 will offer geometry import and export in the platform-independent STEP file format. This means:

  1. You can export a SonoAnalyzer model and use the geometry in your own CAD-CAM systems.
    From SonoAnalyzer geometry create a STEP file to import into any CAD system
  2. You can import your own design (any geometry) into SonoAnalyzer and calculate its resonant frequencies, amplitudes and stresses.
    From geometry created in your CAD system, import to a SonoAnalyzer model

Full details will be published on release and an email notification will be sent to all on the mailing list. For now a beta version is in testing - available to all current SonoAnalyzer Pro license holders so if you'd like to join them please purchase SonoAnalyzer Pro or (for previous buyers whose license has expired) renew your licence.


Subscribe to SonoAnalyzer RSS