LambdaFn

Category: Escape-time Fractal

This function available in FRACTINT and ported to Maple V here depicts an escape-time fractal. It is initialized by assigning

z0 := evalf(x + I*y);

meaning that the calculation is done for each value in the complex plane (on the screen). The iteration sequence is

zn+1 := func(zn) * p1

with func being any function (e.g. a trigonometric or hyperbolic function, or exp, ln, or sqrt). p1 is a constant complex value representing a point in the plane.

LAMBDAFN is a variant of the Julia set.


> # LAMBDAFN
> lambdafn_sin := proc(x, y)
>    local z, m, p1;
>    z := evalf(x+y*I);
>    p1 := evalf(1+I*0.4);
>    for m from 0 to 100 while abs(z) < 4 do
>       z := sin(z) * p1
>    od;
>    m
> end:

> plot3d(0, -4 .. 4, -3 .. 3, orientation=[-90,0], 
>    grid=[250, 250], style=patchnogrid, 
>    scaling=constrained, color=lambdafn_sin);


> plot3d(0, -1.5 .. 1.5, -1.1 .. 1.1, orientation=[-90,0], 
>    grid=[250, 250], style=patchnogrid, scaling=constrained, 
>    color=lambdafn_sin);

Here is a faster version that uses the hardware's co-processor:


> # LAMBDAFN_FAST
> # Using hardware coprocessor
> lambdafn_sinfast := proc(x, y)
>    local xn, xnold, yn, m;
>    xn := x;
>    yn := y;
>    for m from 0 to 100 while evalhf(sqrt(xn^2+yn^2)) < 4 do
>       xnold := xn;
>       xn := evalhf(sin(xn)*cosh(yn) - cos(xn)*sinh(yn)*0.4);
>       yn := evalhf(cos(xnold)*sinh(yn) + sin(xnold)*cosh(yn)*0.4)
>    od;
>    m
> end:

> plot3d(lambdafn_sinfast, -2 .. 2, -2 .. 2, grid=[200, 200], 
>    style=patchnogrid, shading=zhue, orientation=[65, 6]);


last back next

MAPLE V FRACTALS LAMBDAFN #1.01 current as of May 23, 1999
Author: Alexander F. Walz, alexander.f.walz@t-online.de
Original file location: http://www.math.utsa.edu/mirrors/maple/mfrlbdfn.htm