createPatchDictファイルのcyclicの設定

734 views
Skip to first unread message

kabocha

unread,
Mar 12, 2014, 3:00:15 AM3/12/14
to open...@googlegroups.com
いつもお世話になっております。

blockMesh、autePatch、createPatchを組み合わせて、
境界の設定をしようとしましたが、createPatchの処理で
周期境界条件が上手く読み込まれません。

コンパイル自体はエラーを起こしていませんが

・coupled_maxX.obj
・coupled_minX.obj
・coupled_minXmaxX_match.obj
・final_maxX.obj
・final_minX.obj
・final_minXmaxX_match.obj

の6つのファイルが作成され、
boundaryファイルにも周期境界のみ
不自然は設定内容が書かれます。

createPatchは以下になります。

-----------------------

patches
(

    {
        name minX;
    patchInfo
        {
            type cyclic;
            neighbourPatch maxX;
        }
        constructFrom patches;
        patches (auto2);
    }
    {
        name maxX;
    patchInfo
        {
            type cyclic;
            neighbourPatch minX;
        }
        constructFrom patches;
        patches (auto3);
    }
    {
        name minY;
    patchInfo
        {
            type wall;
        }
        constructFrom patches;
        patches (auto1);
    }
    {
        name maxY;
    patchInfo
        {
            type wall;
        }
        constructFrom patches;
        patches (auto0);
    }
    {
        name minZ;
    patchInfo
        {
            type wall;
        }
        constructFrom patches;
        patches (auto4);
    }
    {
        name maxZ;
    patchInfo
        {
            type wall;
        }
        constructFrom patches;
        patches (auto5);
    }
);

---------------------------

ver2.2で、blockMeshでは単純な六面体を作成し、
autoPatchのあと、このファイルを読み込ませます。

ご存知の方がいましたら、よろしくお願いします。

ohbuchi

unread,
Mar 12, 2014, 8:56:46 PM3/12/14
to open...@googlegroups.com
blockMeshならblockMeshDictでcyclic設定をしてメッシュを切れば
createPatchは不要だと思いますが。

createPatchDictには、transform, separationVector, matchToleranceの設定が要ると
思います。確認してみて下さい。


2014年3月12日水曜日 16時00分15秒 UTC+9 kabocha:

Manabu Saito

unread,
Mar 17, 2014, 9:09:59 PM3/17/14
to open...@googlegroups.com
ohbuchi様

ご回答ありごとうございます。
現在取り組んでいる課題はもっと複雑な設定なのですが、問題点を探し出すため
設定を単純にしていったところ、投稿したような形になりました。

再びの質問よろしいでしょうか。
以下の前回の設定



>    {
>        name minX;
>    patchInfo
>        {
>            type cyclic;
>            neighbourPatch maxX;
>        }
>        constructFrom patches;
>        patches (auto2);
>    }
>    {
>        name maxX;
>    patchInfo
>        {
>            type cyclic;
>            neighbourPatch minX;
>        }
>        constructFrom patches;
>        patches (auto3);
>    }

を次のように変更しました。


    {
        name minX;
    patchInfo
        {
            type cyclic;
            transform translational;
            separationVector (0.1 0 0);
            matchTolerance 0.001;

            neighbourPatch maxX;
        }
        constructFrom patches;
        patches (auto2);
    }

    {
        name maxX;
    patchInfo
        {
            type cyclic;
            transform translational;
            separationVector (-0.1 0 0);
            matchTolerance 0.001;
            neighbourPatch minX;
        }
        constructFrom patches;
        patches (auto3);
    }

特に改善された部分は見当たらなかったのですが、
再びのご指摘よろしいお願いできましでしょうか。

transform, separationVector, matchToleranceの
それぞれの設定の意味を掴めていないところがあります。

よろしくお願いします。

2014年3月13日 9:56 ohbuchi <ohbu...@gmail.com>:

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

ohbuchi

unread,
Mar 18, 2014, 11:40:31 PM3/18/14
to open...@googlegroups.com
separationVectorは参照パッチとの相対位置ベクトルで、matchToleranceはフェースが一致すると
判定する閾値です。

パッチ間の距離は0.1で正しいでしょうか?
前回と今回でcreatePatchユーティリティの出力内容に変わりはありませんか?


2014年3月18日火曜日 10時09分59秒 UTC+9 kabocha:
よろしくお願いします。

このグループから退会し、グループからのメールの配信を停止するには、openfoam+unsub...@googlegroups.com へメールを送信してください。

Manabu Saito

unread,
Mar 19, 2014, 2:14:32 AM3/19/14
to open...@googlegroups.com
ohbuchi様

申し訳ありませんでした。

出力結果は変わらず、6つのobjファイルは作られではありますが、
ソルバーにかけましたら無事動きました。

ありがとうございます。




2014年3月19日 12:40 ohbuchi <ohbu...@gmail.com>:
このグループから退会し、グループからのメールの配信を停止するには、openfoam+u...@googlegroups.com へメールを送信してください。
Reply all
Reply to author
Forward
0 new messages