macro gen input output nuname baseline dmsol dmatm sstt12 sstt23 sstt13 cp density emin emax estep exec seminar ve/read gev,bl,a,b,c [input] fort/file 69 [output] meta 69 -114 for nux in nue numu nutau exec gen#plot_one [nuname] [nux] [baseline] [dmsol] [dmatm] [sstt12] [sstt23] [sstt13] [cp] [density] [emin] [emax] endfor close 69 return macro plot_one nuname nux baseline dmsol dmatm sstt12 sstt23 sstt13 cp density emin emax case [nux] in (nue) ymax=0.5; ystart=[ymax]*0.8; x=a; nuxstr='[n]?e!' (numu) ymax=1.0; ystart=[ymax]*0.9; x=b; nuxstr='[n]?[m]!' (nutau) ymax=1.0; ystart=[ymax]*0.4; x=c; nuxstr='[n]?[t]!' endcase xstart=[emax]/2 case [nuname] in (nue) nuistr='[n]?e!' (numu) nuistr='[n]?[m]!' (nutau) nuistr='[n]?[t]!' (anue) nuistr='anti-[n]?e!' (anumu) nuistr='anti-[n]?[m]!' (anutau) nuistr='anti-[n]?[t]!' endcase pstr='P('//[nuistr]//'"5#'//[nuxstr]//')' title [nuistr]//' oscillation probability' null [emin] [emax] 0 [ymax] message [nuname]//'->'//[nux] * ve/pl [x]%gev ! s pline $vdim(gev,1) gev [x] ystep=0.05*[ymax] bl='Baseline = '//[baseline]//' km' sins='sin^2!2[q]?ij! = '//[sstt12]//', '//[sstt23]//', '//[sstt13] dms='[D]m?ij!^2! = '//[dmsol]//', '//[dmatm]//' eV^2!' cp='[d]?CP! = '//[cp]//'^o!' if [density] = 0 then den='no matter' elseif [density] < 0 then den='PREM density profile' else den='Density = '//[density]//'g/cc' endif atitle 'E?[n]! (GeV)' [pstr] '' 321 exec multi#itx 'lin' [xstart] [ystart] [ystep] 1 [bl] 1 [sins] 1 [dms] 1 [cp] 1 [den] exec text#footer return