OOF2: The Manual

Name

Relax (Relax) — Improve a skeleton by solving a finite element system where the properties are functions of the underlying homogeneity and shape.

Synopsis

Relax(alpha, gamma, iterations)

Details

  • Base class: SkeletonModifier
  • 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].
    gamma
    Node mobility. Type: A real number.
    iterations
    number of steps Type: Integer.

Description

Relax is a Skeleton modifier that moves Nodes to improve Element homogeneity and shape. In spirit it's like a deterministic version of Anneal. It usually won't put Nodes exactly on material boundaries, but it will move them towards the boundaries, and it can provide a good starting configuration for other Skeleton modification tools. Sometimes the other tools get stuck because they can only move one Node at a time. Relax moves all of the Nodes together, and can help get a Skeleton out of a sticky situation.

Relax works by giving each Element an isotropic elastic modulus and an elastic driving force with two components. The first component is isotropic and proportional to the Element's homogeneity energy.[43] This causes inhomogeneous elements to shrink. The second part is anisotropic and proportional to the traceless part of the Element's moment of inertia tensor. This drives the Elements' shapes toward squares and equilateral triangles.[44] The relative weight of the two terms is given by alpha.

One iteration of the Relax algorithm is equivalent to taking one Euler time step of the equation

dudt=γσ
(6.161)

where σ is the stress and u is the displacement of a Node. After each step, the driving force is recomputed. The parameter gamma plays the role of a Node mobility. Using a large gamma will make the Skeleton change faster but will risk moving Nodes too far and overstepping their optimal positions.

Figure 6.98. Skeleton Relaxation

Skeleton Relaxation

(a) A Skeleton in a Microstructure with four types of pixels.

(b) The Skeleton after applying Relax with alpha=0.5, gamma=0.3, and iterations=10.


See Also



[43] Actually, we use Ehomogeneity(1+Ehomogeneity) to provide a stronger disincentive to very badly shaped Elements.

[44] This is not exactly the same as the shape energy used everywhere else in OOF2. This quantity is easier to use in this situation because its derivatives are simpler.