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/)
-   -   What is this FOAM warning: Unknown matrix type combination means? (https://www.cfd-online.com/Forums/openfoam-solving/187730-what-foam-warning-unknown-matrix-type-combination-means.html)

chengdi May 13, 2017 20:46

What is this FOAM warning: Unknown matrix type combination means?
 
Hi, everyone

I got the following msg when I turned on DebugSwitches in rhoSimpleFoam.
Here is part of the log:

Code:

Starting time loop

forces forces1:
    Not including porosity effects
forceCoeffs forces1:
    Not including porosity effects
Time = 1

--> FOAM Warning :
    From function void Foam::lduMatrix::operator-=(const Foam::lduMatrix&)
    in file matrices/lduMatrix/lduMatrix/lduMatrixOperations.C at line 286
    Unknown matrix type combination
    this : diagonal:0 symmetric:0 asymmetric:1
    A    : diagonal:0 symmetric:0 asymmetric:0
  Normalisation factor = 438.8332991218
DILUPBiCGStab:  Solving for Ux, Initial residual = 0.9999999196256, Final residual = 9.665819444403e-10, No Iterations 3
  Normalisation factor = 111.6043953712
DILUPBiCGStab:  Solving for Uy, Initial residual = 0.9999999122811, Final residual = 6.521155555565e-10, No Iterations 3
--> FOAM Warning :
    From function void Foam::lduMatrix::operator-=(const Foam::lduMatrix&)
    in file matrices/lduMatrix/lduMatrix/lduMatrixOperations.C at line 286
    Unknown matrix type combination
    this : diagonal:0 symmetric:0 asymmetric:1
    A    : diagonal:0 symmetric:0 asymmetric:0
  Normalisation factor = 25947.66551949
DILUPBiCGStab:  Solving for e, Initial residual = 0.9999966481434, Final residual = 3.3088000014e-10, No Iterations 2
--> FOAM Warning :
    From function void Foam::lduMatrix::operator-=(const Foam::lduMatrix&)
    in file matrices/lduMatrix/lduMatrix/lduMatrixOperations.C at line 286
    Unknown matrix type combination
    this : diagonal:0 symmetric:1 asymmetric:0
    A    : diagonal:0 symmetric:0 asymmetric:0
  Normalisation factor = 46.30762557178
DICPCG:  Solving for p, Initial residual = 0.9999999949062, Final residual = 9.456697817244e-11, No Iterations 103
--> FOAM Warning :
    From function void Foam::lduMatrix::operator-=(const Foam::lduMatrix&)
    in file matrices/lduMatrix/lduMatrix/lduMatrixOperations.C at line 286
    Unknown matrix type combination
    this : diagonal:0 symmetric:1 asymmetric:0
    A    : diagonal:0 symmetric:0 asymmetric:0
  Normalisation factor = 69959.97350504
DICPCG:  Solving for p, Initial residual = 0.0007458501311764, Final residual = 8.84361415006e-11, No Iterations 69
time step continuity errors : sum local = 7.073776712562e-12, global = 1.62754446914e-13, cumulative = 1.62754446914e-13
rho max/min : 2.632186229715 1.93075973848
ExecutionTime = 0.08 s  ClockTime = 1 s

SIMPLE solution statistics:
    U: tolerance = 0.9999999196256 (1e-08)
SIMPLE solution statistics:
    p: tolerance = 0.9999999949062 (1e-08)
forceCoeffs forces1 write:
    Cm    = 1.668416584837
    Cd    = 2.102251277892
    Cl    = 6.004158371472
    Cl(f) = 4.670495770573
    Cl(r) = 1.333662600899

fieldMinMax fieldMinMax1 write:
    min(mag(U)) = 0 at location (0.9995180946345 -6.8329751524e-05 0.5)
    max(mag(U)) = 59.0424609648 at location (0.09116378316311 0.04698392201502 0.5)
    min(p) = 166205.3080159 at location (0.948828058586 0.007031629229023 0.5)
    max(p) = 226738.9321484 at location (0.001180689701005 -0.005843479396189 0.5)
    min(T) = 299.6079419896 at location (0.1926696369711 0.05614551067966 0.5)
    max(T) = 300.3763734475 at location (0.9966139497257 -0.0004883533836858 0.5)
    min(nuTilda) = 0 at location (0.9995180946345 -6.8329751524e-05 0.5)
    max(nuTilda) = 2.604143606306e-05 at location (398.1856161464 -4.245372262308e-06 0.5)

Time = 2

Any idea what is wrong? How could a matrix being either symmetric or asymmetric?

chengdi May 13, 2017 21:34

I just tried to use DDD to locate the warning. It is in the code like this:

--------------------
fvScalarMatrix EEqn
(
fvm::div(phi, he)
+ (
he.name() == "e"
? fvc::div(phi, volScalarField("Ekp", 0.5*magSqr(U) + p/rho))
: fvc::div(phi, volScalarField("K", 0.5*magSqr(U)))
)
- fvm::laplacian(turbulence->alphaEff(), he)
==
fvOptions(rho, he)
);
----------------------------------

more specific, it is in the operator==() . I did not compile the full version of debug, So I cannot follow into it now.


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