# Analysis Performance

Analysis performance is proportional to the number of nodes, N, you have in
your model, with analysis-time increasing on the order of N^{3}. It is also directly proportional to the number of load cases and combinations that you analyze. Memory requirements are similarly impacted, and VisualAnalysis is limited to less than 2GB of RAM as a 32-bit program. The information here will help you 'contain' your projects and get solutions.

Other factors that will directly impact your analysis-time include nonlinear features such as one-way elements, semi-rigid end connections, and cable elements. Time-history and moving loads are also relatively expensive.

**Understand Member Results****Set Member Result Sections****Minimize Plate Elements****Control Dynamic Mass Distribution**

## Understand Member Results

The member element in *VisualAnalysis* can be used to accurately model
behavior for a multitude of applied loads. End forces and rotations in a static analysis are "exact"
based on the elasticity theory. However, intermediate results along the length
of a member are calculated only at discrete positions. This leads to small
errors between these result points.

When we calculate intermediate member results (moments, shears, stresses, and displacements) each member is broken into sections. Each section requires equilibrium calculations and computer memory. More sections yield smoother, more precise results but also require more time and computer memory. An ideal solution balances computer resources and accuracy.

By default, *VisualAnalysis* will automatically adjust the number of
member result sections based on the size of your model and the types of loads on
a given member in each load case. This will give you the best results for small
projects and reasonable results for large projects.

The number of result sections is independent of how you report your results or see them graphically. For display, we interpolate linearly between the calculated results positions and the reported positions. Although you can sometimes "miss" critical results by reporting too few positions along a member, you will never improve your results by reporting them at more places than were calculated! Some result tables will automatically search the calculated results to find extreme values for you.

## Set Member Result Sections

Use *VisualAnalysis*
will create member result sections. This setting will also affect the accuracy
of area loads distributed to members, which are calculated using numerical
integration. Here are the choices available:

Setting |
Description |
---|---|

Automatic |
Internally adjusts number of member result sections based on the
model size. This is the default setting. |

Academic |
Uses a large number of member result sections to get very accurate results and smooth diagrams. This is the slowest performance setting. |

Normal |
Provides a dynamic balance between accuracy and computer resources. Good for most real-world projects. |

Fast |
Reduces the number of result sections down to a minimum for best performance. Intermediate results will be crude and you may miss peak moments if they do not fall near the center of members or if you have concentrated loads. Sometimes necessary for very large projects. |

Custom |
You decide how many sections to use for member results. There are four settings depending on the types of loads on a member in each load case. You should specify odd numbers to get a result point at the center. The minimum value is 3: end points and midpoint results only. |

### Minimize Plate Elements

Plate elements are approximate. To get good results you will need to use a
mesh of elements. To know if you have good
results, you will need to run multiple models, with successively more elements
and then compare these results to see if the results are converging on the
"true" solution. (Remember, the theory tells us that as we make the plates
smaller and smaller, we will converge if we have a converging element, something *
VisualAnalysis* has.)

The best approach, from a performance standpoint, is to start with some
minimum number of plate elements. Use just enough to model the geometry of your
structure. Then work from this point. Use the **Model | Split Plates**
feature to refine the model after loads are applied. When successive refinements
give the same results (displacements, forces, etc.) as the last iteration, the
plate mesh is probably adequate.

Auto-meshed plates are generated automatically based on the

, , and you can set a desired plate count on individual Areas for more fine-grained control. With complex areas and connectivity constraints with other members and plates, a model with lots of meshed areas can generate lots of plates and become somewhat insensitive to your "requests" for number of plates.### Control Dynamic Mass Distribution

In a static analysis, member behavior is exact. In a dynamic analysis a member's mass is lumped at its nodes. In order to get the best dynamic results, you might consider splitting members into multiple pieces. However, the more elements you have the slower the performance.

You might use a trial and error procedure starting with single members, analyzing, splitting, and re-analyzing to compare results. Repeat this process until you are comfortable that the results are converging toward the real-world system of distributed mass.