Difference between revisions of "File:ArcTraMapT.jpg"

From TORI
Jump to navigation Jump to search
(Importing image file)
 
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
  +
[[Complex map]] of function [[ArcTra]],
Importing image file
 
  +
  +
$u\!+\! \mathrm i v = \mathrm{ArcTra}(x\!+\! \mathrm i y)$
  +
  +
See [[Trappmann function]] for details.
  +
  +
==[[C++]] generator of curves==
  +
  +
//Files [[ado.cin]], [[conto.cin]], [[Tania.cin]] should be loaded to the working directory in order to compile the code below
  +
<poem>
  +
  +
#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 "fsexp.cin"
  +
//#include "fslog.cin"
  +
//z_type zex(z_type z){ return z*exp(z);}
  +
//z_type tra(z_type z){ return z+exp(z);}
  +
  +
#include "Tania.cin"
  +
//#include "LambertW.cin"
  +
  +
z_type tra(z_type z){ return z+exp(z);}
  +
//z_type ArcTra(z_type z){ return z-LambertW(exp(z));}
  +
  +
main(){ int j,k,m,n; DB x1,x,y, p,q, t; z_type z,c,d, cu,cd;
  +
int M=601,M1=M+1;
  +
int N=1201,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("ArcTraMap.eps","w"); ado(o,1202,1202);
  +
fprintf(o,"601 601 translate\n 100 100 scale\n");
  +
fprintf(o,"1 setlinejoin 2 setlinecap\n");
  +
DO(m,M1) X[m]=-6.+.02*(m-.5);
  +
DO(n,N1) Y[n]=-6.+.01*(n-.5);
  +
//for(n=0;n<N1;n++) { Y[n]=0.6*sinh((3./200.)*(n-200.5)); printf("%3d %9.6f\n",n,Y[n]); }
  +
for(m=-6;m<7;m++) {M(m,-6)L(m,6)}
  +
for(n=-6;n<7;n++) {M( -6,n)L(6,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);
  +
// c=ArcTra(z);
  +
// c=Tania(z+1.); // WrightOmega(z);
  +
c=z-Tania(z-1.);
  +
p=Re(c); q=Im(c);
  +
// if(p>-19 && p<19 && fabs(q)>1.e-12 && fabs(p)>1.e-12)
  +
g[m*N1+n]=p;
  +
// if(p>-19 && p<19 && fabs(q)>1.e-12 && fabs(p)>1.e-12)
  +
f[m*N1+n]=q;
  +
}}
  +
fprintf(o,"1 setlinejoin 1 setlinecap\n"); p=.1;q=.1;
  +
for(m=-8;m<8;m++)for(n=2;n<10;n+=2)conto(o,f,w,v,X,Y,M,N,(m+.1*n),-q,q);fprintf(o,".007 W 0 .6 0 RGB S\n");
  +
for(m=0;m<8;m++) for(n=2;n<10;n+=2)conto(o,g,w,v,X,Y,M,N,-(m+.1*n),-q,q);fprintf(o,".007 W .9 0 0 RGB S\n");
  +
for(m=0;m<8;m++) for(n=2;n<10;n+=2)conto(o,g,w,v,X,Y,M,N, (m+.1*n),-q,q);fprintf(o,".007 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,".02 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,".02 W 0 0 .8 RGB S\n");
  +
conto(o,f,w,v,X,Y,M,N, (0. ),-p,p); fprintf(o,".02 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,".02 W 0 0 0 RGB S\n");
  +
M(-6, M_PI)L(-1, M_PI)
  +
M(-6,-M_PI)L(-1,-M_PI)
  +
fprintf(o,".01 W 1 1 1 RGB S\n");
  +
fprintf(o,"showpage\n"); fprintf(o,"%c%cTrailer\n",'%','%');
  +
fclose(o); free(f); free(g); free(w);
  +
system("epstopdf ArcTraMap.eps");
  +
system( "open ArcTraMap.pdf"); //for macintosh
  +
getchar(); system("killall Preview"); // For macintosh
  +
}
  +
</poem>
  +
  +
==[[Latex]] generator of labels==
  +
  +
%<poem><nomathjax> <nowiki> %<br>
  +
\documentclass[12pt]{article} % <br>
  +
\paperheight 1228px % <br>
  +
\paperwidth 1236px % <br>
  +
\textwidth 1394px % <br>
  +
\textheight 1300px % <br>
  +
\topmargin -104px % <br>
  +
\oddsidemargin -78px % <br>
  +
\usepackage{graphics} % <br>
  +
\usepackage{rotating} % <br>
  +
\newcommand \sx {\scalebox} % <br>
  +
\newcommand \rot {\begin{rotate}} % <br>
  +
\newcommand \ero {\end{rotate}} % <br>
  +
\newcommand \ing {\includegraphics} % <br>
  +
\newcommand \rmi {\mathrm{i}} % <br>
  +
\begin{document} % <br>
  +
\newcommand \zoomax { % <br>
  +
\put(18,1206){\sx{3.3}{$y$}} % <br>
  +
\put(18,1113){\sx{3}{$5$}} % <br>
  +
\put(18,1013){\sx{3}{$4$}} % <br>
  +
\put(18, 913){\sx{3}{$3$}} % <br>
  +
\put(18, 813){\sx{3}{$2$}} % <br>
  +
\put(18, 713){\sx{3}{$1$}} % <br>
  +
\put(18, 613){\sx{3}{$0$}} % <br>
  +
\put(-6, 513){\sx{3}{$-1$}} % <br>
  +
\put(-6, 413){\sx{3}{$-2$}} % <br>
  +
\put(-6, 313){\sx{3}{$-3$}} % <br>
  +
\put(-6, 213){\sx{3}{$-4$}} % <br>
  +
\put(-6, 113){\sx{3}{$-5$}} % <br>
  +
\put(-6, 013){\sx{3}{$-6$}} % <br>
  +
\put(014, -5){\sx{3}{$-6$}} % <br>
  +
\put(114, -5){\sx{3}{$-5$}} % <br>
  +
\put(214, -5){\sx{3}{$-4$}} % <br>
  +
\put(314, -5){\sx{3}{$-3$}} % <br>
  +
\put(414, -5){\sx{3}{$-2$}} % <br>
  +
\put(514, -5){\sx{3}{$-1$}} % <br>
  +
\put(635, -5){\sx{3}{$0$}} % <br>
  +
\put(735, -5){\sx{3}{$1$}} % <br>
  +
\put(835, -5){\sx{3}{$2$}} % <br>
  +
\put(935, -5){\sx{3}{$3$}} % <br>
  +
\put(1035, -5){\sx{3}{$4$}} % <br>
  +
\put(1135, -5){\sx{3}{$5$}} % <br>
  +
\put(1227,-4){\sx{3}{$x$}} % <br>
  +
} % <br>
  +
\parindent 0pt % <br>
  +
\sx{1}{\begin{picture}(1252,1220) % <br>
  +
%\put(40,20){\ing{b271tMap3}} % <br>
  +
%\put(40,20){\ing{ExpMap}} % <br>
  +
%\put(40,20){\ing{suzexD1map}} % <br>
  +
\put(40,20){\ing{ArcTraMap}} % <br>
  +
\zoomax % <br>
  +
\put(80,898){\sx{5}{$v\!=\!3$}} % <br>
  +
\put(80,810){\sx{5}{$v\!=\!2$}} % <br>
  +
\put(80,710){\sx{5}{$v\!=\!1$}} % <br>
  +
\put(80,608){\sx{5}{$v\!=\!0$}} % <br>
  +
\put(80,504){\sx{5}{$v\!=\!-1$}} % <br>
  +
\put(80,409){\sx{5}{$v\!=\!-2$}} % <br>
  +
\put(80,312){\sx{5}{$v\!=\!-3$}} % <br>
  +
\put(261,555){\sx{5}{\rot{90}$u\!=\!-4$\ero}} % <br>
  +
\put(365,555){\sx{5}{\rot{90}$u\!=\!-3$\ero}} % <br>
  +
\put(474,555){\sx{5}{\rot{90}$u\!=\!-2$\ero}} % <br>
  +
\put(597,555){\sx{5}{\rot{90}$u\!=\!-1$\ero}} % <br>
  +
\put(760,562){\sx{5}{\rot{90}$u\!=\!0$\ero}} % <br>
  +
\put(1032,564){\sx{5}{\rot{90}$u\!=\!1$\ero}} % <br>
  +
% <br>
  +
\end{picture}} % <br>
  +
\end{document} % <br>
  +
</nowiki></nomathjax></poem>
  +
  +
[[Category:Trappmann function]]
  +
[[Category:Elementary function]]
  +
[[Category:Complex map]]
  +
[[Category:Transfer function]]
  +
[[Category:C++]]
  +
[[Category:Latex]]
  +
  +
[[Category:Trappmann function]]
  +
[[Category:Complex map]]

Latest revision as of 08:30, 1 December 2018

Complex map of function ArcTra,

$u\!+\! \mathrm i v = \mathrm{ArcTra}(x\!+\! \mathrm i y)$

See Trappmann function for details.

C++ generator of curves

//Files ado.cin, conto.cin, Tania.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 "fsexp.cin"
 //#include "fslog.cin"
 //z_type zex(z_type z){ return z*exp(z);}
 //z_type tra(z_type z){ return z+exp(z);}

 #include "Tania.cin"
 //#include "LambertW.cin"

 z_type tra(z_type z){ return z+exp(z);}
 //z_type ArcTra(z_type z){ return z-LambertW(exp(z));}

 main(){ int j,k,m,n; DB x1,x,y, p,q, t; z_type z,c,d, cu,cd;
 int M=601,M1=M+1;
 int N=1201,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("ArcTraMap.eps","w"); ado(o,1202,1202);
 fprintf(o,"601 601 translate\n 100 100 scale\n");
 fprintf(o,"1 setlinejoin 2 setlinecap\n");
 DO(m,M1) X[m]=-6.+.02*(m-.5);
 DO(n,N1) Y[n]=-6.+.01*(n-.5);
 //for(n=0;n<N1;n++) { Y[n]=0.6*sinh((3./200.)*(n-200.5)); printf("%3d %9.6f\n",n,Y[n]); }
 for(m=-6;m<7;m++) {M(m,-6)L(m,6)}
 for(n=-6;n<7;n++) {M( -6,n)L(6,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);
 // c=ArcTra(z);
 // c=Tania(z+1.); // WrightOmega(z);
 c=z-Tania(z-1.);
 p=Re(c); q=Im(c);
 // if(p>-19 && p<19 && fabs(q)>1.e-12 && fabs(p)>1.e-12)
 g[m*N1+n]=p;
 // if(p>-19 && p<19 && fabs(q)>1.e-12 && fabs(p)>1.e-12)
 f[m*N1+n]=q;
        }}
 fprintf(o,"1 setlinejoin 1 setlinecap\n"); p=.1;q=.1;
 for(m=-8;m<8;m++)for(n=2;n<10;n+=2)conto(o,f,w,v,X,Y,M,N,(m+.1*n),-q,q);fprintf(o,".007 W 0 .6 0 RGB S\n");
 for(m=0;m<8;m++) for(n=2;n<10;n+=2)conto(o,g,w,v,X,Y,M,N,-(m+.1*n),-q,q);fprintf(o,".007 W .9 0 0 RGB S\n");
 for(m=0;m<8;m++) for(n=2;n<10;n+=2)conto(o,g,w,v,X,Y,M,N, (m+.1*n),-q,q);fprintf(o,".007 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,".02 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,".02 W 0 0 .8 RGB S\n");
                conto(o,f,w,v,X,Y,M,N, (0. ),-p,p); fprintf(o,".02 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,".02 W 0 0 0 RGB S\n");
 M(-6, M_PI)L(-1, M_PI)
 M(-6,-M_PI)L(-1,-M_PI)
 fprintf(o,".01 W 1 1 1 RGB S\n");
  fprintf(o,"showpage\n"); fprintf(o,"%c%cTrailer\n",'%','%');
 fclose(o); free(f); free(g); free(w);
       system("epstopdf ArcTraMap.eps");
       system( "open ArcTraMap.pdf"); //for macintosh
       getchar(); system("killall Preview"); // For macintosh
 }

Latex generator of labels

%

%<br>
\documentclass[12pt]{article} % <br>
\paperheight 1228px % <br>
\paperwidth 1236px % <br>
\textwidth 1394px % <br>
\textheight 1300px % <br>
\topmargin -104px % <br>
\oddsidemargin -78px % <br>
\usepackage{graphics} % <br>
\usepackage{rotating} % <br>
\newcommand \sx {\scalebox} % <br>
\newcommand \rot {\begin{rotate}} % <br>
\newcommand \ero {\end{rotate}} % <br>
\newcommand \ing {\includegraphics} % <br>
\newcommand \rmi {\mathrm{i}} % <br>
\begin{document} % <br>
\newcommand \zoomax { % <br>
\put(18,1206){\sx{3.3}{$y$}} % <br>
\put(18,1113){\sx{3}{$5$}} % <br>
\put(18,1013){\sx{3}{$4$}} % <br>
\put(18, 913){\sx{3}{$3$}} % <br>
\put(18, 813){\sx{3}{$2$}} % <br>
\put(18, 713){\sx{3}{$1$}} % <br>
\put(18, 613){\sx{3}{$0$}} % <br>
\put(-6, 513){\sx{3}{$-1$}} % <br>
\put(-6, 413){\sx{3}{$-2$}} % <br>
\put(-6, 313){\sx{3}{$-3$}} % <br>
\put(-6, 213){\sx{3}{$-4$}} % <br>
\put(-6, 113){\sx{3}{$-5$}} % <br>
\put(-6, 013){\sx{3}{$-6$}} % <br>
\put(014, -5){\sx{3}{$-6$}} % <br>
\put(114, -5){\sx{3}{$-5$}} % <br>
\put(214, -5){\sx{3}{$-4$}} % <br>
\put(314, -5){\sx{3}{$-3$}} % <br>
\put(414, -5){\sx{3}{$-2$}} % <br>
\put(514, -5){\sx{3}{$-1$}} % <br>
\put(635, -5){\sx{3}{$0$}} % <br>
\put(735, -5){\sx{3}{$1$}} % <br>
\put(835, -5){\sx{3}{$2$}} % <br>
\put(935, -5){\sx{3}{$3$}} % <br>
\put(1035, -5){\sx{3}{$4$}} % <br>
\put(1135, -5){\sx{3}{$5$}} % <br>
\put(1227,-4){\sx{3}{$x$}} % <br>
} % <br>
\parindent 0pt % <br>
\sx{1}{\begin{picture}(1252,1220) % <br>
%\put(40,20){\ing{b271tMap3}} % <br>
%\put(40,20){\ing{ExpMap}} % <br>
%\put(40,20){\ing{suzexD1map}} % <br>
\put(40,20){\ing{ArcTraMap}} % <br>
\zoomax % <br>
\put(80,898){\sx{5}{$v\!=\!3$}} % <br>
\put(80,810){\sx{5}{$v\!=\!2$}} % <br>
\put(80,710){\sx{5}{$v\!=\!1$}} % <br>
\put(80,608){\sx{5}{$v\!=\!0$}} % <br>
\put(80,504){\sx{5}{$v\!=\!-1$}} % <br>
\put(80,409){\sx{5}{$v\!=\!-2$}} % <br>
\put(80,312){\sx{5}{$v\!=\!-3$}} % <br>
\put(261,555){\sx{5}{\rot{90}$u\!=\!-4$\ero}} % <br>
\put(365,555){\sx{5}{\rot{90}$u\!=\!-3$\ero}} % <br>
\put(474,555){\sx{5}{\rot{90}$u\!=\!-2$\ero}} % <br>
\put(597,555){\sx{5}{\rot{90}$u\!=\!-1$\ero}} % <br>
\put(760,562){\sx{5}{\rot{90}$u\!=\!0$\ero}} % <br>
\put(1032,564){\sx{5}{\rot{90}$u\!=\!1$\ero}} % <br>
% <br>
\end{picture}} % <br>
\end{document} % <br>

File history

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

Date/TimeThumbnailDimensionsUserComment
current17:50, 20 June 2013Thumbnail for version as of 17:50, 20 June 20132,576 × 2,559 (1.31 MB)Maintenance script (talk | contribs)Importing image file

The following 2 pages use this file:

Metadata