OOF2: The Manual

Name

Average Energy (AverageEnergy) — Accept the change, if any, that improves the average energy the most.

Synopsis

AverageEnergy(alpha)

Details

  • Base class: SkelModCriterion
  • Parameters:

    alpha
    alpha controls the relative importance of element shape and homogeneity. alpha=0 emphasizes shape and ignores homogeneity. alpha=1 emphasizes homogeneity and ignores shape. Type: A real number in the range [0, 1].

Description

When an Element is modified or a Node is moved, it affects its neighboring Elements, causing changes in their effective element energy. When the AverageEnergy criterion is applied to a SkeletonModifier, OOF2 accepts a modification only if it lowers the average effective energy of all of the affected Elements. If more than one modification is being considered,[27] the one that lowers the energy the most is accepted.

The parameter alpha (α) plays a critical role, since it controls how the effective energy is computed for each element. Take the node move shown in Figure 6.63 for example.

Figure 6.63. A Node Move

A Node Move

This node move will lower the total homogeneity energy by 0.13 but it will elevate the total shape energy by 0.46. If homogeneity energy and shape energy are to be equally considered (α = 0.5), the move will not be accepted by the AverageEnergy criterion -- it increases the overall energy level. The move becomes possible only if α is greater than 0.8.



[27] This does not mean that all possible node moves are considered for modifiers that choose from an infinite number of possibilities, like Anneal does. It only applies to modifiers that sometimes have a finite number of choices to make, such as SnapNodes.