2020年9月25日金曜日

SPH と状態方程式

SPH のソースを書き換えようとして、ふと気づきました。

粒子法では計算中に水面を取得するのが面倒?

計算中にどの粒子のどのあたりを自由表面とすべきかがわかりません。なので他の手法のように水深から容易に静水圧を出せません。いえ、post 処理で使っている方法があるので可能ではあるのですが、計算量が多くなります。
で、どうしているかというと、状態方程式から出すようです。

例えば、
「Modelling multi-phase liquid-sediment scour and resuspension induced by rapid flows using Smoothed Particle Hydrodynamics (SPH) accelerated with a Graphics Processing Unit (GPU)」
「Smoothed Particle Hydrodynamics: A Meshfree Particle Method」ソース:p408, 409, 400, 本文:137

P=B((ρ/ρ0)^γ-1)
P=c^2ρ

簡単な流儀ですが、慣れるまで時間がかかりそうです。

これまで MPS の解説に触れる機会はあったものの、SPH は多くなかったように思われます。良書が国内になく、また過去の経緯もあり個人的には国内の SPH に良い印象を持っていませんでした。
が、先月から文献や洋書を読み進めていたところ、 比較的新しい研究が多いことに気づかされました。実装も他の手法に比べ容易ですし、プレはCAD + DualSPHysics + Python で済みます。これ、使えるのでは?と思うようになってきました。海外の動向に目を向けず、食わず嫌いだったのかもしれません。

あとは経験でしょうか。
しばらく手を動かしてみましょう。

2020年9月23日水曜日

Flux

D. Violeau "Fluid Mechanics and the SPH Method"より。

数式の展開はなんとかついていけますが、説明がイマイチわからない。でも綺麗なのでメモ( ..)φ。

∂B/∂t + gradB・u=(1/ρ)div(Jb gradB) + Sb

Variable    Flux  Source
B  Jb gradB    Sb
u σ    0
ek σ・u     -f
eint  Jt gradT f
e σ・u+JtgradT    0

応力テンソルが運動量フラックスに、 σ・u がエネルギーフラックスに。

ここから σ を書き換えてナビエ・ストークスへ。結局、圧力をどう計算するかだけの違いだけです。そう見ると、地表流や河床変動計算の流体部分、津波、土砂移動、さらには固体まで、すべて同じ数式に見えてきます。
固体も連続体力学のスキームをあてはめるだけだったとは。多くの文献で書かれていますので、古くからある考え方なのでしょう。

読んでみるものです。

 

2020年9月20日日曜日

Windows Remote Desktop + OpenGL

Windows の Remote Desktopで OpenGL を利用するソフトを起動したい場合があります。

といっても、普段からすべてのソフトに対して OpenGL の利用をチェックしているわけではありません。大抵はリモート接続後に起動しないとわかって初めて気づきます。で、起動しなくて困ると(情けない)。 

 調べてみると解決方法はあるようですね。
https://developer.nvidia.com/designworks
https://blog.techlab-xe.net/rdp-opengl-app/ 

今日は後者で対応しました。接続し直すと起動していたので一安心。ヨカッタ。

普段、把握しているソフトは立ち上げてから離席することで対応していました。が、NVIDIA さんの方法なら根本的に解決しそうです。

連休明けに試してみましょう。

**************************************

20201004
前者はインストールするだけ。こちらの方が簡単でした。


2020年9月19日土曜日

インターンシップ

インターンシップに参加されていた学生さんが帰られました。

夏休みを利用する学生さんが多く、先月からのリストを見るとかなりの人数になっていました。単位の出る1週間程度の方が多いそうですね。知りませんでした。

先月、私も対応しました。
これまで学んできた知識と実地がつながると、学生さんは目が覚めたようでした。アハ体験ですね。最初の希望分野とは異なる方向だったのですが、今後の選択肢が増えたようでした。

社会人にとっては毎年のことでも、学生さんにとっては生涯一度、人生を左右する経験になるかもしれません。積極的に多くの会社に出向いて社員を活用してほしいですね。知ることでさらなる勉強の必要性に気付かれるかもしれません。まだ学んでいない世界の方がはるかに大きいのです。眼前には大きな可能性が広がっているのです。

インターンシップ、結果的に良い選択へのサポートになればと考えます。


2020年9月12日土曜日

トポロジー

トポロジーに高次元を縮約して図化する研究があると話をされたお客様がいらっしゃいました。

記憶にあるのは超立方体や3次元トーラス、ドーナツ=コーヒーカップの印象程度。いえ、ドーナツ見せられてコーヒーカップと一緒でしょって言われても、たいていの方は腑に落ちないでしょう。

あらためて見直さないといけないなと思いつつ、本屋に行っても素人には難しい図書ばかり。その中でもわかりやすそうで読み始めたのが以下の図書。
市原一裕「低次元の幾何からポアンカレ予想へ」

トポロジー:位相幾何学
多様体:ある点の近傍ではn次元のユークリッド空間のある点の近傍と同相となるような、ユークリッド空間内の図形:円は1次元多様体。

トポロジーを利用した設計というのもあるそうです。
私の分野で利用する機会はなかったのですが、単に気づいていないだけかもしれません。情報は仕入れておきましょう。


2020年9月10日木曜日

SPH の図書

集めていた SPH の文献を読み終わりました。

今回は、DualSPHysics のビンガム流体、個体などを扱った文献を中心に10本程度。
最初はあちこち巡りながら必要部分のみを読んでいたのですが、最終的にはどれも一通り読み終わることになりました。部分的に異なる数式が使われているものの、基本は同じです。バリエーションが少なく、FEMほど複雑ではないので、同じような書き方になるのでしょう。

‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐

連続の式:∂ρ/∂tを離散化

運動方程式∂v/∂tを離散化

 σ 固体:弾塑性のフレームワーク
 (降伏関数、Dマトリックス、ひずみ速度テンソル、スピンテンソルなど)
 σ 液体:流体のフレームワーク
 (粘性、HBPモデル、浸透力(ダルシー)、浮遊砂など)
 状態方程式
 人工粘性
 レイリー減衰
 XSPH

境界条件

‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐

役立ったのは、 連続体力学の知識(あと、土質力学、線形代数など)。
見た目粒子ですが、解くのは連続体ですから当然です。が、つい流体のイメージが先行し、先日まで実施していた河床変動計算のイメージに寄っていました。いえ、NSは共通なんですけどね。

今日、1か月前に頼んでいた図書が英国から到着。
「Smoothed Particle Hydrodynamics: A Meshfree Particle Method」
楽しみにしていたのですが、待っている間に主たる内容をほぼ理解していました。高かったのですが。
ま、手触りが良いし、ソースコードがついていたので良しとしましょう。

****************************** 

 20200912追記

2020年9月6日日曜日

空間の離散化

浸透流解析でメッシュと精度の関係が何かに書かれていたはずと、他支店のプロ?に聞いてみました。

結果は御存知ないようでした。

資料を探して出てきたのが、昨年購入した「地下水モデル」の5章でした。勘違いしていた点もあるのでメモ( ..)φ

**************************************

水平方向の節点間隔
・節点間隔に対する感度解析を行うことは滅多にない
・河川流出3λ、井戸流出4λ、節点間隔λ以下(理想は0.1λ)
・構造格子:1.5倍ルール

鉛直方向の接点間隔
・ほとんどの状況では、鉛直方向の節点間隔が水平に比べてかなり大きくても、必ずしも数値誤差が生じるわけではない
→異方性により水平方向に流れが向くため。

・鉛直方向の間隔が水平方向の√(Kh/Kv)倍で等方性メッシュと同じ精度の数値解となる
→Kh/Kv=100であれば、水平方向の10倍にできる(未固結堆積物の異方性比は2~100)
→透水係数のアップスケールによる異方性比の表現(スケーリングよりは難透水層を明示的に組み込む方が望ましい)

・透水係数の鉛直方向の変化が重要な場合や鉛直方向の漏水性を扱う場合は3つ以上のレイヤーが必要
・粒子追跡が含まれる場合、上下2層の透水性の大きな差を表現するには3つ以上の遷移レイヤーが必要
・水頭から鉛直流動を計算するのみであればレイヤーの追加は不要
→鉛直透水係数のパラスタによる調整で可

傾斜
・10度以下なら水平として計算可
・10度以上は透水係数テンソル

パラメータの不確実性
・透水係数の幅は12オーダー(特に火成岩、火山岩の亀裂性―非亀裂性)
・キャリブレーションによる改善(9章)、不確実性解析(10章)


2020年9月3日木曜日

TelluSAR

 Tellus に 新しい アドインが実装されました。

TelluSAR
https://www.tellusxdp.com/market/tool_detail/tellus-product/294

干渉画像を作成してくれます。

コンセプトが良いですね。
TellusOS 上でアドインを開くと、見ている場所の SAR データを選んでくれます。一つ選択すると、干渉画像の作成可能な別の日のデータを選出してくれます。これ、地味に面倒でしたのでありがたい機能です。

残念ながら、サーバーが弱く処理の順番待ちが数時間発生していますし、5つの結果までしか保有できません。DLして削除しようとするも動きません。結果も「補正されていない」そうですが、どの補正がなされていないのかは明示されていません。
開発環境は順番待ちで数週間音沙汰ナシ。うーん、使いづらい。(政府の事業が終わったら、これで有料になるのでしょうか?)

ま、それでも今回のアドイン実装や LEVEL1.1 の公開は予想以上でした。
Tellus では以前から SAR データを公開しようとされていましたが、一部地域の画像が公開されていただけでしたし、コチラもこの程度までだろうとあきらめていました。が、先日見た限りでは範囲が広がり、2018~2019年までのアーカイブデータが公開されていました。このまま、数時間前までのデータが揃えば、災害時でも役に立つでしょう(いえ、順番待ちかな)。

今後のデータ公開に期待しましょう。