-- bound.par.F -- | ||
行 | ||
43 | DO 100 J = 1, NYG | |
44 | TSFC(J) = 2.5D1 * (1.0D0 - (DBLE(J-1) - 0.5D0) / DBLE(NYG-2)) | |
46 | TDMP(J) = 1.D0 / 3.D1 / 8.64D4 | |
47 | SSFC(J) = 3.5D1 | |
48 | SDMP(J) = 0.D0 | |
49 | TAUX(J) = 0.D0 | |
50 | TAUY(J) = 0.D0 | |
51 | 100 | CONTINUE |
53 | DO 200 J = 1, NYG | |
54 | DO 200 I = 1, NXG | |
55 | DIM2(I, J) = TSFC(J) | |
56 | 200 | CONTINUE |
57 | CHEAD(3) = 'TSFC' | |
58 | WRITE(NFTSFC) CHEAD | |
59 | WRITE(NFTSFC) DIM2 | |
61 | DO 300 J = 1, NYG | |
62 | DO 300 I = 1, NXG | |
63 | DIM2(I, J) = TDMP(J) | |
64 | 300 | CONTINUE |
65 | CHEAD(3) = 'TDMP' | |
66 | WRITE(NFTDMP) CHEAD | |
67 | WRITE(NFTDMP) DIM2 | |
69 | DO 400 J = 1, NYG | |
70 | DO 400 I = 1, NXG | |
71 | DIM2(I, J) = SSFC(J) | |
72 | 400 | CONTINUE |
73 | CHEAD(3) = 'SSFC' | |
74 | WRITE(NFSSFC) CHEAD | |
75 | WRITE(NFSSFC) DIM2 | |
77 | DO 500 J = 1, NYG | |
78 | DO 500 I = 1, NXG | |
79 | DIM2(I, J) = SDMP(J) | |
80 | 500 | CONTINUE |
81 | CHEAD(3) = 'SDMP' | |
82 | WRITE(NFSDMP) CHEAD | |
83 | WRITE(NFSDMP) DIM2 | |
85 | DO 600 J = 1, NYG | |
86 | DO 600 I = 1, NXG | |
87 | DIM2(I, J) = TAUX(J) | |
88 | 600 | CONTINUE |
89 | CHEAD(3) = 'TAUX' | |
90 | WRITE(NFTAUX) CHEAD | |
91 | WRITE(NFTAUX) DIM2 | |
93 | DO 700 J = 1, NYG | |
94 | DO 700 I = 1, NXG | |
95 | DIM2(I, J) = TAUY(J) | |
96 | 700 | CONTINUE |
97 | CHEAD(3) = 'TAUY' | |
98 | WRITE(NFTAUY) CHEAD | |
99 | WRITE(NFTAUY) DIM2 |
例として,境界条件に温度・塩分にLevitusの気候値,風応力にNCEP/NCARの再解 析データ(//lanian/E:/datagrid/NN_reanl/original/mth_npl.orgから取得して ください.また解像度を変更するプログラムmkbound.mを //lanina/E:/d/coco3.3/programに置いておきます)を与え, 1ヶ月のタイムスケールで緩和する境界条件を作成するプログ ラムを//lanina/E:/coco3.3/programにbound.par.Fという名前で置いておきます. 考え方は初期条件ファイルの作成と同じなので,プログラムの中身を 自分なりに解釈して,境界条件ファイルを作成する際に参考にしてください.
bound.par.Fのプログラムを実行するためには,
まずbound/Sysdep.hi-uxの1行目を
FC = f90
と書き換え,bound/Makefileの12行目を
bound(PARALLEL) (RUNOPT)
と書き換えて,ディレクトリbound/で
make
とコマンドします.そうすると
TSFC | 海面温度 |
TDMP | 海面温度のrestoringにおける係数 |
SSFC | 海面塩分 |
SDMP | 海面塩分のrestoringにおける係数 |
TAUX | 風応力の東西方向成分 |
TAUY | 風応力の南北方向成分 |