ラベル GSFLOW の投稿を表示しています。 すべての投稿を表示
ラベル GSFLOW の投稿を表示しています。 すべての投稿を表示

2020年12月31日木曜日

やり残し事項 2020

GEE コミュニティのチュートリアルを再度実施してみようと手を動かしました。
https://phreeqc.blogspot.com/2020/12/gee-sentinel-1.html

1か月でPart3まで増えていました。仮説検定を用いた判定がメイン。今回は任意の場所でも1~3まで走りました。が、結果はイマイチ。
これまで、InSAR、Change Detection ともに、良い結果を得られたことがありません。イマイチなんですよね。やはり、有償ソフトの出番でしょうか。この辺りは来年の短期目標にしましょう。

職種が変わったこともあり、地質関連の作業がなくなりました。帯磁率計などはやり残したままで終わりました。

あらためてやり残し事項を整理しておきましょう。

優先度高:粒子法コード のGPGPU対応
優先度高:SAR・画像の Change Detection
優先度低:PSInSAR・・・700万で購入可
優先度低:DtransuのGPU対応・・・100万で購入可
優先度低:地表流+地下水・・・GSFLOW、HydroGeoSphere
優先度中:OpenMI・・・PHREEQCとDtransuの連成等

中期目標4年目は惨敗。新たな目標を考えましょう。

2020年5月29日金曜日

GSFLOW-GRASS と ModelBuilder

2年前はココまででした。
GSFLOW-GRASS(途中)

今回は Win10 に GRASS GIS を入れ、
install_extensions して、
python domain_builder\buildDomainGRASS.py DRIVE_LETTER:\PATH\TO\settings.ini するとエラー。
GRASS が Python を認識しません。うーん。
Python 周りの環境を触りたくないので、Ubuntuへ。

Ubuntu なら Docker でしょう、ということで、docker-compose build。
で、エラー。
2年前の構成なので、リンク先のアーカイブ等が更新・変更されていました。
それらを書き換えてエラーを修復し、再度 build。
で、docker-compose up、docker exec -it CONTAINER ID bash、grass。
が、grass を認識しません。うーん、これ以上は実力不足。
以前作っていたイメージを消してしまいましたし、野良イメージの中身を確認するのも面倒なので、Ubuntu もあきらめました。

で、基本に戻り Win10+ArcGIS Pro 2.5。vegetation 情報を与える直前まで実施。
手作業だと、着実にデータを作成できるのですが、遅い。ま、時の流れと共に、ArcHydro や XTools が不要になっているのはありがたいことです。

ふと、ジオプロセッシングの履歴が画面右側に蓄積されていくことに気付きました。
これ、保存できないでしょうか?
サポートさんに伺うと、プロジェクトファイル毎に履歴が保存され、しかも Model Builder に D&D できるとのこと。
これはすばらしい!と早速やってみると、できました。もう一度、素晴らしい!
といっても、今回は途中までの作業でしたし、所々に重複した履歴が入っていましたのでクリーニングが必要でした。が、これがあれば当面、GSFLOW-GRASS を稼動できなくても支障ありません。

GSFLOW-GRASS に関しては以前より後退。
ArcGIS Pro では大幅前進。

次はどうなるでしょう。

2019年12月31日火曜日

やり残し事項 2019

今年は研究職を半分担当しました。

内業が主体となり、時間的にも体力的にも楽になりました。報酬の対象となる勤務時間だけを見ると確実に短縮されています。働き方改革と銘打って時短を推奨されている御時世ですが、素直な後輩たちの動向を見ていると将来への危機感を抱かざるを得ません。

人のことを言えないのですが、やり残し事項は2年連続ほぼそのまま。
かわりではないですが、3Dレーザー関連を扱えるようになりました。python を利用したデータ分析、機械学習関連のテクニックもさらに身に付けることができました。


以下、やり残し事項です。昨年とほぼ同内容ですが、一応書いておきましょう。

道具
帯磁率計
ガンマ線測定器(携帯型)

技術
動的解析(耐震、液状化)
斜面設計

コード・ソフト
優先度低:DtransuのCUDA化・・・100万で購入可。
優先度低:PSInSAR・・・700万で購入可
優先度中:地表流+地下水・・・GSFLOW、HydroGeoSphere
優先度中:GMS・・・J-SHISの取り込みまではできました。いつか続きを。
優先度中:OpenMI・・・PHREEQCとDtransuの連成等


中期目標3年目はもがき中。あと2年。間に合うかな。

2018年8月26日日曜日

GSFLOW-GRASS(途中〉

今日は、GSFLOW-GRASS。
https://github.com/UMN-Hydro/GSFLOW-GRASS

extentions のインストールや buildDomainGRASS.py を動かす段階で何度もエラーが出るなー、と思っていたら、間違ってました。GRASS の コンソール画面からインストールするよう書いてあったのに、Win のシェルを使っていました。ま、それでもいくつかのエラーは残りましたが。
最初から GRASS 経由だとエラーは少なかったと思いますが、今後のために書き残しておきましょう。


buildDomainGRASS.py

SyntaxError: Missing parentheses in call to 'print'
https://qiita.com/pugiemonn/items/94ac57ba1b7b03548efe
(Ver.3からは()が必要)

ModuleNotFoundError: No module named 'ConfigParser'
https://stackoverflow.com/questions/14087598/python-3-importerror-no-module-named-configparser
(大文字・小文字の違い)

ModuleNotFoundError: No module named 'readSettings'
(run フォルダー内の readSettings.py を \GSFLOW-GRASS-master\domain_builderにコピー)

Error opening or parsing input file: \GSFLOW-GRASS-master\Run\settings.ini
(settings.ini にリネーム)


まだ、DEMの取り込み中にエラーがかかります。
次回にしましょう。

2018年7月1日日曜日

GSFLOW の計算方法

GSFLOW-GRASS v1.0.0: GIS-enabled hydrologic modeling of coupled groundwater–surface-water systems
https://www.geosci-model-dev-discuss.net/gmd-2017-321/gmd-2017-321.pdf

有償の1ソフトを除き、既存の pre- post- には全ての連携をとれるものはなく、また不安定 & カスタマイズできないため、開発したとのこと。ありがたいですね。

この文献には、GSFLOW の機能がまとめられています。google先生の翻訳ベース付きで、残しておきましょう。

To link the PRMS and MODFLOW grids, the user must define gravity reservoirs at each different intersection of an HRU and a grid cell (Figure 1D).
PRMSグリッドとMODFLOWグリッドをリンクするには、HRUとグリッドセルの各交点に重力リザーバを定義する必要があります(図1D)。
The MODFLOW component of GSFLOW also relies on a user-specified stream network; stream segments represent tributaries, and the intersection of a stream segment with MODFLOW grid cells defines stream reaches (Figure 1A, D).
GSFLOWのMODFLOWコンポーネントは、ユーザー指定の河川ネットワークにも依存しています。セグメントは支流を表し、MODFLOWグリッドセルとの交点はリーチを表します(図1A、D)。
“Reaches” are defined as the section of each PRMS stream segment that lies within a single MODFLOW grid cell, and are numbered sequentially downstream as shown.
「リーチ」は単一のMODFLOWグリッドセル内に存在する各PRMSのストリームセグメントのセクションとしても定義され、図示のように順次下流へ番号が付けられます。
http://www.rfc.or.jp/seitai/seitai2.html
GSFLOW uses a daily computational time step for both the PRMS component and MODFLOW component. Flows are exchanged between each component at each time step. Multiple MODFLOW “stress periods” can be invoked to represent different subsurface boundary conditions within a simulation period, but their lengths must be integer days.
GSFLOWは、PRMSコンポーネントとMODFLOWコンポーネントの両方に「日」計算時間ステップを使用します。各時間ステップにおいて、各コンポーネント間で流入出が発生します。シミュレーション期間内に異なる地下の境界条件を表すため、複数のMODFLOW「ストレス期間」を呼び出すことができますが、その長さは整数日でなければなりません。
The PRMS component of GSFLOW includes various modules that can convert commonly available climate data into complete forcing inputs needed for model simulations. These modules include different methods for determining potential solar radiation, potential evapotranspiration, and snow accumulation / depletion; they also include different schemes for spatially distributing data from one or a few observations points over the entire watershed.
GSFLOWのPRMSコンポーネントには、一般的な気候データをシミュレーションに必要な形式に変換できるよう、さまざまなモジュールが含まれています。これらのモジュールには、日射量、蒸発散量、積雪量/融雪量を決定する多くの方法が含まれています。また、1~2、3の観測点データを流域全体に分配するためのスキームも含まれています。
For unsaturated zone flow, PRMS does not implement Richards equation but instead applies efficient calculations to determine inputs and outputs for each HRU as well as exchanges among the three conceptual reservoir types within an HRU (GSFLOW manual Fig 19, Table 9). The “capillary zone” reservoir represents water held by capillary forces; it receives water through infiltration (based on parameter pref_flow_den) and loses water through evaporation and transpiration (based on parameters soil_moist_max, soil_rechr_max, and soil_type).
不飽和流れの場合、PRMSはリチャーズ方程式を使用せず、代わりに各HRUの入出力を決定するための効率的な計算と、HRU内の3つの概念的リザーバータイプ間の交換(GSFLOWマニュアル図19、表9)を適用します。
 「キャピラリーゾーン」リザーバーは毛管力によって保持される水を表します。その水は 浸透によって受け取り(パラメータpref_flow_denに基づく)、蒸発および蒸散によって失います(パラメータsoil_moist_max、soil_rechr_max、およびsoil_typeに基づく)。
After reaching field-capacity (parameter soil_moist_max), water transfers from the capillary zone to “gravity reservoirs,” where water can flow horizontally as slow interflow (based on parameters slowcoef_lin and slowcoef_sq) and drain vertically into the deeper subsurface domain handled by MODFLOW (based on parameters ssr2gw_rate, ssr2gw_exp, and ssrmax_coef);
フィールド容量(パラメータsoil_moist_max)に達した後、水は「キャピラリーゾーンリザーバー」から「重力リザーバー」に移動します。そこではゆっくりとした流れ(パラメータslowcoef_linおよびslowcoef_sqに基づく)として水平に流れ、MODFLOWによって扱われるより深い地下のドメインに排出されます(パラメータssr2gw_rate、ssr2gw_exp、およびssrmax_coefに基づく)。
gravity reservoirs can also receive groundwater discharge from the reservoirs drain directly to the saturated zone.
「重力リザーバー」は、リザーバドレンから排出される地下水を、直接飽和ゾーンに受けることもできます。
Saturated zone simulations (MODFLOW) employ finite difference solutions to the groundwater flow equation.
飽和領域のシミュレーション(MODFLOW)では、地下水流動の解法にFDMを用います。
Streamflow, as calculated by the MODFLOW component, includes inputs from upstream reaches, surface runoff and interflow from the PRMS component, base flow from the saturated zone discharge, and flows from possible underlying unsaturated areas.
河川の流れは、MODFLOWコンポーネントによって計算される上流側リーチからの流入、PRMSコンポーネントからの表面流出および合流、飽和域からの基底流出、および不飽和領域からの流入を含みます。
Outputs include flow to downstream reaches, leakage to groundwater, and flows to possible underlying unsaturated areas.
アウトプットには、下流側リーチ、地下水、不飽和領域への浸透が含まれます。
Discharge across the streambed follows Darcy calculations with specified streambed hydraulic properties.
河床をからの浸透量は、河床堆積物の水理特性に応じたダルシー則に従います。

5つのオプション
The user can specify stream depths for each reach;
1.ユーザーは各リーチのストリームの深さを指定できます。
apply Manning’s equation to an assumed wide rectangular channel;
2.仮定された広い矩形チャネルにマニングの式を適用することができます。
apply Manning’s equation for an eight-point-based channel and floodplain geometry;
3.8ポイントベースのチャネルと氾濫原のジオメトリに対してマニングの式を適用することができます。
apply at-a-station power-law relationships between discharge, flow width, and flow depth (Leopold and Maddock, 1953);
4.流出量、幅、深さの関係に「at-a-station power-law」(Leopold and Maddock、1953)を適用することができます。
specify an input look-up table of hydraulic geometries for each segment.
5.各セグメントの水理ジオメトリに関するルックアップテーブルを指定することができます。
Streamflow can be simulated as either steady-state flow (parameter IRTFLG = 0),where outflow to the next stream reach balances inputs, or as transient flow (parameter IRTFLG > 0), using a kinematic wave formulation for surface water routing in channels, which applies the assumption that the water surface slope approximates the friction slope, and therefore negates backwater effects.
河川の流れは、流出・流入のバランスしている定常流(parameter IRTFLG = 0)か、運動波近似を使用した非定常流 (parameter IRTFLG > 0)としてシミュレーション可能です。※運動波近似は水面面勾配が摩擦勾配に近似していることを前提としているため、逆流作用は見込めません。


翻訳することで、余計にわかりづらくなったところもありますね。


2018年6月25日月曜日

国産コードの未来

東京大学出版会「地圏水環境の数理」を読みました。

GETFLOWS は高価なのでリースを受けたことがありません。が、中身を理解したいとは感じていました。どのように地表水と地下水を安定して解いているのか?時間ステップはどうしているのか?分割法は?など。

で、復讐も兼ねて図書を読むことに。
幸い、先月に河床変動計算を経験したためか、内容は概ね問題なく理解できました。毛管圧力PCの取り扱いで戸惑いましたが、過去に出された文献に補足的なことが書かれており、理解の一助となりました。

登坂ほか(1996)地表流と地下水流を結合した3次元陸水シミュレーション手法の開発
地下水学会誌 38 巻4 号 p. 253-267

残念ながら、タイムステップを飛ばせる理由はイマイチ詳しく書かれていませんでした。が、結果的には降雨の少ない時期には飛ばせるようなので、解法の選択によるのかなと思います。また、12年前の古い図書なので、並列化については何も書かれていませんでした。

地表流を調べていると、以下の文献にも遭遇しました。また、読んで手を動かさないといけません。
GSFLOW-GRASS v1.0.0: GIS-enabled hydrologic modeling of coupled groundwater–surface-water systems

国産で柔軟性・適用性が高いものの、研究成果を有償でリースしているGETFLOWS。地表流ー地下水の連携のみですが研究成果を無償で公開している GSFLOW 関連。対照的ですが、日本と米国の研究事情を反映しているようですね。また、そこまで深くは考えられていないのかもしれませんが、シェアや戦略といった要素も絡んでいるのかもしれません。国産コードが世界を圧巻する未来を見たいものですが、なんだか残念です。

2018年5月24日木曜日

やり残し事項 2018

研究職の実績公開がありました。

色々なことに熱中されていました。基礎的な事項から応用まで。レベルの高いものから低いモノまで。自信が満ち溢れていました。
個人的には得られるものがあったり、気分的にへこんだり。

CIMの実績公開もありました。
コチラはまだ底上げ主体で、得るものはなし。

いずれにしても、業務で得られた利益をこのような玉石入り混じった内容に費やせる余裕があるということでしょう。

研究職と話をして、いくつかの進展がありました。
再度、整理しておきましょう。

道具
帯磁率計
ガンマ線測定器(携帯型)

技術
動的解析(耐震、液状化)
斜面設計

コード・ソフト
  • 優先度低:DtransuのCUDA化・・・先月失敗。100万で購入可。
  • 優先度低:PSInSAR・・・700万で購入可
  • 優先度中:地表流+地下水・・・GSFLOW、HydroGeoSphere、GETFLOWS・・・論文を読みましょう。
  • 優先度中:GMS・・・J-SHISの取り込みまではできました。いつか続きを。
  • 優先度低:AWS, Azure
  • 優先度中:DualSPHysics・・・Foam Simulation が残っています。
  • 優先度中:HEC-RAS、iRIC、河床変動計算
  • 優先度低:DeepWater・・・よくできています。H2O4GPUで我慢するか。
  • 優先度中:OpenMI・・・PHREEQCとDtransuの連成等

2017年12月31日日曜日

やり残し事項 2017-2

今年は余裕でした。

年々、忙しさは緩和している気がします。それでも、余裕で目標はクリア。力を有効に発揮できる状態だとすると、企業としては良い状況でしょうか?

技術者としては、やり残し事項をほとんど解消できず、チャレンジが少なかったのでしょう。課題に挙げていなかった AI や微動はそこそこ進みましたが、他はイマイチ。うーん。どうしましょうか。
とりあえず、リストアップ。


道具
帯磁率計
ガンマ線測定器(携帯型)

技術
動的解析(耐震、液状化)
斜面設計

コード・ソフト
・DtransuのCUDA化・・・100万で購入可。
・PSInSAR・・・500万ほどで購入可
・GSFLOW + QGIS


中期目標へも手を出し始めましたが、尽くうまくいかず。前倒し失敗。
来年から頑張りましょう。

2015年10月26日月曜日

GSFLOW のモデル作成手順

USGS の GSFLOW が Ver.1.2に up しました。

残念ながら、PRMS、MODFLOW を含め統合された GUI にはなっていないようです。前 Ver. 同様、必要に応じて個々の GUI 等を利用すれば良いという考え方でしょう。

モデルの作成方法は以下に詳細が掲載されています(以前からあったのでしょうか?知りませんでした)。ここでは、ArcGIS が活用されています。丁寧に書かれていますので、理解しやすいですね。
http://wwwbrr.cr.usgs.gov/projects/SW_MoWS/GSFLOW%20-%20Instructions%20for%20Input.html
https://wwwbrr.cr.usgs.gov/projects/SW_MoWS/GSFLOW.html


地表部のデータセットが揃っているとありがたいですね。
現場レベルだと、色々なサイトを巡って収集する必要があります。ある程度揃うかもしれませんが、手間でしょうね。

サンプルデータで計算後、可視化しようとして躓きました。
Model Viewer が MODFLOW の name ファイルを読み込みません。エラーを吐きます。おかしいなあと思って input フォルダーの nam ファイルを確認すると、相対パスになっていました。
input ファイルと output ファイルを一つのフォルダにまとめ、パスを外すと読みました。MODFLOWは相対パスで良くても、Model Viewer はダメなのでしょうか。あるいはパスの長さ?

とりあえず、手元で GSFLOW を動かせる環境は整っていますし、操作上の不明点もありません(実際は、手を動かし始めると出てくるのでしょうが)。
あとは気力でしょうか。地表流に地下水、モデル作成からキャリブレーションまでを考えると、二の足を踏んでしまいます。
どなたかやる気のある方、簡素化できるノウハウをお持ちの方、いらっしゃいませんかね。

******************************
20200523修正
リンクが切れていたので、張り直しました。

2010年8月4日水曜日

GSFLOW




Coupled Ground water and Surface-water FLOW model based on the USGS Precipitation-Runoff Modeling System (PRMS) and Modular Ground Water Flow Model (MODFLOW-2005)
http://water.usgs.gov/nrp/gwsoftware/gsflow/gsflow.html

今日は時間があったので、USGSのGSFLOWのマニュアルをざっと読んでみました。
うーん。現段階では無理。


すくなくとも、モデリングで時間がかかるので、そこを何とかできるソフトでないと
仕事には使えない。地表流と地下水流動を同時に解けるソフト、欲しいんだけどね。


MODFLOWもいつの間にか2005になってたんですね。