定常熱伝導解析の収束性について

1,027 views
Skip to first unread message

photo-n

unread,
Feb 28, 2013, 8:04:47 AM2/28/13
to open...@googlegroups.com
いつもお世話になっております。
photo-nと申します。

定常熱伝導解析の収束性について質問があります。

当方、2物体間の3次元熱伝導を考慮した解析を行っています。
(対流解析はしていません。)
境界条件は
対流境界、発熱境界、断熱境界のノイマン条件のみであり、ディリクレ条件の境界条件はありません。

非定常熱伝導解析では
chtMultiRegionFoamを使用し、問題なく計算できています。
ステップごとに問題なく収束し、実験値とも一致が得られています。

定常熱伝導解析では
chtMultiRegionSimpleFoamを使用しているのですが、
収束性がとても悪く、20000step以上でも収束しません。
また、上記の非定常熱伝導解析よりも、温度の変化がとても緩やかであるのが特徴です。


これまで自作コードにて、2次元解析を行ってきましたがこのような現象は初めてです。

おそらく原因としては
①3次元解析のため、2次元解析と比べると収束性が悪い
②境界条件がすべてノイマン条件である

だと思われます。

しかしながら、非定常解析では問題なく計算できるのに
定常解析で収束しないのが腑に落ちません。

稚拙な質問で申し訳ありませんが、定常計算にて収束させる方法など
アドバイスを頂けると幸いです。

以上、よろしくお願いします。

大渕真志

unread,
Feb 28, 2013, 4:38:34 PM2/28/13
to open...@googlegroups.com
もしかして異種物質境界で領域分けてますか?弱連成なので収束遅くなりますよ。セルごとに物性値を変えられるソルバを作ると良いでしょう。

iPhoneから送信

2013/02/28 22:04、photo-n <chemi...@gmail.com> のメッセージ:

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

photo-n

unread,
Feb 28, 2013, 7:05:32 PM2/28/13
to open...@googlegroups.com
ohbuchi様
おはようございます。photo-nです。

早速の返信ありがとうございます。
頂いたアドバイスから、2物体ではなく、簡易的に1物体で定常計算を行いましたが
収束性は、同様なものでした。


2013年3月1日金曜日 6時38分34秒 UTC+9 ohbuchi:
このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com にメールを送信します。

Masashi Imano

unread,
Mar 1, 2013, 12:44:45 AM3/1/13
to open...@googlegroups.com
今野です。

良かったらsystem/fvSolution を貼ってください。

2013年3月1日 9:05 photo-n <chemi...@gmail.com>:
>> このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com
>> にメールを送信します。
>> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>
>> http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>>
>>
>
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com にメールを送信します。
> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
> http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>
>



--
IMANO Masashi, Ph.D.

photo-n

unread,
Mar 1, 2013, 2:43:14 AM3/1/13
to open...@googlegroups.com
今野様

photo-nです。以下にsystem/fvSolutionを貼りますので
ご確認お願いします。

/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.1.x                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    T
    {
        solver           PCG;
        preconditioner   DIC;
        tolerance        1e-06;
        relTol           0.1;
    }
}

SIMPLE
{
    nNonOrthogonalCorrectors 0;
}

relaxationFactors
{
    fields
    {
    }
    equations
    {
        T               0.75;
    }
}

// ************************************************************************* //

2013年3月1日金曜日 14時44分45秒 UTC+9 Masashi Imano:
>> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>> にメールを送信します。
>> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>
>> http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>>
>>
>
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com にメールを送信します。

Masashi Imano

unread,
Mar 1, 2013, 3:41:51 AM3/1/13
to open...@googlegroups.com
今野です。

system/fvSolutionは問題無さそうですね。

system/fvSchemes は ログ(の一部)はどうなっていますでしょうか?

2013年3月1日 16:43 photo-n <chemi...@gmail.com>:
>> >> このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com
>> >> にメールを送信します。
>> >> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>> >>
>> >> http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> >> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>> >>
>> >>
>> >
>> > --
>> > このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
>> > このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com
>> > にメールを送信します。
>> > このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>> > http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> > その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>> >
>> >
>>
>>
>>
>> --
>> IMANO Masashi, Ph.D.
>
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com にメールを送信します。

ohbuchi

unread,
Mar 1, 2013, 6:03:58 AM3/1/13
to open...@googlegroups.com
横から失礼します。非定常解析で良くて定常解析でダメという点が引っかかっています。
境界条件で、前回時刻の温度場を参照していないでしょうか?
swak4FoamのExpressionなどで。
定常解析では前回時刻のフィールド値が更新されないので、収束が遅れるということは
ないでしょうか?
小刻みに、リスタートを繰り返すと収束が早くなったりすれば、これが原因の可能性大です。


2013年3月1日金曜日 17時41分51秒 UTC+9 Masashi Imano:
>> >> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>> >> にメールを送信します。
>> >> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>> >>
>> >> http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> >> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>> >>
>> >>
>> >
>> > --
>> > このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
>> > このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>> > にメールを送信します。
>> > このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>> > http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> > その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>> >
>> >
>>
>>
>>
>> --
>> IMANO Masashi, Ph.D.
>
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com にメールを送信します。

KMori

unread,
Mar 2, 2013, 7:35:57 PM3/2/13
to open...@googlegroups.com
はじめて書き込みます。
まとはずれなら、すみませんです。
定常解析で、温度の緩和係数が0.75になっていますが、小さすぎるのではないでしょうか?通常、1では。

photo-n

unread,
Mar 4, 2013, 9:08:51 PM3/4/13
to open...@googlegroups.com
今野様

photo-nです。返信が遅くなり申し訳ありません。

system/fvSchemesと
非定常と定常のログを貼り付けます。(添付しようと思いましたが、エラーでできませんでした。)

以上、よろしくお願いします。

■system/fvSchemes

FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default steadyState;
}

gradSchemes
{
    default         Gauss linear;
}

divSchemes
{
    default         none;
}

laplacianSchemes
{
    default         none;
    laplacian(K,T) Gauss linear limited 0.5;
}

interpolationSchemes
{
    default         linear;
}

snGradSchemes
{
    default         limited 0.5;
}

fluxRequired
{
    default         no;
    T               ;
}

// ************************************************************************* //



■非定常ログ
Region: solid Diffusion Number mean: 0.093947311 max: 0.18288358
Time = 50


Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 0.021885467, Final residual = 0.0021089541, No Iterations 23
Min/max T:min(T) [0 0 0 1 0 0 0] 298.9944 max(T) [0 0 0 1 0 0 0] 301.86454

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 0.0021903478, Final residual = 0.00020779977, No Iterations 19
Min/max T:min(T) [0 0 0 1 0 0 0] 298.995 max(T) [0 0 0 1 0 0 0] 301.86555

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 0.00056334116, Final residual = 5.2075476e-05, No Iterations 9
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86562

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 8.0200472e-05, Final residual = 7.9775798e-06, No Iterations 14
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86566

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 1.6896427e-05, Final residual = 1.4459676e-06, No Iterations 11
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86566

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 2.8394919e-06, Final residual = 8.5546804e-07, No Iterations 1
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86566

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 9.0407255e-07, Final residual = 9.0407255e-07, No Iterations 0
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86566

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 9.0407248e-07, Final residual = 9.0407248e-07, No Iterations 0
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86566

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 9.0407248e-07, Final residual = 9.0407248e-07, No Iterations 0
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86566

Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 9.0407248e-07, Final residual = 9.0407248e-07, No Iterations 0
Min/max T:min(T) [0 0 0 1 0 0 0] 298.99499 max(T) [0 0 0 1 0 0 0] 301.86566
ExecutionTime = 312.65 s  ClockTime = 314 s

End



■定常ログ
Time = 498


Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 0.00058687213, Final residual = 3.4318404e-05, No Iterations 1
Min/max T:298 299.84322
ExecutionTime = 132.15 s  ClockTime = 132 s

Time = 499


Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 0.00058591748, Final residual = 3.4265276e-05, No Iterations 1
Min/max T:298 299.8438
ExecutionTime = 132.43 s  ClockTime = 133 s

Time = 500


Solving for solid region solid
DICPCG:  Solving for T, Initial residual = 0.00058496673, Final residual = 3.4212223e-05, No Iterations 1
Min/max T:298 299.84437
ExecutionTime = 132.71 s  ClockTime = 133 s

End

以上、宜しくお願いします。



2013年3月1日金曜日 17時41分51秒 UTC+9 Masashi Imano:
今野です。
>> >> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>> >> にメールを送信します。
>> >> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>> >>
>> >> http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> >> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>> >>
>> >>
>> >
>> > --
>> > このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
>> > このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>> > にメールを送信します。
>> > このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>> > http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>> > その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>> >
>> >
>>
>>
>>
>> --
>> IMANO Masashi, Ph.D.
>
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com にメールを送信します。

photo-n

unread,
Mar 4, 2013, 9:14:50 PM3/4/13
to open...@googlegroups.com
ohbuchi様

photo-nです。アドバイスありがとうございます。
返信が遅くなり申し訳ありません。

対流伝熱境界、発熱面境界にはgroovyBCを使用しています。
小刻みに、リスタートを繰り返してみましたが、特に収束状態に変化はありませんでした。

下記に、対流伝熱境界、発熱面境界を貼り付けますので
ご確認お願いします。

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 0 0 1 0 0 0];

internalField   uniform 298;

boundaryField
{
    allBoundary
    {
         type            empty;
    }

    heat
    {
        type groovyBC;
        value           uniform 298;
        gradientExpression "gradT";
        fractionExpression "0";
        variables       "gradT=1245;"; 

    
    }

    air
    {
        type groovyBC;
        value           uniform 298;
        gradientExpression "gradT";
        fractionExpression "0";
        variables       "gradT=8*(298-T)/120;";

    }

    inner
    {
         type            zeroGradient;
    }
}


// ************************************************************************* //



2013年3月1日金曜日 20時03分58秒 UTC+9 ohbuchi:

photo-n

unread,
Mar 4, 2013, 9:19:23 PM3/4/13
to open...@googlegroups.com
KMori 様

photo-nです。返信が遅くなり、申し訳ありません。
アドバイスありがとうございます。

緩和係数について、私も詳しいところまで理解していませんが
groovyBCで対流境界条件を与えた場合、
境界条件が陰的に与えらていないわけではなく、前反復での境界の温度
を使った勾配が与えられる陽的な境界条件を与えて解くことになるので、
緩和しないと発散すると思います。

実際に緩和係数を1に近づけていくと、
1stepの残差収束に時間がかかり、あるところで発散すると思います。


2013年3月3日日曜日 9時35分57秒 UTC+9 KMori:

ohbuchi

unread,
Mar 4, 2013, 10:54:01 PM3/4/13
to open...@googlegroups.com
やはりgroovyBCをお使いでしたか。
下記を試して見てください。効果があるかも知れません。

   air
{
        type groovyBC;
        value           uniform 298;
        gradientExpression "gradT";
        fractionExpression "0";
        variables       "gradT=8*(298-T)/120;";

        evaluateDuringConstruction true;    <= これにより境界条件の評価を毎回行います
}

photo-n

unread,
Mar 5, 2013, 12:04:12 AM3/5/13
to open...@googlegroups.com
ohbuchi 様

photo-nです。
・evaluateDuringConstruction trueの効果を検証してみましたがエラーが発生しました。

・発熱条件に追加しても、エラーが発生しませんでしたが
対流伝熱条件に追加すると、エラーが発生してしましました。

■エラーなし↓ (発熱条件)

     heat
   {
        type            groovyBC;
        value           uniform 298;
        valueExpression "298";
        gradientExpression "gradT";
        fractionExpression "0";
        variables       
 (
                           "gradT=1245;"
 );
                  evaluateDuringConstruction true;
    }


■エラーあり↓ (対流伝熱条件)
    air
    {
        type            groovyBC;
        value           uniform 298;
        valueExpression "298";
        gradientExpression "gradT";
        fractionExpression "0";
        variables       
 (
                                "gradT=8*(298-T)/120;"
 );
 evaluateDuringConstruction true;
    }


■発生エラー↓
/*---------------------------------------------------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.1.x                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
Build  : 2.1.x-fa2c23b05ebe
Exec   : chtMultiRegionSimpleFoam
Date   : Mar 05 2013
Time   : 13:56:20
Host   : "xxxxxxxxxxx-virtual-machine"
PID    : 4973
Case   : /opt/OpenFOAM/xxxxxxxxxxx-2.1.x/run/Simulation/Heat_conduction/14_h8_steady_onlylens
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Disallowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create solid mesh for region solid for time = 0

*** Reading solid mesh thermophysical properties for region solid

    Adding to thermos

swak4Foam: Allocating new repository for sampledGlobalVariables
#0  Foam::error::printStack(Foam::Ostream&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#1  Foam::sigSegv::sigHandler(int) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#2   in "/lib/x86_64-linux-gnu/libc.so.6"
#3  Foam::Field<double>* Foam::PatchValueExpressionDriver::getField<double>(Foam::string const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libswak4FoamParsers.so"
#4  parserPatch::PatchValueExpressionParser::parse() in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libswak4FoamParsers.so"
#5  Foam::PatchValueExpressionDriver::parse(std::string const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libswak4FoamParsers.so"
#6  Foam::CommonValueExpressionDriver::evaluateVariable(Foam::word const&, Foam::string const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libswak4FoamParsers.so"
#7  Foam::CommonValueExpressionDriver::addVariables(Foam::string const&, bool) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libswak4FoamParsers.so"
#8  Foam::CommonValueExpressionDriver::addVariables(Foam::List<Foam::string> const&, bool) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libswak4FoamParsers.so"
#9  Foam::CommonValueExpressionDriver::clearVariables() in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libswak4FoamParsers.so"
#10  Foam::groovyBCFvPatchField<double>::updateCoeffs() in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libgroovyBC.so"
#11  Foam::mixedFvPatchField<double>::evaluate(Foam::UPstream::commsTypes) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libfiniteVolume.so"
#12  Foam::groovyBCFvPatchField<double>::groovyBCFvPatchField(Foam::fvPatch const&, Foam::DimensionedField<double, Foam::volMesh> const&, Foam::dictionary const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libgroovyBC.so"
#13  Foam::fvPatchField<double>::adddictionaryConstructorToTable<Foam::groovyBCFvPatchField<double> >::New(Foam::fvPatch const&, Foam::DimensionedField<double, Foam::volMesh> const&, Foam::dictionary const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libgroovyBC.so"
#14  Foam::fvPatchField<double>::New(Foam::fvPatch const&, Foam::DimensionedField<double, Foam::volMesh> const&, Foam::dictionary const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/chtMultiRegionSimpleFoam"
#15  Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::GeometricBoundaryField(Foam::fvBoundaryMesh const&, Foam::DimensionedField<double, Foam::volMesh> const&, Foam::dictionary const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/chtMultiRegionSimpleFoam"
#16  Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::readField(Foam::dictionary const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/chtMultiRegionSimpleFoam"
#17  Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::readField(Foam::Istream&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/chtMultiRegionSimpleFoam"
#18   at basicSolidThermo.C:0
#19  Foam::basicSolidThermo::basicSolidThermo(Foam::fvMesh const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libbasicSolidThermo.so"
#20  Foam::constSolidThermo::constSolidThermo(Foam::fvMesh const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libbasicSolidThermo.so"
#21  Foam::basicSolidThermo::addmeshConstructorToTable<Foam::constSolidThermo>::New(Foam::fvMesh const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libbasicSolidThermo.so"
#22  Foam::basicSolidThermo::New(Foam::fvMesh const&) in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/lib/libbasicSolidThermo.so"
#23  
 in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/chtMultiRegionSimpleFoam"
#24  __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#25  
 in "/home/xxxxxxxxxxx/OpenFOAM/OpenFOAM-2.1.x/platforms/linux64GccDPOpt/bin/chtMultiRegionSimpleFoam"
Segmentation fault (コアダンプ)


・何が原因でエラーが発生しているか調べていますが、もしお分かりでしたら
教えて頂けると幸いです。

以上、よろしくお願いします。


2013年3月5日火曜日 12時54分01秒 UTC+9 ohbuchi:

ohbuchi

unread,
Mar 5, 2013, 12:43:58 AM3/5/13
to open...@googlegroups.com
失礼しました。evaluateDuringConstruction をtrueにするとコンストラクタで生成するときに評価を行うため
まだ生成されていないTを参照してエラーが発生しているものと思われます。

airのgroovyBCのexpressionにTが存在しているために、定常解析ではlatestTimeのTが固定されて
収束が遅いというのが今回の問題の結論の様です。

根本的な解決としては動的な境界条件を作るしかなさそうです。
むしろ、非定常問題として時間刻みを大きくして長時間計算したほうが簡単そうですね。



2013年3月5日火曜日 14時04分12秒 UTC+9 photo-n:

Masashi Imano

unread,
Mar 5, 2013, 1:15:55 AM3/5/13
to open...@googlegroups.com
今野です。

fvSchemesも問題無さそうなので、収束性が悪いのはやはりohbuchiさんが御指摘のように
groovyBCを使っているからだと思いますが、念のため確認させて頂くとgroovyを使わずに、
fixedValueやfixedGradientを使用した場合には、緩和係数を1程度にしても収束性が良いの
ですよね?

あと、以下の対流伝熱条件の場合の各数字は何を意味しているのでしょうか?

>> variables
>> (
>> "gradT=8*(298-T)/120;"
>> );

2013年3月5日 14:43 ohbuchi <ohbu...@gmail.com>:
>>>>>> >> >> このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com
>>>>>> >> >> にメールを送信します。
>>>>>> >> >> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>>>>> >> >>
>>>>>> >> >> http://groups.google.com/group/openfoam?hl=ja
>>>>>> >> >> からこのグループにアクセスしてください。
>>>>>> >> >> その他のオプションについては、https://groups.google.com/groups/opt_out
>>>>>> >> >> にアクセスしてください。
>>>>>> >> >>
>>>>>> >> >>
>>>>>> >> >
>>>>>> >> > --
>>>>>> >> > このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
>>>>>> >> > このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com
>>>>>> >> > にメールを送信します。
>>>>>> >> > このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>>>>> >> > http://groups.google.com/group/openfoam?hl=ja
>>>>>> >> > からこのグループにアクセスしてください。
>>>>>> >> > その他のオプションについては、https://groups.google.com/groups/opt_out
>>>>>> >> > にアクセスしてください。
>>>>>> >> >
>>>>>> >> >
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> --
>>>>>> >> IMANO Masashi, Ph.D.
>>>>>> >
>>>>>> > --
>>>>>> > このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
>>>>>> > このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com
>>>>>> > にメールを送信します。
>>>>>> > このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>>>>> > http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>>>>>> > その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>>>>>> >
>>>>>> >
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> IMANO Masashi, Ph.D.
>
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、openfoam+u...@googlegroups.com にメールを送信します。

photo-n

unread,
Mar 7, 2013, 6:37:06 PM3/7/13
to open...@googlegroups.com
ohbuchi 様

photo-nです。たびたび返信が遅くなり申し訳ありません。

動的な境界条件が必要ということなので、調査したいと思います。

このたびは、境界条件についてアドバイス頂き、ありがとうございました。
今後ともよろしくお願いします。

2013年3月5日火曜日 14時43分58秒 UTC+9 ohbuchi:

photo-n

unread,
Mar 7, 2013, 6:48:41 PM3/7/13
to open...@googlegroups.com
今野様

おはようございます。photo-nです。返信が遅くなり申し訳ありません。

fixedValueやfixedGradientを使用した場合の収束性ですが、
緩和係数を0.999にして計算したところ、問題なく収束しました。

下記、対流伝熱条件の各数字についてですが
>>         variables 
>>  ( 
>>                                 "gradT=8*(298-T)/120;" 
>>  ); 

  gradT = 熱伝達係数 * (外気温 - 固体表面温度) / 固体の熱伝導率

です。


以上、よろしくお願いします。

2013年3月5日火曜日 15時15分55秒 UTC+9 Masashi Imano:
>>>>>> >> >> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>>>>>> >> >> にメールを送信します。
>>>>>> >> >> このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>>>>> >> >>
>>>>>> >> >> http://groups.google.com/group/openfoam?hl=ja
>>>>>> >> >> からこのグループにアクセスしてください。
>>>>>> >> >> その他のオプションについては、https://groups.google.com/groups/opt_out
>>>>>> >> >> にアクセスしてください。
>>>>>> >> >>
>>>>>> >> >>
>>>>>> >> >
>>>>>> >> > --
>>>>>> >> > このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
>>>>>> >> > このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>>>>>> >> > にメールを送信します。
>>>>>> >> > このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>>>>> >> > http://groups.google.com/group/openfoam?hl=ja
>>>>>> >> > からこのグループにアクセスしてください。
>>>>>> >> > その他のオプションについては、https://groups.google.com/groups/opt_out
>>>>>> >> > にアクセスしてください。
>>>>>> >> >
>>>>>> >> >
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> --
>>>>>> >> IMANO Masashi, Ph.D.
>>>>>> >
>>>>>> > --
>>>>>> > このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
>>>>>> > このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com
>>>>>> > にメールを送信します。
>>>>>> > このグループに投稿するには、open...@googlegroups.com にメールを送信してください。
>>>>>> > http://groups.google.com/group/openfoam?hl=ja からこのグループにアクセスしてください。
>>>>>> > その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>>>>>> >
>>>>>> >
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> IMANO Masashi, Ph.D.
>
> --
> このメールは Google グループのグループ「OpenFOAM」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、openfoam+unsubscribe@googlegroups.com にメールを送信します。
Reply all
Reply to author
Forward
0 new messages