[更新情報]

▽Go to footer

GMT で静的水平震度が円形水槽に作用した場合の動水圧分布をグラフ化した事例です.

複数のファイルから複数の数値列を読み取ってプロットする標準的な事例です. このため,特にバッチファイルに解説はつけていません.

実行用バッチファイルと解説

rem ********************************************
rem Dynamic water pressure of cylindrical water tank
rem ********************************************
rem ===============================
rem Input data format (CSV data)
rem ===============================
rem z  : Distance from the bottom to the water surface
rem pp : Dynamic water pressure by Velocity potential method
rem ph : Dynamic water pressure by Housner's method
rem pw : Dynamic water pressure by Westergaard's method

rem ********************************************
rem Drawing by GMT
rem ********************************************
set range=0/3/0/15
set scale=12/15
set xga=g0.5a0.5
set yga=g1a1
set xlabel="Dynamic water pressure (tf/m@+2@+)"
set ylabel="Distance from the bottom to water surface (m)"
set inpl=inp_legend_dwp.txt
set inp_1=dat_hdp_H150.txt
set inp_2=dat_hdp_H075.txt
set fig_out=fig_dwp.eps

rem ===============================
rem Making of batch file for legend
rem ===============================
gawk -f awk_klegend.awk %inpl% > legend.bat
gmtset ANOT_FONT_SIZE 12
gmtset LABEL_FONT_SIZE 12
gmtset TICK_LENGTH 0c
rem ===============================
rem Plotting
rem ===============================
psbasemap -R%range% -JX%scale% -B%xga%:%xlabel%:/%yga%:%ylabel%:WSen -P -X5 -Y6 -K > %fig_out%
rem *** H=7.5m (Line) ***
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$2}" %inp_2% | psxy -: -R -J -B -W5t5_5:0 -P -O -K >> %fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$3}" %inp_2% | psxy -: -R -J -B -W5t5_5:0 -P -O -K >> %fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$4}" %inp_2% | psxy -: -R -J -B -W5t5_5:0 -P -O -K >> %fig_out%
rem *** H=7.5m (Symbol) ***
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$2}" %inp_2% | psxy -: -R -J -SC0.2 -G255 -W3 -N -P -O -K >>%fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$3}" %inp_2% | psxy -: -R -J -SS0.2 -G255 -W3 -N -P -O -K >>%fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$4}" %inp_2% | psxy -: -R -J -ST0.2 -G255 -W3 -N -P -O -K >>%fig_out%
rem *** H=15m (Line) ***
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$2}" %inp_1% | psxy -: -R -J -B -W5 -P -O -K >> %fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$3}" %inp_1% | psxy -: -R -J -B -W5 -P -O -K >> %fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$4}" %inp_1% | psxy -: -R -J -B -W5 -P -O -K >> %fig_out%
rem *** H=15m (Symbol) ***
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$2}" %inp_1% | psxy -: -R -J -SC0.2 -G0 -N -P -O -K >> %fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$3}" %inp_1% | psxy -: -R -J -SS0.2 -G0 -N -P -O -K >> %fig_out%
gawk "BEGIN{FS=\",\"}{if(2<=NR)print $1,$4}" %inp_1% | psxy -: -R -J -ST0.2 -G0 -N -P -O -K >> %fig_out%
rem *** marginal note ***
echo 0 1.02 10 0 0 BL Diameter of the tank=5m | pstext -R0/1/0/1 -JX12/15 -N -P -O -K >> %fig_out%
rem ===============================
rem Drawing of legend
rem ===============================
call legend.bat

set range=
set scale=
set xga=
set yga=
set xlabel=
set ylabel=
set inpl=
set inp_1=
set inp_2=
set fig_out=

del .gmt*
del _*

バッチファイルのダウンロードと画像確認

ファイル名概要
作図用バッチファイル
作図用入力データ
作図用入力データ
凡例作成用入力ファイル
awk_klegendで作成した凡例描画用バッチファイル
出力画像



inserted by FC2 system