File:Tet2M2a200.png

From TORI
Revision as of 19:58, 6 August 2020 by T (talk | contribs)
Jump to navigation Jump to search

Original file(2,297 × 1,882 pixels, file size: 308 KB, MIME type: image/png)

Complex map of Tetration to base 2.

\( u+\mathrm i v = \mathrm{Tet2}(x\!+\!\mathrm i y) \)

Requirements

ado.cin, conto.cin, Tet2.cin.

Also, for the generation of the image, 2 more files should be loaded, Tet2M2.cc and Tet2M2ap.tex below

Tet2M2.cc

#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#define DB double
#define DO(x,y) for(x=0;x<y;x++)
#include <complex>
#define z_type std::complex<double>
#define Re(x) x.real()
#define Im(x) x.imag()
#define I z_type(0.,1.)
//#include "tet2f4c.cin"
#include "../conto.cin"
//#include"Tet2Li3.inc"
#include"Tet2.cin"

int main(){ int j,k,m,m1,n; DB x,y, p,q, t; z_type z,c,d, cu,cd;
int M=430,M1=M+1;
int N=320,N1=N+1;
DB X[M1],Y[N1], g[M1*N1],f[M1*N1], w[M1*N1]; // w is working array.
char v[M1*N1]; // v is working array
FILE *o;o=fopen("Tet2M2.eps","w");ado(o,870,660);
fprintf(o,"410 110 translate\n 100 100 scale 2 setlinecap\n");
DO(m,M1)X[m]=-4.01+.02*(m);
DO(n,N1)Y[n]=-1.01+.02*(n);
for(m=-4;m<5;m++){ M(m,-1)L(m,5)}
for(n=-1;n<6;n++){ M( -4,n)L(4,n)}
fprintf(o,".007 W 0 0 0 RGB S\n");

DO(m,M1)DO(n,N1){g[m*N1+n]=9999; f[m*N1+n]=9999;}

DO(n,N1){y=Y[n];
         for(m=0;m<M1;m++)
         {x=X[m]; //printf("%5.2f\n",x);
          z=z_type(x,y);
//        c=F4(z);
          c=Tet2(z);
//        d=conj(Tet2Li3(conj(z)));
//      c=-log((c-d)/(c+d))/log(10.);
          p=Re(c);q=Im(c);
          if(p>-99. && p<99. && q>-99. && q<99. ){ g[m*N1+n]=p;f[m*N1+n]=q;}
        }}

fprintf(o,"1 setlinejoin 2 setlinecap\n"); p=20;q=1;

conto(o,f,w,v,X,Y,M,N,1.5674321238496474,-.03, .03); fprintf(o,".1 W 1 .8 .666 RGB S\n");
conto(o,g,w,v,X,Y,M,N,0.8246785461420740,-.03, .03); fprintf(o,".1 W 0 1 1 RGB S\n");

for(m=-10;m<10;m++)for(n=1;n<10;n+=1)conto(o,f,w,v,X,Y,M,N,(m+.1*n),-q, q); fprintf(o,".008 W 0 .6666 0 RGB S\n");
for(m=0;m<10;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N,-(m+.1*n),-q, q); fprintf(o,".008 W 1 0 0 RGB S\n");
for(m=0;m<10;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N, (m+.1*n),-q, q); fprintf(o,".008 W 0 0 1 RGB S\n");
for(m=1;m<10;m++) conto(o,f,w,v,X,Y,M,N, (0.-m),-p,p); fprintf(o,".02 W 1 0 0 RGB S\n");
for(m=1;m<10;m++) conto(o,f,w,v,X,Y,M,N, (0.+m),-p,p); fprintf(o,".02 W 0 0 1 RGB S\n");
                  conto(o,f,w,v,X,Y,M,N, (0. ),-p,p); fprintf(o,".02 W .6 0 .6666 RGB S\n");
for(m=-9;m<10;m++) conto(o,g,w,v,X,Y,M,N, (0.+m),-p,p); fprintf(o,".02 W 0 0 0 RGB S\n");
/*
conto(o,g,w,v,X,Y,M,N,15,-p,p); fprintf(o,".004 W 1 0 1 RGB S\n");
conto(o,g,w,v,X,Y,M,N,14,-p,p); fprintf(o,".01 W 0 0 1 RGB S\n");
conto(o,g,w,v,X,Y,M,N,13,-p,p); fprintf(o,".0041 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,12,-p,p); fprintf(o,".01 W 0 1 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,11,-p,p); fprintf(o,".004 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,10,-p,p); fprintf(o,".01 W 1 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 9,-p,p); fprintf(o,".004 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 8,-p,p); fprintf(o,".01 W .2 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 7,-p,p); fprintf(o,".004 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 6,-p,p); fprintf(o,".01 W .2 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 5,-p,p); fprintf(o,".004 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 4,-p,p); fprintf(o,".01 W .2 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 3,-p,p); fprintf(o,".004 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 2,-p,p); fprintf(o,".01 W .8 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, 1,-p,p); fprintf(o,".03 W .4 0 0 RGB S\n");
*/
fprintf(o,"showpage\n%c%cTrailer",'%','%'); fclose(o);
        system("epstopdf Tet2M2.eps");
//      system(   "xpdf  Tet2M2.pdf");
        system(   "open  Tet2M2.pdf");
}

Tet2M2a.tex

\documentclass[12pt]{article}
\usepackage{graphicx}
\usepackage{rotating}
\usepackage{geometry}
\paperwidth 830pt
%\paperwidth 886pt
\paperheight 680pt
\textwidth 900pt
\textheight 900pt
\topmargin -108pt
\oddsidemargin -81pt
\pagestyle{empty}
\parindent 0pt
\begin{document}
\newcommand \ing {\includegraphics}
\newcommand \sx {\scalebox}
\newcommand \rot {\begin{rotate}}
\newcommand \ero {\end{rotate}}
\begin{picture}(890,668)
\put(20,10){\includegraphics{Tet2M2}}
%\put(9,812){\sx{3}{$y$}}
\put(9,614){\sx{3}{$y$}}
\put(9,511){\sx{3}{$4$}}
\put(9,411){\sx{3}{$3$}}
\put(9,311){\sx{3}{$2$}}
\put(9,211){\sx{3}{$1$}}
\put(9,111){\sx{3}{$0$}}
\put(0,-8){\sx{3}{$-4$}}
\put(100,-8){\sx{3}{$-3$}}
\put(200,-8){\sx{3}{$-2$}}
\put(300,-8){\sx{3}{$-1$}}
\put(425,-8){\sx{3}{$0$}}
\put(525,-8){\sx{3}{$1$}}
\put(625,-8){\sx{3}{$2$}}
\put(725,-8){\sx{3}{$3$}}
\put(825,-8){\sx{3}{$4$}}
\put(866,-7){\sx{3.2}{$x$}}
\put(334,614){\rot{-80}\sx{3}{$u\!=\!\Re(L)$}\ero}
\put(478,620){\rot{-80}\sx{3}{$v\!=\!\Im(L)$}\ero}
\put(767,620){\rot{-81}\sx{3}{$v\!=\!\Im(L)$}\ero}
\put(560,490){\rot{54}\sx{3}{$v\!=\!1.6$}\ero}
\put(236,524){\rot{-36}\sx{3}{$u\!=\!0.8$}\ero}
\put(438,400){\rot{47}\sx{3}{$u\!=\!0.9$}\ero}
\put(470,350){\rot{38}\sx{3}{$u\!=\!1$}\ero}
\put(280,328){\rot{67}\sx{3}{$v\!=\!1.5$}\ero}
\put(296,280){\rot{54}\sx{3}{$v\!=\!1.4$}\ero}
\put(310,234){\rot{36}\sx{3}{$v\!=\!1.2$}\ero}
\put(322,208){\rot{29}\sx{3}{$v\!=\!1$}\ero}
\put(336,111){\rot{0}\sx{3}{$v\!=\!0$}\ero}
\put(339,82){\rot{90}\sx{3}{$u\!=\!0$}\ero}
\put(441,82){\rot{90}\sx{3}{$u\!=\!1$}\ero}
\put(543,82){\rot{90}\sx{3}{$u\!=\!2$}\ero}
\put(606,82){\rot{90}\sx{3}{$u\!=\!3$}\ero}
\put(643,82){\rot{90}\sx{3}{$u\!=\!4$}\ero}
\put(530,13){\rot{33}\sx{3}{$v\!=\!-1$}\ero}
\end{picture}
\end{document}

Generation commands

make Tet2M2
./Tet2M2
pdflatex Tet2M2ap.tex
convert -density 200 Tet2M2a.pdf PNG8:Tet2M2a200.png

References

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current19:58, 6 August 2020Thumbnail for version as of 19:58, 6 August 20202,297 × 1,882 (308 KB)T (talk | contribs)

The following page uses this file:

Metadata