View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000799OpenFOAM[All Projects] Bugpublic2013-03-25 13:552013-03-25 16:29
Reporterdkxls 
Assigned Tohenry 
PriorityurgentSeveritymajorReproducibilityalways
StatusclosedResolutionfixed 
PlatformLinux 64bitOSOpenSUSEOS Version12.2
Product Version 
Target VersionFixed in Version 
Summary0000799: Wrong viscosity for multiComponentMixture due to missing "+=" operator in sutherlandTransport
DescriptionThe mixture viscosity for a multiComponentMixture with sutherlandTransport is wrong and corresponds always to the viscosity of the first species.

The error stems from the missing += operator in the sutherlandTransport class. A workaround for the problem is to replace the "+=" operator by "mixture_ = mixture_ + ..." in multiComponentMixture.C, since the "+" operator is implemented.

The error obviously only occurs, if different Sutherland coefficients for each species are used.
Hence the bug might be largely uncovered due to the fact that most species involving simulation use the CHEMKIN reader, which sets the Sutherland coefficients for all species to the ones of nitrogen.
Steps To ReproduceAny simulation with different Sutherland coefficients for each species should suffer from the bug.

For easy reproduction of the bug, I attached a utility that writes out the mixture viscosity in two ways:
1) explicitly mass averaged
2) the OpenFOAM way

Included in the tar.gz file are two dictionaries, one with constant and one varying Sutherland coeffs.
Additional InformationThe problem has first been reported in the cfd-online.com forum by ChrisA:
http://www.cfd-online.com/Forums/openfoam-programming-development/114833-mixture-viscosity-behaving-strangely.html [^]
TagsNo tags attached.
Attached Filesgz file icon printGasThermoTransportProperties.tar.gz [^] (7,603 bytes) 2013-03-25 13:55

- Relationships

-  Notes
(0002058)
henry (manager)
2013-03-25 15:02

Your application does not compile in OpenFOAM-2.2.x; it is not clear which version of OpenFOAM it is written for.

I have added the +=, -= and *= operators to sutherlandTransport and constTransport
in OpenFOAM-2.1.x and OpenFOAM-2.2.x.

Note that the current method of averaging the model coefficients is a rough approximation for transport properties and appropriate mixing rules for the specie transport properties should be applied. The new thermo structure in OpenFOAM-2.2.? will support more general mixing rules.
(0002062)
dkxls (reporter)
2013-03-25 15:58

Thanks for the quick fixes.
However, I'm using OpenFOAM 2.0.x and also the test utility is written for that version.

Therefore, could you also push these changes to OpenFOAM 2.0.x?

About the averaging method: I'm well aware of the fact that mass averaging is just a rough approximation and I have implemented already the mixture model according to Wilke's formula (viscosity) and Mathur (thermal conductivity).
Though these are just implemented in my own thermo class, as it was not (easily) possible to do it in the mixture class prior to 2.2.x.

Best regards,
Armin
(0002063)
henry (manager)
2013-03-25 16:03

I would recommend that you upgrade both do get the bug fixes and to benefit from the new more flexible thermodynamics structure in OpenFOAM-2.2.?.
(0002064)
dkxls (reporter)
2013-03-25 16:11

I agree that a upgrade would be beneficial, but I cannot allocate the time right now to port all of my own code to 2.2.x. Therefore I'm right now stuck with 2.0.x.

However, I will do the update to 2.2.x once I have the time to go through all the changes in the new thermo classes.
(0002065)
henry (manager)
2013-03-25 16:29

The changes you need are also in OpenFOAM-2.1.x.

- Issue History
Date Modified Username Field Change
2013-03-25 13:55 dkxls New Issue
2013-03-25 13:55 dkxls File Added: printGasThermoTransportProperties.tar.gz
2013-03-25 15:02 henry Note Added: 0002058
2013-03-25 15:02 henry Status new => resolved
2013-03-25 15:02 henry Resolution open => fixed
2013-03-25 15:02 henry Assigned To => henry
2013-03-25 15:58 dkxls Note Added: 0002062
2013-03-25 15:58 dkxls Status resolved => feedback
2013-03-25 15:58 dkxls Resolution fixed => reopened
2013-03-25 16:03 henry Note Added: 0002063
2013-03-25 16:03 henry Status feedback => closed
2013-03-25 16:03 henry Resolution reopened => fixed
2013-03-25 16:11 dkxls Note Added: 0002064
2013-03-25 16:11 dkxls Status closed => feedback
2013-03-25 16:11 dkxls Resolution fixed => reopened
2013-03-25 16:29 henry Note Added: 0002065
2013-03-25 16:29 henry Status feedback => closed
2013-03-25 16:29 henry Resolution reopened => fixed