CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   smoothSolver error when solving for P in sonicFoam (https://www.cfd-online.com/Forums/openfoam-solving/247469-smoothsolver-error-when-solving-p-sonicfoam.html)

FreezaIcey February 6, 2023 23:39

smoothSolver error when solving for P in sonicFoam
 
Hello,

I am decently new to OpenFOAM and am attempting to run a simulation of a symmetric diamond airfoil in Mach 3 STP air.

When running sonicFoam I get this output:



Create time

Create mesh for time = 0


PIMPLE: no residual control data found. Calculations will employ 2 corrector loops

Reading thermophysical properties

Selecting thermodynamics package
{
type hePsiThermo;
mixture pureMixture;
transport const;
thermo hConst;
equationOfState perfectGas;
specie specie;
energy sensibleInternalEnergy;
}

Reading field U

Reading/calculating face flux field phi

Creating turbulence model

Selecting turbulence model type laminar
Selecting laminar stress model Stokes
Creating field kinetic energy K

No MRF models present

No finite volume options present

Starting time loop

Time = 1e-05

Courant Number mean: 0.527982 max: 0.579401
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
PIMPLE: iteration 1
smoothSolver: Solving for Uy, Initial residual = 1, Final residual = 3.57513e-07, No Iterations 3
smoothSolver: Solving for e, Initial residual = 1, Final residual = 9.26653e-06, No Iterations 4
smoothSolver: Solving for p, Initial residual = 1, Final residual = 2.9034e-09, No Iterations 2
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 0.00801135, global = -0.00506501, cumulative = -0.00506501
PIMPLE: iteration 2
smoothSolver: Solving for Uy, Initial residual = 0.00937948, Final residual = 1.60646e-12, No Iterations 1
smoothSolver: Solving for e, Initial residual = 0.995854, Final residual = 1.47489e-08, No Iterations 1
#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in /lib/x86_64-linux-gnu/libpthread.so.0
#3 Foam::divide(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) at ??:?
#4 Foam::operator/(Foam::tmp<Foam::Field<double> > const&, Foam::tmp<Foam::Field<double> > const&) at ??:?
#5 Foam::freestreamPressureFvPatchScalarField::update Coeffs() at ??:?
#6 Foam::fvMatrix<double>::fvMatrix(Foam::GeometricFi eld<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::dimensionSet const&) in /usr/bin/sonicFoam
#7 Foam::tmp<Foam::fvMatrix<double> > Foam::fv::optionList::operator()<double>(Foam::Geo metricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::word const&) in /usr/bin/sonicFoam
#8 ? in /usr/bin/sonicFoam
#9 __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
#10 ? in /usr/bin/sonicFoam
Floating point exception



I am unsure of why I am getting this as I was able to solve with a different mesh and the exact same p, U, T, and controlDict files. I changed the height of my mesh in order to have the shock wave "exit" the test section.

This is my blockMeshDict file:
scale 1;

vertices
(
(0 0 -0.05) //0
(0 2 -0.05) //1
(2 2 -0.05) //2
(2 0 -0.05) //3
(0.5 1 -0.05) //4
(1 0.89 -0.05) //5
(1.5 1 -0.05) //6
(1 1.11 -0.05) //7
(0 0 0.05) //8
(0 2 0.05) //9
(2 2 0.05) //10
(2 0 0.05) //11
(0.5 1 0.05) //12
(1 0.89 0.05) //13
(1.5 1 0.05) //14
(1 1.11 0.05) //15
(2 1 0.05) //16
(2 1 -0.05) //17
(1 2 0.05) //18
(1 2 -0.05) //19
(1 0 -0.05) //20
(1 0 0.05) //21
(0.5 2 -0.05) //22
(0.5 2 0.05) //23
(0.5 0 -0.05) //24
(0.5 0 0.05) //25
(1.5 2 -0.05) //26
(1.5 2 0.05) //27
(1.5 0 -0.05) //28
(1.5 0 0.05) //29
);
blocks
(
hex (0 24 22 1 8 25 23 9) (25 25 1) simpleGrading (1 1 1)
hex (24 20 5 4 25 21 13 12) (25 25 1) simpleGrading (1 1 1)
hex (4 7 19 22 12 15 18 23) (25 25 1) simpleGrading (1 1 1)
hex (7 6 26 19 15 14 27 18) (25 25 1) simpleGrading (1 1 1)
hex (20 28 6 5 21 29 14 13) (25 25 1) simpleGrading (1 1 1)
hex (6 17 2 26 14 16 10 27) (25 25 1) simpleGrading (1 1 1)
hex (28 3 17 6 29 11 16 14) (25 25 1) simpleGrading (1 1 1)
);

edges

);

boundary
(
inlet
{
type patch;
faces
(
(0 8 9 1)
);
}
outlet
{
type patch;
faces
(
(17 2 10 16)
(3 17 16 11)
);
}
bottom
{
type freestream;
faces
(
(0 24 25 8)
(24 20 21 25)
(28 29 21 20)
(3 11 29 28)
);
}
top
{
type freestream;
faces
(
(9 23 22 1)
(18 19 22 23)
(18 27 26 19)
(27 10 2 26)
);
}
obstacle
{
type slip;
faces
(
(4 12 15 7)
(6 7 15 14)
(12 4 5 13)
(5 6 14 13)
);
}
);

mergePatchPairs
(
);

Any help would be greatly appreciated as it is only failing on the second Pimple iteration, no matter the time step or the number of pimple iterations per time step.

FreezaIcey February 10, 2023 16:44

Solution
 
I solved this by breaking the inlet block into two separate blocks with a point along the leading edge of the airfoil. I believe it was creating a normal shock within the first block and causing the error as I managed to get a visualization of a solution.


All times are GMT -4. The time now is 03:33.