Commit Graph

4356 Commits

Author SHA1 Message Date
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
3217f90703 refineWallLayer: Further improvement to the cellSet selection 2020-01-24 13:49:37 +00:00
f67fa33417 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2020-01-24 11:56:17 +00:00
8e6d792ff5 sampledPlane: Removed unused and broken constructor
Resolves bug report https://bugs.openfoam.org/view.php?id=3434
2020-01-24 11:55:41 +00:00
76a725b7b0 cyclicPolyPatch, GeometricBoundaryField: Updated diagnostic messages 2020-01-24 11:55:26 +00:00
c8a1c95b06 IOobject: Added localPath and localObjectPath member functions
For many information and diagnostic messages the absolute path of the object is
not required and the local path relative to the current case is sufficient; the
new localObjectPath() member function of IOobject provides a convenient way of
printing this.
2020-01-24 11:52:45 +00:00
3c1456571e foamUpgradeCyclics: Removed, no longer required 2020-01-24 11:43:09 +00:00
0876ca78c6 refineWallLayer: Improved efficiency of the -inSet option 2020-01-24 10:52:05 +00:00
d7a452ccf2 refineWallLayer: Changed name of the -useSet option to -inSet, corrected operation and documentation
Resolves bug-report https://bugs.openfoam.org/view.php?id=3435
2020-01-24 10:39:58 +00:00
5b6fd01949 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2020-01-23 22:09:32 +00:00
7d03aeee92 surfaceFilmModels: lag the capillary pressure term
to avoid staggering patterns created by an unstable coupling between this term
and the film thickness.  Further relaxation of this term may be required for
cases dominated by surface tension effects.
2020-01-23 22:07:25 +00:00