# History file 'tco.h' to analytically compute exact propagator matrices # in 'Oblique Twisted Crystal' model, with oblique plane of # polarization, to compute them also numerically by CRT using different # quasi-isotropic approximations, and to compare the errors of different # quasi-isotropic approximations of the ray tracing. # Executables required # ~~~~~~~~~~~~~~~~~~~~ # This history file requires programs 'greentc.for', 'greenmul.for', # 'tcgreen.for', 'tccomp.for' and 'tcrot.for' to be compiled. # The programs are located in directory 'data/tc' and may be compiled # by perl script 'ftc.pl'. chk.pl: "data/tc/" "greentc.for" chk.pl: "data/tc/" "greenmul.for" chk.pl: "data/tc/" "tcgreen.for" chk.pl: "data/tc/" "tccomp.for" chk.pl: "data/tc/" "tcrot.for" chk.pl: "data/tc/" "ftc.pl" chk.pl: "forms/" "f.pl" ftc.pl: # Input files required chk.pl: "data/tc/" "tc-cod.dat" chk.pl: "data/tc/" "tc-dcr.dat" chk.pl: "data/tc/" "tc-mod.dat" chk.pl: "data/tc/" "tc-rec.dat" chk.pl: "data/tc/" "tc-rpa.dat" chk.pl: "data/tc/" "tc-src.dat" chk.pl: "crt/" "writall.dat" chk.pl: "data/tc/" "tco-err1.pro" chk.pl: "data/tc/" "tco-err2.pro" chk.pl: "forms/" "append.pl" chk.pl: "forms/" "copy.pl" chk.pl: "forms/" "echo.pl" # Figure comparing the errors of four ray methods in frequency domain # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Comparisons ||U2-U3|| are plotted, where U2 is the exact propagator # matrix, and U3 is the analytic propagator matrix corresponding to # the selected numerical method. # Data for the calculations # ~~~~~~~~~~~~~~~~~~~~~~~~~ # Data for the analytical solutions SIN2TH=.75 GAMMA=0.15 TCK=0.032 A44=6. # VREF2=6.9 # Data for the calculations by CRT SRC='tc-src.dat' REC='tc-rec.dat' DCRT='tc-dcr.dat' INIPAR=3 CODE='tc-cod.dat' RPAR='tc-rpa.dat' WRIT='writall.dat' CRTLOG='log.out' GREENAMP=8512.5336 # conversion of point source to plane wave GREENAMP=8234.9511 # 4*PI*rho*Vref**2*(source-receiver distance) GREENAMP=8171.6852 # # Rotation of the model # ~~~~~~~~~~~~~~~~~~~~~ TCE1=0.00 TCE2= TCE3= TCE1=0.01 TCE2= TCE3= TCE1=0.02 TCE2= TCE3= TCE1=0.05 TCE2= TCE3= TCE1=0.10 TCE2= TCE3= MODEL='tc-mod.dat' MODOUT='tco-mod.out' tcrot: MODEL='tco-mod.out' # Exact propagator matrices calculated by TCGREEN # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ TCGREENE='tcgreene.out' TCGREENW=' ' TCGREENQ=' ' TCGREENA=' ' TCGREENI=' ' OF=0.001 DF=0.00025 NF=397 tcgreen: # analytic Green functions GREEN='tcgreene.out' GREENTC='greenef1.out' greentc: OF=0.1 DF=0.0025 NF=361 tcgreen: # analytic Green functions GREEN='tcgreene.out' GREENTC='greenef2.out' greentc: OF=1.0 DF=0.025 NF=361 tcgreen: # analytic Green functions GREEN='tcgreene.out' GREENTC='greenef3.out' greentc: # Two-point ray tracing # ~~~~~~~~~~~~~~~~~~~~~ crt: # Propagator matrices calculated by CRT # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # No QI approximation of Christoffel matrix, # no QI projection of eigenvectors # ----------------------------------------- QICHM=0 QIPV=0 OF=0.001 DF=0.00025 NF=397 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef1.out' GREENTC='greencrw.out' TCCOMP='errw100.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq100.out' tccomp: OF=0.1 DF=0.0025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef2.out' GREENTC='greencrw.out' TCCOMP='errw200.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq200.out' tccomp: OF=1.0 DF=0.025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef3.out' GREENTC='greencrw.out' TCCOMP='errw300.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq300.out' tccomp: # No QI approximation of Christoffel matrix, # QI projection of eigenvectors # ----------------------------------------- QICHM=0 QIPV=1 OF=0.001 DF=0.00025 NF=397 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef1.out' GREENTC='greencrw.out' TCCOMP='errw101.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq101.out' tccomp: OF=0.1 DF=0.0025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef2.out' GREENTC='greencrw.out' TCCOMP='errw201.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq201.out' tccomp: OF=1.0 DF=0.025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef3.out' GREENTC='greencrw.out' TCCOMP='errw301.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq301.out' tccomp: # QI approximation of Christoffel matrix, # no QI projection of eigenvectors # ----------------------------------------- QICHM=1 QIPV=0 OF=0.001 DF=0.00025 NF=397 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef1.out' GREENTC='greencrw.out' TCCOMP='errw110.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq110.out' tccomp: OF=0.1 DF=0.0025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef2.out' GREENTC='greencrw.out' TCCOMP='errw210.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq210.out' tccomp: OF=1.0 DF=0.025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef3.out' GREENTC='greencrw.out' TCCOMP='errw310.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq310.out' tccomp: # QI approximation of Christoffel matrix, # QI projection of eigenvectors # ----------------------------------------- QICHM=1 QIPV=1 OF=0.001 DF=0.00025 NF=397 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef1.out' GREENTC='greencrw.out' TCCOMP='errw111.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq111.out' tccomp: OF=0.1 DF=0.0025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef2.out' GREENTC='greencrw.out' TCCOMP='errw211.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq211.out' tccomp: OF=1.0 DF=0.025 NF=361 # No QI approximation of travel times QITT=0 QIDT=0 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrw.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrw.out' # QI approximation of travel times QITT=1 QIDT=1 GREEN='green.out' green: # Green function GREEN='green.out' GREENMUL='greenmul.out' greenmul: # multiplication by GREENAMP GREEN='greenmul.out' GREENTC='greencrq.out' greentc: # conversion to propagator matrix U # Result - propagator matrix written to the file 'greencrq.out' # # Comparisons GREENTC2='greenef3.out' GREENTC='greencrw.out' TCCOMP='errw311.out' tccomp: GREENTC='greencrq.out' TCCOMP='errq311.out' tccomp: # Writing the PostScript figure # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ copy.pl: tco-err1.pro tco-err.ps echo.pl: "stroke 1 0.6 0 setrgbcolor" ">>tco-err.ps" append.pl: tco-err.ps errq110.out append.pl: tco-err.ps errq210.out append.pl: tco-err.ps errq310.out echo.pl: "stroke 0 1 1 setrgbcolor" ">>tco-err.ps" append.pl: tco-err.ps errq101.out append.pl: tco-err.ps errq201.out append.pl: tco-err.ps errq301.out echo.pl: "stroke 1 0 0 setrgbcolor" ">>tco-err.ps" append.pl: tco-err.ps errw110.out append.pl: tco-err.ps errw210.out append.pl: tco-err.ps errw310.out # echo.pl: "stroke 1. 1 1 setrgbcolor" ">>tco-err.ps" # append.pl: tco-err.ps errq111.out # append.pl: tco-err.ps errq211.out # append.pl: tco-err.ps errq311.out # echo.pl: "stroke 1 0 1 setrgbcolor" ">>tco-err.ps" # append.pl: tco-err.ps errw111.out # append.pl: tco-err.ps errw211.out # append.pl: tco-err.ps errw311.out echo.pl: "stroke 0 0 1 setrgbcolor" ">>tco-err.ps" append.pl: tco-err.ps errw101.out append.pl: tco-err.ps errw201.out append.pl: tco-err.ps errw301.out echo.pl: "stroke 0 1 0 setrgbcolor" ">>tco-err.ps" append.pl: tco-err.ps errq100.out append.pl: tco-err.ps errq200.out append.pl: tco-err.ps errq300.out echo.pl: "stroke 0 0 0 setrgbcolor" ">>tco-err.ps" append.pl: tco-err.ps errw100.out append.pl: tco-err.ps errw200.out append.pl: tco-err.ps errw300.out append.pl: tco-err.ps tco-err2.pro