Topology optimization process
Performance considerations

In practical topology optimization, FE models may quickly become quite large because of the need to use rather small elements. This results in significant

requirements.

To mitigate the situation, it might be useful to consider that RAM and CPU time consumption are heavily influenced by the

Choosing the right finite element

Topology optimization typically requires very fine meshes (small elements). Note that this requirement can not be relaxed by using higher-quality finite elements; in other words: we have to use small elements even if we replace linear tetrahedrons by quadratic one. To get a feeling for approximate RAM consumption of various element types, the figure below depicts the situation for a simple test structure, meshed by tetrahedrons (full material design; no void regions).

Figure. Approximate RAM consumption in GB of ProTOp for a tetrahedron meshed test model (full material design)

Note that the scales are logarithmic, and the labels used have the following meaning:

The hexahedral HXH8 element can be roughly estimated to be somewhere between TTH4 and TTH10. If one additionally considers that hexahedral meshing may be quite tedious, it follows that when we have to deal with difficult real-life problems (large and complicated meshes), the TTH4 element is typically the only usable alternative.

Choosing the FEA solver precision

FEA of a large model necessitates the solution of a large system of linear equations. In such a scenario it is highly recommended to run the numerical operations in double-precision arithmetic. However, due to rather frequent RAM shortage situation, the single-precision solver is often the only practical alternative. This reduces RAM consumption and CPU time but at the risk of significant truncation errors.

NOTE. Choosing the single-precision solver reduces both, RAM consumption and CPU time, but may, in general, cause numerical difficulties due to truncation errors.

The single-precision solvers of ProTOp are build in a way that minimizes the influence of numerical truncation problems. Consequently, there should normally be no need to switch to a double-precision solver.

NOTE. ProTOp's single-precision solvers are developed especially to minimize the consequences of truncation errors and should perform satisfactory in most situations.

A general advice is therefore, to run the optimization mostly with a single-precision solver, and, to be on the safe side, switch occasionally to the double-precision solver to compare the computed response. If both results are very close, one can switch back to single-precision.

Choosing the FEA solver operation mode

Apart of the precision, both ProTOp's solvers can also operate in three different modes, as follows:

In Auto mode ProTOp tries to determine automatically the best mode; this option should mostly be the preferred choice. On the other hand, the LowRAM option should be selected, if the user is sure that there is not enough RAM available and the computation would normally go 'out-of-core' (disk usage). If the user is sure, that enough RAM is available, switching to Normal mode might save some CPU time.

ProTOp allows for changing both, the precision and mode of the solver at any time during a running optimization process.

NOTE. The precision and mode of both solvers can be changed during a running optimization process.