おおまかな流れ
STEP 1. CaMa-Floodの入力データを用意する
STEP 2. MATSIROとCaMa-Floodの格子番号データ、及び観測データとMATSIROとの間の内挿テーブルを作成する
STEP 3. MATSIROの境界条件データを作成する
必要なデータ
CaMa-Floodのデータ
・nextxyファイル
・catmxyファイル
データはCaMa-Floodのバージョンや計算領域により異なるので、目的に応じて用意してください。
catmxyファイルがパッケージに含まれていない場合は山崎先生に問い合わせてみてください。
ILS版MATSIROの境界条件作成に用いる各種観測データ
・GLCNMO
・JRA55
・GTOPO30
・HWSD
・ISLSCP1
・MODIS
いずれも芳村研サーバーisotope3にあります。
MODISは格子系が特殊なため格子の座標のデータも必要ですが、こちらも他のデータと同様isotope3にあるのでそれを使います。
STEP 1. CaMa-Floodの入力データを用意する
nextxyファイル
CaMa-Floodのパッケージにnextxy.binという名前で入っています。
catmxyファイル
同じくCaMa-Floodのパッケージに、catmxy.binあるいは1min.catmxy.binなどの名前で流域形状格子を定義する高解像度のデータが入っていると思います。
1min (1分つまり1/60°) 解像度のものを使うのが一般的ですが、モデル解像度が高い場合はそれに応じて高解像度のラスターデータを用いるのが良いです。
見つからない場合、あるいはパッケージに入っているものより高解像度のデータが必要な場合は山崎先生に問い合わせてみてください。
STEP 2. MATSIROとCaMa-Floodの格子番号データ、及び観測データとMATSIROとの間の内挿テーブルを作成する
SPRINGのソースコードはコンパイル済みとします。
SPRINGのディレクトリの絶対パスを
${DIR_SPRING}とします。
(1) ディレクトリをコピーする
${DIR_SPRING}/run/ils_bnd に移動し、サンプルスクリプトの置かれたディレクトリをコピーしてください。コピー先のディレクトリ名を
${runName}とします。
(2) スクリプトの変数を編集する
コピーしたディレクトリの中の
script内に移動し、
exec_all.shを編集します。
編集する変数は以下のとおりです。
Output land type
Variable |
Description |
make_river_land |
Make data for river land |
make_noriv_land |
Make data for noriv land |
河道無し陸面(noriv)(
CaMa-Floodにおいて河道が定義されない陸面)を
MATSIROで扱う場合は
とします。そうでない場合は
としてください。
Grid and raster
Variable |
Description |
ncx |
Num. of grids in longitude direction |
ncy |
Num. of grids in latitude direction |
ndx |
Num. of rasters in longitude direction |
ndy |
Num. of rasters in latitude direction |
west |
Longitude of the eastern edge of the area |
east |
Longitude of the western edge of the area |
south |
Latitude of the southern edge of the area |
north |
Latitude of the northern edge of the area |
モデル格子とラスターの解像度、及び領域を指定します。いずれも整数です。
CaMa-Flood nextxy
Variable |
Description |
f_nextxy |
Path of nextxy file |
dtype_nextxy |
Data type of nextxy file |
endian_nextxy |
Endian of nextxy file |
nextxy_river_mouth |
nextxy on the river mouth |
nextxy_river_inland |
nextxy on the inland vanishing point |
nextxy_ocean |
nextxy on the ocean |
nextxyファイルのパス、データ型、エンディアン、及び特殊な値を設定します。
特殊な値は基本的にサンプルファイルのままで良いと思います。
CaMa-Flood catmxy
Variable |
Description |
f_catmxy |
Path of catmxy file |
dtype_catmxy |
Data type of catmxy file |
endian_catmxy |
Endian of catmxy file |
catmxy_noriv_coastal |
catmxy on the coastal no-river land |
catmxy_noriv_inland |
catmxy on the inland no-river land |
catmxy_ocean |
catmxy on the ocean |
catmxyファイルのパス、データ型、エンディアン、及び特殊な値を設定します。
こちらも特殊な値は基本的にサンプルファイルのままで良いと思います。
Input observation data
Variable |
Description |
f_list_tiles_glcnmo |
List of tile names of GLCNMO data |
f_list_tiles_gtopo30 |
List of tile names of GTOPO30 data |
f_list_tiles_hwsd |
List of tile names of HWSD data |
f_list_tiles_jra55 |
List of tile names of JRA55 data |
f_list_tiles_modis |
List of tile names of MODIS data |
dir_coords_modis |
Directory of coordinates of modis grid |
観測データのタイル名の一覧、及び
MODISの格子の座標データのディレクトリを指定します。
isotope3上で実行する場合はサンプルのままで良いですが、そうでない場合はコピーした先のパスを指定してください。
Earth's shape
Variable |
Description |
earth_shape |
Earth's shape ['sphere'|'ellips'] |
earth_r |
Eearth's diameter |
地球の形状と半径を指定します。
基本的に変更は不要です。
(3) 実行する
exec_all.shを実行します。
そこそこ時間が掛かるのでキューイングシステムで実行することをお勧めします。
実行すると、
${DIR_SPRING}/run/ils_bnd/${runName}/out内に各種格子番号データと内挿テーブルが出力されます。
${DIR_SPRING}/run/ils_bnd/${runName}/out/rt: 内挿テーブル
${DIR_SPRING}/run/ils_bnd/${runName}/out/cmf:
CaMa-Floodの格子番号データ
${DIR_SPRING}/run/ils_bnd/${runName}/out/matsiro:
MATSIROの格子番号データ
${DIR_SPRING}/run/ils_bnd/${runName}/out/land_mask: 陸面マスク
これらを次のステップで使います。
STEP 3. MATSIROの境界条件データを作成する
ILSのパッケージに用意されている、境界条件作成用のスクリプトを用います。
ILSのディレクトリの絶対パスを
${DIR_ILS}とします。
(1) 観測データを用意する
${DIR_ILS}/dataの下に各種観測データのディレクトリをコピーするかリンクを作成します。
コピー先(リンク先)のディレクトリ名は以下のようにしてください。
コピー元(リンク元)のパスは
isotope3内のものです。
(2) 設定ファイルを編集する
${DIR_ILS}/src/bndに移動し、
run_all.cfgを編集してください。
ユーザーが編集するのは
[DEFAULT]というブロック内の値です。
詳細は以下のとおり。編集の不要なものは省略しています。
他の変数の値を指定するのに用いられる変数
Variable |
Description |
ils_dir |
ILSディレクトリのパス |
run_name |
プロダクトの名前。STEP 2の${runName}と同じ値にする |
各種入力データのディレクトリ
Variable |
Description |
data_dir |
観測データのディレクトリ |
map_dir |
内挿テーブルのディレクトリ |
land_mask_dir |
MATSIROの陸面マスクのディレクトリ |
出力
Variable |
Description |
output_dir |
作成された境界条件データの出力ディレクトリ |
output_tiles |
作成する境界条件データのタイル名 |
output_nx, output_ny |
モデル解像度 |
data_dir
観測データを置くディレクトリ。
map_dir
STEP 2で作成した内挿テーブルの置かれたディレクトリ。
${DIR_SPRING}/run/ils_bnd/${runName}/out/rt
land_mask_dir
STEP 2で作成した陸面マスクの置かれたディレクトリ。
${DIR_SPRING}/run/ils_bnd/${runName}/out/land_mask
output_tiles
MATSIROをタイル分割しない場合は
STEP 2の
${list_landType}にそのまま対応する。
設定ファイルの例
・
run_nameは
STEP 2の
${runName}と同じ
・
SPRINGを
ILSの外部パッケージを置くディレクトリ(
${DIR_ILS}/src/ext)に置いた場合、
map_dirと
ils_dirはこのようになる
・河道無し陸面も扱う場合は
output_tiles = river noriv
扱わない場合は
output_tiles = river
・
MATSIROのモデル解像度が
0.5° (720 x 360)のとき、
output_nx = 720
output_ny = 360
(3) 実行する
GO!!
作成した境界条件データのサンプル画像
grtans_river
grtans_noriv