A topology optimizer aims to find the most efficient distribution of material within a user-defined design space. The system works by eroding material down to a required target volume fraction and, as a result, suggesting design solutions we might never have thought of on our own.
But if we literally let the system run wild, it can lead to a very frustrating experience with no realizable configurations—even with the help of a 3D printer.
For best results, design engineers need to follow a few practical measures to help avoid inefficient or completely unworkable design configurations from a topology optimizer. What follows are a few suggestions.
Try the following:
It can be tempting to define an arbitrary three-dimensional box, generously enveloping the region between where the load is applied, and the reactions are taken out. Imagine a lug type configuration, as shown in the figure below, which is to carry load from a pin down to a base.
A vertical load and a horizontal load are applied via the pin. The vertical load will develop local bearing stresses at the pin and a tensile load path directly to the base. The horizontal load will develop local pin bearing stresses and a shear and bending path down to the base. In the figure, reaction forces are shown with crossed arrows.
Design space and loading for lug configuration
If the vertical load were the only case, the material distribution would be a rod-like connection between the bearing region and the base. If the horizontal load were the only one present, then the most efficient reaction would be through the extreme corners of the base, giving more of an A frame.
With a combined loading we are not quite sure what the configurations look like – that’s the job of the optimizer. However, we can make a couple of judgement calls here.
Neither load case is going to put any stresses in the top corners of the design space. Some material is going to be needed above the pin to take the vertical load around the pin, but it doesn’t need to be the whole of the large design space above the pin. So, we could clip the design space back, as shown in the right-hand image in the figure.
The motivation for doing this is two-fold, a target volume reduction of say, 30%, would be applied to the real meat of the problem. Firstly, this makes the optimization calculations more sensitive. Secondly, the number of elements count is smaller, which can be important if we are running many optimization configurations. If we have overdone the clipping, we will tend to see material retained right up to the boundaries and we can then correct.
We are already clipping design space and limiting the most efficient configuration for the horizontal load case. For best efficiency, this case should have a very wide base. Could we extend the width of the base?
The topology optimizer may try to remove material on the loaded and constrained boundary surfaces. This can rapidly get out of hand and result in collapsing configurations.
We can avoid this by designating non-design spaces. The optimizer is not allowed to remove elements from these regions. In some optimizers we can define the surface, and any elements attached to the surface will remain. However, this can give a very ragged edge. It is better to define a small inset part, rather like a bearing or support block. This is designated as a non-design space.
However, even with this approach we must be careful not to make it too big, in which case it will dominate the optimum configuration. Alternatively, if it is too small or narrow, it will require tiny elements which will increase the element count and may distort elements locally.
The region to optimize may be supported by a structure which is already a frozen design. We can designate this surrounding region to be a be a non-design space. This will still interact properly with the evolving topology configurations.
We can control the minimum feature size in the configuration. This is also controlled more indirectly by the mesh size. It turns out the most efficient structures have thin distributed, filigree-like members.
You have probably seen pictures of very organic looking configurations. If we want to achieve this, then we can set the minimum feature size to be small and define a very fine mesh. At the other extreme we could force a very chunky looking structure. It’s usually a good idea to play around with a range of feature sizes to see what the optimizer will produce in each case.
Using topology optimization effectively is a balance. Innovative configurations using a wide-open design space are exciting! But are they achievable? On the other hand, if we over control the optimization, to force manufacturable configurations – are they no longer innovative?
Topology optimization is a sandbox. There are traps to avoid, and I have highlighted some in this article. But there is no “correct” way to use topology optimization.
Experiment and go wild, but then let your engineering experience guide you!