# History file 'plu-inv.h' for building and smoothing model Pluto 1.5 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Dimension of array RAM in include file 'ram.inc' should be # MRAM=15200000 or greater for this history file. # Input files required # ~~~~~~~~~~~~~~~~~~~~ chk.pl: "data/plu/" "plu-mod.dat" chk.pl: "model/" "sob22.dat" chk.pl: "forms/" "echo.pl" chk.pl: "forms/" "copy.pl" chk.pl: "" "plu-vp.grd" # File 'plu-vp.grd' should be extracted from the GZIPped file # 'plu-vp.gz' located in directory 'bin' using the command # gzip -d -a -N plu-vp.gz # Preparing data to be inverted # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Data points at interfaces # ~~~~~~~~~~~~~~~~~~~~~~~~~ N1=1201 N2=6960 D1=25. D2=25. O1=0. O2=0. VALUE=14000. MODE=-1 GRD='plu-vp.grd' PTS='p-d-i1.out' PTS1='p-d-i2.out' N1NEW=1000 N2NEW=873 NO1= NO2= ND2=3 grdiso: PTS='p-d-i3.out' PTS1='p-d-i4.out' N2NEW=960 NO2=2640 ND2=3 grdiso: PTS='p-d-i5.out' PTS1=' ' N1NEW=600 N2NEW=1 NO1=601 NO2= ND2= grdiso: N1NEW= N2NEW= NO1= NO2= ND2= # # Data for P-wave velocity # ~~~~~~~~~~~~~~~~~~~~~~~~ N1NEW=50 N2NEW=87 D1NEW=600. D2NEW=2000. O1NEW=50. O2NEW=1000. GRD='plu-vp.grd' GRDNEW='p-d-v.out' grdnew: # Average slowness and velocity for estimations of SOBMUL # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ copy.pl: "plu-vp.grd" "plu-slop.out" echo.pl: "@1=1./@1" "> cal.tmp" CAL='cal.tmp' GRD1='plu-slop.out' grdcal: N1NEW=1 N2NEW=1 GNORM=2 GRD='plu-slop.out' GRDNEW='p-avslo.out' grdnorm: GRD='plu-vp.grd' GRDNEW='p-avvp.out' grdnorm: GRD= GRDNEW= # Inversion # ~~~~~~~~~ # Form of the files with matrices # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ FORMM='unformatted' MATFORM='unformatted' # Inversion of the interfaces # ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ICLASS=1 # Initial model MODEL='plu-mod.dat' # Calculating matrices for inversion (without densities) M1='m1.out' M2='m2.out' SOBOLEV='sob22.dat' MODSOB='modsobs.out' SOBW00=1 # minimizing interface curvature invsoft: MODSOB= SOBW00= GM1='gm1.out' GM2='gm2.out' GM3=' ' DM1='dm1.out' PTS='p-d-i1.out' INDFUN=1 ERRMUL=29.55 invpts: # 873 points M2IN='m2.out' # PTS='p-d-i2.out' INDFUN=2 ERRMUL=29.55 invpts: # 873 points PTS='p-d-i3.out' INDFUN=3 ERRMUL=28.44 invpts: # 809 points PTS='p-d-i4.out' INDFUN=4 ERRMUL=28.44 invpts: # 809 points PTS='p-d-i5.out' INDFUN=5 ERRMUL=1. invpts: # 1 points M2IN= PTS= INDFUN= ERRMUL= # 3365 total # Matrix operations MATIN1='dm1.out' MATOUT='dm2.out' SPARSE= MATFUN='inv' matfun: MATIN1='dm2.out' MATIN2='gm1.out' MATOUT='dm2gm1.out' SPARSE= SYMMETRY= MATT1= MATT2=1 matmul: MATIN1='gm1.out' MATIN2='dm2gm1.out' MATOUT='sm1.out' SPARSE= SYMMETRY='sym' MATT1= MATT2= matmul: MATIN1='sm1.out' MATIN2='modsobs.out' MATOUT='sm2.out' SPARSE= COEF1= COEF2=900000000 matlin: MATIN1='sm2.out' MATOUT='sm3.out' SPARSE= matinv: MATIN1='dm2.out' MATIN2='gm2.out' MATOUT='gm3.out' SPARSE= SYMMETRY=' ' MATT1= MATT2= matmul: MATIN1='gm1.out' MATIN2='gm3.out' MATOUT='gm4.out' SPARSE= SYMMETRY=' ' MATT1= MATT2= matmul: MATIN1='sm3.out' MATIN2='gm4.out' MATOUT='gm5.out' SPARSE= SYMMETRY=' ' MATT1= MATT2= matmul: # Updating the model M1='m1.out' MODNEW='gm5.out' MODOUT='plu-mod.tmp' MODIN= modmod: M1= M2= MODNEW= MODOUT= MODIN= # Indices of complex blocks relevant to the velocities # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Velocities greater than 14700 => ICB=1; other velocities => ICB=2 N1=50 N2=87 D1=600. D2=2000. O1=50. O2=1000. echo.pl: "A=@1/14700." "> cal.tmp" echo.pl: "A=INT(A)" ">> cal.tmp" echo.pl: "A=2-A" ">> cal.tmp" echo.pl: "@2=NINT(A)" ">> cal.tmp" CAL='cal.tmp' GRD1='p-d-v.out' GRD2='p-d-icb.out' grdcal: # Inversion of velocities # ~~~~~~~~~~~~~~~~~~~~~~~ MODEL='plu-mod.tmp' MODIN='plu-mod.tmp' ICLASS=2 # Calculating matrices for inversion M1='m1.out' M2='m2.out' MODSOB='modsobv.out' SOBW01=1 # minimizing second velocity derivatives invsoft: MODSOB= SOBW01= GM1='gm1.out' GM2='gm2.out' GM3=' ' DM1='dm1.out' MPAR=1 POWERM=1 ERRMUL=65.955 # 4350 points GRD='p-d-v.out' GRDICB='p-d-icb.out' invpts: GRD= GRDICB= MPAR= POWERM= ERRMUL= # Matrix operations MATIN1='dm1.out' MATOUT='dm2.out' SPARSE= MATFUN='inv' matfun: MATIN1='dm2.out' MATIN2='gm1.out' MATOUT='dm2gm1.out' SPARSE= SYMMETRY= MATT1= MATT2=1 matmul: MATIN1='gm1.out' MATIN2='dm2gm1.out' MATOUT='sm1.out' SPARSE= SYMMETRY='sym' MATT1= MATT2= matmul: MATIN1='sm1.out' MATIN2='modsobv.out' MATOUT='sm2.out' SPARSE= COEF1= COEF2=40000000000 matlin: MATIN1='sm2.out' MATOUT='sm3.out' SPARSE= matinv: MATIN1='dm2.out' MATIN2='gm2.out' MATOUT='gm3.out' SPARSE= SYMMETRY=' ' MATT1= MATT2= matmul: MATIN1='gm1.out' MATIN2='gm3.out' MATOUT='gm4.out' SPARSE= SYMMETRY=' ' MATT1= MATT2= matmul: MATIN1='sm3.out' MATIN2='gm4.out' MATOUT='gm5.out' SPARSE= SYMMETRY=' ' MATT1= MATT2= matmul: # Updating the model M1='m1.out' MODNEW='gm5.out' MODOUT='plu-mod.out' NUMLIN= modmod: M1= M2= MODNEW= MODOUT= MODIN= # Sobolev norm of the velocity in the updated model # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ MATIN1='modsobv.out' MATIN2='gm5.out' MATOUT='gm6.out' SPARSE= SYMMETRY=' ' MATT1= MATT2= matmul: MATIN1='gm5.out' MATIN2='gm6.out' MATOUT='gm7.out' SPARSE= SYMMETRY='diag' MATT1=1 MATT2= matmul: MATIN1='gm7.out' MATOUT='p-snv.out' SPARSE=-1 MATFUN='sqrt' MATFORM='formatted' matfun: # Important output files # ~~~~~~~~~~~~~~~~~~~~~~ # 'p-d-v.out' ... Gridded velocity being fit. # 'p-d-i1.out',...,'p-d-i5.out' ... Points at interfaces being fit. # 'plu-mod.out'... Inverted model. # 'p-snv.ou@' ... Sobolev norm of the velocity in the model.