# # Size Estimate

MSet e-notes “Windows of periodicity scaling” (2013) presents a method to estimate the size of a hyperbolic component:

Under iterations the critical orbit of period $$p$$ consecutively cycles through $$p$$ narrow intervals $$S_1 \to S_2 \to \ldots \to S_1$$ each of width $$s_j$$ (we choose $$S_1$$ to include the critical point $$z = 0$$). We expand $$F^p(z, c)$$ for small $$z$$ (in the narrow central interval $$S_1$$) and $$c$$ near its value $$c_0$$ at superstability of period-$$p$$ attracting orbit. We see that the $$s_j$$ are small and the map in the intervals $$S_2, S_3, \ldots S_n$$ may be regarded as approximately linear; the full quadratic map must be retained for the central interval. One thus obtains $z_{n+p} \approx L_p (z_n^2 + b (c - c_0))$ where $$L_p = l_2 l_3 \ldots l_p$$ is the product of the map slopes, $$l_n = 2 z_n$$ in $$p-1$$ noncentral intervals and $$b = 1 + l_2^{-1} + (l_2 l_3)^{-1} + ... + L_n^{-1}$$. We take $$L_n$$ at $$c = c_0$$ and treat it as a constant in narrow window. Introducing $$Z = L_n z$$ and $$C = b L_n^2 (c - c_0)$$ we get quadratic map $$Z_{n+p} = Z_n^2 + C$$. Therefore the window width scales like $$(b L_n^2)^{-1}$$.

Note that the $$p-1$$ values of $$z$$ are all non-zero.

## # 1 C99 Code

#include <complex.h>

double _Complex m_size_estimate
(double _Complex c, int p)
{
double _Complex b = 1;
double _Complex l = 1;
double _Complex z = 0;
for (int i = 1; i < p; ++i)
{
z = z * z + c;
l = 2 * z * l;
b = b + 1 / l;
}
return 1 / (b * l * l);
}


## # 2 Examples

Cardioid $$c = 0$$, $$p = 1$$: $|s| = 1$

Circle $$c = -1$$, $$p = 2$$: $|s| = \frac{1}{2}$

Cardioid $$c = -1.7548776662466927$$, $$p = 3$$: $|s| = 0.019035515913132451$

Cardioid $$c = -0.15652016683375508 + 1.0322471089228318 i$$, $$p = 4$$: \begin{aligned} |s| &= 0.0084828587005172946 \\ \arg s &= -0.61719885061563229 \end{aligned}