Strand7:  Hints & Tips

Bandwidth minimisation and the sorting option

One very important option in the Solver panels is the Sorting option. This is for selecting the bandwidth minimisation strategy. Strand7 offers two algoriths: one geometrically based (GEOM) and another element connection based (TREE). These attempt to reduce the RAM and disk space requirements.

We usually discover that new users do little experimentation with the sorting option. For a large model, or one being run using the nonlinear solver, it is very useful to spend a few minutes checking each option to find the best one.

The TREE option also allows the input of a Tree Start Node. The idea is that a tree-like structure of all the connections is generated. It turns out that the selection of the node for the root of the tree can have a significant effect on the resulting matrix. The mesh in the following figure was checked using the GEOM sorting option and the TREE option with two different starting points.

WAF12.gif

Method RAM (MB) DISK (MB)
GEOM 6.24 20.4
TREE @ A 4.60 20.5
TREE @ B 1.60 15.2


Also shown below are the actual matrices generated by each option. The blue regions indicate non zero entries in the matrix. The aim of any bandwidth minimiser is to eliminate all peaks and "flatten" the matrix as much as possible. The more "diagonal" a matrix is, the faster it will solve.

WAF13.gif

The Bandwidth tab of the Strand7 solver contains some tools that may be used to check the bandwidth and display the matrix shape as shown below.

WAF13.gif

With GEOM, Strand7 looks for a dominant length direction in the global X-Y-Z system and renumbers the nodes in that direction. It is particularly effective for structures of the type shown below (the blade), provided the main length direction is parallel to one of the global axes.

The Tree method considers the connectivity relationship of adjacent elements. This method is based on a binary tree definition of the element connections. If performs well in the majority of cases. The Tree Start parameter allows you to define the starting point of the tree structure by entering a node number. The idea is to start the tree at some node near the "corner" of the mesh, rather than somewhere in the middle. For models like an impeller, the TREE option is generally better.

Structure suited to the GEOM sorting.

Structure suited to TREE sorting.


For large structures, it is worthwhile testing both methods to see which one gives the lower memory (RAM) and disk space requirements. The following Strand7 solver message:

MINIMUM RAM NEEDED = ???

is significant in terms of how long a solution will take, particulary for linear static analyses. The value tells you how much physical RAM (not disk space) is required by the solver such that the matrix can be reduced by a single pass through the file.

If the required amount of RAM is not available, then the solution will still proceed (provided there is sufficient disk space available), but generally with a significantly increased solution time. In general you should aim to reduce the RAM requirement, even at the expense of increasing the Disk Space requirements.

Strategy
The Bandwidth tab of the Solver dialogue box provides a means for visualizing the actual shape of the global stiffness matrix. This can be used to make an informed decision about the method to use. The best method to use depends firstly on the amount of physical memory (RAM) available on your computer and secondly on the amount of disk space reqired for the solution. If you have a "large" amount of RAM, you should try to reduce the Average Node Jump, which corresponds to the time spent reading and writing to disk, and is analogous to the disk space requirement. If you don't have a lot of RAM, you should reduce the Maximum Node Jump, which corresponds to RAM requirement.

The solver informs you of the minimum RAM needed and the amount actually used, via the following messages in the LOG file:

Minimum RAM needed: xxxx MB
RAM used for reduction: xxxx MB

If the first amount is less than the second, then the solver will offer good performance. If the first amount is greater than the second, the solution time can increase significantly.

When performing these checks, bear in mind that Strand7 does not necessarily "see" the total amount of RAM your PC has installed. For example, 16 MB or more may be used by the operating system and about 8 MB by Strand7 itself, before any other RAM can be used for the solution.