File:KelleriteT.jpg

Iterations of the Keller function.

$y=\mathrm{Keller}^{n}(x) =\mathrm{Shoka}\Big(n+\mathrm{ArcShoka}(x)\Big)~$ versus $x$ for various number $n$ of iteration.

C++ generator of curves
using namespace std; typedef complex z_type; z_type Shoka(z_type z)  { return z + log(exp(-z)+(M_E-1.)); } z_type ArcShoka(z_type z){ return z + log((1.-exp(-z))/(M_E-1.)) ;} int main{ int j,k,m,n; DB x,y, a; FILE *o;o=fopen("kellerite.eps","w");ado(o,408,412); fprintf(o,"4 4 translate\n 100 100 scale 2 setlinecap 1 setlinejoin\n"); for(m=0;m<5;m++){ M(m,0)L(m,4)} for(n=0;n<5;n++){ M(0,n)L(4,n)} fprintf(o,".002 W 0 0 0 RGB S\n"); M(0,0)L(4,4) fprintf(o,".02 W 1 0 1 RGB S\n"); M(0,0) DO(n,404){x=.005+.01*n ;y=Re(Shoka(5.+ArcShoka(x)));if(y<4.02) L(x,y) else break;} M(0,0) DO(n,404){x=.005+.01*n ;y=Re(Shoka(4.+ArcShoka(x)));if(y<4.02) L(x,y) else break;} M(0,0) DO(n,404){x=.005+.01*n ;y=Re(Shoka(3.+ArcShoka(x)));if(y<4.02) L(x,y) else break;} M(0,0) DO(n,404){x=.005+.01*n ;y=Re(Shoka(2.+ArcShoka(x)));if(y<4.02) L(x,y) else break;} M(0,0) DO(n,404){x=.005+.01*n ;y=Re(Shoka(1.+ArcShoka(x)));if(y<4.02) L(x,y) else break;} fprintf(o,".02 W 0 1 1 RGB S\n");
 * 1) include 
 * 2) include 
 * 3) include 
 * 4) define DB double
 * 5) define DO(x,y) for(x=0;x<y;x++)
 * 1) include
 * 1) define Re(x) x.real
 * 2) define Im(x) x.imag
 * 3) define I z_type(0.,1.)
 * 4) include"ado.cin"
 * 1) define M(x,y) fprintf(o,"%6.3f %6.3f M\n",0.+x,0.+y);
 * 2) define L(x,y) fprintf(o,"%6.3f %6.3f L\n",0.+x,0.+y);

M(0,0) DO(n,101){x=.02+.04*n;y=Re(Shoka(-1.+ArcShoka(x))); L(x,y)} M(0,0) DO(n,101){x=.02+.04*n;y=Re(Shoka(-2.+ArcShoka(x))); L(x,y)} M(0,0) DO(n,101){x=.02+.04*n;y=Re(Shoka(-3.+ArcShoka(x))); L(x,y)} M(0,0) DO(n,101){x=.02+.04*n;y=Re(Shoka(-4.+ArcShoka(x))); L(x,y)} M(0,0) DO(n,101){x=.02+.04*n;y=Re(Shoka(-5.+ArcShoka(x))); L(x,y)} fprintf(o,".02 W 1 .5 0 RGB S\n");

DO(m,81){ M(0,0) DO(n,401){x=.01*(n+1.); y=Re(Shoka(-4.+.1*m + ArcShoka(x))); if(y<4.02)L(x,y) else break; } } fprintf(o,".002 W 0 0 0 RGB S\n"); fprintf(o,"showpage\n%cTrailer",'%'); fclose(o); system("epstopdf kellerite.eps"); system(   "open kellerite.pdf"); //these 2 commands may be specific for macintosh getchar; system("killall Preview");// if run at another operational sysetm, may need to modify }

Latex generator of curves
\documentclass[12pt]{article} \usepackage{geometry} \usepackage{graphicx} \usepackage{rotating} \paperwidth 420pt \paperheight 424pt \topmargin -103pt \oddsidemargin -83pt \textwidth 1200pt \textheight 600pt \pagestyle {empty} \newcommand \sx {\scalebox} \newcommand \rot {\begin{rotate}} \newcommand \ero {\end{rotate}} \newcommand \ing {\includegraphics} \begin{document} \sx{1}{ \begin{picture}(410,410) \put(1,9){\ing{kellerite}} \put(-12,401){\sx{2.4}{$y$}} \put(-12,304){\sx{2.4}{$3$}} \put(-12,204){\sx{2.4}{$2$}} \put(-12,104){\sx{2.4}{$1$}} \put(-12, 05){\sx{2.4}{$0$}} \put(0,-7){\sx{2.3}{$0$}} \put(100,-7){\sx{2.3}{$1$}} \put(201,-7){\sx{2.3}{$2$}} \put(301,-7){\sx{2.3}{$3$}} \put(394,-7){\sx{2.4}{$x$}} %\put(560,214){\rot{37}\sx{4}{$y=\mathrm{Tania}(x)$}\ero} \put( 27,343){\rot{76}\sx{2.8}{$n\!=\!5$}\ero} \put( 51,343){\rot{67}\sx{2.8}{$n\!=\!4$}\ero} \put( 96,343){\rot{57}\sx{2.8}{$n\!=\!3$}\ero} \put(168,343){\rot{51}\sx{2.8}{$n\!=\!2$}\ero} \put(254,343){\rot{48}\sx{2.8}{$n\!=\!1$}\ero} \put(322,318){\rot{45}\sx{2.8}{$n\!=\!0$}\ero} \put(327,229){\rot{43}\sx{2.8}{$n\!=\!-1$}\ero} \put(327,146){\rot{39}\sx{2.7}{$n\!=\!-2$}\ero} \put(324, 79){\rot{32}\sx{2.7}{$n\!=\!-3$}\ero} \put(323,37){\rot{21}\sx{2.7}{$n\!=\!-4$}\ero} \put(320, 17){\rot{10}\sx{2.7}{$n\!=\!-5$}\ero} \end{picture} } \end{document}