|
[Sponsors] | |||||
Please help me!!!! gradientInternalCoeffs cannot be called for a ... |
![]() |
|
|
LinkBack | Thread Tools | Display Modes |
|
|
|
#1 |
|
Senior Member
|
hi everybody,
I defined a new solver that solve natural convection in a viscoelastic Fluid. it made successfully, but when I want to run my model the following error was appeared: Code:
--> FOAM FATAL ERROR:
gradientInternalCoeffs cannot be called for a calculatedFvPatchField
on patch floor of field p in file "/home/mostafa/OpenFOAM/mostafa-2.1.0/run/tutorials/viscoelastic/viscoelasticFluidFoam/Hasan_Giesekus/0/p"
You are probably trying to solve for a field with a default boundary condition.
From function calculatedFvPatchField<Type>::gradientInternalCoeffs() const
in file fields/fvPatchFields/basic/calculated/calculatedFvPatchField.C at line 186.
FOAM exiting
Thanks |
|
|
|
|
|
|
|
|
#3 |
|
Senior Member
|
the attachment contains the p, fvSolution and fvSchemes files.
I changed the floor boundary condition and even delete the p file but this problem didn't had been solve. I think the problem is somewhere in the fvSolution or fvSchemes. |
|
|
|
|
|
|
|
|
#4 |
|
Senior Member
|
this solver reads p or p-rgh ?
it seems it reads p, if it reads p! then you should define BC for p, you can not use calculated BC, you should use (fixedValue or fixedGradient) for it
|
|
|
|
|
|
|
|
|
#5 |
|
Senior Member
|
It reads p and calculate the p-rgh, such as bouyantbuossinesqsimplefoam. I change the bc to fixedValue and fixedGradient but this this error didn't had been omit.
|
|
|
|
|
|
|
|
|
#6 |
|
Senior Member
|
Dear mostafa let me ask another questions, which version of openfoam do you use?
could you run this test case before heat transfer implementation? put the test case and solver here, then may other can help you |
|
|
|
|
|
|
|
|
#7 |
|
Senior Member
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 322
Rep Power: 6 ![]() |
Hi
Did you set p equal to another field in your solver during calculations? i.g. p=....? |
|
|
|
|
|
|
|
|
#8 |
|
Senior Member
|
this is where I use the p in createFields.H:
Code:
Info<< "Calculating field g.h\n" << endl;
volScalarField gh("gh", g & mesh.C());
surfaceScalarField ghf("ghf", g & mesh.Cf());
volScalarField p
(
IOobject
(
"p",
runTime.timeName(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
p_rgh + rhok*gh
);
label pRefCell = 0;
scalar pRefValue = 0.0;
setRefCell(p,p_rgh, mesh.solutionDict().subDict("PISO"), pRefCell, pRefValue);
if (p_rgh.needReference())
{
p += dimensionedScalar
(
"p",
p.dimensions(),
pRefValue - getRefCellValue(p, pRefCell)
);
}
Code:
p = p_rgh + rhok*gh;
if (p_rgh.needReference())
{
p += dimensionedScalar
(
"p",
p.dimensions(),
pRefValue - getRefCellValue(p, pRefCell)
);
p_rgh = p - rhok*gh;
}
|
|
|
|
|
|
|
|
|
#9 |
|
Senior Member
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 322
Rep Power: 6 ![]() |
Hi
I think you have two options two solve the problem. Selection is your choice: 1: volScalarField p ( IOobject ( "p", runTime.timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh ); or 2: p == p_rgh + rhok*gh; |
|
|
|
|
|
|
|
|
#10 |
|
Senior Member
|
Dear Ata
I applied what you offered me and what Nima said, that error was solved. but after some iterations (50) the following error appeared: Code:
#0 Foam::error::printStack(Foam::Ostream&) in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #2 Uninterpreted: #3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #4 Foam::fvMatrix<Foam::SymmTensor<double> >::solve(Foam::dictionary const&) in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libviscoelasticTransportModels.so" #5 Foam::fvMatrix<Foam::SymmTensor<double> >::solve() in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libviscoelasticTransportModels.so" #6 Foam::Giesekus::correct() in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libviscoelasticTransportModels.so" #7 Foam::multiMode::correct() in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libviscoelasticTransportModels.so" #8 Foam::viscoelasticModel::correct() in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/lib/libviscoelasticTransportModels.so" #9 in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/BuoyantBoussinesqViscoelasticFluidFoam" #10 __libc_start_main in "/lib/i386-linux-gnu/libc.so.6" #11 in "/home/mostafa/OpenFOAM/OpenFOAM-2.1.0/platforms/linuxGccDPOpt/bin/BuoyantBoussinesqViscoelasticFluidFoam" Floating point exception again thank you so much |
|
|
|
|
|
|
|
|
#13 |
|
Senior Member
|
||
|
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| understanding how turbulence models are called | romant | OpenFOAM Programming & Development | 0 | March 21, 2012 10:22 |
| reconstructPar --> fileName::stripInvalid() called for invalid fileName commandtouse | adona058 | OpenFOAM Bugs | 8 | April 15, 2010 04:01 |
| FaceCellWave.C: handleCyclicPatches() is called once for each cell | wenterodt | OpenFOAM Bugs | 2 | October 26, 2009 07:10 |
| reconstructParMesh not working with an axisymetric case | francesco | OpenFOAM Bugs | 4 | May 8, 2009 05:49 |
| Dose fluent has a package called" nekton" | ztdep | FLUENT | 0 | February 26, 2006 11:18 |