Difference between revisions of "File:Susinmap.jpg"
(Importing image file) |
|||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
+ | [[Complex map]] of function [[SuSin]]; |
||
− | Importing image file |
||
+ | |||
+ | \( u+\mathrm i v = \mathrm{SuSin}(x\!+\!\mathrm i y) \) |
||
+ | |||
+ | SuSin is [[superfunction]] of [[sin]]; |
||
+ | |||
+ | \(\mathrm{SuSin}(z\!+\!1)= \sin(\mathrm{SuSin}(z)) \) |
||
+ | |||
+ | \( \mathrm{SuSin}(1)=1 \) |
||
+ | |||
+ | At large ( |z| \), |
||
+ | |||
+ | \( \displaystyle |
||
+ | \mathrm{SuSin}(z)= \sqrt{\frac{3}{z}} \left(1 + O\left(\frac{1}{z}\right) \right) \) |
||
+ | |||
+ | Implementation of SuSin in the code below is not a final tool, because of low precision, it returns of order of 6 significant figures. This accuracy allows to plot the camera–ready figures, but for some applications, the precision may be not sufficient. |
||
+ | |||
+ | ==[[C++]] generator of curves == |
||
+ | // files [[ado.cin]], [[conto.cin]], [[arcsin.cin]], and [[susin.cin]] should be loaded to the working directory 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 complex<double> z_type; |
||
+ | #define Re(x) x.real() |
||
+ | #define Im(x) x.imag() |
||
+ | #define I z_type(0.,1.) |
||
+ | #include "conto.cin" |
||
+ | #include "arcsin.cin" |
||
+ | #include"susin.cin" |
||
+ | |||
+ | int main(){ int j,k,m,n; DB x,y, p,q, t; z_type z,c,d; |
||
+ | DB e; DB x0=.0; |
||
+ | DO(n,14) { e=Re( susin(x0+z_type(1.,1.e-9)) )-1.; x0+= 4.6*e; printf("%2d %19.16f %19.16f\n",n,x0,e); } |
||
+ | int M=1001,M1=M+1; |
||
+ | int N=1001,N1=N+1; |
||
+ | DB X[M1],Y[N1]; |
||
+ | DB *g, *f, *w; // w is working array. |
||
+ | g=(DB *)malloc((size_t)((M1*N1)*sizeof(DB))); |
||
+ | f=(DB *)malloc((size_t)((M1*N1)*sizeof(DB))); |
||
+ | w=(DB *)malloc((size_t)((M1*N1)*sizeof(DB))); |
||
+ | char v[M1*N1]; // v is working array |
||
+ | FILE *o;o=fopen("susinmap.eps","w"); ado(o,2002,2002); |
||
+ | fprintf(o,"1001 1001 translate\n 100 100 scale\n"); |
||
+ | fprintf(o,"1 setlinejoin 2 setlinecap\n"); |
||
+ | e=10./sinh(1.); |
||
+ | DO(m,M1) { t=(m-500.5)/500.; X[m]=e*sinh(1.*t);} |
||
+ | e=10./sinh(3.); |
||
+ | DO(n,N1) { t=(n-500.5)/500.; Y[n]=e*sinh(3.*t);} |
||
+ | for(m=-10;m<11;m+=1){M(m,-10) L(m,10) } |
||
+ | for(n=-10;n<11;n+=1){M(-10,n) L(10,n)} |
||
+ | fprintf(o,".006 W 0 0 0 RGB S\n"); |
||
+ | DO(m,M1)DO(n,N1){ g[m*N1+n]=999; |
||
+ | f[m*N1+n]=999;} |
||
+ | DO(m,M1){x=X[m]; if(m/10*10==m) printf("x=%6.3f\n",x); |
||
+ | DO(n,N1){y=Y[n]; z=z_type(x,y); //if(abs(z+2.)>.019) |
||
+ | c=susin(z); |
||
+ | // c=susin0(z+1.4304553465285); |
||
+ | // p=abs(c-d)/(abs(c)+abs(d)); p=-log(p)/log(10.); if(p>0 && p<17) g[m*N1+n]=p; |
||
+ | p=Re(c); q=Im(c); if(p>-19 && p<19 && q>-19 && y<19){ g[m*N1+n]=p;f[m*N1+n]=q;} |
||
+ | }} |
||
+ | fprintf(o,"1 setlinejoin 2 setlinecap\n"); |
||
+ | p=.06;q=.06; |
||
+ | /* p=1.; |
||
+ | conto(o,g,w,v,X,Y,M,N,(15.3 ),-p,p); fprintf(o,".1 W .4 1 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N,(15. ),-p,p); fprintf(o,".2 W 1 0 1 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N,(14.7 ),-p,p); fprintf(o,".1 W 1 .5 0 RGB S\n"); |
||
+ | |||
+ | conto(o,g,w,v,X,Y,M,N,(14. ),-p,p); fprintf(o,"2 W .2 .2 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N,(13. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N,(12. ),-p,p); fprintf(o,"6 W 0 0 1 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N,(11. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N,(10. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (9. ),-p,p); fprintf(o,"6 W 0 1 1 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (8. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (7. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (6. ),-p,p); fprintf(o,"6 W 0 .5 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (5. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (4. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (3. ),-p,p); fprintf(o,"6 W 1 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (2. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n"); |
||
+ | conto(o,g,w,v,X,Y,M,N, (1. ),-p,p); fprintf(o,"4 W .5 0 0 RGB S\n"); |
||
+ | */ |
||
+ | for(m=-8;m<8;m++)for(n=1;n<10;n+=1)conto(o,f,w,v,X,Y,M,N,(m+.1*n),-q,q);fprintf(o,".016 W 0 .6 0 RGB S\n"); |
||
+ | for(m=0;m<8;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N,-(m+.1*n),-q,q);fprintf(o,".016 W .9 0 0 RGB S\n"); |
||
+ | for(m=0;m<8;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N, (m+.1*n),-q,q);fprintf(o,".016 W 0 0 .9 RGB S\n"); |
||
+ | for(m= 1;m<17;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<17;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=-16;m<17;m++)conto(o,g,w,v,X,Y,M,N,(0.+m),-p,p);fprintf(o,".03 W 0 0 0 RGB S\n"); |
||
+ | fprintf(o,"0 setlinejoin 0 setlinecap\n"); |
||
+ | //M(-10,-1.4304553465285)L(0,0) fprintf(o,"1 1 1 RGB .01 W S\n"); |
||
+ | //DO(n,45) {x=-1.4304553465285-.2*n; M(x-.01,0) L(x-.09,0) } fprintf(o,"0 0 0 RGB .03 W S\n"); |
||
+ | M(-10,0)L(0,0) fprintf(o,"1 1 1 RGB .01 W S\n"); |
||
+ | DO(n,51) {x=-.2*n; M(x-.01,0) L(x-.09,0) } fprintf(o,"0 0 0 RGB .03 W S\n"); |
||
+ | //#include "plofu.cin" |
||
+ | |||
+ | fprintf(o,"showpage\n"); |
||
+ | fprintf(o,"%c%cTrailer\n",'%','%'); |
||
+ | fclose(o); free(f); free(g); free(w); |
||
+ | system("epstopdf susinmap.eps"); |
||
+ | system( "open susinmap.pdf"); //for macintosh |
||
+ | getchar(); system("killall Preview"); // For macintosh |
||
+ | } |
||
+ | |||
+ | </nowiki></nomathjax></poem> |
||
+ | |||
+ | ==[[Latex]] generator of labels== |
||
+ | % save this as susinmapt.tex |
||
+ | <poem><nomathjax><nowiki> |
||
+ | \documentclass[12pt]{article} |
||
+ | \usepackage{geometry} |
||
+ | \usepackage{graphics} |
||
+ | \usepackage{rotating} |
||
+ | \paperwidth 2078pt |
||
+ | \paperheight 2064pt |
||
+ | \topmargin -100pt |
||
+ | \oddsidemargin -72pt |
||
+ | \textwidth 2200pt |
||
+ | \textheight 2200pt |
||
+ | \newcommand \sx {\scalebox} |
||
+ | \newcommand \rot {\begin{rotate}} |
||
+ | \newcommand \ero {\end{rotate}} |
||
+ | \pagestyle{empty} |
||
+ | \begin{document} |
||
+ | \begin{picture}(2016,2044) |
||
+ | \put(48,40){\includegraphics{susinmap}} |
||
+ | \put(4,2018){\sx{5.4}{$y$}} |
||
+ | \put(4,1824){\sx{5}{$8$}} |
||
+ | \put(4,1624){\sx{5}{$6$}} |
||
+ | \put(4,1424){\sx{5}{$4$}} |
||
+ | \put(4,1224){\sx{5}{$2$}} |
||
+ | \put(4,1024){\sx{5}{$0$}} |
||
+ | \put(-28,824){\sx{5}{$-2$}} |
||
+ | \put(-28,624){\sx{5}{$-4$}} |
||
+ | \put(-28,424){\sx{5}{$-6$}} |
||
+ | \put(-28,224){\sx{5}{$-8$}} |
||
+ | \put(-8,-9){\sx{5}{$-10$}} |
||
+ | \put(200,-8){\sx{5}{$-8$}} |
||
+ | \put(400,-8){\sx{5}{$-6$}} |
||
+ | \put(600,-8){\sx{5}{$-4$}} |
||
+ | \put(800,-8){\sx{5}{$-2$}} |
||
+ | \put(1040,-8){\sx{5}{$0$}} |
||
+ | \put(1241,-8){\sx{5}{$2$}} |
||
+ | \put(1442,-8){\sx{5}{$4$}} |
||
+ | \put(1643,-8){\sx{5}{$6$}} |
||
+ | \put(1843,-8){\sx{5}{$8$}} |
||
+ | \put(2028,-8){\sx{5.2}{$x$}} |
||
+ | |||
+ | \put(1436,930){\sx{7}{\rot{89}$u\!=\!0.7$\ero}} |
||
+ | \put(1640,930){\sx{7}{\rot{89}$u\!=\!0.6$\ero}} |
||
+ | \put(1980,930){\sx{7}{\rot{89}$u\!=\!0.5$\ero}} |
||
+ | |||
+ | \put(1520,1660){\sx{7}{\rot{68}$v\!=\!-0.2$\ero}} |
||
+ | \put(1790,1406){\sx{7}{\rot{36}$v\!=\!-0.1$\ero}} |
||
+ | |||
+ | \put(250,1030){\sx{5.2}{\bf cut}} |
||
+ | |||
+ | \put(928,1148){\sx{7}{\rot{0.}$u\!=\!1$\ero}} |
||
+ | \put(668,1080){\sx{7}{\rot{0.}$v\!=\!-1$\ero}} |
||
+ | \put(688,960){\sx{7}{\rot{0.}$v\!=\!1$\ero}} |
||
+ | |||
+ | \put(1680,1024){\sx{7}{$v\!=\!0$}} |
||
+ | \put(1740,664){\sx{7}{\rot{-35}$v\!=\!0.1$\ero}} |
||
+ | \put(1478,418){\sx{7}{\rot{-68}$v\!=\!0.2$\ero}} |
||
+ | \end{picture} |
||
+ | \end{document} |
||
+ | |||
+ | </nowiki></nomathjax></poem> |
||
+ | |||
+ | [[Category:Complex map]] |
||
+ | [[Category:Sin]] |
||
+ | [[Category:SuSin]] |
||
+ | [[Category:Superfunation]] |
||
+ | [[Category:Book]] |
Latest revision as of 12:51, 7 July 2020
Complex map of function SuSin;
\( u+\mathrm i v = \mathrm{SuSin}(x\!+\!\mathrm i y) \)
SuSin is superfunction of sin;
\(\mathrm{SuSin}(z\!+\!1)= \sin(\mathrm{SuSin}(z)) \)
\( \mathrm{SuSin}(1)=1 \)
At large ( |z| \),
\( \displaystyle \mathrm{SuSin}(z)= \sqrt{\frac{3}{z}} \left(1 + O\left(\frac{1}{z}\right) \right) \)
Implementation of SuSin in the code below is not a final tool, because of low precision, it returns of order of 6 significant figures. This accuracy allows to plot the camera–ready figures, but for some applications, the precision may be not sufficient.
C++ generator of curves
// files ado.cin, conto.cin, arcsin.cin, and susin.cin should be loaded to the working directory 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 complex<double> z_type;
#define Re(x) x.real()
#define Im(x) x.imag()
#define I z_type(0.,1.)
#include "conto.cin"
#include "arcsin.cin"
#include"susin.cin"
int main(){ int j,k,m,n; DB x,y, p,q, t; z_type z,c,d;
DB e; DB x0=.0;
DO(n,14) { e=Re( susin(x0+z_type(1.,1.e-9)) )-1.; x0+= 4.6*e; printf("%2d %19.16f %19.16f\n",n,x0,e); }
int M=1001,M1=M+1;
int N=1001,N1=N+1;
DB X[M1],Y[N1];
DB *g, *f, *w; // w is working array.
g=(DB *)malloc((size_t)((M1*N1)*sizeof(DB)));
f=(DB *)malloc((size_t)((M1*N1)*sizeof(DB)));
w=(DB *)malloc((size_t)((M1*N1)*sizeof(DB)));
char v[M1*N1]; // v is working array
FILE *o;o=fopen("susinmap.eps","w"); ado(o,2002,2002);
fprintf(o,"1001 1001 translate\n 100 100 scale\n");
fprintf(o,"1 setlinejoin 2 setlinecap\n");
e=10./sinh(1.);
DO(m,M1) { t=(m-500.5)/500.; X[m]=e*sinh(1.*t);}
e=10./sinh(3.);
DO(n,N1) { t=(n-500.5)/500.; Y[n]=e*sinh(3.*t);}
for(m=-10;m<11;m+=1){M(m,-10) L(m,10) }
for(n=-10;n<11;n+=1){M(-10,n) L(10,n)}
fprintf(o,".006 W 0 0 0 RGB S\n");
DO(m,M1)DO(n,N1){ g[m*N1+n]=999;
f[m*N1+n]=999;}
DO(m,M1){x=X[m]; if(m/10*10==m) printf("x=%6.3f\n",x);
DO(n,N1){y=Y[n]; z=z_type(x,y); //if(abs(z+2.)>.019)
c=susin(z);
// c=susin0(z+1.4304553465285);
// p=abs(c-d)/(abs(c)+abs(d)); p=-log(p)/log(10.); if(p>0 && p<17) g[m*N1+n]=p;
p=Re(c); q=Im(c); if(p>-19 && p<19 && q>-19 && y<19){ g[m*N1+n]=p;f[m*N1+n]=q;}
}}
fprintf(o,"1 setlinejoin 2 setlinecap\n");
p=.06;q=.06;
/* p=1.;
conto(o,g,w,v,X,Y,M,N,(15.3 ),-p,p); fprintf(o,".1 W .4 1 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,(15. ),-p,p); fprintf(o,".2 W 1 0 1 RGB S\n");
conto(o,g,w,v,X,Y,M,N,(14.7 ),-p,p); fprintf(o,".1 W 1 .5 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,(14. ),-p,p); fprintf(o,"2 W .2 .2 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,(13. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,(12. ),-p,p); fprintf(o,"6 W 0 0 1 RGB S\n");
conto(o,g,w,v,X,Y,M,N,(11. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N,(10. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (9. ),-p,p); fprintf(o,"6 W 0 1 1 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (8. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (7. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (6. ),-p,p); fprintf(o,"6 W 0 .5 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (5. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (4. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (3. ),-p,p); fprintf(o,"6 W 1 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (2. ),-p,p); fprintf(o,"2 W 0 0 0 RGB S\n");
conto(o,g,w,v,X,Y,M,N, (1. ),-p,p); fprintf(o,"4 W .5 0 0 RGB S\n");
*/
for(m=-8;m<8;m++)for(n=1;n<10;n+=1)conto(o,f,w,v,X,Y,M,N,(m+.1*n),-q,q);fprintf(o,".016 W 0 .6 0 RGB S\n");
for(m=0;m<8;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N,-(m+.1*n),-q,q);fprintf(o,".016 W .9 0 0 RGB S\n");
for(m=0;m<8;m++) for(n=1;n<10;n+=1)conto(o,g,w,v,X,Y,M,N, (m+.1*n),-q,q);fprintf(o,".016 W 0 0 .9 RGB S\n");
for(m= 1;m<17;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<17;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=-16;m<17;m++)conto(o,g,w,v,X,Y,M,N,(0.+m),-p,p);fprintf(o,".03 W 0 0 0 RGB S\n");
fprintf(o,"0 setlinejoin 0 setlinecap\n");
//M(-10,-1.4304553465285)L(0,0) fprintf(o,"1 1 1 RGB .01 W S\n");
//DO(n,45) {x=-1.4304553465285-.2*n; M(x-.01,0) L(x-.09,0) } fprintf(o,"0 0 0 RGB .03 W S\n");
M(-10,0)L(0,0) fprintf(o,"1 1 1 RGB .01 W S\n");
DO(n,51) {x=-.2*n; M(x-.01,0) L(x-.09,0) } fprintf(o,"0 0 0 RGB .03 W S\n");
//#include "plofu.cin"
fprintf(o,"showpage\n");
fprintf(o,"%c%cTrailer\n",'%','%');
fclose(o); free(f); free(g); free(w);
system("epstopdf susinmap.eps");
system( "open susinmap.pdf"); //for macintosh
getchar(); system("killall Preview"); // For macintosh
}
Latex generator of labels
% save this as susinmapt.tex
\documentclass[12pt]{article}
\usepackage{geometry}
\usepackage{graphics}
\usepackage{rotating}
\paperwidth 2078pt
\paperheight 2064pt
\topmargin -100pt
\oddsidemargin -72pt
\textwidth 2200pt
\textheight 2200pt
\newcommand \sx {\scalebox}
\newcommand \rot {\begin{rotate}}
\newcommand \ero {\end{rotate}}
\pagestyle{empty}
\begin{document}
\begin{picture}(2016,2044)
\put(48,40){\includegraphics{susinmap}}
\put(4,2018){\sx{5.4}{$y$}}
\put(4,1824){\sx{5}{$8$}}
\put(4,1624){\sx{5}{$6$}}
\put(4,1424){\sx{5}{$4$}}
\put(4,1224){\sx{5}{$2$}}
\put(4,1024){\sx{5}{$0$}}
\put(-28,824){\sx{5}{$-2$}}
\put(-28,624){\sx{5}{$-4$}}
\put(-28,424){\sx{5}{$-6$}}
\put(-28,224){\sx{5}{$-8$}}
\put(-8,-9){\sx{5}{$-10$}}
\put(200,-8){\sx{5}{$-8$}}
\put(400,-8){\sx{5}{$-6$}}
\put(600,-8){\sx{5}{$-4$}}
\put(800,-8){\sx{5}{$-2$}}
\put(1040,-8){\sx{5}{$0$}}
\put(1241,-8){\sx{5}{$2$}}
\put(1442,-8){\sx{5}{$4$}}
\put(1643,-8){\sx{5}{$6$}}
\put(1843,-8){\sx{5}{$8$}}
\put(2028,-8){\sx{5.2}{$x$}}
\put(1436,930){\sx{7}{\rot{89}$u\!=\!0.7$\ero}}
\put(1640,930){\sx{7}{\rot{89}$u\!=\!0.6$\ero}}
\put(1980,930){\sx{7}{\rot{89}$u\!=\!0.5$\ero}}
\put(1520,1660){\sx{7}{\rot{68}$v\!=\!-0.2$\ero}}
\put(1790,1406){\sx{7}{\rot{36}$v\!=\!-0.1$\ero}}
\put(250,1030){\sx{5.2}{\bf cut}}
\put(928,1148){\sx{7}{\rot{0.}$u\!=\!1$\ero}}
\put(668,1080){\sx{7}{\rot{0.}$v\!=\!-1$\ero}}
\put(688,960){\sx{7}{\rot{0.}$v\!=\!1$\ero}}
\put(1680,1024){\sx{7}{$v\!=\!0$}}
\put(1740,664){\sx{7}{\rot{-35}$v\!=\!0.1$\ero}}
\put(1478,418){\sx{7}{\rot{-68}$v\!=\!0.2$\ero}}
\end{picture}
\end{document}
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:14, 1 December 2018 | 4,312 × 4,283 (1.76 MB) | Maintenance script (talk | contribs) | Importing image file |
You cannot overwrite this file.
File usage
The following page uses this file: