opa define TeX_strings 1 expand 1.01 window 1 1 1 1 limits 800 1200 0.4 1.1 erase ctype default expand 1.3 box xlabel \lambda (\AA) ylabel relocate (6000 31500) label Lyman absorption by IGM (Madau 1995) data OPACITY.dat read { z 1 n 2.s } define lfuv 1550 define lfoca 2010 define lnuv 2300 set lfuv = 1550 set ofuv = 1 set zuv = 0 set lfoca = 2010 set ofoca = 1 set lnuv = 2300 set onuv = 1 set zuv2 = 0 do i = 1, DIMEN(n),2 { define file (n[$i-1]) define zobs (z[$i-1]) if (z[$i-1]<=2.2) { echo $zobs $file data $file read {l 1 o 2} connect l o define lobs ($lfuv/(1+$zobs)) set ls = l if ( ABS(l-$lobs)<.5 ) set os = o if ( ABS(l-$lobs)<0.5 ) set zs = l*0 + $zobs if ( ABS(l-$lobs)<0.5 ) set lfuv = lfuv concat ls set ofuv = ofuv concat os set zuv = zuv concat zs define lobs ($lfoca/(1+$zobs)) set ls = l if ( ABS(l-$lobs)<1 ) set os = o if ( ABS(l-$lobs)<1 ) set lfoca = lfoca concat ls set ofoca = ofoca concat os define lobs ($lnuv/(1+$zobs)) set ls = l if ( ABS(l-$lobs)<=.5 ) set os = o if ( ABS(l-$lobs)<=.5 ) set zs = l*0 + $zobs if ( ABS(l-$lobs)<=0.5 ) set lnuv = lnuv concat ls set onuv = onuv concat os set zuv2 = zuv2 concat zs } } ctype blue connect lfuv ofuv ptype 20 3 points lfuv ofuv do i = 1,DIMEN(lfuv)-7 { define z (sprintf('%3.1f',zuv[$i-1])) define x (lfuv[$i-1]-30) define y (ofuv[$i-1]+0.02) relocate $x $y label $z } define y ($y-0.1) relocate $x $y label FUV ctype yellow connect lfoca ofoca ptype 20 3 points lfoca ofoca ctype red connect lnuv onuv ptype 20 3 points lnuv onuv do i = 1,DIMEN(lnuv)-3 { define z (sprintf('%3.1f',zuv2[$i-1])) define x (lnuv[$i-1]+10) define y (onuv[$i-1]-0.02) relocate $x $y label $z } label = Z define y ($y-0.1) relocate $x $y label NUV ctype default