Commit Graph

2057 Commits

Author SHA1 Message Date
139d75be31 TurbulenceModels::LRR: added wallDist.H 2018-10-23 12:17:44 +01:00
76425c1021 wave: Formatted references according the style guide 2018-10-19 11:06:25 +01:00
a0a88d66be volPointInterpolation: Interpolation with patch-type overrides
This resolves bug report https://bugs.openfoam.org/view.php?id=2057
2018-10-19 11:06:25 +01:00
f9971f80d7 thermophysicalModels::equationOfState: Completed departure functions for all except adiabaticPerfectFluid
Changed liquid thermo from sensibleEnthalpy to sensibleInternalEnergy in
tutorials.  It is generally more convergent and stable to solve for internal
energy if the fluid is incompressible or weakly compressible.
2018-10-19 10:31:42 +01:00
ffc354252f equationOfState::perfectFluid: Added enthalpy departure function
Updated steamInjection to solve for internal energy for the water.
2018-10-18 12:10:28 +01:00
62d278467c src/OpenFOAM/Make/files: Updated 2018-10-17 21:23:17 +01:00
625c6854fd equationOfState::Boussinesq, PengRobinsonGas, icoPolynomial added missing departure functions 2018-10-17 18:53:07 +01:00
91d3f06846 polynomialFunction: Removed unused class 2018-10-17 18:52:28 +01:00
a8fc88b8ee DimensionedField, GeometricField: Added assignment to zero
Zeroing a dimensioned field can now be achieved by assignment to the
zero type. This prevents the clutter associated with constructing an
appropriate dimensioned type, or having to use multiply-equals-zero as a
workaround.
2018-10-17 13:41:16 +01:00
63b641a068 interpolationCellPointWallModified: Restored interpolation method
This interpolation method was previously removed by commit fbf00209.

The intention of this method is to provide a slip-like wall boundary
condition for the velocity when interpolated to the location of a
Lagrangian element. This is difficult because any velocity which points
through the wall can cause a drag model and a rebound wall interaction
to "fight"; i.e., the drag pushes the particle to the wall, the wall
bounces it back. This can result in the program hanging.

This method extrapolates a vector field to the wall points and then
modifies the result so that it does not point through the wall. It does
this by rotating the vectors towards the (reversed) point normal. The
result is also scaled so that is reduced to zero if the necessary
rotation exceeds 90 degrees.

This provides an alternate resolution to bug report
https://bugs.openfoam.org/view.php?id=2826
2018-10-17 08:22:13 +01:00
7ead70d89a thermophysicalModels::equationOfState: Added E and Cv departure functions 2018-10-16 17:53:17 +01:00
fc00e4c0c9 thermophysicalModels: Added direct support for Es, Ea and Cv as thermodynamic primitives 2018-10-16 09:59:42 +01:00
8102dd3e47 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-10-15 10:19:50 +01:00
47efc8f898 cyclicAMIPointPatchField: Fixed type-detection for ACMI 2018-10-15 09:17:19 +01:00
45a4930538 rhoThermos: Instantiate liquid thermo packages on eConstThermo rather than hConstThermo
to provide better numerical behaviour of the conversion of internal energy to temperature.
2018-10-13 21:50:10 +01:00
7f16808709 eConstThermo: Improve consistency between the H and E functions
so that conversions between H and E and back again reproduce the original
values.
2018-10-13 21:46:48 +01:00
e1e7d4d763 nutkAtmRoughWallFunctionFvPatchScalarField: Minor improvement to documentation 2018-10-13 21:46:22 +01:00
c17e6dbfe4 KinematicParcel: Do not execute face/patch functions when inactive
Resolves bug report https://bugs.openfoam.org/view.php?id=3084
2018-10-12 08:57:10 +01:00
8f3f2f7365 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-10-05 21:30:13 +01:00
ff2c2dfea3 turbulentTransportModel: Renamed template parameter
Resolves request https://bugs.openfoam.org/view.php?id=3081
2018-10-05 21:29:05 +01:00
94d5db7198 treeBoundBox: Improved asymmetry
This fixes a failure in the foamyHexMesh mixerVessel case
2018-10-05 16:06:26 +01:00
94d0b9ffe5 TurbulenceModels::generalizedNewtonian: New structure to support generalized Newtonian laminar transport
Within this structure the BirdCarreau, Casson, CrossPowerLaw, HerschelBulkley,
powerLaw and strainRateFunction strain-dependent viscosity based non-Newtonian
fluid models may be selected for incompressible or compressible flow.

In the case of compressible flow the strain-dependent viscosity functions are
applied to the temperature dependent viscosity so that if the WLF viscosity
model is chosen in conjunction with the CrossPowerLaw the effective model is
Cross-WLF which is commonly used for polymer flow.

These models are selected in the constant/turbulenceProperties file, e.g.

simulationType  laminar;

laminar
{
    laminarModel generalizedNewtonian;

    viscosityModel CrossPowerLaw;

    nuInf      10;
    m          0.4;
    n          3;
}

This new implementation is more general and flexible than the previous
incompressible only non-Newtonian viscosity models, which were selected in the
constant/transportProperties file.  This implementation is now deprecated and
will be phased-out.
2018-10-04 22:31:48 +01:00
79771811d8 thermophysicalModels/specie/transport: Added WLF transport model
Description
    Transport package using the Williams-Landel-Ferry model.

    Templated into a given thermodynamics package (needed for thermal
    conductivity).

    Dynamic viscosity [kg/m.s]
    \f[
        \mu = \mu_0 \exp \left(\frac{-C_1 ( T - T_r )}{C_2 + T - T_r}\right)
    \f]

    References:
    \verbatim
        Williams, M. L., Landel, R. F., & Ferry, J. D. (1955).
        The temperature dependence of relaxation mechanisms
        in amorphous polymers and other glass-forming liquids.
        Journal of the American Chemical society, 77(14), 3701-3707.
    \endverbatim
2018-10-04 22:29:38 +01:00
a7520838f9 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2018-10-04 22:25:11 +01:00
c9ae73f1e1 SingleKineticRateDevolatilisation.H: Corrected documentation 2018-10-04 22:24:09 +01:00
6aa4fe45f8 Corrected line lengths over 80 characters 2018-10-03 12:18:58 +01:00
39ad49bc34 meshSearch: Prevent hang in calculation of line-boundary intersections
This fix changes how the intersections loop ignores previously
intersected faces. It now marks them by their index so that subsequent
iterations ignore them.

Before this change, after an intersection was found the start point was
advanced by a small amount to move the past the intersection. The
problem with this was if multiple boundary faces or the end point were
in close proximity to the intersection then the move forward might span
them. This could lead to intersections being missed or counted multiple
times, in some cases indefinitely.

Based on a patch contributed by Mattijs Janssens
Resolves bug report https://bugs.openfoam.org/view.php?id=1147
2018-10-03 08:48:21 +01:00
13fe8ed035 VectorSpace: Return result of normalise in the original form 2018-10-02 11:47:01 +01:00
36ac553826 primitives:1️⃣ Specialize the '+' and '-' operators for scalar 2018-10-01 10:36:44 +01:00
de1621ee65 POSIX::readDir: Simplified handling of dirEntries 2018-09-29 10:33:50 +01:00
0c866b5e10 POSIX::readDir: Filter duplicates generated by the filtering of variants
Resolves bug-report https://bugs.openfoam.org/view.php?id=3078
2018-09-28 16:32:57 +01:00
774f76fc66 primitives/one: Corrected return type of '+' and '-' operators 2018-09-28 14:37:22 +01:00
fb173af944 postProcess: Updated to allow functionObjects to access fields on construction 2018-09-28 10:29:22 +01:00
441b7e041b MULES: Added optional boundaryExtremaCoeff
This provides more flexibility in specifying the allowed internal and boundary
extrema.

For driftFluxFoam and other settling problems it is beneficial to set the
boundaryExtremaCoeff to 1 to allow rapid accumulation of the partials on the
bottom wall (which was the previous default behaviour) but this is not suitable
for many Euler-Euler cases for which a uniform etrema coefficient is preferable,
either 0 or a small value.

Now by default boundaryExtremaCoeff is set to extremaCoeff which defaults to 0
which provides the behaviour before

OpenFOAM-dev commit cb2bc60fa5

and the driftFluxFoam tutorials have been updated adding

        boundaryExtremaCoeff 1;

to the MULES controls in fvSolution so reproduce the previous behaviour.
2018-09-27 15:03:01 +01:00
819c24869e singleRegionCorrectorConvergenceControl: Typo in error message 2018-09-24 09:54:53 +01:00
1c26ed2d31 particle: Added logic to break closed loops
When a part of the tetrahedral decomposition is inverted, tracking along
a straight line can result in a closed loop which never ends.

This change adds a limit to the number of tracks that are done that end
before or at the maximum distance already achieved. This breaks these
closed loops and prevents the simulation from hanging. The particles do,
however, end up in an incorrect position as a result of the tracking
being abandoned at an intermediate point in the step. A warning is
printed to indicate when this is occuring.

This resolves bug report https://bugs.openfoam.org/view.php?id=3056
2018-09-24 09:19:21 +01:00
490a297190 Doxyfile: include .L files and exclude .C files which clash with application source files
Resolves bug-report https://bugs.openfoam.org/view.php?id=3070
2018-09-06 18:05:22 +01:00
e757d5210e functionObjects::log: New functionObject to calculate the natural logarithm of a scalar field
Description
    Calculates the natural logarithm of the specified scalar field.

    Performs \f$ln(max(x, a))\f$ where \f$x\f$ is the field and \f$a\f$ an
    optional clip to handle 0 or negative \f$x\f$.

The etc/caseDicts/postProcessing/fields/log configuration file is provided so
that the simple #includeFunc can be used to execute this functionObject during
the run, e.g. for some dimensionless field x

functions
{
    #includeFunc log(x)
}

or if x might be 0 or negative in some regions the optional clip may be applied:

functions
{
    #includeFunc log(p,clip=1e-6)
}
2018-09-05 23:43:54 +01:00
c75f7b6e19 LESdeltas::PrandtlDelta: Corrected documentation
Resolves bug-report https://bugs.openfoam.org/view.php?id=3066
2018-09-04 14:46:54 +01:00
3fc52f94d7 Function1/Scale: Added optional scaling of the 'x' argument to the scale and value functions
Resolves feature request https://bugs.openfoam.org/view.php?id=3053#c10023
2018-09-03 18:40:21 +01:00
c7e2611975 radiationCoupledBase: Corrected scope of the NamedEnum definition 2018-08-31 22:09:05 +01:00
187557eb4a radiation/derivedFvPatchFields: Rationalised namespace of the BCs 2018-08-31 17:04:32 +01:00
90c74d8c7c Function1/CSV: Allow reference column index to be higher than highest component column index
Patch contributed by Juho Peltola, VTT.
Resolves patch request https://bugs.openfoam.org/view.php?id=3053
2018-08-31 16:47:36 +01:00
e750f2555c src/OpenFOAM: Rationalised use of enumerations by using the C++11 scoped form
for Time, treeBoundBox, indexedOctree, dynamicIndexedOctree, CirculatorBase
2018-08-31 16:11:16 +01:00
bef34e6b05 greyDiffusiveRadiationMixedFvPatchScalarField, wideBandDiffusiveRadiationMixedFvPatchScalarField: Added mapping functions
Patch contributed by Timo Niemi, VTT.
Resolves patch request https://bugs.openfoam.org/view.php?id=3062
2018-08-31 16:07:41 +01:00
dee5b8e4eb src/OpenFOAM: Rationalised use of enumerations by using the C++11 scoped form
for polynomialEqns
2018-08-30 13:02:18 +01:00
5377d637f7 LangmuirHinshelwoodReactionRate: Added T^beta pre-factor to the Arrhenius expressions 2018-08-28 17:28:46 +01:00
4f533d3c36 src/OpenFOAM: Rationalised use of enumerations by using the C++11 scoped form
for triangle intersection.
2018-08-27 20:48:18 +01:00
8ed92de98c src/OpenFOAM: Rationalised use of enumerations by using the C++11 scoped form
for

    db/functionObjects/timeControl/timeControl.H: timeControls
    primitives/bools/Switch/Switch.H: class switchType
    primitives/strings/fileName/fileName.H: fileType
    primitives/strings/wordRe/wordRe.H: compOption
2018-08-25 07:26:51 +01:00
61c9bc2ee3 functionObjects: Rationalised use of enumerations by using the C++11 scoped form 2018-08-23 17:25:47 +01:00