File:Penzoo25t400.jpg
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
- ↑
https://www.morebooks.de/store/ru/book/Суперфункции/isbn/978-3-659-56202-0
http://www.ils.uec.ac.jp/~dima/BOOK/202.pdf
http://mizugadro.mydns.jp/BOOK/202.pdf Д.Кузнецов. Суперфункции. Lambert Academic Publishing, 2014
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/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 06:13, 1 December 2018 | 2,833 × 1,177 (1.22 MB) | Maintenance script (talk | contribs) | Importing image file |
You cannot overwrite this file.
File usage
The following page uses this file: