自動時間刻み幅調整機能について

612 views
Skip to first unread message

mu

unread,
Dec 1, 2015, 3:08:43 AM12/1/15
to OpenFOAM
こんにちは。
お世話になっております。muと申します。

controlDictを以下のように設定し、計算を開始しようとすると、エラーが出てしまいます。

出力されるファイルを出来るだけ、0.1ごとにしたく、deltaTの最大値を決めるために、
maxDeltaTの条件を入れるとエラーが出てしまいます。
maxDeltaTを指定しなければ計算はできます。

"writeFrequency"は”writeInterval"と同様の意味だとpurogurammersGuideに記されていますが良くわかりません。

何か解決策があればご教授いただければ幸いです。
よろしくお願いいたします。


エラー文

--> FOAM FATAL IO ERROR:

keyword writeFrequency is undefined in dictionary "/home/m_uesaka/ke/ke_10_200000_co0.1_2/system/controlDict"

 

file: /home/m_uesaka/ke/ke_10_200000_co0.1_2/system/controlDict from line 18 to line 52.

 

    From function dictionary::lookupEntry(const word&, bool, bool) const

    in file db/dictionary/dictionary.C at line 442.

 

FOAM exiting





controlDict

/*--------------------------------*- C++ -*----------------------------------*\

| =========                 |                                                 |

| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |

|  \\    /   O peration     | Version:  2.3.0                                 |

|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |

|    \\/     M anipulation  |                                                 |

\*---------------------------------------------------------------------------*/

FoamFile

{

    version     2.0;

    format      ascii;

    class       dictionary;

    location    "system";

    object      controlDict;

}

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

 

application     pisoFoam;

 

startFrom       latestTime;

 

startTime       0;

 

stopAt          endTime;

 

endTime         50;

 

deltaT          0.00001;

 

writeControl    adjustableRunTime;

 

adjustTimeStep  yes;

 

maxCo           0.5;

 

maxDeltaT       0.0001

 

writeInterval   0.1;

 

purgeWrite      0;

 

writeFormat     ascii;

 

writePrecision  6;

 

writeCompression off;

 

timeFormat      general;

 

timePrecision   6;

 

runTimeModifiable true;

 

 

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

controlDict (END)

ohbuchi

unread,
Dec 1, 2015, 6:09:02 PM12/1/15
to OpenFOAM

こんにちは。

確かにwriteFrequencyは TimeIO.CでwriteIntervalに置き換えられており、不要です。


controlDictの writeInterval直前の行でセミコロンが抜けているため、正しく認識されず

どちらも存在しないためエラーとなったと思います。


maxDeltaT       0.0001   ←ここで ";"が抜けている

 

writeInterval   0.1;


ご参考まで。


2015年12月1日火曜日 17時08分43秒 UTC+9 mu:

mu

unread,
Dec 2, 2015, 1:05:41 AM12/2/15
to OpenFOAM
ohbuchi様

ご丁寧に返答頂き、有難うございます。
自分の不注意でした。

今後ともよろしくお願いいたします。



2015年12月2日水曜日 8時09分02秒 UTC+9 ohbuchi:
Reply all
Reply to author
Forward
0 new messages