Solidworks Simulation Benchmarks (for Real Studies) – 2022 Edition

It’s been a while since we ran new benchmarks on simulation problems. It also took Intel a well-documented long time to get a new architecture and process on the market. After many hours checking new processor release dates and rumored specs, while waiting on studies to run, we finally got a new desktop system. We were holding out for a “4th Generation Xeon Scalable” rig, but settled on a “12th Generation Core” system at an attractive price.

High level specs on this new box include an Intel Core i7-12700k processor, 2 TB NVMe main drive, nVidia RTX 3080 graphics, and 128 GB of DDR5 memory. After setup and a quick stress test benchmarks were the first order of business. Again standard Passmark tests were run and then the same sim models we ran in Solidworks 2018 were run in Solidworks 2020.

The old benchmark article, from December 2018, can be found here.

Subject systems still available to bang on are the 6th generation 6700K, a 9th generation 9800X, and of course the new 12700K. The basic specs and synthetic benchmark results are tabulated below.

The 12th generation chip, finally made on a true 10 nm process, shows a great leap in raw performance. Gritty details can be found all over the internet about the details of the new chip. We noted that they took advantage of the smaller process to pack larger local caches into the die. High level Intel documents talk about added cleverness in ordering and streamlining operations. Busses to memory and storage are faster and wider. Then there’s the whole P-core and E-core hybrid design added to the system.

But the real test of all that brute power and cleverness is in performance on real problems. So we return to the same problems as before.

This large solid block with lots of internal detail is used to check mesh speed and solve time with an iterative solver.

This artificial test problem is used to test run time with contacts in a direct solver.

This reach-lift assembly, with an overly fine mesh, gives us the longest run times, with lots of contact and connectors.

The Solidworks Simulation 2020 results are first compared to the available results from 2018.

We note that Solidworks 2020 uses a bit more RAM for each operation, we assume in a trade-off for calculation speed. This is reasonable with memory prices dropping logarithmically through recent years (though at this writing DDR5 is still a bit precious).

The processor models aren’t labeled on that table, but one can readily guess that the bottom line is the 12700K. We are very impressed with the results. Solve times are basically halved, using an inexpensive mainstream processor. To visualize this here are more traditional benchmark charts.

Run times are getting faster, and this is a problem! Our production analyses are getting down to where there isn’t even time to go get a cup of coffee or catch up on important forum posts.

In all seriousness, we’re used to having time to look over new results and integrate them into a running report, possibly discussing updates with a client, before the next iteration runs. We’ll have to work on a new scheme of time management, and throw a bone to the dog who used to get played with more while the computer cranked.

[Notably absent here are results for AMD systems and newer version of Solidworks. We’re still an Intel shop, as other testers have found the AMD architectures poor for Solidworks mechanical sim, though those tests are dated. Solidworks 2021 posed new challenges, with badly documented changes in the interface and some apparent bugs that Dassault has not resolved with us, and we just haven’t tried 2022 yet. If anyone wants to try it, the smaller direct solve study is available here. We’d be happy to see new results.]

Mesh Density Challenge 1 of 2

The claim comes up often when a FEA result is presented, “You need to have multiple elements across that wall!” Well, do you? It may be important to good simulation results. We’ll look here at when it matters and how modern tools can put us at ease.

The “when it matters” is a questions of both application and point in history. Some readers will remember the ‘dark ages’ of manually generating finite element meshes in Hypermesh on a 16 megabyte workstation, setting up command line batch runs that ran overnight and took all day to visualize. In those days computer memory and compute cycles were precious. Nodes and elements, usually linear, had to be placed efficiently or human and machine resources were overtaxed or tied up for overly long. Today computer resources are vastly cheaper while human time is ever more precious.

The “when it matters” of application depends on the geometry and loading. The purpose of a dense mesh is to capture important gradients in a solution. In structural problems we’re looking primarily at stress gradients and total displacements. In “boring” areas of nearly constant stress, coarse meshes are adequate. Good displacement results may require finer meshes even over smooth stress fields.

Here we will look at bending problems, starting with a simple solid bar. It is fixed on the left and loaded vertically on the right, a textbook cantilever.

This bar is split two or four times to force mesh refinement across the bending thickness. For reference an extremely fine mesh is also put on the body.

Deformed stress results are shown for meshes with linear elements. Total deflection clearly increases with mesh density, as the stress field becomes smooth.

The same setups are run with Solidworks’ default “high quality” elements. Even with no refinement deflection is near as expected and the stress pattern is reasonable [stress color scales are all auto-scaled].

We can quickly discuss the issues here. With one element across the thickness, each tetrahedral element has one three-node face in tension or compression, and the opposite single-node vertex loaded the opposite direction.

Adjacent elements are loaded in opposite orientations. While the solver author has options in difference calculations (node centered vs. volume centered, etc), linear elements simply cannot resolve the stress gradients here. And if the base of one element is swelling next to the peak of another that is shrinking, that is another conundrum for the solver. It should be clear why tetrahedral elements especially are known for being “too stiff”. Rectangular brick elements would be better, but still cannot truly bend in one layer across the thickness of a beam.

The results are summarized below. “ref vm” is the probed stress; “max dy” is deflection at the cantilever tip. The last stress plots show the typical stress probe location, and illustrate ‘lumpiness’ in the stress result with linear versus second-order elements.

Taking the extremely fine result as reference, the coarse linear mesh badly under predicts stress and deflection. Switching to second-order elements immediately improves the result. Doubling and quadrupling the mesh size barely affects the stress results and just nudges the total deflection. But if we stick with the linear elements progress toward a smooth and flexible solution is painfully slow.

If bending is the primary load, an engineer will consider a shape like an I-beam. Here we have a simple beam with the flanges solid or split. We will repeat the meshing exercise, linear and second-order elements generated at different densities across the flanges.


Right away we should realize a difference from the coarse mesh solid bar. Even with the coarsest mesh, the elements loaded in tension are separate from those loaded in compression.

Now the linear element meshes all perform in a realistic way.

Response of the higher quality meshes can be differentiated in the numbers.

In compound or unknown loading, a closed section is the best choice. For comparison we will stick with a bending load and split the top and bottom faces.

Again the stretched and compressed faces are separated so linear elements give reasonable looking results.

With high quality elements the body is a little more flexible.

The stress results are pretty good even for the coarse draft mesh. The high quality mesh gives good displacement results even from the coarsest version.

What does this mean for the modern user? A mainstream workstation can solve multi-million element structural problems in main memory, and we often use direct solvers in Solidworks to breeze through 800,000 element setups in minutes. User time is much more valuable than computer time. We generally encourage people to stick with solid meshes and let the element count run up.

The challenge remains when long or thin portions of components are included. On high aspect ratio parts the element count can get extreme and Solidworks still does not give us tools to handle these sections efficiently. But we demonstrated here that coarse solid meshes on these “boring” connector sections can give usable results. Solidworks developers did us a huge favor by settling on the second order tetrahedral element, maximizing flexibility while retaining ease of fast automatic meshing. The user should focus mesh refinement on areas of detail and structural interest, like weld joints and contact interfaces.

In these studies we looked only at bending problems. There’s reason to wonder it torsion of long members might work differently. So we look at that in part two.
https://www.stonelakeanalytics.com/2020/11/09/mesh-density-challenge-2-of-2/

The Pin is Dead – Long Live the Pin!

Previously we wrote about the use of the pin connector in Solidworks simulation. It’s a great aid in fast modeling of machines with connected parts, but we highlighted a shortcoming. The pin connector in Solidworks has always mapped surfaces onto sets of rigid cylinders for simulation. This allows the intended connection and articulation, but hurts accuracy of stress results immediately around the pin.

We also noted that there was a problem in Solidworks 2018; the pin formulation was improved to allow connection of more than two cylinders, but in many cases the connector no longer permitted free rotation where expected, like over a sheave. For Solidworks 2020 improvements to the connector were promised. A fix was delivered, and a whole lot more.

The previous post is at:
https://www.stonelakeanalytics.com/2019/07/07/connector-or-crutch/

In the example model, this bushed joint was modeled in full no-penetration contact, and with the joint considered as one pin connector. When using a pin connector, the stress result did not show a serious concentration at the thin wall of the grease fitting hole.

We found that using full no penetration contact showed a much higher (and realistic, based on real experience with very similar geometry on a broken machine) stress, at a cost of a sixty-fold increase in run time [25 minutes vs 24 seconds].

The first thing we did with Solidworks 2020 was to verify that the pin connector now allows rotation when desired. But now we’ve explored the rest of the new functionality of the joint; the pin connector doesn’t have to be a rigid body any more. In the connector setup there is a new option – the “Distributed” connector type.

We can still pick multiple cylinders, but there’s a new formulation available for how those cylinders become related. A little more detail is available in the Solidworks help files. The real question is how does it affect our results?

Now we can see the distinct stress concentration expected in the thin wall. The surface of the pin bore in the arm is now free to stretch realistically away from the pin diameter.

The next question is how does it affect run times? Remember that running full contact on this model took dozens of times longer. Converting all the pins here to “distributed” increased run time by just 30% [25 seconds versus 19 seconds (fresh runs on a different computer)].

The new pin formulation is used for bolt connectors also. In an example for our forthcoming book we have a welded bracket bolted to a base with four through-bolts with nuts. In one study we modeled the bolts and nuts as solids.

The nut is fixed on the bolt with a pin connector, either with the old rigid pin or the new distributed connector. The pair is in no penetration contact with the bracket and base. This arrangement is the only way to get the most accurate picture of stresses near and through the bolt.

With the legacy pin connector there is no stress shown through most of the solid bolt. With the new formulation a classic stress field is seen through the shank.

Now instead of literal solids we try it with the bolt connector. This won’t show any internal stresses in the bolt, but does allow us to input bolt pre-load and correctly account for bolt stretch during loading. Results are shown with the classic bolt connector and with the new distributed style.

With the old style bolt stresses around the bolt holes are about constant. Using the new distributed bolt more of the expected variation can be seen. We’re going to keep working with this; look for more information in Solidworks Simulation for Real Machines, due out in early 2020.

We have what looks a great new tool for accurate simulation of bolted assemblies and machines. The user is encouraged to experiment within their applications to see what the new bit of kit can do for good and fast results. Stone Lake will continue to work toward quick turnaround of reports that show clients what’s really going on in their products.

Connector or Crutch?

Most FEA tools have a toolbox of handy features one can use to simulate mechanical elements. When not all the hardware in an assembly is modeled, or modeled badly, or modeled such that it makes interferences that must be resolved, these tools are as handy as a big hammer when the manual says “slip fit”.

We use a great many of the “pin” connector in Solidworks Simulation. Where holes (and/or shafts) are meant to be aligned or a body is supposed to have free rotation* it’s just a couple clicks to get the relationship established in Sim. Forces are transmitted cleanly and system response can be predicted well. But there is a catch – nodes on the hole or shaft walls are locked into relative position on the original theoretical cylinder. This has implications, locally at least.

[* in Solidworks 2018 the pin connector tool was improved to allow selection of more than two cylindrical surfaces, but free-rotation of the bodies was broken; a fix is promised for 2020.]

The following story is illustrated on a bespoke model, but inspired by a real story from a client who has some broken parts.

A small lift is modeled. A hydraulic cylinder raises and lowers an A-frame which has a shackle installed on the pointed end. The cylinder shell and the wide ends of the A-frame mount to a solid casting by pins through double-clevis joints. The assembly is about 18 inches tall with a 14 inch reach.

Most of the pin connections are plain bearings, and fairly loose. But it was decided that the rear joints of the A-frame should be tight, have brass bushings, and be greaseable. So the bore through the A-frame arms is larger, and there is a cross-drilled hole for a threaded grease fitting.

The customer wants to lift a two ton load, which is known to swing some. For our studies a 5000 lbf force is used, angled a bit to the right.

All the hardware came in the model, accurate (yay), not-overly-detailed (bonus), centered (wow), and close-fitting (excellent for contact analysis). But the fastest way to set it up is to exclude all the hardware and use the trusty pin connector.

The modeled pins and pin-bushing sets are replaced by single pin connectors. Only the shackle remains, but it also is connected to the A-frame by a pin connector. (Another pin connector holds relative position of the cylinder halves.)

Since everything is connected by rigid “pins”, the FEA solution is practically a static solve of a single solid body. It runs in 24 seconds.

Stresses in the wrought steel frame look pretty good. But what about that grease fitting hole? It left some pretty thin walls. Some mesh refinement was put around here and a closer look taken.

Ok, the thin walls are working hard, but it still looks good enough. Since it runs fast, we can set up runs with the cylinder at all different strokes to see what happens, generate all kinds of force data, and keep the customer happy. …Until something breaks and they want to know why.

Setting up this problem the hard way, i.e. the right way, means ditching most of the pin connectors and using the supplied hardware (or custom modeling simple hardware to do the job in Sim).

Over 40 high-accuracy no-penetration contact pairs are manually defined. At every joint each part is in contact on a cylinder and two lateral faces. Only the cylinder’s pin connector remains.

The stress pattern is very different in the mounting ears. Elevated stress is seen all the way around the joint, whereas on the first run it was only on the load side.

Now the full stress concentration from the drilled hole is captured. Further study can show how the stress might be sensitive to dimensional variance, like the hole being off-center.

At what cost did we get the better answer? It took about 20 minutes to set up all those contacts, and 25 minutes to run the study, versus a few minutes and 24 seconds to run the all-pin study. It beats getting a phone call from an angry end user who’s standing over a hole in the ground, made by some expensive equipment that just got dropped.

Incidentally, while all the setup work was going on, another easy-setup study was running.

Since it looked like the geometry was clean and complete, on starting Sim the simplest possible study was started. A single input of global no-penetration contact is used in place of pretty much everything else. This is almost always worth a try. It can take a lot of computer memory, and sometimes a long run time, but this study can run while all the other human work is being done on the ‘real’ setup.

In this case the quick-and-coarse study found the hot spot. With a couple mesh refinements it should match the answer in the full-manual-contact study. And it ran in under 13 minutes, quick enough that it could have guided all the later work.

Features like pin connectors are great, but the analyst has to understand what effect they have on the local situation.

Solidworks Simulation for Real Weldments

Recently published by Stone Lake Analytics is this brief guide on modeling and simulation of welded structures.

This book outlines how we approach precision modeling and simulation of welded components. The book will prove useful to designers, analysts, and managers to better understand the limitations of common weldment modeling tools and how those limits can be overcome with limited effort.

The reader is shown a progressively more complicated set of examples, showing how and why we model welds accurately and evaluate detailed simulation results.

Color paperback and e-book available from Amazon.

Models used in the book are available here.