2017-05-22 209 views
0

我運行openFoam 4.1,並在我的k-eps仿真中提取湍流應力張量R時出現問題。我在4天前對cfd-online.com提出了同樣的問題,並沒有收到回覆,所以我現在希望有人可以幫助我。openFoam:故障報告湍流域

要提取R,我只修改了controlDict,它看起來像以下:

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

application  simpleFoam; 

startTime  0; 

stopAt   endTime; 

endTime   5000; 

deltaT   1; 

writeControl timeStep; 

writeInterval 100; 

purgeWrite  2; 

writeFormat  ascii; 

writePrecision 8; 

writeCompression uncompressed; 

timeFormat  general; 

timePrecision 6; 

runTimeModifiable yes; 

functions 
{ 
#includeFunc residuals 

    turbulenceFields1 
    { 
     type   turbulenceFields; 
     libs   ("libfieldFunctionObjects.so"); 
     field   R; 
    } 
} 

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

當我試着使用上述controlDict解決,我得到如下:

/*---------------------------------------------------------------------------*\ 
| =========     |             | 
| \\ /F ield   | OpenFOAM: The Open Source CFD Toolbox   | 
| \\ / O peration  | Version: 4.1         | 
| \\/ A nd   | Web:  www.OpenFOAM.org      | 
| \\/  M anipulation |             | 
\*---------------------------------------------------------------------------*/ 
Build : 4.1 
Exec : simpleFoam 
Date : May 18 2017 
Time : 07:08:01 
Host : "..." 
PID : 11073 
Case : /home... 
nProcs : 1 
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). 
fileModificationChecking : Monitoring run-time modified files using timeStampMaster 
allowSystemOperations : Allowing user-supplied system call operations 

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

Create mesh for time = 0 


SIMPLE: convergence criteria 
    field p  tolerance 0.001 
    field U  tolerance 0.001 
    field "(k|epsilon|omega|f|v2)"  tolerance 0.001 

Reading field p 

Reading field U 

Reading/calculating face flux field phi 

Selecting incompressible transport model Newtonian 
Selecting turbulence model type RAS 
Selecting RAS turbulence model kEpsilon 
kEpsilonCoeffs 
{ 
    Cmu    0.09; 
    C1    1.44; 
    C2    1.92; 
    C3    -0.33; 
    sigmak   1; 
    sigmaEps  1.3; 
} 

No MRF models present 

No finite volume options present 


Starting time loop 

turbulenceFields turbulenceFields1: storing fields: 
    turbulenceProperties:R 

Time = 1 

smoothSolver: Solving for Ux, Initial residual = 1, Final residual = 0.068919891, No Iterations 6 
smoothSolver: Solving for Uy, Initial residual = 1, Final residual = 0.094423261, No Iterations 4 
smoothSolver: Solving for Uz, Initial residual = 1, Final residual = 0.065365879, No Iterations 6 
GAMG: Solving for p, Initial residual = 1, Final residual = 0.0086113464, No Iterations 26 
time step continuity errors : sum local = 0.51812432, global = -0.07783965, cumulative = -0.07783965 
smoothSolver: Solving for epsilon, Initial residual = 0.59675441, Final residual = 0.051409907, No Iterations 3 
smoothSolver: Solving for k, Initial residual = 1, Final residual = 0.092548244, No Iterations 2 
ExecutionTime = 0.81 s ClockTime = 1 s 



--> FOAM FATAL ERROR: 
object of type N4Foam9Function1INS_10SymmTensorIdEEEE is not allocated 

    From function T* Foam::autoPtr<T>::operator->() [with T = Foam::Function1<Foam::SymmTensor<double> >] 
    in file /home/ubuntu/OpenFOAM/OpenFOAM-4.1/src/OpenFOAM/lnInclude/autoPtrI.H at line 176. 

FOAM aborting 

#0 Foam::error::printStack(Foam::Ostream&) at ??:? 
#1 Foam::error::abort() at ??:? 
#2 Foam::timeVaryingMappedFixedValueFvPatchField<Foam::SymmTensor<double> >::write(Foam::Ostream&) const at ??:? 
#3 Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh>::Boundary::writeEntry(Foam::word const&, Foam::Ostream&) const at ??:? 
#4 Foam::GeometricField<Foam::SymmTensor<double>, Foam::fvPatchField, Foam::volMesh>::writeData(Foam::Ostream&) const at ??:? 
#5 Foam::regIOobject::writeObject(Foam::IOstream::streamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const at ??:? 
#6 Foam::functionObjects::regionFunctionObject::writeObject(Foam::word const&) at ??:? 
#7 Foam::functionObjects::turbulenceFields::write() at ??:? 
#8 Foam::functionObjectList::execute() at ??:? 
#9 Foam::Time::loop() at ??:? 
#10 Foam::simpleControl::loop() at ??:? 
#11 ? at ??:? 
#12 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" 
#13 ? at ??:? 
Aborted (core dumped) 

它從上面看來,像openFoam第一次解決了問題,然後出現了問題。在目錄「1」中,現在只有一個文件「turbulenceProperties:R」,它接縫包含每個點的應力張量的6個元素。

有沒有人知道如何解決這個問題?

回答

0

我想我找到了答案,從CFD-在線論壇的this鏈接。