図1. 問題設定。(a)水平面、(b)\(y=0\)の鉛直断面。 地形を(a)に色と等値線(100 m間隔)で、(b)に茶色で示す。 水域を(a)に太線で、(b)に水色で示す。 ★は地震波動ソースの位置、 ▲は観測点の位置を表す。 Fig. 1. The problem to be solved in (a) horizontal section and (b) a vertical section along \(y=0\). The topography is shown by color scale and contours (100 m intervals) in Fig. 1a and brown in Fig. 1b. Water-filled regions are shown by thick lines in Fig. 1a and blue in Fig. 1b. The star (★) and triangles (▲) indicate the locations of the seismic wave source and stations, respectively. |
パラメータ Parameter |
値 Value |
\(D\) | 300 m |
\(h_1\) | 900 m |
\(d_1\) | 700 m |
\(h_2\) | 600 m |
\(r_{1m}\) | 2000 m |
\(r_{1c}\) | 400 m |
\(r_{2m}\) | 1000 m |
\(x_1\) | -5500 m |
\(x_2\) | 5500 m |
rm -f topography_ex5.dat for((x=-7100;x<=7100;x+=100)) do for((y=-3100;y<=3100;y+=100)) do echo $x $y | awk '{ D=300.0; h1=900.0; d1=700.0; h2=600.0; r1m=2000.0; r1c=400.0; r2m=1000.0; x1=-5500.0; x2=5500.0; distance1_2=($1-x1)*($1-x1)+$2*$2; distance2_2=($1-x2)*($1-x2)+$2*$2; h=-D; if(distance1_2<100.0*r1m*r1m){ h+=h1*exp(-distance1_2/(r1m*r1m)); } if(distance1_2<100.0*r1c*r1c){ h-=d1*exp(-distance1_2/(r1c*r1c)); } if(distance2_2<100.0*r2m*r2m){ h+=h2*exp(-distance2_2/(r2m*r2m)); } printf("%d\t%d\t%f\n",$1,$2,h); }' >> topography_ex5.dat done done |
newlake sea height=0.0 newlake crater_lake height=300.0 xmin=-6000.0 xmax=-5000.0 ymin=-500.0 ymax=500.0 |
newsource isotropic location_x=-5500.0 location_y=0.0 location_z=-450.0 mechanism=isotropic intensity=1.0 stfun_name=ricker stfun_tp=1.0 stfun_ts=2.0 |
NEAR[TAB]-4600.0[TAB]0.0[TAB]surface-0.1 FAR[TAB]4900.0[TAB]0.0[TAB]surface-0.1 |
gmt begin problem5 ps gmt set FONT_ANNOT_PRIMARY 12p #地形のプロット(水平面) #Plotting topography in horizontal section gmt surface topography_ex5.dat -R-7100/7100/-3100/3100 -I100/100 -Gtopography_ex5.grd gmt makecpt -Cdrywet -T-500/500/10 -Z -I -D gmt grdimage topography_ex5.grd -R-7100/7100/-3100/3100 -JX14.2/6.2 -Xa3 -Ya6 gmt grdcontour topography_ex5.grd -R-7100/7100/-3100/3100 -JX14.2/6.2 -Xa3 -Ya6 -C100 -W0.4,100/100/100 #海岸線のプロット(水平面) #Plotting coastline in horizontal section awk '{ if(($1+5500.0)*($1+5500.0)+$2*$2<500.0*500.0){ print $1,$2,$3-300.0 }else{ print $1,$2,$3 } }' topography_ex5.dat | gmt surface -R-7100/7100/-3100/3100 -I100/100 -Gtopography_ex5_for_coastline.grd gmt grdcontour topography_ex5_for_coastline.grd -R-7100/7100/-3100/3100 -JX14.2/6.2 -Xa3 -Ya6 -C2000 -W2,0/0/0 -Bxa2000f1000 -Bya2000f1000 -BWsen #水域のプロット(東西断面) #Plotting water-filled regions in EW section gmt plot -R-7100/7100/-2000/700 -JX14.2/2.7 -Xa3 -Ya3 -G127/191/255 <<EOF -7100 0 7100 0 7100 -1000 -7100 -1000 > -6000 300 -5000 300 -5000 -1000 -6000 -1000 EOF #地形のプロット(東西断面) #Plotting topography in EW section awk '($2==0){ print $1,$3 } END{ printf("7100\t-2000\n"); printf("-7100\t-2000\n"); }' topography_ex5.dat | gmt plot -R-7100/7100/-2000/700 -JX14.2/2.7 -Xa3 -Ya3 -G220/180/140 -Bxa2000f1000 -Bya500f100 -BWSen #地震波動ソースのプロット #Plotting seismic wave source gmt plot -R-7100/7100/-3100/3100 -JX14.2/6.2 -Xa3 -Ya6 -Sa0.4 -G255/0/0 <<EOF -5500 0 EOF gmt plot -R-7100/7100/-2000/700 -JX14.2/2.7 -Xa3 -Ya3 -Sa0.4 -G255/0/0 <<EOF -5500 -450 EOF #観測点のプロット #Plotting stations gmt plot -R-7100/7100/-3100/3100 -JX14.2/6.2 -Xa3 -Ya6 -St0.4 -G0/0/0 <<EOF -4600 0 4900 0 EOF gmt plot -R-7100/7100/-2000/700 -JX14.2/2.7 -Xa3 -Ya3 -St0.4 -G0/0/0 <<EOF -4600 431 4900 119 EOF #文字列のプロット #Plotting texts gmt text -R0/21/0/29.7 -JX21/29.7 -Xa0 -Ya0 -F+f12p+a+j <<EOF 10.1 2.2 0 CT East (m) 1.5 9.1 90 CB North (m) 1.5 4.35 90 CB Elevation (m) 17.0 5.5 0 RT (b) EOF gmt text -R0/21/0/29.7 -JX21/29.7 -Xa0 -Ya0 -F+f12p,,255/255/255+a+j <<EOF 17.0 12.0 0 RT (a) EOF gmt end |
waterPML --Nx=141 --Ny=61 --Nz=27 --Npmx=20
--x0=-7050.0 --y0=-3050.0 --z0=-2000.0 --dx=100.0
--dt=0.01 --tmax=20.0
--topography_files=topography_ex5.dat --topography_file_format=xy
--water_file=water5.ini
--structure_file=structure5.ini --structure_file_format=layer
--source_file=source5.ini --output_dir=result05
--station_file=station_list5.dat |
1000.0[TAB]3500.0[TAB]2020.7[TAB]2400.0 -2500.0[TAB]3500.0[TAB]2020.7[TAB]2400.0 |
waterPML --Nx=141 --Ny=61 --Nz=27 --Npmx=20
--x0=-7050.0 --y0=-3050.0 --z0=-2000.0 --dx=100.0
--dt=0.01 --tmax=20.0
--topography_files=topography_ex5.dat --topography_file_format=xy
--structure_file=structure5.ini --structure_file_format=layer
--source_file=source5.ini
--output_dir=result05_vacuum
--station_file=station_list5.dat |
rm -f topography_ex5_filled_with_solid.dat for((x=-7100;x<=7100;x+=100)) do for((y=-3100;y<=3100;y+=100)) do echo $x $y | awk '{ D=300.0; h1=900.0; d1=700.0; h2=600.0; r1m=2000.0; r1c=400.0; r2m=1000.0; x1=-5500.0; x2=5500.0; distance1_2=($1-x1)*($1-x1)+$2*$2; distance2_2=($1-x2)*($1-x2)+$2*$2; h=-D; if(distance1_2<100.0*r1m*r1m){ h+=h1*exp(-distance1_2/(r1m*r1m)); } if(distance1_2<100.0*r1c*r1c){ h-=d1*exp(-distance1_2/(r1c*r1c)); } if(distance2_2<100.0*r2m*r2m){ h+=h2*exp(-distance2_2/(r2m*r2m)); } if(distance1_2<500.0*500.0 && h<300.0){ h=300.0; } if(h<0.0){ h=0.0; } printf("%d\t%d\t%f\n",$1,$2,h); }' >> topography_ex5_filled_with_solid.dat done done |
gmt begin topography_ex5_filled_with_solid ps gmt set FONT_ANNOT_PRIMARY 12p gmt surface topography_ex5_filled_with_solid.dat -R-7100/7100/-3100/3100 -I100/100 -Gtopography_ex5_filled_with_solid.grd gmt makecpt -Cdrywet -T-600/600/10 -Z -I -D gmt grdimage topography_ex5_filled_with_solid.grd -R-7100/7100/-3100/3100 -JX14.2/6.2 -Xa3 -Ya6 -Bxa2000f1000 -Bya2000f1000 -BWsen awk '($2==0){ print $1,$3 } END{ printf("7100\t-2000\n"); printf("-7100\t-2000\n"); }' topography_ex5_filled_with_solid.dat | gmt plot -R-7100/7100/-2000/700 -JX14.2/2.7 -Xa3 -Ya3 -G220/180/140 -Bxa2000f1000 -Bya500f100 -BWSen gmt text -R0/21/0/29.7 -JX21/29.7 -Xa0 -Ya0 -F+f12p+a+j <<EOF 8.1 2.2 0 CT East (m) 1.5 9.1 90 CB North (m) 1.5 4.35 90 CB Elevation (m) 17.0 12.0 0 RT (a) 17.0 5.5 0 RT (b) EOF gmt end |
図2. 水域を固体で置き換えた地形。 Fig. 2. A topography where water was replaced by solid. |
waterPML --Nx=141 --Ny=61 --Nz=27 --Npmx=20
--x0=-7050.0 --y0=-3050.0 --z0=-2000.0 --dx=100.0
--dt=0.01 --tmax=20.0
--topography_files=topography_ex5_filled_with_solid.dat --topography_file_format=xy
--structure_file=structure5.ini --structure_file_format=layer
--source_file=source5.ini
--output_dir=result05_solid
--station_file=station_list5.dat |
for dir in result05 result05_vacuum result05_solid do cd $dir/waveform for station in NEAR FAR do for component in Vx Vy Vz do sequencefile_convert $station.$component seq1 seq2 done done cd ../.. done |
gmt begin waveforms5 ps gmt set FONT_ANNOT_PRIMARY 12p # NEAR, Vx awk '(NF==2){ print $1,$2*1.0e+17 }' result05_vacuum/waveform/NEAR.Vx.seq2 | gmt plot -R0/20/-3.9/3.9 -JX7/2 -Xa3 -Ya9.5 -W0.5,0/160/0 awk '(NF==2){ print $1,$2*1.0e+17 }' result05_solid/waveform/NEAR.Vx.seq2 | gmt plot -R0/20/-3.9/3.9 -JX7/2 -Xa3 -Ya9.5 -W0.5,200/150/100 awk '(NF==2){ print $1,$2*1.0e+17 }' result05/waveform/NEAR.Vx.seq2 | gmt plot -R0/20/-3.9/3.9 -JX7/2 -Xa3 -Ya9.5 -W0.5,0/0/255 -Bxa5f1 -Bya2f1 -BWsen # NEAR, Vz awk '(NF==2){ print $1,$2*1.0e+17 }' result05_vacuum/waveform/NEAR.Vz.seq2 | gmt plot -R0/20/-3.9/3.9 -JX7/2 -Xa3 -Ya7.5 -W0.5,0/160/0 awk '(NF==2){ print $1,$2*1.0e+17 }' result05_solid/waveform/NEAR.Vz.seq2 | gmt plot -R0/20/-3.9/3.9 -JX7/2 -Xa3 -Ya7.5 -W0.5,200/150/100 awk '(NF==2){ print $1,$2*1.0e+17 }' result05/waveform/NEAR.Vz.seq2 | gmt plot -R0/20/-3.9/3.9 -JX7/2 -Xa3 -Ya7.5 -W0.5,0/0/255 -Bxa5f1 -Bya2f1 -BWsen # FAR, Vx awk '(NF==2){ print $1,$2*1.0e+18 }' result05_vacuum/waveform/FAR.Vx.seq2 | gmt plot -R0/20/-3/3 -JX7/2 -Xa3 -Ya5 -W0.5,0/160/0 awk '(NF==2){ print $1,$2*1.0e+18 }' result05_solid/waveform/FAR.Vx.seq2 | gmt plot -R0/20/-3/3 -JX7/2 -Xa3 -Ya5 -W0.5,200/150/100 awk '(NF==2){ print $1,$2*1.0e+18 }' result05/waveform/FAR.Vx.seq2 | gmt plot -R0/20/-3/3 -JX7/2 -Xa3 -Ya5 -W0.5,0/0/255 -Bxa5f1 -Bya2f1 -BWsen # FAR, Vz awk '(NF==2){ print $1,$2*1.0e+18 }' result05_vacuum/waveform/FAR.Vz.seq2 | gmt plot -R0/20/-3/3 -JX7/2 -Xa3 -Ya3 -W0.5,0/160/0 awk '(NF==2){ print $1,$2*1.0e+18 }' result05_solid/waveform/FAR.Vz.seq2 | gmt plot -R0/20/-3/3 -JX7/2 -Xa3 -Ya3 -W0.5,200/150/100 awk '(NF==2){ print $1,$2*1.0e+18 }' result05/waveform/FAR.Vz.seq2 | gmt plot -R0/20/-3/3 -JX7/2 -Xa3 -Ya3 -W0.5,0/0/255 -Bxa5f1 -Bya2f1 -BWSen # text gmt text -R0/21/0/29.7 -JX21/29.7 -Xa0 -Ya0 -F+f12p+a+j <<EOF 6.5 2.2 0 CT Time (s) 2.2 9.5 90 CB Velocity (10@+-17@+ m/s) 2.2 5.0 90 CB Velocity (10@+-18@+ m/s) 9.8 11.3 0 RT NEAR, Vx 9.8 9.3 0 RT NEAR, Vz 9.8 6.8 0 RT FAR, Vx 9.8 4.8 0 RT FAR, Vz EOF gmt end |
図3. 3種類の計算結果の比較。 青:水域を用いた計算。 緑:水域を真空で置き換えた計算。 茶色:水域を固体で置き換えた計算。 Fig. 3. Comparison of the three computation results. Blue: a computation with water-filled regions. Green: a computation in which the vacuum is used instead of water. Brown: a computation in which the solid is used instead of water. |