File:Penzoo25t400.jpg

From TORI
Revision as of 08:46, 1 December 2018 by Maintenance script (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Original file(2,833 × 1,177 pixels, file size: 1.22 MB, MIME type: image/jpeg)

Complex map of natural pentation, range in vicinity of the origin of coordinates, positive imaginary values of the argument.

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

Usage: FIgure 10.5 of the Book Суперфункции (In Russian) [1].

The map shown is zoom-in of the central part of map in figure http://mizugadro.mydns.jp/t/index.php/File:Penmap.jpg

References

C++ generator of curves

Files conto.cin, ado.cin and fsexp.cin should be loaded in order to compile the code below:


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

z_type pen0(z_type z){
DB Lp=-1.8503545290271812;
DB k,a,b;
// k=1.86573322821; a=-.62632418; b=0.4827;
        k=1.86573322821; a=-.6263241; b=0.4827;

z_type e=exp(k*z);
return Lp + e*(1.+e*(a+b*e));
}

z_type pen7(z_type z){ DB x; int m,n; z=pen0(z+(2.24817451898-7.));
DO(n,7) { if(Re(z)>8.) return 999.; z=FSEXP(z); if(abs(z)<40) goto L1; return 999.; L1: ;}
return z; }

z_type pen(z_type z){ DB x; int m,n;
x=Re(z); if(x<= -4.) return pen0(z);
m=int(x+5.);
z-=DB(m);
z=pen0(z);
DO(n,m) z=FSEXP(z);
return z;
}

int main(){ int j,k,m,n; DB x,y, p,q, t; z_type z,c,d, cu,cd;
 int M=501,M1=M+1;
 int N=401,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("penzoo25.eps","w"); ado(o,504,204);
 fprintf(o,"252 2 translate\n 100 100 scale\n");
 DO(m,M1) X[m]=-2.5+.01*(m-.5);
 DO(n,N1) Y[n]=0.+.005*(n-.5);
// for(m=1;m<400;m++) {M(-2.5+.01*m,0)L(-2.5+.01*m,2)}
// for(n=1;n<200;n++) {M(-2.5, .01*n)L(1.5,.01*n)} fprintf(o,"2 setlinecap .0002 W 0 0 0 RGB S\n");
 for(m=0;m<51;m++) {M(-2.5+.1*m,0)L(-2.5+.1*m,2)}
 for(n=1;n<21;n++) {M(-2.5, .1*n)L(2.5,.1*n)} fprintf(o,"2 setlinecap .002 W 0 0 0 RGB S\n");
M(-2.316,1.683)
L(-2.316,0)

M(-2.260,0)
L(-2.260,1.384)
L(0,1.384)

M(1.057,0)
L(1.057,1.546)
L(0,1.546)
 fprintf(o,"0 setlinecap .0022 W 0 0 0 RGB S\n");
 for(m=0;m<5;m++) {M(-2+m,0)L(-2+m,2)}
 for(n=0;n<3;n++) {M(-2.5,n)L(2.5,n)} fprintf(o,"2 setlinecap .006 W 0 0 0 RGB S\n");

 DO(m,M1)DO(n,N1){ g[m*N1+n]=9999;
                        f[m*N1+n]=9999;}
 DO(m,M1){x=X[m];
 DO(n,N1){y=Y[n]; z=z_type(x,y);
// c=pen0(z);
// c=FSEXP(pen0(z-1.));
// c=FSEXP(FSEXP(pen0(z-2.)));
 c=pen7(z);
// d=FSEXP(pen(z-1.));
// p=abs((c-d)/(c+d)); p=-log(p)/log(10.);
        p=Re(c); q=Im(c);
        if(p>-9999 && p<9999 && fabs(p)>1.e-11) g[m*N1+n]=p;
        if(q>-9999 && q<9999 && fabs(q)>1.e-11) f[m*N1+n]=q;
        }}
// #include "plofu.cin"

fprintf(o,"1 setlinejoin 2 setlinecap\n");

p=2;q=.5;
for(m=-19;m<19;m++)for(n=1;n<10;n+=1)conto(o,f,w,v,X,Y,M,N, (m+.1*n),-q,q);
                                                fprintf(o,".003 W 0 .6 0 RGB S\n");
for(m=0;m<29;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N,-(m+.1*n),-q,q);
                                                fprintf(o,".003 W .9 0 0 RGB S\n");
for(m=0;m<29;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N, (m+.1*n),-q,q);
                                                fprintf(o,".003 W 0 0 .9 RGB S\n");

for(m= 1;m<20;m++) conto(o,f,w,v,X,Y,M,N, (0.-m),-p,p);fprintf(o,".008 W .9 0 0 RGB S\n");
for(m= 1;m<20;m++) conto(o,f,w,v,X,Y,M,N, (0.+m),-p,p);fprintf(o,".008 W 0 0 .9 RGB S\n");
                conto(o,f,w,v,X,Y,M,N, (0. ),-p,p); fprintf(o,".008 W .6 0 .6 RGB S\n");
for(m=-31;m<32;m++)conto(o,g,w,v,X,Y,M,N,(0.+m),-p,p);fprintf(o,".007 W 0 0 0 RGB S\n");

DB t2=M_PI/1.86573322821;

//DB tx=-2.32;
DB tx=-2.316;

//M(tx,t2)L(4.1,t2)
M(tx,t2)L(2.6,t2)
fprintf(o,"0 setlinecap .014 W 1 1 1 RGB S\n");
//DO(n,64){ x=tx+.1*n; M(x,t2) L(x+.04,t2) }
//DO(n,64){ x=tx+.1*n; M(x,-t2) L(x+.04,-t2) }
//DO(n,34){ x=.1*n; M(x,t2) L(x+.04,t2) }
//fprintf(o,"0 setlinecap .004 W 0 0 0 RGB S\n");

//conto(o,g,w,v,X,Y,M,N, ( 1. ),-99,99); fprintf(o,".12 W 1 .5 0 RGB S\n");

fprintf(o,"showpage\n%c%cTrailer",'%','%'); fclose(o);

printf("pen7(-1)=%18.14f\n", Re(pen7(-1.)));
printf("Pi/1.86573322821=%18.14f\n", M_PI/1.86573322821);

        system("epstopdf penzoo25.eps");
        system( "open penzoo25.pdf");
}

Latex generator of labels


\documentclass[12pt]{article}
\paperheight 212px
\paperwidth 510px
\textwidth 894px
\textheight 800px
\topmargin -104px
\oddsidemargin -90px
\usepackage{graphics}
\usepackage{rotating}
\newcommand \sx {\scalebox}
\newcommand \rot {\begin{rotate}}
\newcommand \ero {\end{rotate}}
\newcommand \ing {\includegraphics}
\newcommand \rmi {\mathrm{i}}
\begin{document}
{\begin{picture}(512,208)
%\put(12,0){\ing{24}}
%\put(12,0){\ing{penma}}
\put(8,9){\ing{penzoo25}}
\put(1,205){\sx{1.2}{$y$}}
\put(-.4,176.8){\sx{1.1}{$\frac{P}{2 \rm i}$}}
\put(130,177){\sx{1.2}{\bf cut}}
\put(1,158){\sx{1.1}{$\frac{3}{2}$}}
\put(1,107){\sx{1.2}{$1$}}
\put(1,057){\sx{1.17}{$\frac{1}{2}$}}
\put(1,7){\sx{1.2}{$0$}}
\put(50,0.4){\sx{1.12}{$-2$}}
\put(150,0.4){\sx{1.12}{$-1$}}
\put(258,0.5){\sx{1.12}{$0$}}
\put(358.4,0.5){\sx{1.12}{$1$}}
\put(459,0.5){\sx{1.12}{$2$}}
\put(505,0.5){\sx{1.12}{$x$}}
%
\put(392,73){\sx{1.7}{\rot{61}$v\!=\!2$\ero}}
\put(212,120){\sx{1.7}{\rot{0}$v\!=\!1$\ero}}
\put(195.6,5.8){\sx{1.7}{\rot{0}$v\!=\!0$\ero}}
%
\put(063,17){\sx{1.7}{\rot{78}$u\!=\!-1$\ero}}
\put(166,18){\sx{1.7}{\rot{90}$u\!=\!0$\ero}}
\put(265,18){\sx{1.7}{\rot{81}$u\!=\!1$\ero}}
\put(334,15){\sx{1.7}{\rot{65}$u\!=\!2$\ero}}
%
\put(29.5,146){\sx{1.2}{$L$}}
\put(361.4,162.3){\sx{1.2}{$L$}}
\end{picture}
\end{document}

References

File history

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

Date/TimeThumbnailDimensionsUserComment
current06:13, 1 December 2018Thumbnail for version as of 06:13, 1 December 20182,833 × 1,177 (1.22 MB)Maintenance script (talk | contribs)Importing image file

The following page uses this file:

Metadata