Dimension of a Two-Scale Cantor Set
I have a Cantor Set where I begin with a unit interval $[0,1]$.
I will remove a middle piece, and the remaining pieces are scaled by $r_1 = \frac{1}{9}, r_2 = \frac{3}{9} $
I am trying to determine the dimension through the Box Dimension method.
What I do is to choose a cover size of $\epsilon_1 = \frac{1}{9}$ which gives the number of covers $N(\epsilon_1)= 4 $
If I iterate it further and further, I get a general formula
$\epsilon_n = \frac{1}{9^n}$ and $N(\epsilon_n)= 4^n $
This gives me
$D= \frac{lnN(\epsilon)}{ln(\frac{1}{\epsilon})} \approx 0.63$
This value is exactly the same as the triadic cantor set (i.e $r_1=r_2 = \frac{1}{3}$ ) So I must have done something wrong.
Additionally, further reading from http://www.uvm.edu/~pdodds/files/papers/others/1988/tel1988a.pdf , from Equation 12, I find $D=0.43$ for $r_1 = \frac{1}{9}, r_2 = \frac{3}{9} $
Can anyone direct me to where my error is?
Solution 1:
As Zach points out in his answer, the dimension of this set is easily computed using Moran's formula. However, the dimension can also be computed via box counting, as the question specifies. The result, $\log(\varphi))/\log(3)$ is kinda of cool in its own right and there's a neat connection with Fibonacci numbers that arise when we compute the dimension this way.
Denote your set by $E$ and let $N_{\varepsilon}(E)$ denote the number of closed intervals of length not exceeding $\varepsilon$ required to cover $E$. Let's compute $N_{3^{-k}}(E)$ by inspection for several small values of $k$ and see if we can spot a pattern.
$E$ is a non-empty subset of the unit interval so, for $k=0$, we get $N_{1}(E)=1$. For $k=1$, we get $N_{1/3}(E)=2$; one of these sets must have length $1/3$ but the other need only have length $1/9$:
For $k=2$, we get $N_{1/9}(E)=3$; two of these sets must have length $1/9$ and one need only have length $1/27$:
It's a little harder to see but, for $k=3$, we get $N_{1/27}(E)=5$; three of these sets must have length $1/27$ and two need only have length $1/81$:
It appears that $N_{3^{-k}}(E)$ is always a Fibonacci number. In fact, if we index the Fibonacci numbers such that $F_0=F_1=1$ and $F_k=F_{k-1}+F_{k-2}$, then it looks like $N_{3^{-k}}(E)=F_k$. Let's call this a level $k$ cover. It looks like a level $k$ cover consists of two types of intervals depending on their length relative to $k$: $F_{k-1}$ type 1 intervals of length $3^{-k}$ and $F_{k-2}$ type 2 intervals of length $3^{-(k+1)}$. Suppose, for induction, that this supposition is true for a fixed $k$. Then, the $F_{k-1}$ type 1 intervals in the level $k$ cover decompose into $F_{k-1}$ type 1 intervals of length $3^{-(k+1)}$ and $F_{k-1}$ type 2 intervals of length $3^{-(k+2)}$ in the induced level $k+1$ cover. The $F_{k-2}$ type $2$ intervals in the level $k$ cover become $F_{k-2}$ type $1$ intervals in the level $k+1$ cover. Thus, the level $k+1$ cover has $F_{k-1}+F_{k-2}=F_k$ type 1 intervals and $F_{k-1}$ type 2 intervals for a total of $F_{k}+F_{k-1}=F_{k+1}$ intervals. We conclude that $$N_{3^{-k}}(E) = F_k$$ for all $k\in \mathbb N$.
Now, it's well known that $F_k \sim \varphi^k$, where $\varphi$ is the golden ratio. As a result, $$\dim(E) = \lim_{k\rightarrow\infty} \frac{\log(\varphi^k)}{\log(3^k)} = \lim_{k\rightarrow\infty} \frac{k\log(\varphi)}{k\log(3)} = \frac{\log(\varphi)}{\log(3)}.$$
Solution 2:
Exactly self similar fractals have a very easy formula to find their fractal dimension. This example fits the category, use the Moran equation. You're error was only in assuming that you're formula would hold for all iterations, but in reality, the $1 \over 9$ shrinks by a different amount than the $3 \over 9$ part. $$1=\left ({1 \over 9} \right)^D +\left({3 \over 9} \right)^D$$ This will solve for D, the fractal dimension. $$D=0.4380...$$
Derivation
The similarity dimension for a fractal with similitude $\epsilon={1 \over S}$ is given by $$D_s={{\ln(N)} \over {\ln(S)}}$$ If the fractal has more than one similitude, as in the case of the cantor set variant, this equation won't work. What we need to do, is transform this equation so that it incorporates each of the similitudes. Manipulate the equation... $$D_s \cdot \ln(S)=\ln(N)$$ $$\ln(S^{D_s})=\ln(N)$$ $$S^{D_s}={\epsilon}^{-D_s}=N$$ $$1=N \cdot {\epsilon}^{D_s}$$ Here's the step that is interesting. The above result says that there are $N$ copies of a similitude to the power of the fractal dimension that when added together equals one. The above derivation justifies that. However, if there is more than one similitude multiplying by $N$ doesn't make very much sense. Instead you'd just manually add each similitude. So write out the multiplication by $N$ $$1= {\epsilon_1}^{D_s}+ {\epsilon_2}^{D_s}...+ {\epsilon_N}^{D_s}$$ If ${\epsilon_k}={\epsilon_m}$ where $1 \le (k$ and $m) \le N $ then we just have the regular formula, and by extension it can be readily solved. Otherwise you have the above equation, which is called Moran's equation.
Solution Techniques This equation can be very hard or very easy to solve depending on the similitudes given. For instance, similitudes that are equal to each other or are multiples of each other are generally easier to solve than random similitudes. Using your question as an example... $$1=\left ({1 \over 9} \right)^D +\left({3 \over 9} \right)^D$$ $$1=\left ({3} \right)^{-2D} +\left({3} \right)^{-D}$$ Use the substitution, $u=3^{-D}$ $$1=u^2+u$$ $$u^2+u-1=0$$ which yields $u=\phi$, where $\phi$ is the golden ratio. $$\phi=3^{-D}$$ which finally solves to $${{\ln({\phi})} \over {\ln(3)}}=0.4380...$$
Bonus Information For harder to solve cases use this unorthodox method. Lets solve... $$1=\left ({1 \over a} \right)^D +\left({1 \over b} \right)^D$$ This will give the fractal dimension of every Cantor set that can be made. $$a^{-D}=1-b^{-D}$$ Take the log of both sides $$-D \cdot \ln(a)=\ln(1-b^{-D})$$ $$D= {{-\ln(1-b^{-D})} \over {\ln(a)}}$$ Now, solve a fractal equation with a fractal. Use the fact that we know $D$ in terms of $D$ to solve... $$D= {{-\ln \left(1-b^{{{\ln(1-b^{{{\ln(1-b^{.^{.^{.}}})} \over {\ln(a)}}})} \over {\ln(a)}}} \right)} \over {\ln(a)}}$$ Bet you've never seen that! (Had a great time writing this)