fieldAvarageで計算された値の取得

683 views
Skip to first unread message

ONO Hiroki

unread,
Jun 28, 2012, 3:08:00 AM6/28/12
to open...@googlegroups.com
小野です。お世話になっております。

controlDictのfunctionの中にfieldAvarageを加えることで、UMeanやUPrime2Meanを計算・出力させることが出来ますが、
ソルバ内部でこのUMeanの値を取得して任意の処理を加えて出力したいと考えております。

具体的にはLES・DNS等で、UMean - U にて瞬時の変動量UPrimeを計算し、そこからgrad(UPrime)などを計算して、
さらにgrad(UPrime)などを(fieldAvarageで)時間平均して出力させることを考えております。

pisoFoamなどの時間ループwhile(runtime.loop()) { }の中に上記を組みこれば良いとおもうのですが、UMeanやTmeanをどのようにして取得すればよいのかわかりません。

ご指導いただけると幸いです。

ohbuchi

unread,
Jul 2, 2012, 4:25:16 PM7/2/12
to OpenFOAM
おはようございます。
functionsで定義したものは実行時定義なので、ソルバ内で参照するのは
問題があると思います。functionsの定義を前提にしてしまうので。

fieldAverageクラスをカスタムソルバ内で定義して使えば同じことが
できると思いますが、それよりもfieldAverage.CのcalcAverageと
同じ様に計算して平均値を求めた方が簡単な気がします。


On Jun 28, 4:08 pm, ONO Hiroki <h_...@meiji.ac.jp> wrote:
> 小野です。お世話になっております。
>
> controlDictのfunctionの中にfieldAvarageを加えることで、UMeanやUPrime2Meanを計算・出力させることが出来ま すが、

ONO Hiroki

unread,
Jul 3, 2012, 2:35:52 AM7/3/12
to open...@googlegroups.com
ohbuchi様

ありがとうございます。

やはりそうですよね。
参照できればスマートにコーディング出来るし、計算負荷も減る?と思っていたのですが、
あきらめてソルバ内で別途平均処理を行う方向で試してみたいと思います。
Reply all
Reply to author
Forward
0 new messages