- Feb 20, 2017
-
-
Henry Weller authored
-
Henry Weller authored
-
- Feb 19, 2017
-
-
Henry Weller authored
This allows single, multi-phase and VoF compressible simulations to be performed with the accurate thermophysical property functions for liquids provided by the liquidProperty classes. e.g. in the multiphase/compressibleInterFoam/laminar/depthCharge2D tutorial water can now be specified by thermoType { type heRhoThermo; mixture pureMixture; properties liquid; energy sensibleInternalEnergy; } mixture { H2O; } as an alternative to the previous less accurate representation defined by thermoType { type heRhoThermo; mixture pureMixture; transport const; thermo hConst; equationOfState perfectFluid; specie specie; energy sensibleInternalEnergy; } mixture { specie { molWeight 18.0; } equationOfState { R 3000; rho0 1027; } thermodynamics { Cp 4195; Hf 0; } transport { mu 3.645e-4; Pr 2.289; } } However the increase in accuracy of the new simpler and more convenient specification and representation comes at a cost: the NSRDS functions used by the liquidProperties classes are relatively expensive to evaluate and the depthCharge2D case takes ~14% longer to run.
-
- Feb 18, 2017
-
-
Henry Weller authored
Description Base-class for thermophysical properties of solids, liquids and gases providing an interface compatible with the templated thermodynamics packages. liquidProperties, solidProperties and thermophysicalFunction libraries have been combined with the new thermophysicalProperties class into a single thermophysicalProperties library to simplify compilation and linkage of models, libraries and applications dependent on these classes.
-
Henry Weller authored
The entries for liquid and solid species can now be simply be the name unless property coefficients are overridden in which are specified in a dictionary as before e.g. in the tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek case the water is simply specified liquids { H2O; } and solid ash uses standard coefficients but the coefficients for carbon are overridden thus solids { C { rho 2010; Cp 710; kappa 0.04; Hf 0; emissivity 1.0; } ash; }
-
- Feb 17, 2017
-
-
Henry Weller authored
The defaultCoeffs entry is now redundant and supported only for backward compatibility. To specify a liquid with default coefficients simply leave the coefficients dictionary empty: liquids { H2O {} } Any or all of the coefficients may be overridden by specifying the properties in the coefficients dictionary, e.g. liquids { H2O { rho { a 1000; b 0; c 0; d 0; } } }
-
Henry Weller authored
When liquids are constructed from dictionary the coefficients are now first initialized to their standard values and overridden by the now optional entries provided in the dictionary. For example to specify water with all the standard temperature varying properties but override only the density with a constant value of 1000 specify in thermophysicalProperties liquids { H2O { defaultCoeffs no; H2OCoeffs { rho { a 1000; b 0; c 0; d 0; } } } }
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
The fundamental properties provided by the specie class hierarchy were mole-based, i.e. provide the properties per mole whereas the fundamental properties provided by the liquidProperties and solidProperties classes are mass-based, i.e. per unit mass. This inconsistency made it impossible to instantiate the thermodynamics packages (rhoThermo, psiThermo) used by the FV transport solvers on liquidProperties. In order to combine VoF with film and/or Lagrangian models it is essential that the physical propertied of the three representations of the liquid are consistent which means that it is necessary to instantiate the thermodynamics packages on liquidProperties. This requires either liquidProperties to be rewritten mole-based or the specie classes to be rewritten mass-based. Given that most of OpenFOAM solvers operate mass-based (solve for mass-fractions and provide mass-fractions to sub-models it is more consistent and efficient if the low-level thermodynamics is also mass-based. This commit includes all of the changes necessary for all of the thermodynamics in OpenFOAM to operate mass-based and supports the instantiation of thermodynamics packages on liquidProperties. Note that most users, developers and contributors to OpenFOAM will not notice any difference in the operation of the code except that the confusing nMoles 1; entries in the thermophysicalProperties files are no longer needed or used and have been removed in this commet. The only substantial change to the internals is that species thermodynamics are now "mixed" with mass rather than mole fractions. This is more convenient except for defining reaction equilibrium thermodynamics for which the molar rather than mass composition is usually know. The consequence of this can be seen in the adiabaticFlameT, equilibriumCO and equilibriumFlameT utilities in which the species thermodynamics are pre-multiplied by their molecular mass to effectively convert them to mole-basis to simplify the definition of the reaction equilibrium thermodynamics, e.g. in equilibriumCO // Reactants (mole-based) thermo FUEL(thermoData.subDict(fuelName)); FUEL *= FUEL.W(); // Oxidant (mole-based) thermo O2(thermoData.subDict("O2")); O2 *= O2.W(); thermo N2(thermoData.subDict("N2")); N2 *= N2.W(); // Intermediates (mole-based) thermo H2(thermoData.subDict("H2")); H2 *= H2.W(); // Products (mole-based) thermo CO2(thermoData.subDict("CO2")); CO2 *= CO2.W(); thermo H2O(thermoData.subDict("H2O")); H2O *= H2O.W(); thermo CO(thermoData.subDict("CO")); CO *= CO.W(); // Product dissociation reactions thermo CO2BreakUp ( CO2 == CO + 0.5*O2 ); thermo H2OBreakUp ( H2O == H2 + 0.5*O2 ); Please report any problems with this substantial but necessary rewrite of the thermodynamic at https://bugs.openfoam.org Henry G. Weller CFD Direct Ltd.
-
- Feb 13, 2017
-
-
Henry Weller authored
-
- Feb 12, 2017
-
-
Henry Weller authored
functionObjects::scalarTransport: Added support for optional laminar and turbulent diffusion coefficients Description Evolves a passive scalar transport equation. - To specify the field name set the \c field entry - To employ the same numerical schemes as another field set the \c schemesField entry, - A constant diffusivity may be specified with the \c D entry, - Alternatively if a turbulence model is available a turbulent diffusivity may be constructed from the laminar and turbulent viscosities using the optional diffusivity coefficients \c alphaD and \c alphaDt (which default to 1): \verbatim D = alphaD*nu + alphaDt*nut \endverbatim Resolves feature request https://bugs.openfoam.org/view.php?id=2453
-
- Feb 09, 2017
-
-
Henry Weller authored
Resolves bug-report https://bugs.openfoam.org/view.php?id=2455
-
Henry Weller authored
Now the interFoam and compressibleInterFoam families of solvers use the same alphaEqn formulation and supporting all of the MULES options without code-duplication. The semi-implicit MULES support allows running with significantly larger time-steps but this does reduce the interface sharpness.
-
- Feb 08, 2017
-
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
Description Simple solidification porosity model This is a simple approximation to solidification where the solid phase is represented as a porous blockage with the drag-coefficient evaluated from \f[ S = - \alpha \rho D(T) U \f] where \vartable \alpha | Optional phase-fraction of solidifying phase D(T) | User-defined drag-coefficient as function of temperature \endvartable Note that the latent heat of solidification is not included and the temperature is unchanged by the modelled change of phase. Example of the solidification model specification: \verbatim type solidification; solidificationCoeffs { // Solidify between 330K and 330.5K D table ( (330.0 10000) // Solid below 330K (330.5 0) // Liquid above 330.5K ); // Optional phase-fraction of solidifying phase alpha alpha.liquid; // Solidification porosity is isotropic // use the global coordinate system coordinateSystem { type cartesian; origin (0 0 0); coordinateRotation { type axesRotation; e1 (1 0 0); e2 (0 1 0); } } } \endverbatim
-
- Feb 07, 2017
-
-
Henry Weller authored
Description Simple solidification porosity model This is a simple approximation to solidification where the solid phase is represented as a porous blockage with the drag-coefficient evaluated from \f[ S = - \rho D(T) U \f] where \vartable D(T) | User-defined drag-coefficient as function of temperature \endvartable Note that the latent heat of solidification is not included and the temperature is unchanged by the modelled change of phase. Example of the solidification model specification: \verbatim type solidification; solidificationCoeffs { // Solidify between 330K and 330.5K D table ( (330.0 10000) // Solid below 330K (330.5 0) // Liquid above 330.5K ); // Solidification porosity is isotropic // use the global coordinate system coordinateSystem { type cartesian; origin (0 0 0); coordinateRotation { type axesRotation; e1 (1 0 0); e2 (0 1 0); } } } \endverbatim
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
-
- Feb 06, 2017
-
-
Henry Weller authored
Patch contributed by Timo Niemi, VTT. Resolves patch request https://bugs.openfoam.org/view.php?id=2452
-
- Feb 03, 2017
-
-
Henry Weller authored
if convergence is not achieved within the maximum number of iterations. Sometimes, particularly running in parallel, PBiCG fails to converge or diverges without warning or obvious cause leaving a solution field containing significant errors which can cause divergence of the application. PBiCGStab is more robust and does not suffer from the problems encountered with PBiCG.
-
Henry Weller authored
Compressing and decompressing binary files introduces a significant IO overhead without a providing significant reduction in file-size.
-
Henry Weller authored
Patch contributed by Mattijs Janssens
-
Henry Weller authored
Patch contributed by Mattijs Janssens
-
Henry Weller authored
-
Henry Weller authored
-
Henry Weller authored
kOmegaSSTSato: Change correctNut() to correctNut(S2, F2) Resolves bug-report https://bugs.openfoam.org/view.php?id=2450
-
- Feb 02, 2017
-
-
Henry Weller authored
-
- Jan 30, 2017
-
-
Henry Weller authored
Patch contributed by Juho Peltola, VTT Resolves patch request https://bugs.openfoam.org/view.php?id=2446
-
Henry Weller authored
-
Henry Weller authored
Patch contributed by Juho Peltola, VTT. Resolves patch request https://bugs.openfoam.org/view.php?id=2443
-
- Jan 28, 2017
-
-
Henry Weller authored
Patch contributed by Bruno Santos Resolves bug-report https://bugs.openfoam.org/view.php?id=2441
-
Henry Weller authored
Patch contributed by Bruno Santos Resolves patch request https://bugs.openfoam.org/view.php?id=2444
-
Henry Weller authored
Patch contributed by Bruno Santos Resolves patch request https://bugs.openfoam.org/view.php?id=2424
-