Difference between revisions of "File:Tet2LMap.png"

From TORI
Jump to navigation Jump to search
 
 
Line 1: Line 1:
  +
[[Complex map]] of [[Tetration to base 2]] with "subtracted" singulatiry at \(-2\):
  +
  +
\( u+\mathrm i v = \mathrm{tet}_2(z) - \log_2(2\!+\!z) \)
  +
  +
in the plane \(z =x+\mathrm i y\)
  +
  +
This modification allows to extent the range of validity of approximation of [[Tetration to base 2]].
  +
  +
==Tet2LM.cc==
  +
<pre>
  +
#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"
  +
  +
z_type log2(z_type z){ return log(z)/log(2.);}
  +
  +
int main(){ int j,k,m,m1,n; DB x,y, p,q, t; z_type z,c,d, cu,cd;
  +
int M=401,M1=M+1;
  +
int N=301,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("Tet2LM.eps","w");ado(o,820,620);
  +
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)-log2(z+2.);
  +
// 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 Tet2LM.eps");
  +
// system( "xpdf Tet2LM.pdf");
  +
system( "open Tet2LM.pdf");
  +
}
  +
</pre>
  +
  +
==Tet2LMap.tex==
  +
<pre>
  +
\documentclass[12pt]{article}
  +
\usepackage{graphicx}
  +
\usepackage{rotating}
  +
\usepackage{geometry}
  +
\paperwidth 828pt
  +
%\paperwidth 886pt
  +
\paperheight 636pt
  +
\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,624)
  +
\put(20,10){\includegraphics{Tet2LM}}
  +
%\put(9,812){\sx{3}{$y$}}
  +
\put(9,608){\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(816,-7){\sx{3.2}{$x$}}
  +
  +
\put(472,410){\rot{-26}\sx{3}{$u\!=\!-1$}\ero}
  +
  +
\put(170,264){\rot{87}\sx{3}{$v\!=\!-1$}\ero}
  +
\put(398,264){\rot{82}\sx{3}{$v\!=\!0$}\ero}
  +
\put(580,262){\rot{74}\sx{3}{$v\!=\!1$}\ero}
  +
  +
\put(344,111){\rot{0}\sx{3}{$v\!=\!0$}\ero}
  +
\put(340,82){\rot{90}\sx{3}{$u\!=\!0$}\ero}
  +
\put(442,82){\rot{90}\sx{3}{$u\!=\!0$}\ero}
  +
\put(598,82){\rot{90}\sx{3}{$u\!=\!1$}\ero}
  +
\put(643,82){\rot{90}\sx{3}{$u\!=\!2$}\ero}
  +
\end{picture}
  +
\end{document}
  +
</pre>
  +
  +
==Generaton==
  +
<pre>
  +
make Tet2LM
  +
./Tet2LM
  +
pdflatex Tet2LMap
  +
convert -density 200 Tet2LMap.pdf PNG8:Tet2LMap.png
  +
</pre>
  +
  +
==References==
  +
<references/>
  +
  +
[[Category:Ackermann]]
  +
[[Category:Book]]
  +
[[Category:C++]]
  +
[[Category:Complex map]]
  +
[[Category:Convert]]
  +
[[Category:Latex]]
  +
[[Category:PNG8]]
  +
[[Category:Superfunction]]
  +
[[Category:Tet2]]
  +
[[Category:Tetration]]
  +
[[Category:Tetration to base 2]]

Latest revision as of 19:55, 6 August 2020

Complex map of Tetration to base 2 with "subtracted" singulatiry at \(-2\):

\( u+\mathrm i v = \mathrm{tet}_2(z) - \log_2(2\!+\!z) \)

in the plane \(z =x+\mathrm i y\)

This modification allows to extent the range of validity of approximation of Tetration to base 2.

Tet2LM.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"

z_type log2(z_type z){ return log(z)/log(2.);}

int main(){ int j,k,m,m1,n; DB x,y, p,q, t; z_type z,c,d, cu,cd;
int M=401,M1=M+1;
int N=301,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("Tet2LM.eps","w");ado(o,820,620);
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)-log2(z+2.);
//      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 Tet2LM.eps");
//      system(   "xpdf  Tet2LM.pdf");
        system(   "open  Tet2LM.pdf");
}

Tet2LMap.tex

\documentclass[12pt]{article}
\usepackage{graphicx}
\usepackage{rotating}
\usepackage{geometry}
\paperwidth 828pt
%\paperwidth 886pt
\paperheight 636pt
\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,624)
\put(20,10){\includegraphics{Tet2LM}}
%\put(9,812){\sx{3}{$y$}}
\put(9,608){\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(816,-7){\sx{3.2}{$x$}}

\put(472,410){\rot{-26}\sx{3}{$u\!=\!-1$}\ero}

\put(170,264){\rot{87}\sx{3}{$v\!=\!-1$}\ero}
\put(398,264){\rot{82}\sx{3}{$v\!=\!0$}\ero}
\put(580,262){\rot{74}\sx{3}{$v\!=\!1$}\ero}

\put(344,111){\rot{0}\sx{3}{$v\!=\!0$}\ero}
\put(340,82){\rot{90}\sx{3}{$u\!=\!0$}\ero}
\put(442,82){\rot{90}\sx{3}{$u\!=\!0$}\ero}
\put(598,82){\rot{90}\sx{3}{$u\!=\!1$}\ero}
\put(643,82){\rot{90}\sx{3}{$u\!=\!2$}\ero}
\end{picture}
\end{document}

Generaton

make Tet2LM
./Tet2LM
pdflatex Tet2LMap
convert -density 200 Tet2LMap.pdf PNG8:Tet2LMap.png

References

File history

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

Date/TimeThumbnailDimensionsUserComment
current19:54, 6 August 2020Thumbnail for version as of 19:54, 6 August 20202,291 × 1,760 (269 KB)T (talk | contribs)

The following page uses this file:

Metadata