Re: blockMeshの一部分の平行移動について

118 views
Skip to first unread message
Message has been deleted

Masashi Imano

unread,
Aug 5, 2015, 6:45:22 AM8/5/15
to OpenFOAM
今野です.

正常に動いていた時のblockMeshDict と エラーとなった blockMeshDict の差分を取って

x座標以外を変更していないか調べてたら如何でしょうか?


$ diff 元のblockMeshDictのパス  新しいblockMeshDictのパス


または,元のメッシュを transformPoints で平行移動する手もあります.

transformPoints の 使い方は -help オプションで調べてください.


$ transformPoints -help

2015年8月5日水曜日 17時37分40秒 UTC+9 gou:
初めまして、こんにちは。

2か月前からOpenFOAMを使い始めた者です。

こちらのグループはよく拝見させてもらい、参考にさせてもらっています。

 

今回、初めて質問します。
基本的かもしれませんが、内容としては、メッシュを平行移動させたいのです。
計算領域内に半円型のメッシュを作成したのですが、目的の位置からずれてしまい

円の中心を (x,y)=(7.5,0) (7.705,0)  としたいのです。半径は同じです。

(x,y)=(7.5,0) の場合のメッシュは作成できました。座標を新たに設定すれば

良いと思い設定しましたが、以下のエラーがどうしても出てきます。

ERROR:

Inconsistent point locations between block pair 0 and 10

probably due to inconsistent grading.


円の中心が (x,y)=(7.5,0)  の場合はできたので、x方向に+0.205すれば

いいと思い、該当座標に足していって実行した結果が上記のエラーとなりました。


座標は何回も確認したのですが、うまくいきません。


以下、プログラムです。2層で考えています。



convertToMeters 1;

vertices
(

//  bottom
    (7.705 0 0)  //0
    (6.78 0 0) //1
    (0 0 0) //2
    (0 0.654074 0)  //3
    (7.050926 0.654074 0) //4
    (0 2 0) //5
    (7.050926 2 0) //6
    (7.705 2 0) //7
    (7.705 0.925 0) //8
    (8.63 0 0) //9
    (15 0 0) //10
    (15 0.654074 0)  //11
    (8.359074 0.654074 0) //12
    (15 2 0) //13
    (8.359074 2 0) //14


//  middle
    (7.705 0 0.65)  //15
    (6.78 0 0.65) //16
    (0 0 0.65) //17
    (0 0.654074 0.65)  //18
    (7.050926 0.654074 0.65) //19
    (0 2 0.65) //20
    (7.050926 2 0.65) //21
    (7.705 2 0.65) //22
    (7.705 0.925 0.65) //23
    (8.63 0 0.65) //24
    (15 0 0.65) //25
    (15 0.654074 0.65)  //26
    (8.359074 0.654074 0.65) //27
    (15 2 0.65) //28
    (8.359074 2 0.65) //29


//  atmosphere
    (7.705 0 2)  //30
    (6.78 0 2) //31
    (0 0 2) //32
    (0 0.654074 2)  //33
    (7.050926 0.654074 2) //34
    (0 2 2) //35
    (7.050926 2 2) //36
    (7.705 2 2) //37
    (7.705 0.925 2) //38
    (8.63 0 2) //39
    (15 0 2) //40
    (15 0.654074 2)  //41
    (8.359074 0.654074 2) //42
    (15 2 2) //43
    (8.359074 2 2) //44

);


blocks
(

//  bottom-middle
    hex (4 0 0 8 19 15 15 23) (20 10 26) simpleGrading (0.5 1 0.5) //0
    hex (1 0 0 4 16 15 15 19) (20 10 26) simpleGrading (0.5 1 0.5) //1
    hex (2 1 4 3 17 16 19 18) (50 10 26) simpleGrading (1 1 0.5) //2
    hex (3 4 6 5 18 19 21 20) (50 15 26) simpleGrading (1 1 0.5)  //3
    hex (4 8 7 6 19 23 22 21) (10 15 26) simpleGrading (1 1 0.5)  //4
    hex (8 12 14 7 23 27 29 22) (10 15 26) simpleGrading (1 1 0.5)  //5
    hex (12 11 13 14 27 26 28 29) (50 15 26) simpleGrading (1 1 0.5)  //6
    hex (9 10 11 12 24 25 26 27) (50 10 26) simpleGrading (1 1 0.5)  //7
    hex (12 0 0 9 27 15 15 24) (20 10 26) simpleGrading (0.5 1 0.5)  //8
    hex (8 0 0 12 23 15 15 27) (20 10 26) simpleGrading (0.5 1 0.5)  //9


//  middle-atmosphere
    hex (19 15 15 23 34 30 30 38) (20 10 27) simpleGrading (0.5 1 1) //10
    hex (16 15 15 19 31 30 30 34) (20 10 27) simpleGrading (0.5 1 1)  //11
    hex (17 16 19 18 32 31 34 33) (50 10 27) simpleGrading (1 1 1)  //12
    hex (18 19 21 20 33 34 36 35) (50 15 27) simpleGrading (1 1 1)  //13
    hex (19 23 22 21 34 38 37 36) (10 15 27) simpleGrading (1 1 1)  //14
    hex (23 27 29 22 38 42 44 37) (10 15 27) simpleGrading (1 1 1)  //15
    hex (27 26 28 29 42 41 43 44) (50 15 27) simpleGrading (1 1 1)  //16
    hex (24 25 26 27 39 40 41 42) (50 10 27) simpleGrading (1 1 1)  //17
    hex (27 15 15 24 42 30 30 39) (20 10 27) simpleGrading (0.5 1 1)  //18
    hex (23 15 15 27 38 30 30 42) (20 10 27) simpleGrading (0.5 1 1)  //19

);


edges
(

//  bottom
    arc 1 4 (6.850411 0.353982 0)
    arc 4 8 (7.351018 0.854589 0)
    arc 9 12 (8.559589 0.353982 0)
    arc 12 8 (8.0633982 0.854589 0)


//  middle
    arc 16 19 (6.850411 0.353982 0.65)
    arc 19 23 (7.351018 0.854589 0.65)
    arc 24 27 (8.559589 0.353982 0.65)
    arc 27 23 (8.0633982 0.854589 0.65)


//  atmosphere
    arc 31 34 (6.850411 0.353982 2)
    arc 34 38 (7.351018 0.854589 2)
    arc 39 42 (8.559589 0.353982 2)
    arc 42 38 (8.0633982 0.854589 2)


boundary
(
    inlet
    {
        type wall;
        faces
        (
            (3 2 17 18)
            (5 3 18 20)
            (18 17 32 33)
            (20 18 33 35)
        );
    }


    outlet
    {
        type wall;
        faces
        (
            (10 11 26 25)
            (11 13 28 26)
            (25 26 41 40)
            (26 28 43 41)
        );
    }


    bottom
    {
        type wall;
        faces
        (
            (1 2 3 4)
            (4 3 5 6)
            (8 4 6 7)
            (8 7 14 12)
            (12 14 13 11)
            (9 12 11 10)

        );
    }


    atmosphere
    {
        type patch;
        faces
        (
            (32 31 34 33)
            (33 34 36 35)
            (34 38 37 36)
            (38 42 44 37)
            (42 41 43 44)
            (39 40 41 42)

        );
    }


    frontAndBack
    {
        type symmetry;
        faces
        (
            // front
            (2 1 16 17)
            (9 10 25 24)
            (24 25 40 39)
            (17 16 31 32)
            (1 0 15 16)
            (16 15 30 31)
            (0 9 24 15)
            (15 24 39 30)


            // back
            (5 20 21 6)
            (6 21 22 7)
            (7 22 29 14)
            (14 29 28 13)
            (29 44 43 28)
            (22 37 44 29)
            (21 36 37 22)
            (20 35 36 21)


        );
    }
);

mergePatchPairs
(

);




よろしくお願いします。

gou

unread,
Aug 5, 2015, 12:12:10 PM8/5/15
to OpenFOAM
今野さん

返信が遅くなり申し訳ありません。
迅速な回答ありがとうございます。

是非やってみようと思います。
手が止まっていた状態だったので助かりました

引き続き、チャレンジしていこうと思います
また戻ってこないように頑張ります


gou

unread,
Aug 6, 2015, 1:33:24 AM8/6/15
to OpenFOAM
今野さん

gouです。
transformPoints を使ったやり方で移動することができました
なぜ座標ではできないかが未だに不明ですが、とりあえず
これで計算を進めようと思います。

回答してくださいましてありがとうございました
Reply all
Reply to author
Forward
Message has been deleted
0 new messages