Commit Graph

4366 Commits

Author SHA1 Message Date
c829ae0cfc reacting*EulerFoam: Added pressure referencing for incompressible phase systems
Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2020-02-10 13:42:25 +00:00
3d70311c21 filmViscosityModel::thixotropicViscosity: Added optional Bingham plastic yield stress support
There is now an optional tauy entry in the thixotropicCoeffs to specify the
Bingham yield stress.
2020-02-10 08:57:00 +00:00
ab9b5eae92 Revert "filmViscosityModel::thixotropicViscosity: Added optional Bingham plastic yield stress support"
This reverts commit fc5d0c7dee.
2020-02-10 08:55:52 +00:00
19c9b59c4a tutorials/heatTransfer/buoyantSimpleFoam/buoyantCavity: Swapped the frontAndBack and topAndBottom patch names 2020-02-09 14:36:10 +00:00
972af235a0 List: Corrected construction from SLList
Resolves bug-report https://bugs.openfoam.org/view.php?id=3448
2020-02-09 12:05:42 +00:00
d8cf7788eb CodedBase: Changed construction of static words to avoid construction order problems with Clang 20200208 2020-02-07 22:09:09 +00:00
04a3f9f237 CodedFunction1: Moved the static data member definitions to makeFunction1s.C 2020-02-07 15:42:13 +00:00
fc5d0c7dee filmViscosityModel::thixotropicViscosity: Added optional Bingham plastic yield stress support
There is now an optional tauy entry in the thixotropicCoeffs to specify the
Bingham yield stress, e.g.:

    filmViscosityModel thixotropic;
    thixotropicCoeffs
    {
        mu0             100;
        muInf           0.1;
        a               0.1;
        b               3;
        c               0.005;
        d               0.9;
        tauy            1.1;   // Yield stress in Pa
    }
2020-02-07 15:14:52 +00:00
a728a69c59 codedMixedFvPatchField, codedFixedValuePointPatchField: Updated and simplified using the new CodedBase class
reducing code duplication and maintenance overhead.
2020-02-07 00:05:27 +00:00
6a2ecb4d04 nutkAtmRoughWallFunction: Updated calcNut -> nut
Resolves bug-report https://bugs.openfoam.org/view.php?id=3443
2020-02-06 21:40:20 +00:00
4cbb849eda codedFixedValueFvPatchField: Updated and simplified using the new CodedBase class
reducing code duplication and maintenance overhead.
2020-02-06 16:04:21 +00:00
b2c30b93ce reactingEulerFoam::phaseSystem: Corrected loops to start from 1 2020-02-06 14:49:09 +00:00
cdf95fa6ef reactingEulerFoam::phaseSystems: Ensure the sum of phase fractions of the moving phases has calculated BCs 2020-02-06 14:38:46 +00:00
082a3c3ff3 General maintenance: Replaced convertToRad with degToRad 2020-02-05 17:30:39 +00:00
d1170cd177 reactingMultiphaseEulerFoam: Added referencePhase option
In multiphase systems it is only necessary to solve for all but one of the
moving phases.  The new referencePhase option allows the user to specify which
of the moving phases should not be solved, e.g. in constant/phaseProperties of the
tutorials/multiphase/reactingMultiphaseEulerFoam/RAS/fluidisedBed tutorial case with

phases (particles air);

referencePhase air;

the particles phase is solved for and the air phase fraction and fluxes obtained
from the particles phase which provides equivalent behaviour to
reactingTwoPhaseEulerFoam and is more efficient than solving for both phases.
2020-02-05 16:49:22 +00:00
5f79067082 reactingTwoPhaseEulerFoam::YEqns.H: Removed temporary diagnostic messages 2020-02-05 16:46:36 +00:00
35565437f5 reactingMultiphaseEulerFoam::multiphaseSystem: Updated implicitPhasePressure handling to improve stability and allow larger time-steps 2020-02-05 10:56:12 +00:00
99725b178f phaseCompressibleTurbulenceModels/Make/options: Removed redundant include 2020-02-04 13:10:16 +00:00
1dfec06aac twoPhaseCompressibleTurbulenceModels: Removed duplicate instantiation of phase turbulence model base classes 2020-02-04 12:17:44 +00:00
d728b23427 codedFunctionObject: Updated and simplified using the new CodedBase 2020-02-03 21:44:44 +00:00
7a717a6929 reactingEulerFoam/phaseCompressibleTurbulenceModels: New turbulence library for both two and multiphase reactingEulerFoam solvers
combining the multiphaseCompressibleTurbulenceModels and derivedFvPatchFields
libraries with the generic multiphase turbulence models from the
twoPhaseCompressibleTurbulenceModels library, kineticTheoryModels and
phasePressureModel into a single common library compiled and linked into both
reactingTwoPhaseEulerFoam and reactingMultiphaseEulerFoam.
2020-02-03 18:33:11 +00:00
01f4faa486 reactingEulerFoam::kineticTheoryModel: Generalised to handle any pair of phases in a multiphase system
If the system has more than two phases the continuous phase must be specified.

Patch contributed by Timo Niemi, VTT.
2020-02-03 18:29:42 +00:00
0bff8ef536 reactingMultiphaseEulerFoam: Completed support for LTS in the face momentum formulation
consistent with the treatment in reactingTwoPhaseEulerFoam and using the same
included files to avoid code duplication.
2020-02-03 11:16:00 +00:00
963392e86c CodedBase: New template wrapper to provide most of the members needed by codedBase
This significantly simplifies the creation and maintenance of coded classes and
used in CodedFunction1 to provide an example of its use; the other coded classes
will be refactored and simplified in this manner in the future.
2020-02-02 18:17:31 +00:00
617695fef4 CodedFunction1: Resolved problem with operator order in the description string construction 2020-02-01 17:50:01 +00:00
dbdc119309 CodedFunction1: Updated documentation 2020-02-01 17:00:35 +00:00
7632b94218 tutorials/basic/potentialFoam/pitzDaily: Use the centralised blockMeshDict $FOAM_TUTORIALS/resources/blockMesh/pitzDaily 2020-02-01 06:22:35 +00:00
7282c0575d tutorials/incompressible/pisoFoam/LES/pitzDailyMapped: Reverted blockMeshDict 2020-01-31 23:48:09 +00:00
0dd2e97bd8 CodedFunction1: New Function1 which uses codeStream to dynamically compile the value function code
For example in the new tutorial case:
tutorials/incompressible/pimpleFoam/laminar/pitzDailyPulse
a cosine bell velocity pulse is specified at the inlet by directly defining the
code for it:

    inlet
    {
        type            uniformFixedValue;
        uniformValue    coded;

        name            pulse;

        codeInclude
        #{
            #include "mathematicalConstants.H"
        #};

        code
        #{
            return vector
            (
                0.5*(1 - cos(constant::mathematical::twoPi*min(x/0.3, 1))),
                0,
                0
            );
        #};
    }

which is then compiled automatically and linked into the running pimpleFoam
dynamically and executed to set the inlet velocity.
2020-01-31 23:39:59 +00:00
aff00a2e7e dlLibraryTable: Simplified and rationalised the handling of dynamic library loading
Rather than being tied to the Time class the dlLibraryTable libs is now a global
variable in the Foam namespace which is accessable by any class needing to load
dynamic libraries, in particular argList, Time and codeStream.
2020-01-31 08:18:10 +00:00
6dc3b30017 functionObjects::randomise: Resolved problem with construction order 2020-01-29 19:22:39 +00:00
1dc0b8fc88 sampledSurface::foamSurfaceWriter: Added support for writing sampled surfaces in binary OpenFOAM format 2020-01-29 17:37:00 +00:00
acdbf45534 Moved OBJstream into src/fileFormats/obj 2020-01-29 17:17:36 +00:00
58b2efd622 reactingParcelFoam: Updated density handling for consistency with rhoPimpleFoam 2020-01-29 15:02:50 +00:00
b55bc28698 sampledSurface::writers: Added writeFormat option to select ascii or binary
e.g. in tutorials/incompressible/pisoFoam/LES/motorBike/motorBike/system/cuttingPlane

    surfaceFormat   vtk;
    writeFormat     binary;
    fields          (p U);

selects writing the VTK surface files in binary format which significantly
speeds-up reading of the files in paraview.

Currently binary writing is supported in VTK and EnSight formats.
2020-01-29 14:59:31 +00:00
ccc8a78ec1 lagrangian/.../*LookupTableInjection: Use GlobalIOList
Resolves bug report https://bugs.openfoam.org/view.php?id=3438
2020-01-29 14:29:27 +00:00
50fab006c6 sampledSurface/writers: Resolved write function calling itself 2020-01-29 12:46:20 +00:00
84759ee0b8 sampledSurface: Added support for writing surfaces in binary format
by specifying

    writeFormat binary;

in the sampledSurface dictionary.
2020-01-29 12:42:05 +00:00
3631f13a98 sampledSurface/writers: Removed unnecessary "verbose" argument 2020-01-28 22:46:00 +00:00
ac22da9499 sampledSurface/writers: Rationally renamed writeTemplate -> write 2020-01-28 20:24:22 +00:00
622f472283 vtkSurfaceWriter: Rationalised writing to use vtkWriteOps
avoiding code duplication and providing support for writing binary.
2020-01-28 17:33:29 +00:00
9ff1e2e168 foamToVTK: Rationalised the low-level write function to avoid 3x duplication
Moved the writeFuns into the vtkWriteOps namespace which is extensible, see the
the write functions in setSet as an example of this.
2020-01-28 16:12:57 +00:00
a296733a76 hashedWordList: Removed the "contains" member function
the same functionality is provided by the standard HashTable "found" function.
2020-01-28 16:09:03 +00:00
6e32ca010a globalIndexAndTransform: Correction to handle rotation around a non-zero centre 2020-01-27 17:06:39 +00:00
55b982eeea transformer: Generalised to permit scaling and improved abstraction
Transformer now supports scaling matrices. The number of ways in which
transformer can be constructed has also been reduced to null (i.e.,
identity), pure translation, pure scaling and pure rotation. Compound
translations must be constructed by combining transformers with the
dot-product (&) operator. In this way, the details of in what order the
different parts of the transformation are applied have been abstracted.
2020-01-27 16:35:52 +00:00
ea3e891dab tutorials/mesh/snappyHexMesh/pipe: Calculate closeness from the pipe wall only 2020-01-27 15:14:11 +00:00
f4e47fccbc Corrected typos in comments
Patch contributed by Timo Niemi, VTT.
Resolves patch request https://bugs.openfoam.org/view.php?id=3437
2020-01-26 13:40:14 +00:00
8a6cb87b79 createPatch: Removed obsolete code
Removed a synchronisation step that is no longer necessary now that
coupled patches have uniform transformations
2020-01-24 15:38:31 +00:00
95e96634f8 particle: Prevent divide by zero when debugging 2020-01-24 15:35:30 +00:00
509f15a0c5 snappyHexMesh: Added new experimental region refinement strategy based on the local span
In the new tutorial mesh/snappyHexMesh/pipe the pipe diameter changes by a factor
of 2 but the number of cells across the pipe is specified to be constant along
the length using the new "span" refinement mode in which the number of cells
across the span is set to be at least 40:

    refinementRegions
    {
        pipe
        {
            mode span;
            levels ((1000 2));  // Maximum distance and maximum level
            cellsAcrossSpan 40;
        }
    }

This operates in conjunction with the "pointCloseness" option in surfaceFeatures
which writes a surfacePointScalarField of the local span of the domain.  Note
that the behaviour of this option is critically dependent on the quality of this
field and the surface may need to be re-triangulated more isotropically to
ensure the "pointCloseness" is accurate and representative of the domain and the
required mesh distribution.
2020-01-24 15:19:38 +00:00