Recursive wave

From HandWiki

}}

Recursive waves of depths 1, 2 and 3.

A recursive wave is a self-similar curve in three-dimensional space that is constructed by iteratively adding a helix around the previous curve.

Construction

A recursive wave of depth [math]\displaystyle{ n }[/math] can be constructed as following:

[math]\displaystyle{ \psi_0(x) = x(ai + bi + ck) }[/math]

[math]\displaystyle{ \psi_{n}(x) = \psi_{n-1}(x) + R(A(n)g_n(x),\ \psi_{n-1}'(x),\ f(n)x + \alpha(n)) }[/math]

where

[math]\displaystyle{ g_n(x) = |\vec{w} \times |\psi_{n-1}'(x)|| }[/math]

and

[math]\displaystyle{ R(\vec{A}, \vec{B}, \theta) = e^{\vec{B}\theta /2}\vec{A}e^{-\vec{B}\theta /2} }[/math]

Clarification

Each wave at non-zero depth [math]\displaystyle{ n }[/math] is described by an amplitude [math]\displaystyle{ A(n) }[/math], frequency [math]\displaystyle{ f(n) }[/math] and phase offset [math]\displaystyle{ \alpha(n) }[/math].

[math]\displaystyle{ g_n(x) }[/math] represents a unit vector that is perpendicular to the previous curve at [math]\displaystyle{ x }[/math]. An arbitrary vector [math]\displaystyle{ \vec{w} }[/math] is chosen to be the fixed "rag" vector.

[math]\displaystyle{ R }[/math] is a function that rotates a vector [math]\displaystyle{ \vec{A} }[/math] around an axis defined by a vector [math]\displaystyle{ \vec{B} }[/math] by [math]\displaystyle{ \theta }[/math] degrees. In this case it is expressed with quaternions.

See also