Kenji Tanaka Seminar's Web site (田中ゼミ) : Princeton Ocean Model page 3


Princeton Ocean Model (POM)

現地地形データを読み込み、Wet and Drying 機能を使った計算を行う

追加サブルーチン

海底地形データを読み込んで、沿岸域の干出・冠水過程の計算を行うためのサブルーチンを作成しました。下のリンクをクリックしてダウンロードしてください。
pom08_wad_real.f
手順)
① 本サブルーチンの中身を pom08.f の末尾に貼り付ける。cat コマンドで、
cat pom08_wad_real.f >> pom08.f
と入力するとできます。
② pom08.f 880 行目付近の iproblem の値によって、サブルーチンを読み分ける箇所で、iproblem = 43 のときにダウンロードしたサブルーチンを読み込む処理を追加する。(下記の赤字で記している部分)

if(iproblem.eq.1) then
call seamount
else if(iproblem.eq.2) then
call box
else if(iproblem.eq.3) then
call file2ic
else if(iproblem.eq.41) then !lyo:!wad:
call wadseamount
else if(iproblem.eq.43) then !lyo:!wad:
call wad_real
   endif

地形データの書式

pom08_wad_real.f の中で、地形データを読み込む箇所は、27~36行目に記載しています。

C
C Read Ocean Topography dataset
C
Open(40,file='POM08_Topo.dat',form='formatted')
do j=jm,1,-1
do i=1,im
read(40,*) east_e(i,j),north_e(i,j),h(i,j)
enddo
enddo
close(40)

地形データは、緯度・経度・標高の3つが必要です。緯度・経度から、格子点間の距離(dx,dy)を計算します。標高は陸側が正( h > 0 ), 海側が負 (h < 0 )となるように与えます。上記では、データの並びが北→南の順に並んでいる場合となっています。南→北の順の場合は、do j=jm,1,-1 を do j=1,jm に変更してください。

ランスクリプトの設定と実行

ソースファイルの書き換えとデータの準備が終わったら、スクリプトファイル runpom08 の中で、iproblem = 43 と書き換えて、スクリプトを実行します。