File:Hermigaplot.jpg

Explicit plot of Oscillator functions

$y=h_n(x)=N_n^{-1/2}\, H_n(x)\, \exp(-x^2/2)$

for $n=0 .. 6$

C++ generator of curves
File ado.cin should be loaded to compile the code below.
 * 1) include
 * 2) include
 * 3) include
 * 4) define DB double
 * 5) define DO(x,y) for(x=0;x<y;x++)

DB HermiteNo[14]={1, 2, 8, 48, 384, 3840, 46080, 645120, 10321920, 185794560, 3715891200, 81749606400, 1961990553600, 51011754393600};

DB HermitH0[7][7]= // COEFFICIENTS OF EVEN HERMITEH {{1, 0, 0, 0, 0, 0, 0},    {-2, 4, 0, 0, 0, 0, 0}, {12, -48, 16, 0, 0, 0, 0},  {-120, 720, -480, 64, 0, 0, 0}, {1680, -13440, 13440, -3584,   256, 0, 0}, {-30240, 302400, -403200, 161280, -23040, 1024, 0}, {665280, -7983360, 13305600, -7096320, 1520640, -135168, 4096}};

DB HermitH1[7][7]= // COEFFICIENTS OF ODD HERMITЕH {{2, 0, 0, 0, 0, 0, 0},     {-12, 8, 0, 0, 0, 0, 0}, {120, -160, 32, 0, 0, 0, 0}, {-1680, 3360, -1344, 128, 0, 0, 0}, {30240, -80640, 48384, -9216, 512, 0, 0}, {-665280, 2217600, -1774080, 506880, -56320, 2048, 0}, {17297280, -69189120, 69189120, -26357760,4392960, -319488, 8192}};

DB HermitH(int n,DB x){ int m,M; DB s, xx; if(n==0) return 1.; if(n==1) return x+x; if(n>13) {printf("hermite number %2d is not yet implemented (max. is 13)\n consider to stop..",n); getchar; return 0;} xx=x*x; //printf("Hernith called with n=%3d x=%8.2lf\n",n,x); if(n/2*2==n){M=n/2; s=0.;for(m=M;m>0;m--) {s+=HermitH0[M][m]; s*=xx;} return (HermitH0[M][0]+s);} else{ M=(n-1)/2; s=0.; for(m=M;m>0;m--) {s+=HermitH1[M][m]; s*=xx;} return (HermitH1[M][0]+s)*x; } }

DB hermiten(int n,DB x){ if(n>13) {printf("hermite number %2d is not yet implemented (max. is 13)\n consider to stop..",n); getchar; return 0;} return HermitH(n,x)/sqrt(sqrt(M_PI)*HermiteNo[n]); }


 * 1) include"ado.cin"

int main{ // printf("%16d %16d\n",INT_MIN,INT_MAX); int M,m,n; DB x,xx,y,z,s; FILE *o; o=fopen("hermigaplo.eps", "w"); ado(o,804,204); fprintf(o,"402 102 translate 100 100 scale 2 setlinecap 1 setlinejoin\n"); for(m=-4; m<5; m++) {M(m,-1)L(m,1)} for(n=-1; n<2; n++) {M(-4,n)L(4,n)} fprintf(o,".01 W 0 0 0 RGB S\n"); DO(n,201){x=.05*(n-100); y= hermiten(0,x)*exp(-x*x/2.); if(n==0)M(x,y) else L(x,y) } fprintf(o,"0 0 0 RGB .016 W S\n "); DO(n,201){x=.05*(n-100); y= hermiten(1,x)*exp(-x*x/2.); if(n==0)M(x,y) else L(x,y) } fprintf(o,"0 0 0 RGB .016 W S\n "); DO(n,201){x=.05*(n-100); y= hermiten(2,x)*exp(-x*x/2.); if(n==0)M(x,y) else L(x,y) } fprintf(o,"0 0 0 RGB .016 W S\n "); DO(n,201){x=.05*(n-100); y= hermiten(3,x)*exp(-x*x/2.); if(n==0)M(x,y) else L(x,y) } fprintf(o,"1 0 0 RGB .016 W S\n "); DO(n,201){x=.05*(n-100); y= hermiten(4,x)*exp(-x*x/2.); if(n==0)M(x,y) else L(x,y) } fprintf(o,"0 .7 0 RGB .016 W S\n "); DO(n,201){x=.05*(n-100); y= hermiten(5,x)*exp(-x*x/2.); if(n==0)M(x,y) else L(x,y) } fprintf(o,"0 0 1 RGB .016 W S\n "); DO(n,201){x=.05*(n-100); y= hermiten(6,x)*exp(-x*x/2.); if(n==0)M(x,y) else L(x,y) } fprintf(o,".8 0 .9 RGB .016 W S\n "); fprintf(o,"showpage\n%c%cTrailer\n",'%','%'); fclose(o); system("epstopdf hermigaplo.eps"); system("open    hermigaplo.pdf"); }
 * 1) define M(x,y) fprintf(o,"%6.4lf %6.4lf M\n",x+0., y+0.);
 * 2) define L(x,y) fprintf(o,"%6.4lf %6.4lf L\n",x+0., y+0.);

Latex generator of labels
\documentclass[12pt]{article} \usepackage{geometry} \paperwidth 806pt \paperheight 210pt \topmargin -104pt \oddsidemargin -73pt \pagestyle{empty} \usepackage{graphicx} \parindent 0pt \textwidth 700px \textheight 900px \newcommand \sx {\scalebox} \begin{document} \begin{picture}(800,203) \put(0,0){\includegraphics{hermigaplo}} \put(386,744){\sx{2}{$y$}} \put(388,194){\sx{1.8}{$1$}} \put(376,-1){\sx{1.8}{$-1$}} \put( 85,80){\sx{2}{$-3$}} \put(185,80){\sx{2}{$-2$}} \put(285,80){\sx{2}{$-1$}} \put(398,80){\sx{2}{$0$}} \put(498,80){\sx{2}{$1$}} \put(598,80){\sx{2}{$2$}} \put(698,80){\sx{2}{$3$}} \put(792,80){\sx{2}{$x$}} \put(370,180){\sx{1.8}{$y=F_0(x)$}} \put(480,172){\sx{1.8}{$F_1(x)$}} \put(540,170){\sx{1.8}{$F_2(x)$}} \put(600,166){\sx{1.8}{$F_3$}} \put(640,164){\sx{1.8}{$F_4$}} \put(676,162){\sx{1.8}{$F_5$}} \put(712,160){\sx{1.8}{$F_6$}} \end{picture} \end{document}