File:Korimap.jpg

Complex map of function kori

$u+\mathrm i v=\,$kori$(x\!+\!\mathrm i y)$

For $z\ne 1$, kori can be defined with

kori$(z)=\displaystyle \frac{J_0\big(L_1 \sqrt{z}\big)}{1-z}$

where $L_1=\,$BesselJZero[0,1]$\approx 2.4$ is first zero of function $J_0=\,$BesselJ0

C++ generator of map
Files ado.cin, conto.cin, besselj0.cin should be loaded in order to compile the C++ code below. typedef std::complex z_type; //#include "korifit76.cin" DB L1=2.404825557695772768621631879326454643124; int main{ int j,k,m,n; DB x,y, p,q, t; z_type z,c,d; int M=501,M1=M+1; int N=551,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("korifit76ma.eps","w");ado(o,1506,1104); FILE *o;o=fopen("korima.eps","w");ado(o,1506,1104); fprintf(o,"102 102 translate\n 10 10 scale\n"); DO(m,M1) X[m]=-10.+.2*(m-.5)*(1+.001*m); DO(n,N1)Y[n]=-10+.2*(n-.5);//*(1+.001*n);
 * 1) include 
 * 2) include 
 * 3) define DB double
 * 4) define DO(x,y) for(x=0;x<y;x++)
 * 5) include
 * 1) define Re(x) x.real
 * 2) define Im(x) x.imag
 * 3) define I z_type(0.,1.)
 * 4) include "conto.cin"
 * 5) include "besselj0.cin"

for(m=-10;m<10;m++){if(m!=0){M(m,-10)L(m,10)}} for(n=-10;n<10;n++){    M(  -10,n)L(10,n)}

for(m=-10;m<160;m+=10){if(m!=0){M(m,-10)L(m,100)}} for(n=-10;n<110;n+=10){   M(  -10,n)L(140,n)} fprintf(o,".01 W 0 0 0 RGB S\n"); M(0,-10)L(0,100) fprintf(o,".03 W 0 .5 0 RGB S\n");

DO(m,M1)DO(n,N1){g[m*N1+n]=99999; f[m*N1+n]=99999;} DO(m,M1){x=X[m]; //printf("%5.2f\n",x); DO(n,N1){y=Y[n]; z=z_type(x,y); c=BesselJ0(L1*sqrt(z))/(1.-z); //     c=korifit76(z); p=Re(c);   q=Im(c); if(p>-9999. && p<9999.     &&     q>-9999. && q<9999     ) {g[m*N1+n]=p; f[m*N1+n]=q; }                    }} //#include "plodi.cin" fprintf(o,"1 setlinejoin 1 setlinecap\n"); q=.05; for(n=1;n<10;n+=1)conto(o,f,w,v,X,Y,M,N,( .01*n),-q, q); fprintf(o,".002 W 0 .7 0 RGB S\n"); for(n=1;n<10;n+=1)conto(o,f,w,v,X,Y,M,N,(-.01*n),-q, q); fprintf(o,".002 W 0 .7 0 RGB S\n"); for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N,( .01*n),-q, q); fprintf(o,".002 W 0 0 .8 RGB S\n"); for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N,(-.01*n),-q, q); fprintf(o,".002 W .8 0 0 RGB S\n");

p=20;q=2; for(m=-4;m<4;m++)for(n=1;n<10;n+=1)conto(o,f,w,v,X,Y,M,N,(m+.1*n),-q, q); fprintf(o,".01 W 0 .8 0 RGB S\n"); for(m=0;m<4;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N,-(m+.1*n),-q, q); fprintf(o,".01 W 1 0 0 RGB S\n"); for(m=0;m<4;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N, (m+.1*n),-q, q); fprintf(o,".01 W 0 0 1 RGB S\n"); for(m=1;m<9;m++) conto(o,f,w,v,X,Y,M,N, (0.-m),-p,p); fprintf(o,".05 W 1 0 0 RGB S\n"); for(m=1;m<9;m++) conto(o,f,w,v,X,Y,M,N, (0.+m),-p,p); fprintf(o,".05 W 0 0 1 RGB S\n"); conto(o,f,w,v,X,Y,M,N, (0. ),-2*p,2*p); fprintf(o,".05 W .9 0 .9 RGB S\n"); for(m=-8;m<0;m++) conto(o,g,w,v,X,Y,M,N, (0.+m),-p,p); fprintf(o,".03 W 0 0 0 RGB S\n"); m=0;         conto(o,g,w,v,X,Y,M,N, (0.+m),-2*p,2*p); fprintf(o,".03 W 0 0 0 RGB S\n"); for(m=1;m<9;m++) conto(o,g,w,v,X,Y,M,N, (0.+m),-p,p); fprintf(o,".03 W 0 0 0 RGB S\n"); //#include "plofu.cin" fprintf(o,"showpage\n%c%cTrailer",'%','%'); fclose(o); system("epstopdf korima.eps"); system(   "open korima.pdf"); getchar; system("killall Preview");//for mac }