shimoji-B shimoji-B2 地表面での顕熱輸送係数は、正しくした 1005 倍! 5/24 shimoji-B albedo を入れた。 0.25 (砂) 6/25 横向き熱輸送を考慮しても、地温が 340K くらいになってしまう。 6/30 shimoji-B/tmp_with_cor Ch = Ce を 0.001 から 0.01 にする 6/30 shimoji-B/tmp_C=0.01 Ch = Ce を、 50度で平衡にたっするように求めると ρChU = 0.00965 になるので、上と同じ条件でよいことになる。 追加実験として、横向き輸送を無くしてみた 7/1 shimoji-A, B, C 直上の条件で、(Ch = Ce = 0.01 横向き輸送: 無) で、 報告書1999の下島実験の模倣 7/6 表層での総塩分量のが直下に比べて少ない。 (多分、初期塩分濃度がすくないから) shimoji-A-2 初期条件を、塩分飽和にした。 ついでに、subs.c の calc_next の temp の式の保存性を高めた 7/8 << === 初期の水分量が異様に低い!!! bug だった。 shimoji-A-2, shimoji-B-2, shimoji-C-2 7/12 上を修正したら、塩分飽和からの計算は不安定になった。 (塩分集積、ポテンシャル、液水移動のフィードバック) そこで、満水で1日相当放置相当の 0.63 飽和にした。 shimoji-A-2 7/13 計算結果がなんか変。総塩分量が負になる。本質的には 初期値が悪かった (存在量以上に溶かしてた)。 ついでに、溶ける速さはそのままで、析出する速さを 時定数 100秒にした。この溶ける辺りと、飽和塩分濃度が 塩分が少ないと0になるようになっていたのを、いつでも飽和にした。 初期値は、初期総塩分量の 0.63 が底面で溶けている状態と 同じ濃度で全層 shimoji-C-test-TD 7/13 横向き熱輸送に関して再考察。カラムなので表面積が大きい分を 考えると補正の輸送係数を 33 倍する必要がある。 Ch を10倍して いる効果と整合性がないので Ch を 0.001 に戻して、 shimoji-C を変更した shimoji-C-test-TD でテスト。結果を見て これを A-2 などに取り込む。 結果: 若干温度上昇が大きいものの、定性的に一致する結果が得られた 7/14 shimoji-A-2, shimoji-B-2, shimoji-C-2 7/14 上記横向き熱輸送 33倍 採用 disolv 関連コード、および、初期化コード 7/13 A-2 より採用 初期 Total Solute 量は、 0.3 から 30 に。最下層で飽和の1/10を 目安に設定した。 3 の計算間違いだった (7/16) shimoji-C-2 で調査中 7/15,16 うまく行かない。塩分濃度が濃いときに、何かフィードバックがかかって * 水分量のピーク (飽和まで発達する) が下へ移動していく。 * 蒸発で濃縮される表層のすぐ下で、濃度の極小値ができてしまう。 * 蒸発初期に表層で水分量が増加する ( 水分量を大きくしても同じ、水フラックスの発散があるときに 塩分濃度まで発散してしまっている ) 濃度、浸透圧、水分移動のフィードバックがおかしいか、 濃度の保存性が悪い。 極小値が、水分ピークの種の様である。 この極小値は、最初上から2層目で起きる。水分移動により水分量が 減少する際に、周囲よりも濃度が下がってしまうということが起っている 7/19 shimoji-C-2 7/29 上記塩分濃度の問題を再考察 sub.c の calc_next 中の ptr_next->solute の式を ptr_next->solute = ptr_now->solute +( ( (ptr_flux1->water<0 ? - (ptr_flux1->sol - ptr_flux1->water * ptr_now->solute) : 0) + ( (ptr_flux0->water>0 ? (ptr_flux0->sol - ptr_flux0->water * ptr_now->solute) : 0) )/dzf[i] + ptr_now->disolv ) * DT)/ptr_next->moist; とすることにより、計算結果が正しくなった。 # ( ? : ) の部分はしなくても結果は同じ。 # 計算が速そうだからそうしてあるだけ shimoji-C-3 7/29 上の shimoji-C-2 をベースに、potential を浸透ポテンシャルと マトリックポテンシャルに分けた。 液水の移動に関して、浸透ポテンシャルの効果は、POSFLOW のファクター を掛けて表現される( 0 か ) が、平衡水蒸気圧の計算には 両者の合計が用いられる。 shimoji-A-3, shimoji-B-3, shimoji-C-3 7/30 上記 shimoji-C-3 に、osmotic potential をいつでも 0 にする オプションを付けた。また、その shimoji-C-3 を改造して、 (boundary.c と model.h の変更) A, B の条件で計算できるようにした。 shimoji-A-3-AD, shimoji-B-3-AD, shimoji-C-3-AD 8/5- 上記 -3 バージョンで、初期塩分濃度を一定値に与え、固体塩分は0にした (この方が実験結果にあうようだ) #define SOL_DENCE 0.0058 -noos がついているのは、osmotic potential を0に固定した計算 -wrong がついているのは、POSFLOW = 1 の計算 soilmodel_99_dec 12/27 bug 発見。降水を与えたときの塩分濃度の振る舞いのおかしさより 上田君が気づく。以下の訂正 diff -c shimoji-C-3-AD/subs.c soilmodel_99_dec/subs.c *** shimoji-C-3-AD/subs.c Fri Aug 6 21:05:38 1999 --- soilmodel_99_dec/subs.c Mon Dec 27 15:05:55 1999 *************** *** 137,147 **** if(ptr_now->moist > 0 && ptr_next->moist >0) { ptr_next->solute = ptr_now->solute ! +( ( (ptr_flux1->water<0 ? - (ptr_flux1->sol - ptr_flux1->water * ptr_now->solute) : 0) ! + ( (ptr_flux0->water>0 ? (ptr_flux0->sol - ptr_flux0->water * ptr_now->solute) : 0) --- 137,147 ---- if(ptr_now->moist > 0 && ptr_next->moist >0) { ptr_next->solute = ptr_now->solute ! +( ( ( (ptr_flux1->water<0 ? - (ptr_flux1->sol - ptr_flux1->water * ptr_now->solute) : 0) ! + (ptr_flux0->water>0 ? (ptr_flux0->sol - ptr_flux0->water * ptr_now->solute) : 0)