File:Sunem10q10map6.jpg

Complex map of function SuNem with parameters $p=1$, $q=1$:

$u\!+\!\mathrm i v=\mathrm{SuNem}_{1,1}(x\!+\!\mathrm i y)$

SuNem is superfunction for the Nemtsov function,

$\mathrm{nem}(z)=z+pz^3+qz^4$

Mathematica generator of the algorithm
T[z_]=z+p z^3+q z^4 P[m_, L_] := Sum[a[m, n] L^n, {n, 0, IntegerPart[m/2]}] a[1, 0] = -q/p; a[2, 0] = 0; m = 2; F[m_,z_] = (-2 p z)^(-1/2) (1 + Sum[P[n, Log[-z]]/(-2 p z)^(n/2), {n, 1, 2}]); s[m]=Numerator[Normal[Series[(T[F[m,-1/x^2]] - F[m,-1/x^2+1]) 2^((m+1)/2)/x^(m+3), {x,0,0}]]] sub[m] = Extract[Solve[s[m]==0, a[m,1]], 1]; SUB[m] = sub[m]

For[m = 3, m < 18, F[m, z_] = ReplaceAll[(-2 p z)^(-1/2) (1+Sum[P[n, Log[-z]]/(-2 p z)^(n/2), {n,1,m}]), SUB[m-1]]; s[m] = Numerator[Normal[Series[(T[F[m,-1/x^2]]-F[m,-1/x^2+1]) 2^((m+1)/2)/x^(m+3),{x,0,0}]]]; t[m] = Collect[Numerator[ReplaceAll[s[m], Log[x] -> L]], L]; u[m] = Table[ Coefficient[t[m] L, L^n] == 0, {n, 1, 1 + IntegerPart[m/2]}]; tab[m] = Table[a[m, n], {n, 0, IntegerPart[m/2]}]; Print[sub[m] = Simplify[Extract[Solve[u[m], tab[m]], 1], p > 0]]; SUB[m] = Join[SUB[m - 1], sub[m]]; m++];

For[m=1, m<18, For[n=0,n<(m+1)/2, A[m, n] = CForm[N[ReplaceAll[a[m, n], sub[m]]]]; Print["APQ[", m, "][", n, "]=", A[m, n], ";"] n++]; m++];

C++ generator of the map
Files ado.cin, conto.cin, nemtsovapq.txt should be loaded for the compilation of the code below

//using namespace std; typedef std::complex z_type; //#include "e1egf.cin" //#include "e1egi.cin"
 * 1) include 
 * 2) include 
 * 3) include 
 * 4) define DB double
 * 5) define DO(x,y) for(x=0;x<y;x++)
 * 1) include
 * 1) define Re(x) x.real
 * 2) define Im(x) x.imag
 * 3) define I z_type(0.,1.)
 * 1) include "conto.cin"


 * 1) include "nemtsovapq.txt"

// z_type T(z_type z){ return z - z*z*z*(1.+z); } //z_type T(z_type z){ return z - z*z*z*(NEMTSOVP+z*NEMTSOVQ); } // old z_type T(z_type z){ return z + z*z*z*(NEMTSOVp+z*NEMTSOVq); } //new

z_type F0(z_type z){ int m,n,k; z_type c[22],s; z_type L=log(-z); z_type x=sqrt(-.5/(NEMTSOVp*z)); int M=18; // this is maximal m for which APQ are calculated. c[0]=-1; // Not used. c[1]=APQ[1][0]; // id est, just -q/p c[2]=APQ[2][1]*L; for(m=3;m0;n--){ s+= APQ[m][n]; s*=L; } c[m]=s+APQ[m][0];} s=c[M-1]*x; for(m=M-2;m>0;m--){ s+=c[m]; s*=x; } return x*(1.+s); }

z_type F(z_type z){ int n,N; DB x,y,r; z_type s; x=Re(z);     if(x<-180.) return F0(z); r=abs(z-30.); if(r>190. && x<30.) return F0(z); y=Im(z);     if(r>190 && abs(y)>20) return F0(z); N=int(x+181.); s=F0(z-DB(N)); DO(n,N) s=T(s); return s;}

DB Xunity = 0.66402958486808; z_type sunem(z_type z){ return F(z+Xunity); }

int main{ int Max; int j,k,m,n; DB x,y, p,q, t; z_type z,c,d;

Max=nemtsovapq(1.,1.); //Calculation of A; storing of valies of NEMTSOVp and NEMTSOVp.

printf("NEMTSOVp, NEMTSOVq= %9.6lf %9.6lf  Max=%2d\n", NEMTSOVp, NEMTSOVp, Max);

// DO(m,Max){ DO(n,m/2+1) printf("%15.9f ", APQ[m][n]); printf("\n");} getchar;

x=.7; DO(n,50){ y=Re(F(x)); x+=(1.-y); printf("%20.16lf %20.16lf\n",x,y); } Xunity=x; getchar; DO(n,21){ x=-1.+.1*n; y=Re(sunem(x)); printf("%10.2f %20.16lf\n",x,y);} getchar;

int M=401,M1=M+1; int N=601,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("sunem10q10ma6a.eps","w");ado(o,1204,1204); fprintf(o,"602 602 translate\n 100 100 scale\n"); DO(m,M1) X[m]=-6.+.03*(m-.5); DO(n,N1) Y[n]=-6.+.02*(n-.5); for(m=-6;m<7;m++){ if(m==0){ M(m,-6.2)L(m,6.2)} else { M(m,-6)L(m,6) }} for(n=-6;n<7;n++){ M(-6,n)L(6,n)} fprintf(o,".002 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]; printf("run at x=%6.3f\n",x); DO(n,N1){y=Y[n]; z=z_type(x,y);

//c=1./sqrt(-2.*z)-1./(4.*z); //c=T(F(z-1.)); //c=F(z); c=sunem(z); //d=F0(z); //p=abs(c-d)/abs(c+d); p=-log(p)/log(10.); p=Re(c); q=Im(c); // if(p>-85 && p<85) g[m*N1+n]=p; if(p>-51 && p<51 &&          q >-51 && q<51 ) { g[m*N1+n]=p; f[m*N1+n]=q; } }}

fprintf(o,"1 setlinejoin 1 setlinecap\n"); //p=2.;q=2.; //#include"plofu.cin" p=10;q=.5;

for(m=-5;m<5;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 .6 0 RGB S\n"); for(m=0;m<5;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 .9 0 0 RGB S\n"); for(m=0;m<5;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 .9 RGB S\n");

for(m= 1;m<11;m++) conto(o,f,w,v,X,Y,M,N,(0.-m),-p,p);fprintf(o,".03 W .8 0 0 RGB S\n"); for(m= 1;m<11;m++) conto(o,f,w,v,X,Y,M,N,(0.+m),-p,p);fprintf(o,".03 W 0 0 .8 RGB S\n"); conto(o,f,w,v,X,Y,M,N,(0. ),-p,p);fprintf(o,".03 W .5 0 .5 RGB S\n"); for(m=-10;m<11;m++)conto(o,g,w,v,X,Y,M,N,(0.+m),-p,p);fprintf(o,".03 W 0 0 0 RGB S\n");

/* // test of precision //conto(o,g,w,v,X,Y,M,N,15.5,-p,p);fprintf(o,".2 W .3 0 .3 RGB S\n"); conto(o,g,w,v,X,Y,M,N,15.,-p,p);fprintf(o,".2 W .8 0 .8 RGB S\n"); conto(o,g,w,v,X,Y,M,N,14.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,13.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,12.,-p,p);fprintf(o,".2 W 0 0 .8 RGB S\n"); conto(o,g,w,v,X,Y,M,N,11.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,10.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,9.,-p,p);fprintf(o,".2 W 0 .6 .8 RGB S\n"); conto(o,g,w,v,X,Y,M,N,8.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,7.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,6.,-p,p);fprintf(o,".2 W 0 .7 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,5.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,4.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,3.,-p,p);fprintf(o,".2 W 1 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,2.,-p,p);fprintf(o,".1 W 0 0 0 RGB S\n"); conto(o,g,w,v,X,Y,M,N,1.,-p,p);fprintf(o,".3 W .5 0 0 RGB S\n");

fprintf(o,"showpage\n%cTrailer",'%'); fclose(o); system("epstopdf sunem10q10ma6a.eps"); system(   "open sunem10q10ma6a.pdf"); //mac

getchar; system("killall Preview");// mac }

Latex generator of the labels
\documentclass[12pt]{article} \usepackage{graphics} \paperwidth 1260pt \paperheight 1250pt \usepackage{geometry} \usepackage{rotating} \textwidth 1260pt \textheight 1260pt \topmargin -100pt \oddsidemargin -72pt \parindent 0pt \pagestyle{empty} \newcommand \ing {\includegraphics} \newcommand \sx {\scalebox} \newcommand \rot {\begin{rotate}} \newcommand \ero {\end{rotate}} \begin{document} \begin{picture}(1250,1240) \put(50,40){\ing{sunem10q10ma6a}} %\put(50,40){\ing{sunem10q10ma6s}} \put(20,1226){\sx{4}{$y$}} \put( 20,1130){\sx{4}{$5$}} \put( 20,1030){\sx{4}{$4$}} \put( 20,930){\sx{4}{$3$}} \put( 20,830){\sx{4}{$2$}} \put( 20,730){\sx{4}{$1$}} \put( 20,630){\sx{4}{$0$}} \put(-10,530){\sx{4}{$-1$}} \put(-10,430){\sx{4}{$-2$}} \put(-10,330){\sx{4}{$-3$}} \put(-10,230){\sx{4}{$-4$}} \put(-10,130){\sx{4}{$-5$}} \put(-10, 30){\sx{4}{$-6$}} \put(20, 2){\sx{4}{$-6$}} \put(120, 2){\sx{4}{$-5$}} \put(220, 2){\sx{4}{$-4$}} \put(320, 2){\sx{4}{$-3$}} \put(420, 2){\sx{4}{$-2$}} \put(520, 2){\sx{4}{$-1$}} \put(644, 2){\sx{4}{$0$}} \put(744, 2){\sx{4}{$1$}} \put(844, 2){\sx{4}{$2$}} \put(944, 2){\sx{4}{$3$}} \put(1044, 2){\sx{4}{$4$}} \put(1144, 2){\sx{4}{$5$}} \put(1228,3){\sx{4}{$x$}} \put(978,996){\sx{4}{\rot{57} $u\!=\!0.1$\ero}}% \put(166,572){\sx{4}{\rot{90} $u\!=\!0.3$\ero}} \put(390,572){\sx{4}{\rot{90} $u\!=\!0.4$\ero}} \put(496,572){\sx{4}{\rot{90} $u\!=\!0.5$\ero}} %

\put(158,1116){\sx{4}{\rot{-64} $v\!=\!0.1$\ero}}% \put(520,1016){\sx{4}{\rot{64} $v\!=\!0.2$\ero}}% \put(684,976){\sx{4}{\rot{3} $v\!=\!0.3$\ero}}% %\put(684,882){\sx{4}{\rot{-1} $v\!=\!-0.4$\ero}}% % \put(302,378){\sx{4}{\rot{46} $v\!=\!-0.1$\ero}} \put(494,276){\sx{4}{\rot{-66} $v\!=\!-0.2$\ero}} \put(700,286){\sx{4}{\rot{-4} $v\!=\!-0.3$\ero}}% %\put(682,392){\sx{4}{\rot{-3} $v\!=\!-0.4$\ero}} % \put(674,132){\sx{4}{\rot{61} $u\!=\!0.2$\ero}}% \put(1010,202){\sx{4}{\rot{-64} $u\!=\!0.1$\ero}}% \end{picture} \end{document}