Difference between revisions of "File:Noriplot300.jpg"
(Importing image file) |
|||
Line 1: | Line 1: | ||
+ | Integrand for the transmittance of the Bessel mode through the slit for the teal argument; square of the [[Morinaga function]] mori of modified argument: |
||
− | Importing image file |
||
+ | |||
+ | $y=\mathrm{nori}(x)=\mathrm{mori}\big(\sqrt{x}\big)^2$, blue curve, and |
||
+ | |||
+ | and |
||
+ | |||
+ | $y=100 \,\mathrm{nori}(x)=100 \, \mathrm{mori}\big(\sqrt{x}\big)^2$ , red curve. |
||
+ | |||
+ | The additional grid line indicates the abscissa $x=L_2^2/L_1^2\approx 5.2689404316052215$ , |
||
+ | |||
+ | where |
||
+ | |||
+ | $L_1=\mathrm{BesselJZero}[0,1]\approx 1.2484591696955065 $ |
||
+ | |||
+ | $L_2=\mathrm{BesselJZero}[0,2]\approx 5.5200781102863115 $ |
||
+ | |||
+ | ==[[C++]] generator of curves== |
||
+ | File [[ado.cin]] should be loaded |
||
+ | <poem><nomathjax><nowiki> |
||
+ | #include <stdio.h> |
||
+ | #include <math.h> |
||
+ | #include<stdlib.h> |
||
+ | //#include "scft.cin" |
||
+ | #define DB double |
||
+ | #include "ado.cin" |
||
+ | //#define NP 16 |
||
+ | DB L1= 2.404825557695773; |
||
+ | DB L2= 5.5200781102863115; |
||
+ | DB L3= 8.653727912911013; |
||
+ | //DB mory(DB x){ return j0(x)/(1.-(1./(L1*L1))*x*x);} |
||
+ | DB morin(DB x){ return j0(L1*x)/(1-x*x);} |
||
+ | DB mori0(DB x){ int n,m; DB s, xx=x*x; |
||
+ | DB c[16]={ 1., -0.4457964907366961303, 0.07678538241994023453, -0.0071642885058902232688, |
||
+ | 0.00042159522055140947688, -0.000017110542281627483109, 5.0832583976057607495e-7, -1.1537378620148452816e-8, |
||
+ | 2.0662789231930073316e-10, -2.9948657413756059965e-12, 3.5852738451127332173e-14,-3.6050239634659700777e-16, |
||
+ | 3.0877184831292878827e-18, -2.2798156440952688462e-20, 1.4660907878585489441e-22,-8.2852774398657968065e-25}; |
||
+ | // 16th term seems to fail; perhaps, due to the C++ rounding errors or bug in the Mathematica routine Series applied to HankelH. |
||
+ | //with m=15, at |x|<2, the error is of order of 10^(-16) |
||
+ | //In this sense, the result is accurate while |x|<2. |
||
+ | m=15; s=c[m]*xx; for(n=m-1;n>0;n--){ s+=c[n]; s*=xx;} |
||
+ | return 1.+s;} |
||
+ | DB mori(DB x){if(fabs(x)<2) return mori0(x); |
||
+ | return morin(x);} |
||
+ | |||
+ | int main(){ int i; //double a[NP+1],b[NP+1]; double d=sqrt(M_PI/NP); |
||
+ | //double x,y,f,g; FILE *o; o=fopen("11.eps","w"); ado(o,1020,130); |
||
+ | double x,y,f,g; FILE *o; o=fopen("noriplo.eps","w"); ado(o,1020,130); |
||
+ | #define M(x,y) fprintf(o,"%9.4lf %9.4lf M\n",x+0.,y+0.); |
||
+ | #define L(x,y) fprintf(o,"%9.4lf %9.4lf L\n",x+0.,y+0.); |
||
+ | fprintf(o,"10 10 translate 50 100 scale 2 setlinecap 1 setlinejoin\n"); |
||
+ | for(i=0;i<41;i++){M(.5*i,0)L(.5*i,1)} |
||
+ | for(i=0;i<3;i++){M(0,.5*i)L(20,.5*i)} fprintf(o,".006 W S\n"); |
||
+ | x=L2/L1; x*=x; M(x,.5)L(x,-.02) |
||
+ | x=L3/L1; x*=x; M(x,.5)L(x,-.02) |
||
+ | fprintf(o,".004 W S\n"); |
||
+ | //for(i=0;i<101;i++){x=.01*L1*i; y=j0(x); if(i==0)M(x,y) else L(x,y); } L(L1,0)L(618,0) fprintf(o,".009 W 1 0 0 RGB S\n"); |
||
+ | //for(i=0;i<122;i++){x=.05*(i-.1);y=morin(x); if(i==0)M(x,y) else L(x,y);} fprintf(o,".009 W 0 0 1 RGB S\n"); |
||
+ | //for(i=0;i<122;i++){x=.05*(i-.1);y=mori0(x); if(i==0)M(x,y) else L(x,y); if(fabs(y)>1) break;} fprintf(o,".009 W 0 .9 0 RGB S\n"); |
||
+ | //for(i=0;i<122;i++){x=.05*i;y=mori(x); if(i==0) M(x,y) else L(x,y); if(fabs(y)>1) break;} fprintf(o,".009 W 0 0 1 RGB S\n"); |
||
+ | for(i=0;i<402;i++){x=.1*i;y=mori(sqrt(x)); y*=y; if(i==0) M(x,y) else L(x,y);} fprintf(o,".009 W 0 0 1 RGB S\n"); |
||
+ | for(i=0;i<332;i++){x=3.7+.1*i;y=mori(sqrt(x)); y*=y; y*=100; if(i==0) M(x,y) else L(x,y);} fprintf(o,".009 W 1 0 0 RGB S\n"); |
||
+ | /* |
||
+ | for(i=1;i<640;i++){ x=.01*(i-.5); f=mori0(x); g=morin(x); if(f==g){y=9.;} |
||
+ | else { y=-log(fabs(f-g)/(fabs(f)+fabs(g))); y/=log(10.); y/=2.;}; |
||
+ | if(i==1)M(x,y) else L(x,y); printf("%5.2lf %20.14lf %20.14lf %10.4lf\n",x,f,g,y);} |
||
+ | fprintf(o,".008 W 0 0 0 RGB S\n"); |
||
+ | */ |
||
+ | fprintf(o,"showpage\n%c%cTrailer\n",'%','%'); fclose(o); |
||
+ | system("epstopdf noriplo.eps"); |
||
+ | system( "open noriplo.pdf"); |
||
+ | } |
||
+ | </nowiki></nomathjax></poem> |
||
+ | |||
+ | ==[[Latex]] generator of curves== |
||
+ | |||
+ | <poem><nomathjax><nowiki> |
||
+ | \documentclass[12pt]{article} |
||
+ | \usepackage{geometry} |
||
+ | \usepackage{graphics} |
||
+ | \usepackage{rotating} |
||
+ | \paperwidth 570pt |
||
+ | \paperheight 120pt |
||
+ | \textwidth 420pt |
||
+ | \textheight 300pt |
||
+ | \topmargin -108pt |
||
+ | \oddsidemargin -73pt |
||
+ | \newcommand \ds {\displaystyle} |
||
+ | \newcommand \sx {\scalebox} |
||
+ | \newcommand \rme {\mathrm{e}} |
||
+ | \newcommand \rot {\begin{rotate}} |
||
+ | \newcommand \ero {\end{rotate}} |
||
+ | \newcommand \ing {\includegraphics} |
||
+ | \pagestyle{empty} |
||
+ | \parindent 0pt |
||
+ | \begin{document} |
||
+ | \begin{picture}(810,116) |
||
+ | \put(0,0){\ing{noriplo}} |
||
+ | %\put(0,0){\ing{11}} |
||
+ | %\put(.6,120){\sx{1.25}{$y\!=\!\exp(-x^2/2)$ and its discrete representation with CFT at $N\!= 4$}} |
||
+ | %\put(.6,120){\sx{1.25}{$y$}} |
||
+ | \put(.6,104){\sx{1.3}{$1$}} |
||
+ | \put(.6,56){\sx{1.4}{$\frac{1}{2}$}} |
||
+ | \put(.6, 5){\sx{1.3}{$0$}} |
||
+ | \put(57,-2){\sx{1.3}{$1$}} |
||
+ | \put(107,-2){\sx{1.3}{$2$}} |
||
+ | \put(157,-2){\sx{1.3}{$3$}} |
||
+ | \put(207,-2){\sx{1.3}{$4$}} |
||
+ | \put(258,-2){\sx{1.3}{$5$}} |
||
+ | \put(308,-2){\sx{1.3}{$6$}} |
||
+ | \put(358,-2){\sx{1.3}{$7$}} |
||
+ | \put(408,-2){\sx{1.3}{$8$}} |
||
+ | \put(459,-2){\sx{1.3}{$9$}} |
||
+ | \put(504,-2){\sx{1.3}{$10$}} |
||
+ | \put(562,-1.6){\sx{1.3}{$x$}} |
||
+ | %\put(120,90){\rot{-28}\sx{1.3}{$y\!=\! J_0(x)\theta(L_1\!-\!x)$}\ero} |
||
+ | %\put(112,58){\rot{-33}\sx{1.3}{$y\!=\! \mathrm{mori}(x)$}\ero} |
||
+ | \put(28,84){\sx{1.3}{$y\!=\! \mathrm{mori}\Big(\sqrt{x}\Big)^2$}} |
||
+ | \put(206,89){\sx{1.3}{$y\!=\! 100\,\mathrm{mori}\Big(\sqrt{x}\Big)^2$}} |
||
+ | \end{picture}\end{document} |
||
+ | </nowiki></nomathjax></poem> |
||
+ | |||
+ | ==References== |
||
+ | |||
+ | <references/> |
||
+ | |||
+ | [[Category:Explicit plot]] |
||
+ | [[Category:Morinaga function]] |
Latest revision as of 08:44, 1 December 2018
Integrand for the transmittance of the Bessel mode through the slit for the teal argument; square of the Morinaga function mori of modified argument:
$y=\mathrm{nori}(x)=\mathrm{mori}\big(\sqrt{x}\big)^2$, blue curve, and
and
$y=100 \,\mathrm{nori}(x)=100 \, \mathrm{mori}\big(\sqrt{x}\big)^2$ , red curve.
The additional grid line indicates the abscissa $x=L_2^2/L_1^2\approx 5.2689404316052215$ ,
where
$L_1=\mathrm{BesselJZero}[0,1]\approx 1.2484591696955065 $
$L_2=\mathrm{BesselJZero}[0,2]\approx 5.5200781102863115 $
C++ generator of curves
File ado.cin should be loaded
#include <stdio.h>
#include <math.h>
#include<stdlib.h>
//#include "scft.cin"
#define DB double
#include "ado.cin"
//#define NP 16
DB L1= 2.404825557695773;
DB L2= 5.5200781102863115;
DB L3= 8.653727912911013;
//DB mory(DB x){ return j0(x)/(1.-(1./(L1*L1))*x*x);}
DB morin(DB x){ return j0(L1*x)/(1-x*x);}
DB mori0(DB x){ int n,m; DB s, xx=x*x;
DB c[16]={ 1., -0.4457964907366961303, 0.07678538241994023453, -0.0071642885058902232688,
0.00042159522055140947688, -0.000017110542281627483109, 5.0832583976057607495e-7, -1.1537378620148452816e-8,
2.0662789231930073316e-10, -2.9948657413756059965e-12, 3.5852738451127332173e-14,-3.6050239634659700777e-16,
3.0877184831292878827e-18, -2.2798156440952688462e-20, 1.4660907878585489441e-22,-8.2852774398657968065e-25};
// 16th term seems to fail; perhaps, due to the C++ rounding errors or bug in the Mathematica routine Series applied to HankelH.
//with m=15, at |x|<2, the error is of order of 10^(-16)
//In this sense, the result is accurate while |x|<2.
m=15; s=c[m]*xx; for(n=m-1;n>0;n--){ s+=c[n]; s*=xx;}
return 1.+s;}
DB mori(DB x){if(fabs(x)<2) return mori0(x);
return morin(x);}
int main(){ int i; //double a[NP+1],b[NP+1]; double d=sqrt(M_PI/NP);
//double x,y,f,g; FILE *o; o=fopen("11.eps","w"); ado(o,1020,130);
double x,y,f,g; FILE *o; o=fopen("noriplo.eps","w"); ado(o,1020,130);
#define M(x,y) fprintf(o,"%9.4lf %9.4lf M\n",x+0.,y+0.);
#define L(x,y) fprintf(o,"%9.4lf %9.4lf L\n",x+0.,y+0.);
fprintf(o,"10 10 translate 50 100 scale 2 setlinecap 1 setlinejoin\n");
for(i=0;i<41;i++){M(.5*i,0)L(.5*i,1)}
for(i=0;i<3;i++){M(0,.5*i)L(20,.5*i)} fprintf(o,".006 W S\n");
x=L2/L1; x*=x; M(x,.5)L(x,-.02)
x=L3/L1; x*=x; M(x,.5)L(x,-.02)
fprintf(o,".004 W S\n");
//for(i=0;i<101;i++){x=.01*L1*i; y=j0(x); if(i==0)M(x,y) else L(x,y); } L(L1,0)L(618,0) fprintf(o,".009 W 1 0 0 RGB S\n");
//for(i=0;i<122;i++){x=.05*(i-.1);y=morin(x); if(i==0)M(x,y) else L(x,y);} fprintf(o,".009 W 0 0 1 RGB S\n");
//for(i=0;i<122;i++){x=.05*(i-.1);y=mori0(x); if(i==0)M(x,y) else L(x,y); if(fabs(y)>1) break;} fprintf(o,".009 W 0 .9 0 RGB S\n");
//for(i=0;i<122;i++){x=.05*i;y=mori(x); if(i==0) M(x,y) else L(x,y); if(fabs(y)>1) break;} fprintf(o,".009 W 0 0 1 RGB S\n");
for(i=0;i<402;i++){x=.1*i;y=mori(sqrt(x)); y*=y; if(i==0) M(x,y) else L(x,y);} fprintf(o,".009 W 0 0 1 RGB S\n");
for(i=0;i<332;i++){x=3.7+.1*i;y=mori(sqrt(x)); y*=y; y*=100; if(i==0) M(x,y) else L(x,y);} fprintf(o,".009 W 1 0 0 RGB S\n");
/*
for(i=1;i<640;i++){ x=.01*(i-.5); f=mori0(x); g=morin(x); if(f==g){y=9.;}
else { y=-log(fabs(f-g)/(fabs(f)+fabs(g))); y/=log(10.); y/=2.;};
if(i==1)M(x,y) else L(x,y); printf("%5.2lf %20.14lf %20.14lf %10.4lf\n",x,f,g,y);}
fprintf(o,".008 W 0 0 0 RGB S\n");
*/
fprintf(o,"showpage\n%c%cTrailer\n",'%','%'); fclose(o);
system("epstopdf noriplo.eps");
system( "open noriplo.pdf");
}
Latex generator of curves
\documentclass[12pt]{article}
\usepackage{geometry}
\usepackage{graphics}
\usepackage{rotating}
\paperwidth 570pt
\paperheight 120pt
\textwidth 420pt
\textheight 300pt
\topmargin -108pt
\oddsidemargin -73pt
\newcommand \ds {\displaystyle}
\newcommand \sx {\scalebox}
\newcommand \rme {\mathrm{e}}
\newcommand \rot {\begin{rotate}}
\newcommand \ero {\end{rotate}}
\newcommand \ing {\includegraphics}
\pagestyle{empty}
\parindent 0pt
\begin{document}
\begin{picture}(810,116)
\put(0,0){\ing{noriplo}}
%\put(0,0){\ing{11}}
%\put(.6,120){\sx{1.25}{$y\!=\!\exp(-x^2/2)$ and its discrete representation with CFT at $N\!= 4$}}
%\put(.6,120){\sx{1.25}{$y$}}
\put(.6,104){\sx{1.3}{$1$}}
\put(.6,56){\sx{1.4}{$\frac{1}{2}$}}
\put(.6, 5){\sx{1.3}{$0$}}
\put(57,-2){\sx{1.3}{$1$}}
\put(107,-2){\sx{1.3}{$2$}}
\put(157,-2){\sx{1.3}{$3$}}
\put(207,-2){\sx{1.3}{$4$}}
\put(258,-2){\sx{1.3}{$5$}}
\put(308,-2){\sx{1.3}{$6$}}
\put(358,-2){\sx{1.3}{$7$}}
\put(408,-2){\sx{1.3}{$8$}}
\put(459,-2){\sx{1.3}{$9$}}
\put(504,-2){\sx{1.3}{$10$}}
\put(562,-1.6){\sx{1.3}{$x$}}
%\put(120,90){\rot{-28}\sx{1.3}{$y\!=\! J_0(x)\theta(L_1\!-\!x)$}\ero}
%\put(112,58){\rot{-33}\sx{1.3}{$y\!=\! \mathrm{mori}(x)$}\ero}
\put(28,84){\sx{1.3}{$y\!=\! \mathrm{mori}\Big(\sqrt{x}\Big)^2$}}
\put(206,89){\sx{1.3}{$y\!=\! 100\,\mathrm{mori}\Big(\sqrt{x}\Big)^2$}}
\end{picture}\end{document}
References
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:13, 1 December 2018 | 2,366 × 498 (139 KB) | Maintenance script (talk | contribs) | Importing image file |
You cannot overwrite this file.
File usage
The following 2 pages use this file: