Fractals/moebius

From testwiki
Jump to navigation Jump to search
Riemann sphere

Möbius transformation is an example of plane transformation


definition

A Möbius transformation [1][2][3][4] of extended complex plane ^={} is a rational function f of the form

f(z)=az+bcz+d

of one complex variable z.

Here the coefficients a, b, c, d and the result w are complex numbers satisfying


adbc0
w=f(z)=az+bcz+d

Representation or form

  • function
  • matrix

Function

f(z)=az+bcz+d


f :zw


w=f(z)

Matrix

In matrix form by using homogeneous coordinates:[5]

M=(abcd)


w=(w1)=(abcd)(z1)=(az+bcz+d)


Matrix M is a square 2x2 invertible matrix[6]

Examples

simple

The following simple transformations are also Möbius transformations:

  • f(z)=z(a=1,b=0,c=0,d=1) is an identity
  • f(z)=z+b(a=1,c=0,d=1) is a translation
  • f(z)=az(b=0,c=0,d=1) is a combination of a homothety and a rotation.
    • If |a|=1 then it is a rotation
    • if a then it is a homothety
  • f(z)=1/z(a=0,b=1,c=1,d=0) inversion and reflection with respect to the real axis)

How to ...?

eigenvalue and eigenvector

A number λ and a non-zero vector v satisfying

Mv=λv

are called an eigenvalue and an eigenvector of matrix M, respectively.

For dimensions 2 formulas involving radicals exist that can be used to find the eigenvalues. The eigenvalues can be found by using the quadratic formula:

λ±=tr(M)±tr2(M)4det(M)2.

diagonalization

a diagonal matrix is a matrix in which the entries outside the main diagonal are all zero. In other words all off-diagonal elements are zero in a diagonal matrix.

the main diagonal of a matrix A is the list of entries Ai,j where i=j, here a11,a22

the diagonalization of a matrix M gives a pair of matrices: D, P such that:[8]

  • D is diagonal (all elements not on the diagonal are 0)
  • M=PDP1

For 2x2 matrices there is a simple closed form solution[9]

Product with a scalar

If Template:Math is a matrix and Template:Math a scalar, then the matrices c𝐀 and 𝐀c are obtained by left or right multiplying all entries of Template:Math by Template:Math.

trace

The trace tr of a square 2x2 matrix 𝐀


𝐀=(a11a12a21a22)

is the sum of its diagonal entries

tr(𝐀)=i=12aii=a11+a22


So tr(𝐌)=a+d

determinant

determinant det of matrix 𝐌

det𝐌=det(abcd)=adbc

inverse

Mapping of generalised circles by inversion w=Sz=1/z (primitive Möbius-transform). Straight lines are mapped to circles/lines.

Inverse Möbius transformation[10]

𝐌1=(abcd)1=1det𝐌(dbca)=1adbc(dbca)


z=1det𝐌(dbca)(w1)

z=f1(w).

interpolation

How to smootly interpolate between möbius transformations?[11][12]


If you have two Möbius transformations represented as:

f(z)=az+bcz+d

g(z)=pz+qrz+s


where coefficients are complex numbers

a,b,c,d,p,q,r,s,z

Is it possible to derive a third function h(z,t), where t and 0t1, which "smoothly" interpolates between the transformations represented by f(z) and g(z)?

The solution:

h(z,t)=fetlog(f1g)=fexp(tlog(f1g))


Specifying a transformation by three points

Given a set of three distinct points z1, z2, z3 on the one Riemann sphere ( let's call it z-sphere) and a second set of distinct points w1, w2, w3 on the second sphere ( w-sphere) , there exists precisely one Möbius transformation f(z) with :

  • f(zi)=wi
  • f1(w)=zi

for i=1,2,3

Mapping to 0, 1, infinity

The Möbius transformation with an explicit formula :[13]

f(z)=(zz1)(z2z3)(zz3)(z2z1)

maps :

  • z1 to w1= 0
  • z2 to w2= 1
  • z3 to w3= ∞

the unit circle to the real axis - first method

Let's choose 3 z points on a circle :

  • z1= -1
  • z2= i
  • z3= 1

then the Möbius transformation will be :

f(z)=(z+1)(i1)(z1)(i+1)

Knowing that :[14]

i+1=i(i1)

one can simplify this to :

f(z)=iz+1z1

In Maxima CAS one can do it :

(%i1) rectform((z+1)*(%i-1)/((z-1)*(%i+1)));
(%o1) (%i*(z+1))/(z−1)

where coefficients of the general form are :

a=i
b=i
c=1
d=1

so inverse function can be computed using general form :

f1(w)=dwbcw+a=iwiw

Lets check it using Maxima CAS :

(%i3) fi(w):=(-%i-w)/(%i-w);
(%o3) fi(w):=−%i−w/%i−w
(%i4) fi(0);
(%o4) −1
(%i5) fi(1);
(%o5) −%i−1/%i−1
(%i6) rectform(%);
(%o6) %i

Find how to compute it without symbolic computation program (CAS)  :

(%i3) fi(w):=(-%i-w)/(%i-w);
(%o3) fi(w):=−%i−w/%i−w
(%i8) z:x+y*%i;
(%o8) %i*y+x
(%i9) z1:fi(w);
(%o9) (−%i*y−x−%i)/(−%i*y−x+%i)
(%i10) realpart(z1);
(%o10) ((−y−1)*(1−y))/((1−y)^2+x^2)+x^2/((1−y)^2+x^2)
(%i11) imagpart(z1);
(%o11) (x*(1−y))/((1−y)^2+x^2)−(x*(−y−1))/((1−y)^2+x^2)
(%i13) ratsimp(realpart(z1));
(%o13) (y^2+x^2−1)/(y^2−2*y+x^2+1)
(%i14) ratsimp(imagpart(z1));
(%o14) (2*x)/(y^2−2*y+x^2+1)
2 steps of unrolling the main cardioid of Mandelbrot set: Moebius map and conformal map
Unrolled main cardioid of Mandelbrot set for periods 7-13

So using notation :

z=x+yi=f1(w)

one gets :

x=Re(z)=Re(f1(w))=y2+x21y22y+x2+1

y=Im(z)=Im(f1(w))=2xy22y+x2+1

It can be used for unrolling the Mandelbrot set components [15]

the unit circle to the real axis - second method

Function :

f(z)=iz1z+1

sends the unit circle to the real axis :

  • z=1 to w=0
  • z=i to w=1
  • z=-1 to w=

Mapping to the imaginary axis

Function f(z)=z1z+1 sends the unit circle to the imaginary axis.[16]

visualisations

References

Template:BookCat