Max skewness

1,613 views
Skip to first unread message

takagaki

unread,
Nov 23, 2013, 7:32:20 AM11/23/13
to open...@googlegroups.com
いつもお世話になっております。
OpenFOAM初心者のtakagakiです。

現在気液2相流の計算をinterFoamを利用して行おうとしております。
しかし,計算が途中で止まってしまい,checkMeshを行ったところ,Max skewnessにエラーがあることがわかりました。
エラー内容は以下の通りです。

Mesh stats
    points:           2691312
    faces:            8018880
    internal faces:   7965120
    cells:            2664000
    faces per cell:   6
    boundary patches: 4
    point zones:      0
    face zones:       0
    cell zones:       0

Overall number of cells of each type:
    hexahedra:     2664000
    prisms:        0
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:     0

Checking topology...
    Boundary definition OK.
    Cell to face addressing OK.
    Point usage OK.
    Upper triangular ordering OK.
    Face vertices OK.
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces...
    Patch               Faces    Points   Surface topology                  
    gas-inlet           5920     5961     ok (non-closed singly connected)  
    liquid-inlet        5920     5961     ok (non-closed singly connected)  
    outlet              5920     5961     ok (non-closed singly connected)  
    wall                36000    36119    ok (non-closed singly connected)  

Checking geometry...
    Overall domain bounding box (-0.0203301 -0.0075 -0.15053) (0.0203301 0.0075 0.15)
    Mesh (non-empty, non-wedge) directions (1 1 1)
    Mesh (non-empty) directions (1 1 1)
    Boundary openness (9.8609e-17 -3.55411e-15 2.25379e-16) OK.
    Max cell openness = 3.08743e-16 OK.
    Max aspect ratio = 227.073 OK.
    Minimum face area = 3.44878e-10. Maximum face area = 9.70307e-07.  Face area magnitudes OK.
    Min volume = 1.78077e-13. Max volume = 1.13835e-10.  Total volume = 5.38596e-05.  Cell volumes OK.
    Mesh non-orthogonality Max: 83.0778 average: 9.09095
   *Number of severely non-orthogonal faces: 1271.
    Non-orthogonality check OK.
  <<Writing 1271 non-orthogonal faces to set nonOrthoFaces
    Face pyramids OK.
 ***Max skewness = 4.39548, 30 highly skew faces detected which may impair the quality of the results
  <<Writing 30 skew faces to set skewFaces
    Coupled point location match (average 0) OK.

Failed 1 mesh checks.

End


しかし,paraviewでhighly skew faces を確認すると,それほど歪みが酷いメッシュには見えません。
このメッシュはpointwiseで作成したもので,snappyHexMesh等は使用しておりません。
pointwise上では,確かに多少は歪んでいるものがあるのですが,全く歪んでないと言えるようなところまで
highly skew facesとして出力されています。

OpenFOAMでのskewの判断の仕方と,PointWiseでの判断の仕方が違うためにこのようなことが起きているのでしょうか??
また,その場合は何を基準としてskewを修正すればよいのでしょうか??


計算が止まるのは,以下の様なメッセージが表示されてからです。

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159752  Min(alpha1) = -2.93887e-23  Max(alpha1) = 1.00002
DICPCG:  Solving for p_rgh, Initial residual = 0.995962, Final residual = 0.043765, No Iterations 5
time step continuity errors : sum local = 6.35935e-09, global = -3.10499e-14, cumulative = -9.0703e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.990932, Final residual = 3.97386e-05, No Iterations 1
time step continuity errors : sum local = 0.000429007, global = -3.06994e-14, cumulative = -9.0703e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.461147, Final residual = 1.37003e-05, No Iterations 1001
time step continuity errors : sum local = 0.000546032, global = -2.12069e-06, cumulative = -3.02772e-06
DILUPBiCG:  Solving for epsilon, Initial residual = 0.997955, Final residual = 3.01778e-10, No Iterations 7
DILUPBiCG:  Solving for k, Initial residual = 0.999997, Final residual = 1.72691e-09, No Iterations 22
bounding k, min: 2.85405e-17 max: 1.23766e+26 average: 6.89736e+19
ExecutionTime = 1102.71 s  ClockTime = 1114 s

Courant Number mean: 2.44468 max: 7.32544e+06
Interface Courant Number mean: 0.00410761 max: 54708
deltaT = 8.5814e-23
Time = 9.767767724e-07

--> FOAM Warning : 
    From function Time::operator++()
    in file db/Time/Time.C at line 1010
    Increased the timePrecision from 10 to 11 to distinguish between timeNames at time 9.76777e-07

これは7stepまで計算した時に表示されます。
1stepでは当然 Courant Number mean も maxもこれほど高い数値ではありあません。

--> FOAM Warning : 
    From function Time::operator++()
    in file db/Time/Time.C at line 1010
    Increased the timePrecision from ◯ to ◯ to distinguish between timeNames at time ◯

といった警告文が初めて現れるのは4stepあたりからで,この警告文が表示されたあたりから,
急激にCourant Numberが増大します。

これの原因もよくわからず,とりあえずメッシュに問題がないかcheckMeshで確認しようと思ったところ,
checkMeshでエラーが存在したので,メッシュの問題では,と考えております。

まとめますと
checkMeshで表示されるskew faceがそれほど歪んでいるように見えないので,どのように修正していけばいいのか教えていただけますか??
計算の途中で急激にcourant numberが増大するのは,このskew faceが存在する為でしょうか?それとも,ほかに問題があるのでしょうか??
以上の2つです。

わからないことだらけで,なにを書いていいのかもわからず本当に申し訳ないのですが,必要であればその他の情報もお教えしますので,
どなたか分かる方,もしくは同じようなメッセージが表示された経験のある方がいましたら,どのように解決していったのか,教えていただけないでしょうか??

よろしくお願い致します。

takagaki

ohbuchi

unread,
Nov 23, 2013, 6:38:58 PM11/23/13
to open...@googlegroups.com
こんにちは。
まず、checkMeshのskewnessとparaviewのskewnessは定義が違います。
checkMeshではフェース中心と隣接セル中心を結ぶ線分とフェースの交点
との距離を線分長さで正規化したものです。
一方、paraviewのskewはequi angle skewでフェースの最小角度と最大角度
から求める指標で正多角形からのズレを0〜1で示したものです。
checkMeshでは4以上だとエラーになり、paraviewの指標では1に近い程
悪いメッシュとなります。

フェースの形はさほど悪くなくとも、隣接セルの並び方が悪いとskewness
が大きくなりますので注意して下さい。

スキームの選択や緩和係数である程度抑えることができるかも知れませんが、
やはり、本質的にはメッシュを修正する他ないと思います。

以上、ご参考まで。


2013年11月23日土曜日 21時32分20秒 UTC+9 takagaki:

takagaki

unread,
Nov 25, 2013, 1:33:31 AM11/25/13
to open...@googlegroups.com
ohbuchi様

こんにちは。
お返事ありがとうございます。
skewnessが4を超えるとエラーとなるアドバイスと,その基準をお教え頂いたため,メッシュを修正し,
checkMeshを行うと,Mesh OKの文字が得られるようになりました。
しかし,計算を行うとやはり同様のエラーが生じてしまいました。

以下エラー内容です。今回は最初から載せます。

Create time

Create mesh for time = 0


PIMPLE: Operating solver in PISO mode

Reading field p_rgh

Reading field alpha1

Reading field U

Reading/calculating face flux field phi

Reading transportProperties

Selecting incompressible transport model Newtonian
Selecting incompressible transport model Newtonian
Selecting turbulence model type RASModel
Selecting RAS turbulence model kEpsilon
kEpsilonCoeffs
{
    Cmu             0.09;
    C1              1.44;
    C2              1.92;
    sigmaEps        1.3;
}


Reading g
Calculating field g.h

time step continuity errors : sum local = 9.30846e-07, global = -9.30846e-07, cumulative = -9.30846e-07
DICPCG:  Solving for pcorr, Initial residual = 1, Final residual = 0.00552812, No Iterations 1001
time step continuity errors : sum local = 5.14583e-09, global = -1.04226e-11, cumulative = -9.30856e-07
Courant Number mean: 5.8233e-07 max: 0.000376748

Starting time loop

Courant Number mean: 5.76564e-07 max: 0.000373018
Interface Courant Number mean: 0 max: 0
deltaT = 1.17647e-07
Time = 1.17647e-07

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.90252e-25  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.98679e-28  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -3.69138e-28  Max(alpha1) = 1
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -2.50332e-26  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 1, Final residual = 0.209031, No Iterations 1001
time step continuity errors : sum local = 1.58761e-07, global = 1.2454e-09, cumulative = -9.29611e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.0189469, Final residual = 0.000907697, No Iterations 33
time step continuity errors : sum local = 4.94177e-07, global = 8.23287e-09, cumulative = -9.21378e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.00751307, Final residual = 2.98682e-05, No Iterations 1001
time step continuity errors : sum local = 1.65493e-08, global = -2.44737e-11, cumulative = -9.21402e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.00762046, Final residual = 1.61996e-09, No Iterations 4
DILUPBiCG:  Solving for k, Initial residual = 1, Final residual = 2.05501e-09, No Iterations 8
ExecutionTime = 228.18 s  ClockTime = 238 s

Courant Number mean: 0.000283868 max: 0.119485
Interface Courant Number mean: 0 max: 0
deltaT = 1.37255e-07
Time = 2.54902e-07

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.8667e-22  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.86646e-22  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.95266e-22  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -3.21927e-22  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.00645799, Final residual = 0.000505895, No Iterations 1001
time step continuity errors : sum local = 3.74404e-07, global = -1.72386e-09, cumulative = -9.23126e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.555008, Final residual = 0.0267903, No Iterations 33
time step continuity errors : sum local = 7.60154e-07, global = 1.24759e-10, cumulative = -9.23002e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.425406, Final residual = 0.00206221, No Iterations 1001
time step continuity errors : sum local = 3.33458e-08, global = 2.77653e-10, cumulative = -9.22724e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.286647, Final residual = 5.062e-09, No Iterations 10
bounding epsilon, min: -5.08274 max: 3.36735e+07 average: 980.434
DILUPBiCG:  Solving for k, Initial residual = 0.365852, Final residual = 2.25924e-09, No Iterations 22
bounding k, min: -0.194474 max: 148.491 average: 0.0277853
ExecutionTime = 385.73 s  ClockTime = 396 s

Courant Number mean: 0.000332405 max: 0.125254
Interface Courant Number mean: 0 max: 0
deltaT = 1.57179e-07
Time = 4.12081e-07

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -2.17257e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -2.35755e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -5.16836e-20  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.15378e-20  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.527046, Final residual = 0.0253435, No Iterations 34
time step continuity errors : sum local = 3.25825e-07, global = 8.27509e-10, cumulative = -9.21896e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.478756, Final residual = 0.0235546, No Iterations 50
time step continuity errors : sum local = 2.30283e-07, global = 4.97337e-10, cumulative = -9.21399e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.474978, Final residual = 0.000504005, No Iterations 1001
time step continuity errors : sum local = 4.30629e-09, global = 4.5824e-11, cumulative = -9.21353e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.0307866, Final residual = 7.15906e-09, No Iterations 4
bounding epsilon, min: -6.5258 max: 4.5405e+08 average: 4939.82
DILUPBiCG:  Solving for k, Initial residual = 0.0432747, Final residual = 9.65373e-09, No Iterations 9
bounding k, min: -0.152094 max: 189.861 average: 0.0321282
ExecutionTime = 475.37 s  ClockTime = 486 s

Courant Number mean: 0.000381526 max: 0.122238
Interface Courant Number mean: 3.51639e-10 max: 0.00308676
deltaT = 1.80904e-07
Time = 5.92985e-07

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -6.32571e-20  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.71174e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.2854e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -5.1416e-21  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.594185, Final residual = 0.0283395, No Iterations 29
time step continuity errors : sum local = 2.60729e-07, global = -2.7959e-10, cumulative = -9.21633e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.570267, Final residual = 0.0276196, No Iterations 21
time step continuity errors : sum local = 2.95309e-07, global = -2.25416e-10, cumulative = -9.21858e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.592258, Final residual = 0.000237969, No Iterations 1001
time step continuity errors : sum local = 3.22771e-09, global = 5.55042e-12, cumulative = -9.21853e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.00456016, Final residual = 7.68969e-10, No Iterations 6
bounding epsilon, min: -95.3009 max: 1.05304e+09 average: 7057.19
DILUPBiCG:  Solving for k, Initial residual = 0.205917, Final residual = 5.77003e-09, No Iterations 11
bounding k, min: -0.922169 max: 2420.44 average: 0.0713596
ExecutionTime = 563.16 s  ClockTime = 573 s

Courant Number mean: 0.000440764 max: 0.140445
Interface Courant Number mean: 1.35931e-09 max: 0.00252425
deltaT = 2.045e-07
Time = 7.97485e-07

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -2.3249e-20  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.16245e-20  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -5.81225e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -7.67126e-21  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.735576, Final residual = 0.0348615, No Iterations 15
time step continuity errors : sum local = 3.8491e-07, global = -3.38074e-11, cumulative = -9.21886e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.67039, Final residual = 0.0327343, No Iterations 9
time step continuity errors : sum local = 4.76725e-07, global = -9.09646e-12, cumulative = -9.21896e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.653424, Final residual = 2.4257e-05, No Iterations 1001
time step continuity errors : sum local = 4.58981e-10, global = -1.76336e-12, cumulative = -9.21897e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.0401839, Final residual = 3.63613e-09, No Iterations 9
bounding epsilon, min: -1.10934e+07 max: 1.35782e+09 average: 13231.8
DILUPBiCG:  Solving for k, Initial residual = 0.738845, Final residual = 4.43415e-09, No Iterations 12
bounding k, min: -0.987215 max: 39160.6 average: 0.853882
ExecutionTime = 649.72 s  ClockTime = 660 s

Courant Number mean: 0.000500529 max: 0.180405
Interface Courant Number mean: 1.15838e-07 max: 0.0368335
deltaT = 2.24452e-07
Time = 1.02194e-06

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -8.53231e-19  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -6.22769e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -6.06474e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -3.73147e-21  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.764207, Final residual = 0.0345993, No Iterations 7
time step continuity errors : sum local = 6.45755e-07, global = 2.03681e-10, cumulative = -9.21694e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.631014, Final residual = 0.0267873, No Iterations 5
time step continuity errors : sum local = 7.56165e-07, global = 1.68107e-10, cumulative = -9.21526e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.605853, Final residual = 7.91948e-05, No Iterations 1001
time step continuity errors : sum local = 3.05379e-09, global = -4.42762e-12, cumulative = -9.2153e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.333547, Final residual = 4.21449e-09, No Iterations 8
bounding epsilon, min: -3.24162e+09 max: 2.57305e+12 average: 3.06361e+07
DILUPBiCG:  Solving for k, Initial residual = 0.875427, Final residual = 7.55017e-09, No Iterations 19
bounding k, min: -281.073 max: 55098.4 average: 2.09516
ExecutionTime = 736.38 s  ClockTime = 747 s

Courant Number mean: 0.000558966 max: 1.36783
Interface Courant Number mean: 3.68706e-07 max: 0.138327
deltaT = 3.27667e-08
Time = 1.0547e-06

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.42937e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.41903e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.40869e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.39836e-21  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.949138, Final residual = 0.0246701, No Iterations 1
time step continuity errors : sum local = 5.15825e-07, global = -4.8155e-10, cumulative = -9.22012e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.457337, Final residual = 0.0189429, No Iterations 10
time step continuity errors : sum local = 1.34083e-07, global = 8.07565e-11, cumulative = -9.21931e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.337449, Final residual = 1.40831e-05, No Iterations 1001
time step continuity errors : sum local = 1.0113e-10, global = -2.15371e-13, cumulative = -9.21931e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.999932, Final residual = 2.28056e-09, No Iterations 2
bounding epsilon, min: -212659 max: 1.48512e+13 average: 3.1209e+07
DILUPBiCG:  Solving for k, Initial residual = 0.347731, Final residual = 8.88411e-09, No Iterations 20
bounding k, min: -9713.45 max: 235951 average: 4.89371
ExecutionTime = 822.22 s  ClockTime = 833 s

Courant Number mean: 8.62557e-05 max: 3.66913
Interface Courant Number mean: 5.97266e-08 max: 0.0368656
deltaT = 1.78584e-09
Time = 1.05649e-06

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.3979e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.39744e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.39699e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.39653e-21  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.900466, Final residual = 0.0422584, No Iterations 1
time step continuity errors : sum local = 1.77802e-08, global = -2.63225e-11, cumulative = -9.21957e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.318539, Final residual = 0.0155195, No Iterations 15
time step continuity errors : sum local = 8.21421e-09, global = 4.50526e-14, cumulative = -9.21957e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.255375, Final residual = 0.000316596, No Iterations 1001
time step continuity errors : sum local = 1.9185e-10, global = -3.94478e-13, cumulative = -9.21958e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.323102, Final residual = 3.38645e-09, No Iterations 3
bounding epsilon, min: -6.0246e+08 max: 1.53323e+14 average: 1.52268e+08
DILUPBiCG:  Solving for k, Initial residual = 0.894465, Final residual = 2.11054e-09, No Iterations 13
bounding k, min: -925.157 max: 1.46923e+08 average: 113.731
ExecutionTime = 907.51 s  ClockTime = 918 s

Courant Number mean: 5.64502e-06 max: 0.369197
Interface Courant Number mean: 4.27012e-09 max: 0.00323044
deltaT = 9.67389e-10
Time = 1.05746e-06

MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.75967e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.39626e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.99142e-21  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -6.04779e-21  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.978168, Final residual = 0.0200637, No Iterations 1
time step continuity errors : sum local = 6.96361e-08, global = -5.73728e-12, cumulative = -9.21963e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.89461, Final residual = 0.043382, No Iterations 13
time step continuity errors : sum local = 3.19987e-07, global = -3.81949e-13, cumulative = -9.21964e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.590134, Final residual = 0.00010412, No Iterations 1001
time step continuity errors : sum local = 2.00288e-09, global = -3.71577e-11, cumulative = -9.22001e-07
DILUPBiCG:  Solving for epsilon, Initial residual = 0.33527, Final residual = 2.19088e-10, No Iterations 4
bounding epsilon, min: -6.06352e+11 max: 1.18889e+16 average: 3.44995e+10
DILUPBiCG:  Solving for k, Initial residual = 0.999519, Final residual = 8.13546e-10, No Iterations 14
bounding k, min: -626.612 max: 2.69706e+12 average: 9.73687e+06
ExecutionTime = 993 s  ClockTime = 1003 s

Courant Number mean: 7.88737e-05 max: 22.5308
Interface Courant Number mean: 3.51536e-07 max: 6.71128
deltaT = 8.58727e-12
Time = 1.05747e-06

--> FOAM Warning : 
    From function Time::operator++()
    in file db/Time/Time.C at line 1010
    Increased the timePrecision from 6 to 7 to distinguish between timeNames at time 1.05746e-06
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -8.32856e-23  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -1.14411e-22  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -5.66862e-22  Max(alpha1) = 1.00001
MULES: Solving for alpha1
Phase-1 volume fraction = 0.159845  Min(alpha1) = -8.32856e-23  Max(alpha1) = 1.00001
DICPCG:  Solving for p_rgh, Initial residual = 0.999871, Final residual = 0.0460771, No Iterations 11
time step continuity errors : sum local = 2.02853e-07, global = -3.14225e-13, cumulative = -9.22001e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.677715, Final residual = 0.000900027, No Iterations 1
time step continuity errors : sum local = 25.079, global = -3.08554e-13, cumulative = -9.22002e-07
DICPCG:  Solving for p_rgh, Initial residual = 0.378334, Final residual = 7.38805e-06, No Iterations 1001
time step continuity errors : sum local = 0.449072, global = 0.0126075, cumulative = 0.0126066
DILUPBiCG:  Solving for epsilon, Initial residual = 0.354986, Final residual = 7.6483e-09, No Iterations 60
DILUPBiCG:  Solving for k, Initial residual = 0.975616, Final residual = 5.5796e-09, No Iterations 53
bounding k, min: 3.70607e-23 max: 1.08875e+25 average: 3.59676e+20
ExecutionTime = 1091.76 s  ClockTime = 1102 s

Courant Number mean: 26450.3 max: 8.71383e+09
Interface Courant Number mean: 2.54052 max: 1.0915e+06
deltaT = 1.97095e-22
Time = 1.057465e-06

--> FOAM Warning : 
    From function Time::operator++()
    in file db/Time/Time.C at line 1010
    Increased the timePrecision from 7 to 8 to distinguish between timeNames at time 1.05747e-06


これは時間精度を問題とした警告文のようですが,計算が停止してしまうのは他に原因があるかのように思えます。

先日のご回答によると,スキームや緩和係数で抑えることができるといったお話でしたが,
このエラーはスキームの問題なのでしょうか?
それとも,たとえcheckMeshが問題なかったとしても,やはりメッシュに問題があるのでしょうか?

よろしくお願い致します。

takagaki

ohbuchi

unread,
Nov 25, 2013, 1:52:40 AM11/25/13
to open...@googlegroups.com
こんにちは。
Time Step 2からkとepsilonのboundingが発生しています。boudingはkやepsilonに負値
が生じない様に強制的に正値に制限する処理です。これが発生すると大抵発散します。
乱流量の初期値、境界条件は適切でしょうか?

乱流モデルの計算が異常になり、渦粘性係数が過大になることで流れ場に異常値が
生じてクーラン条件から時間刻みがどんどん小さくなって、時間の有効桁数が不足
しだすという状態です。

もし、初期値、境界条件に問題がなければ、乱流モデルのスキームを安定なものに
することや、緩和係数を調整することで多少安定化させることが出来るかもしれません。

ご参考まで。


2013年11月25日月曜日 15時33分31秒 UTC+9 takagaki:

Kazuhiro Mori

unread,
Nov 25, 2013, 2:00:08 AM11/25/13
to open...@googlegroups.com
わたしも初心者ですが、最大アスペクト比227は問題ではないのでしょうか?


2013年11月23日 21:32 takagaki <y.takag...@gmail.com>:

--
このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com にメールを送信します。
このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
http://groups.google.com/group/openfoam からこのグループにアクセスしてください。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

ohbuchi

unread,
Nov 25, 2013, 2:09:21 AM11/25/13
to open...@googlegroups.com
こんにちは。
checkMeshでの判定閾値は、1000になっています。
レイヤメッシュなどでは壁面近傍で極端に大きなアスペクト比になる場合があります。
それで1000という判定値になっているのだと思います。
もっとも、内部メッシュでアスペクト比227というメッシュが問題ないとは思いません。
checkMeshでOKだったとしても計算は収束しないでしょう。
要はどこにそのセルがあるかだと思います。



2013年11月25日月曜日 16時00分08秒 UTC+9 KMori:
わたしも初心者ですが、最大アスペクト比227は問題ではないのでしょうか?


このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com にメールを送信します。

Kazuhiro Mori

unread,
Nov 25, 2013, 2:12:32 AM11/25/13
to open...@googlegroups.com
なるほど、ありがとうございました。

2013年11月25日月曜日 ohbuchi ohbu...@gmail.com:
わたしも初心者ですが、最大アスペクト比227は問題ではないのでしょうか?


--
このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com にメールを送信します。
このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
http://groups.google.com/group/openfoam からこのグループにアクセスしてください。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。

--
このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com にメールを送信します。

takagaki

unread,
Nov 25, 2013, 2:14:37 AM11/25/13
to open...@googlegroups.com
ohbuchi様
大変早くお返事を頂き,本当にありがとうございます。
いつも大変お世話になっております。

乱流量の初期値,境界条件をもう一度確認してみます。
もし,そこで分からないものがあれば,もう一度ここで質問させていただくので,その際もう一度お力を
貸していただくことはできますか??

よろしくお願い致します。

takagaki


takagaki

unread,
Nov 25, 2013, 2:27:09 AM11/25/13
to open...@googlegroups.com
KMori様
お返事ありがとうございます。

当計算は乱流計算であり,壁面境界では最大アスペクト比が非常に高い値になってしまいます。
乱流について私は知識がある方ではないのですが,いくつかの文献によると
乱流時の壁面のアスペクト比はそれほど厳密に考えなくても良いという内容が幾つかありました。
むしろ,そのアスペクト比を意識してメッシュを作成すると,すべての格子が非常に小さいものになってしまい,
とても計算できるような格子点数とはいえない値になってしまいます。
壁面以外の内部のアスペクト比はかなり妥当なものになるように気をつけたので,
おそらくアスペクト比が問題となっているわけではないのではと考えております。

しかし,KMori様が同様のエラーをアスペクト比の修正で改善できた経験があれば,
どのように改善できたのか,教えていただくことはできますか??

アドバイスを頂いてばかりで申し訳有りませんが,よろしくお願い致します。

takagaki
 

Kazuhiro Mori

unread,
Nov 25, 2013, 3:18:14 AM11/25/13
to open...@googlegroups.com
takagakiさま、同様のエラーの経験はありません。使われたメッシュは前もって単相流れでもチェックなされていることでしょうから、アスペクト比ではないのでしょう。失礼しました。


2013年11月25日 16:27 takagaki <y.takag...@gmail.com>:

--

takagaki

unread,
Nov 27, 2013, 12:41:37 AM11/27/13
to open...@googlegroups.com
Ohbuchi様

ご無沙汰しております。
takagakiです。

k-epsilonの初期値,境界条件を見直して,様々な境界条件を試してはみましたが,やはりboundingが発生してしまいます。
以前のようなTime Step 2からではなく,6~7程度まで,もしくはそれ以上まで計算が進むようにはなりましたが,
最終的にはboundingが発生し,発散してしまいます。

境界条件等はtxtファイルで添付致しました。
よろしければ,どのように設定した方が良いのか,アドバイスをいただけますか??

計算しているのは,Y字状に分岐した管路で,inletには一方からオイル,他方から空気を流入しております。
その際,流束はオイルがだいたい1.8[m/s], 空気は3.8[m/s]です。
mixLength は0.07×L(Lは代表長さで,管路の直径としている)
乱流強度I は,0.05(5%)としております。

流束,圧力に関しては,層流で一度計算した際に問題がなく計算できたので,それと同じ条件を使用しており,
今回は特に問題ではないのかと考えております。

また,k-epsilonの設定の際に,2相で入口流束が異なることから,内部のk-epsilonをどうするか,合流後にどうするのか
判断が付けられず,予想で設定をしています。

interFoamを使用して計算をしておりますが,参考にしているのはdamBreakのtutorialを参考にしており,緩和係数等は変更しておりません。

他になにか必要な情報があれば補足いたします。


boundingによる発散を回避するためのアドバイス,よろしくお願い致します。


takagaki
k-epsilon.txt

ohbuchi

unread,
Nov 27, 2013, 4:22:53 AM11/27/13
to open...@googlegroups.com
こんにちは。
k、epsilonの境界条件には問題なさそうです。damBreakチュートリアルを元にしている
ということは、k,epsilonのdivSchemeはupwindでしょうから、あとは緩和係数を小さくする
位でしょうか。緩和係数は、fvSolutionで下記の様に定義します。

relaxationFactors
{
    fields
    {
    }
    equations
    {
        U    1;
        k     0.5;
        epsilon  0.5;
    }
}

controlDictのwriteIntervalを1にして、k,epsilon,nutなどをparaFoamで眺めてみて
ください。どこでboundingが生じているかわかります。
その部分のメッシュを改善できれば収束すると思います。



2013年11月27日水曜日 14時41分37秒 UTC+9 takagaki:

zheng zhang

unread,
Nov 28, 2013, 10:17:52 AM11/28/13
to open...@googlegroups.com
takagakiさま

かなり細かいメッシュ(200万以上)を使用しているようですが、まず問題を解決するには、メッシュの粗いものを作成し、テスト計算を実施したほうが無難と思います。
もちろん、差分スキーム・緩和係数で改善する場合もあるが、流速・領域の大きさから見ると、もしかしで乱流モデルを使用しないほうがいいと思います。

以上です。

takagaki

unread,
Dec 2, 2013, 1:49:38 AM12/2/13
to open...@googlegroups.com
ohbuchi様

お世話になります。

メッシュを改善することと,緩和係数,ソルバの改善でなんとか計算を回すことに成功しました。
本当にありがとうございました。

何度も申し訳ありませんが,もう一つ質問だけ質問させて下さい。
並列計算機で並列計算を行っているのですが,計算が終わる前に,現在の状態を出力させたいと考えております。
その際にbkillをして,計算を止めずに,途中でreconstructParを実行して,途中の結果を得ることは可能なのでしょうか??
それとも,計算が終了する,もしくはbkillで終了させない限り,途中結果を見ることはできないのでしょうか??

よろしくお願い致します。

takagaki

takagaki

unread,
Dec 2, 2013, 1:57:37 AM12/2/13
to open...@googlegroups.com
zheng zhang様

アドバイスありがとうございます。
壁関数を勉強し直して,epsilonWallFunction等を勉強したところ,Y+が現在のものでは必要以上に小さく設定していることに気づきました。
一応現在の200万近くの細かいメッシュでも,差分スキーム,緩和係数によって計算可能となりましたが,
新たにY+をかなり大きくしたもので,メッシュを再構築して計算を回しています(40万点程度)。

どちらも計算は無事にまわっているので,今後はその結果を見ながら,Y+の設定の仕方等,確実な知識を付けた上でメッシュを切るように気をつけます。

テスト計算をしてみる等,CFDにおける重要なアドバイス本当にありがとうございます。
また質問することになると思いますが,その際もご教授よろしくお願い致します。

takagaki

ohbuchi

unread,
Dec 2, 2013, 4:43:17 AM12/2/13
to open...@googlegroups.com
paraFoamではreconstructせずに可視化できますので、Timeフォルダさえ出力されていれば
計算中でも途中結果を可視化できると思います。


2013年12月2日月曜日 15時49分38秒 UTC+9 takagaki:
Reply all
Reply to author
Forward
0 new messages