Difference between revisions of "File:Aunemplot.jpg"

From TORI
Jump to navigation Jump to search
(Importing image file)
 
 
Line 1: Line 1:
  +
Explicit plot of function [[AuNem]]:
Importing image file
 
  +
  +
$y=\mathrm{AuNem}_q(x)$
  +
  +
for
  +
$q\!=\!0$,
  +
$q\!=\!1$ and
  +
$q\!=\!2$.
  +
  +
==References==
  +
<references/>
  +
  +
==[[C++]] generator of curves==
  +
  +
Files
  +
[[ado.cin]],
  +
[[conto.cin]],
  +
[[nembran.cin]],
  +
[[arqnem.cin]],
  +
[[sunema.txt]],
  +
[[aunemco.txt]]
  +
should be loaded in order to compile the code below:
  +
  +
<poem><nomathjax><nowiki>
  +
#include <math.h>
  +
#include <stdio.h>
  +
#include <stdlib.h>
  +
#define DB double
  +
#define DO(x,y) for(x=0;x<y;x++)
  +
//using namespace std;
  +
#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"
  +
  +
DB Q=1.e-6;
  +
z_type nem(z_type z){ return z*(1.+z*z*(1.+z*Q)); }
  +
z_type nem1(z_type z){ return 1.+z*z*(3.+z*(4.*Q)); } // WARNING: Q is global!
  +
  +
DB K=Q*Q;
  +
DB A[37][19];
  +
int co(){
  +
#include "sunema.txt"
  +
return 0;}
  +
  +
z_type sun(z_type z){ z_type p[37],s; int m,M,n,N;
  +
z_type L=log(-z);
  +
z_type t=1./sqrt(-2.*z);
  +
M=36;
  +
for(m=2;m<M+1;m++){ N=m/2; s=A[m][N]*L; for(n=N-1;n>0;n--) { s+=A[m][n]; s*=L; }
  +
p[m]=A[m][0]+s;
  +
}
  +
s=p[M]*t; for(m=M-1; m>1;m--) { s+=p[m]; s*=t;}
  +
return t*( 1. + t* (-Q + s) );
  +
}
  +
  +
z_type sune(z_type z){ int m,n; DB x,y; z_type s;
  +
DB R=20.+20.*Q*Q;
  +
x=Re(z); if(x<-R) return sun(z);
  +
y=Im(z); if(fabs(y)>R) return sun(z);
  +
n=int(x+R);
  +
s=sun(z-(0.+n));
  +
DO(m,n) s=nem(s);
  +
return s;
  +
}
  +
  +
DB AUNE1=0;
  +
  +
z_type sunem(z_type z){ int m,n; DB x,y; z_type s;
  +
DB R=20.+20.*Q*Q;
  +
x=Re(z); if(x<-R) return sun(z);
  +
y=Im(z); if(fabs(y)>R) return sun(z);
  +
n=int(x+R);
  +
s=sun(z-(n-AUNE1));
  +
DO(m,n) s=nem(s);
  +
return s;
  +
}
  +
  +
// z_type sunem(z_type z)( return sine(AUNE1+z));)
  +
  +
#include"nembran.cin"
  +
z_type NemZo=nembra(Q);
  +
z_type ANemZo=nem(NemZo);
  +
DB tr=Re(ANemZo);
  +
DB ti=Im(ANemZo);
  +
  +
#include "arqnem.cin"
  +
  +
DB C[41];
  +
//DB K=Q*Q;
  +
int coa(){ //C[1]=(0.5 - K)*Q; C[2]=-0.625 + (-0.25 + K/2.)*K; ..
  +
#include "aunemco.txt"
  +
return 40;
  +
}
  +
  +
z_type aune0(z_type z){ z_type s; int n;
  +
s=C[40]*z; for(n=39;n>0;n--){s+=C[n];s*=z;}
  +
return (-.5/z+Q)/z + (1.5+K)*log(z) + (.5*K + (.75+.5*K)*log(2.)) + s ;
  +
}
  +
  +
//DB AUNE1=0;
  +
  +
z_type aune1(z_type z){ int n, N=20; DO(n,N) z=arqnem(z);
  +
return aune0(z)+(0.+n);}
  +
  +
z_type aunem(z_type z){ int n, N=20; DO(n,N) z=arqnem(z);
  +
return aune0(z)+(n-AUNE1);}
  +
  +
  +
z_type aune02(z_type z){ z_type s; int n; s=(C[2]*z+C[1])*z;
  +
return (-.5/z+Q)/z + (1.5+K)*log(z) + (.5*K + (.75+.5*K)*log(2.)) + s ; }
  +
z_type aune01(z_type z){ z_type s; int n; s=C[1]*z;
  +
return (-.5/z+Q)/z + (1.5+K)*log(z) + (.5*K + (.75+.5*K)*log(2.)) +s ; }
  +
  +
int main(){ int Max; int j,k,m,n; DB x,y, p,q, t; z_type z,c,d;
  +
  +
FILE *o;o=fopen("aunemplo.eps","w");ado(o,4008,4008);
  +
fprintf(o,"4 2004 translate\n 1000 1000 scale 2 setlinecap\n");
  +
for(m=0;m<40;m+=10){ M(.1*m,-2)L(.1*m,2)}
  +
for(n=-20;n<21;n+=10){ M(0,.1*n)L(4,.1*n)}
  +
fprintf(o,".003 W 0 0 0 RGB 2 setlinecap S\n");
  +
  +
// M(-1,ti)L(1,ti) M(-1,-ti)L(1,-ti) M(tr,-1)L(tr,1) fprintf(o,".002 W 0 0 0 RGB 2 setlinecap S\n");
  +
//M(-1,0) L(0,0) M(tr,ti)L(0,0)L(tr,-ti)
  +
//fprintf(o,".006 W 1 1 0 RGB 0 setlinecap S\n");
  +
  +
  +
Q=1.e-6; K=Q*Q; NemZo=nembra(Q); ANemZo=nem(NemZo); tr=Re(ANemZo); ti=Im(ANemZo); co(); coa(); AUNE1=Re(aune1(1.));
  +
DO(n,401){ y=-2.+.01*n; x=Re(sunem(y)); if(n==0) M(x,y) else L(x,y); if(x> 4) break; } fprintf(o,".03 W 1 0 .3 RGB S\n");
  +
DO(m,400){ x= 4.-.01*m; y=Re(aunem(x)); if(m==0) M(x,y) else L(x,y); if(y<-2) break; } fprintf(o,".01 W 0 0 0 RGB S\n");
  +
  +
  +
Q=1.; K=Q*Q; NemZo=nembra(Q); ANemZo=nem(NemZo); tr=Re(ANemZo); ti=Im(ANemZo); co(); coa(); AUNE1=Re(aune1(1.));
  +
DO(n,401){ y=-2.+.01*n; x=Re(sunem(y)); if(n==0) M(x,y) else L(x,y); if(x> 4) break; } fprintf(o,".03 W 0 1 0 RGB S\n");
  +
DO(m,400){ x= 4.-.01*m; y=Re(aunem(x)); if(m==0) M(x,y) else L(x,y); if(y<-2) break; } fprintf(o,".01 W 0 0 0 RGB S\n");
  +
  +
Q=2.; K=Q*Q; NemZo=nembra(Q); ANemZo=nem(NemZo); tr=Re(ANemZo); ti=Im(ANemZo); co(); coa(); AUNE1=Re(aune1(1.));
  +
DO(n,401){ y=-2.+.01*n; x=Re(sunem(y)); if(n==0) M(x,y) else L(x,y); if(x> 4)break; } fprintf(o,".03 W .3 0 1 RGB S\n");
  +
DO(m,400){ x= 4.-.01*m; y=Re(aunem(x)); if(m==0) M(x,y) else L(x,y); if(y<-2)break; } fprintf(o,".01 W 0 0 0 RGB S\n");
  +
  +
fprintf(o,"showpage\n%cTrailer",'%'); fclose(o);
  +
system("epstopdf aunemplo.eps");
  +
system( "open aunemplo.pdf"); //mac
  +
return 0;}
  +
</nowiki></nomathjax></poem>
  +
  +
==[[Latex]] generator of labels==
  +
  +
<poem><nomathjax><nowiki>
  +
\documentclass[12pt]{article}
  +
\usepackage{graphics}
  +
\paperwidth 4010pt
  +
\paperheight 4010pt
  +
\usepackage{geometry}
  +
\usepackage{rotating}
  +
\textwidth 4400pt
  +
\textheight 4400pt
  +
\topmargin -97pt
  +
\oddsidemargin -74pt
  +
\parindent 0pt
  +
\pagestyle{empty}
  +
\newcommand \ing {\includegraphics}
  +
\newcommand \sx {\scalebox}
  +
\newcommand \rot {\begin{rotate}}
  +
\newcommand \ero {\end{rotate}}
  +
\begin{document}
  +
\begin{picture}(4008,4008)
  +
\put(20,3840){\sx{20}{$y\!=\!\mathrm{AuNem}_q(x)$}}
  +
\put(100,2944){\sx{20}{$1$}}
  +
\put(100,1940){\sx{20}{$0$}}
  +
\put(10, 936){\sx{20}{$-1$}}
  +
\put( 946,2040){\sx{20}{$1$}}
  +
\put(1950,2040){\sx{20}{$2$}}
  +
\put(2954,2040){\sx{20}{$3$}}
  +
\put(3870,2040){\sx{20}{$x$}}
  +
%
  +
\put(0,0){\ing{aunemplo}}
  +
%
  +
\put(3300,3500){\sx{18}{\rot{7} $q\!=\!0$\ero}}
  +
\put(3300,3120){\sx{18}{\rot{7} $q\!=\!1$\ero}}
  +
\put(3300,2770){\sx{18}{\rot{6} $q\!=\!2$\ero}}
  +
\end{picture}
  +
\end{document}
  +
</nowiki></nomathjax></poem>
  +
  +
  +
  +
[[Category:Abel function]]
  +
[[Category:AuNem]]
  +
[[Category:Book]]
  +
[[Category:BookPlot]]
  +
[[Category:C++]]
  +
[[Category:Explicit plot]]
  +
[[Category:Latex]]
  +
[[Category:Nemtsov function]]
  +
[[Category:Superfunctions]]

Latest revision as of 08:30, 1 December 2018

Explicit plot of function AuNem:

$y=\mathrm{AuNem}_q(x)$

for $q\!=\!0$, $q\!=\!1$ and $q\!=\!2$.

References


C++ generator of curves

Files ado.cin, conto.cin, nembran.cin, arqnem.cin, sunema.txt, aunemco.txt 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++)
//using namespace std;
#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"

DB Q=1.e-6;
z_type nem(z_type z){ return z*(1.+z*z*(1.+z*Q)); }
z_type nem1(z_type z){ return 1.+z*z*(3.+z*(4.*Q)); } // WARNING: Q is global!

DB K=Q*Q;
DB A[37][19];
int co(){
#include "sunema.txt"
return 0;}

z_type sun(z_type z){ z_type p[37],s; int m,M,n,N;
z_type L=log(-z);
z_type t=1./sqrt(-2.*z);
M=36;
for(m=2;m<M+1;m++){ N=m/2; s=A[m][N]*L; for(n=N-1;n>0;n--) { s+=A[m][n]; s*=L; }
                p[m]=A[m][0]+s;
                }
s=p[M]*t; for(m=M-1; m>1;m--) { s+=p[m]; s*=t;}
        return t*( 1. + t* (-Q + s) );
}

z_type sune(z_type z){ int m,n; DB x,y; z_type s;
DB R=20.+20.*Q*Q;
x=Re(z); if(x<-R) return sun(z);
y=Im(z); if(fabs(y)>R) return sun(z);
n=int(x+R);
s=sun(z-(0.+n));
DO(m,n) s=nem(s);
return s;
}

DB AUNE1=0;

z_type sunem(z_type z){ int m,n; DB x,y; z_type s;
DB R=20.+20.*Q*Q;
x=Re(z); if(x<-R) return sun(z);
y=Im(z); if(fabs(y)>R) return sun(z);
n=int(x+R);
s=sun(z-(n-AUNE1));
DO(m,n) s=nem(s);
return s;
}

// z_type sunem(z_type z)( return sine(AUNE1+z));)

#include"nembran.cin"
z_type NemZo=nembra(Q);
z_type ANemZo=nem(NemZo);
DB tr=Re(ANemZo);
DB ti=Im(ANemZo);

#include "arqnem.cin"

DB C[41];
//DB K=Q*Q;
int coa(){ //C[1]=(0.5 - K)*Q; C[2]=-0.625 + (-0.25 + K/2.)*K; ..
#include "aunemco.txt"
return 40;
}

z_type aune0(z_type z){ z_type s; int n;
s=C[40]*z; for(n=39;n>0;n--){s+=C[n];s*=z;}
return (-.5/z+Q)/z + (1.5+K)*log(z) + (.5*K + (.75+.5*K)*log(2.)) + s ;
}

//DB AUNE1=0;

z_type aune1(z_type z){ int n, N=20; DO(n,N) z=arqnem(z);
return aune0(z)+(0.+n);}

z_type aunem(z_type z){ int n, N=20; DO(n,N) z=arqnem(z);
return aune0(z)+(n-AUNE1);}


z_type aune02(z_type z){ z_type s; int n; s=(C[2]*z+C[1])*z;
                return (-.5/z+Q)/z + (1.5+K)*log(z) + (.5*K + (.75+.5*K)*log(2.)) + s ; }
z_type aune01(z_type z){ z_type s; int n; s=C[1]*z;
                return (-.5/z+Q)/z + (1.5+K)*log(z) + (.5*K + (.75+.5*K)*log(2.)) +s ; }

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

FILE *o;o=fopen("aunemplo.eps","w");ado(o,4008,4008);
fprintf(o,"4 2004 translate\n 1000 1000 scale 2 setlinecap\n");
for(m=0;m<40;m+=10){ M(.1*m,-2)L(.1*m,2)}
for(n=-20;n<21;n+=10){ M(0,.1*n)L(4,.1*n)}
fprintf(o,".003 W 0 0 0 RGB 2 setlinecap S\n");

// M(-1,ti)L(1,ti) M(-1,-ti)L(1,-ti) M(tr,-1)L(tr,1) fprintf(o,".002 W 0 0 0 RGB 2 setlinecap S\n");
//M(-1,0) L(0,0) M(tr,ti)L(0,0)L(tr,-ti)
//fprintf(o,".006 W 1 1 0 RGB 0 setlinecap S\n");


Q=1.e-6; K=Q*Q; NemZo=nembra(Q); ANemZo=nem(NemZo); tr=Re(ANemZo); ti=Im(ANemZo); co(); coa(); AUNE1=Re(aune1(1.));
DO(n,401){ y=-2.+.01*n; x=Re(sunem(y)); if(n==0) M(x,y) else L(x,y); if(x> 4) break; } fprintf(o,".03 W 1 0 .3 RGB S\n");
DO(m,400){ x= 4.-.01*m; y=Re(aunem(x)); if(m==0) M(x,y) else L(x,y); if(y<-2) break; } fprintf(o,".01 W 0 0 0 RGB S\n");


Q=1.; K=Q*Q; NemZo=nembra(Q); ANemZo=nem(NemZo); tr=Re(ANemZo); ti=Im(ANemZo); co(); coa(); AUNE1=Re(aune1(1.));
DO(n,401){ y=-2.+.01*n; x=Re(sunem(y)); if(n==0) M(x,y) else L(x,y); if(x> 4) break; } fprintf(o,".03 W 0 1 0 RGB S\n");
DO(m,400){ x= 4.-.01*m; y=Re(aunem(x)); if(m==0) M(x,y) else L(x,y); if(y<-2) break; } fprintf(o,".01 W 0 0 0 RGB S\n");

Q=2.; K=Q*Q; NemZo=nembra(Q); ANemZo=nem(NemZo); tr=Re(ANemZo); ti=Im(ANemZo); co(); coa(); AUNE1=Re(aune1(1.));
DO(n,401){ y=-2.+.01*n; x=Re(sunem(y)); if(n==0) M(x,y) else L(x,y); if(x> 4)break; } fprintf(o,".03 W .3 0 1 RGB S\n");
DO(m,400){ x= 4.-.01*m; y=Re(aunem(x)); if(m==0) M(x,y) else L(x,y); if(y<-2)break; } fprintf(o,".01 W 0 0 0 RGB S\n");

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

Latex generator of labels


 \documentclass[12pt]{article}
 \usepackage{graphics}
 \paperwidth 4010pt
 \paperheight 4010pt
 \usepackage{geometry}
 \usepackage{rotating}
 \textwidth 4400pt
 \textheight 4400pt
 \topmargin -97pt
 \oddsidemargin -74pt
 \parindent 0pt
 \pagestyle{empty}
\newcommand \ing {\includegraphics}
\newcommand \sx {\scalebox}
\newcommand \rot {\begin{rotate}}
\newcommand \ero {\end{rotate}}
\begin{document}
\begin{picture}(4008,4008)
\put(20,3840){\sx{20}{$y\!=\!\mathrm{AuNem}_q(x)$}}
\put(100,2944){\sx{20}{$1$}}
\put(100,1940){\sx{20}{$0$}}
\put(10, 936){\sx{20}{$-1$}}
\put( 946,2040){\sx{20}{$1$}}
\put(1950,2040){\sx{20}{$2$}}
\put(2954,2040){\sx{20}{$3$}}
\put(3870,2040){\sx{20}{$x$}}
%
\put(0,0){\ing{aunemplo}}
%
\put(3300,3500){\sx{18}{\rot{7} $q\!=\!0$\ero}}
\put(3300,3120){\sx{18}{\rot{7} $q\!=\!1$\ero}}
\put(3300,2770){\sx{18}{\rot{6} $q\!=\!2$\ero}}
\end{picture}
\end{document}

File history

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

Date/TimeThumbnailDimensionsUserComment
current06:10, 1 December 2018Thumbnail for version as of 06:10, 1 December 20188,322 × 8,322 (1.39 MB)Maintenance script (talk | contribs)Importing image file

The following 2 pages use this file:

Metadata