Commit Graph

5330 Commits

Author SHA1 Message Date
84103902ac solidDisplacementFoam: Corrected post-processing stress
to correspond to the new displacement equation formulation which handles
non-uniform density.

Resolves bug-report https://bugs.openfoam.org/view.php?id=3642
2021-03-15 10:36:01 +00:00
633095a790 surfaceFilmModels::transferModels: Removed unused functions 20210315 2021-03-12 20:33:00 +00:00
c5edb78b58 surfaceFilmModels: Added missing momentum transfer functionality 2021-03-12 20:21:09 +00:00
17e8ceed64 fvModels: Prevent ambiguity when using the index operator
fvModels should operate primarily like a list of fvModel-s, so the index
operator of relevance is the one from its list base class. This has been
made explicit to prevent ambiguity associated with the same operator in
the dictionary base class.
2021-03-12 16:57:40 +00:00
2cb03184cf ReynoldsStress: Added RSource and epsilonSource methods
These permit derivations of reynolds stress models to add source terms
into the R and epsilon equations

Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2021-03-11 17:36:13 +00:00
16b19a3106 MomentumTransportModels: Add missing groups to turbulence fields
Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2021-03-11 17:13:42 +00:00
a3c8514870 fvModels: Source method field reference made constant
This makes the interface consistent with that of the fvMatrix and
other fvMatrix-generating functions; e.g., fvm::ddt.
2021-03-10 16:22:24 +00:00
b0a57397a4 plateFilm: New compressibleInterFoam tutorial to demonstrate the VoFSurfaceFilm fvModel
The film is left to drain down a vertical plate after the liquid drains out.
2021-03-10 14:24:58 +00:00
252b71f3c6 fvModels: Simplified structure using fvCellSet member data
which will allow for a run-time selectable and hence extensible fvCellSet in the
future.
2021-03-09 15:17:32 +00:00
e090643f63 fvConstraints: Simplified structure using fvCellSet member data
which will allow for a run-time selectable and hence extensible fvCellSet in the
future.
2021-03-09 13:24:05 +00:00
4c4673ab24 Merge branch 'master' of github.com-OpenFOAM:OpenFOAM/OpenFOAM-dev 2021-03-09 12:41:23 +00:00
fb7edbcffc tutorials/compressible/rhoSimpleFoam/aerofoilNACA0012: Corrected fvConstraints 2021-03-09 12:40:52 +00:00
b79c2d3aea fvModels: Removed temporary placeholder argument 2021-03-09 08:20:03 +00:00
6e172a708d fvModels: codedSource -> codedFvModel 2021-03-08 14:53:22 +00:00
cce3e13fe3 sixDoFAccelerationSource: Corrected typo 2021-03-08 12:25:12 +00:00
46dbb26299 fvModels: Corrected typos 2021-03-08 12:15:11 +00:00
da3f4cc92e fvModels, fvConstraints: Rational separation of fvOptions between physical modelling and numerical constraints
The new fvModels is a general interface to optional physical models in the
finite volume framework, providing sources to the governing conservation
equations, thus ensuring consistency and conservation.  This structure is used
not only for simple sources and forces but also provides a general run-time
selection interface for more complex models such as radiation and film, in the
future this will be extended to Lagrangian, reaction, combustion etc.  For such
complex models the 'correct()' function is provided to update the state of these
models at the beginning of the PIMPLE loop.

fvModels are specified in the optional constant/fvModels dictionary and
backward-compatibility with fvOption is provided by reading the
constant/fvOptions or system/fvOptions dictionary if present.

The new fvConstraints is a general interface to optional numerical constraints
applied to the matrices of the governing equations after construction and/or to
the resulting field after solution.  This system allows arbitrary changes to
either the matrix or solution to ensure numerical or other constraints and hence
violates consistency with the governing equations and conservation but it often
useful to ensure numerical stability, particularly during the initial start-up
period of a run.  Complex manipulations can be achieved with fvConstraints, for
example 'meanVelocityForce' used to maintain a specified mean velocity in a
cyclic channel by manipulating the momentum matrix and the velocity solution.

fvConstraints are specified in the optional system/fvConstraints dictionary and
backward-compatibility with fvOption is provided by reading the
constant/fvOptions or system/fvOptions dictionary if present.

The separation of fvOptions into fvModels and fvConstraints provides a rational
and consistent separation between physical and numerical models which is easier
to understand and reason about, avoids the confusing issue of location of the
controlling dictionary file, improves maintainability and easier to extend to
handle current and future requirements for optional complex physical models and
numerical constraints.
2021-03-07 22:45:01 +00:00
a28fd5552f systemDict: Changed return to IOdictionary 2021-03-07 12:11:39 +00:00
b63173bd5f extrudeMesh: Updated handling of -dict option 2021-03-05 15:25:23 +00:00
a0ca9a745e applications/utilities/surface: Updated handling of -dict option 2021-03-05 14:43:35 +00:00
7d22121153 tutorials/multiphase/interFoam/RAS/waterChannel/Allmesh: Updated extrudeMesh -dict option 2021-03-05 13:46:55 +00:00
cf552e6343 utilities: Rationalised and standardised the handling of the -dict option 2021-03-05 13:42:46 +00:00
d4d21c9c04 engineMesh: Added dynamic() member function 2021-03-05 13:36:06 +00:00
9d520c6ef0 multiphaseEuerFoam: LaakkonenAlopaeusAittamaaDsd: Corrected SourceFiles documentation
Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2021-03-03 14:12:32 +00:00
a936156f6d multiphaseEulerFoam: populationBalance: Removed population balance name suffix
A population balance suffix after the phase suffix makes determining the
phase for a given name more complex. The additional suffix is also
unnecessary as a phase can only ever belong to one population balance,
so the phase name alone uniquely idetifies the grouping.

Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2021-03-03 14:06:35 +00:00
9055f96a1b ISstream: Removed limits on buffer size and made thread safe 2021-03-03 13:41:24 +00:00
2730049f70 fvOptions: Merged corrections with constraints
Field corrections are effectively explicit constraints applied to the field
after solution rather than to the equation and it significantly simplifies the
implementation to treat them as a special case of constraints.  To implement
this the fvOption::correct(<field>) function has been renamed
fvOption::constrain(<field>) and uses constrainsField and constrainedFields.
2021-03-02 16:57:44 +00:00
bdf45fb915 multiphaseEulerFoam: Added correctPhi support for moving-mesh cases with cell-volume change 2021-03-01 17:12:29 +00:00
be86c8ec0f CorrectPhi: Separated correctUphiBCs to simplify and generalise the use of CorrectPhi 2021-03-01 17:11:05 +00:00
6eb19d1b4a multiphaseEulerFoam::MovingPhaseModel: Added cast for older gcc versions 2021-03-01 14:43:45 +00:00
91874975aa multiphaseEulerFoam: Added UfRef() access function for moving-mesh flux manipulations 2021-03-01 11:53:41 +00:00
0e1db2f3c6 compressibleInterFoam: Corrected handling for rAU for restart of moving-mesh cases 2021-02-26 22:23:48 +00:00
d54645f2cd compressibleInterFoam: Changed correctPhi to use p_rgh BCs rather than p 2021-02-26 14:52:52 +00:00
e51038a212 multiphaseEulerFoam: Converted relative fluxes to absolute for the virtual-mass terms 2021-02-25 14:22:25 +00:00
9181195306 multiphaseEulerFoam: Changed field copies to references to cached tmps for efficiency 2021-02-24 18:14:31 +00:00
a060c63235 multiphaseEulerFoam: Corrected handling of K for energy equation
Resolves bug-report https://bugs.openfoam.org/view.php?id=3634
2021-02-24 15:37:28 +00:00
9c82a94e31 applications/solvers: Added fvOptions.correct()
to support new fvOptions that solve equations and provide sources to multiple
fields.
2021-02-24 08:34:50 +00:00
ba1e6da3b1 tutorials/incompressible/simpleFoam/drivaerFastback/Allrun: Added -test exclusion 2021-02-24 08:34:08 +00:00
1139177c75 compressibleInterFoam: Add support for surface films via the new VoFSurfaceFilm fvOption
This replaces compressibleInterFilmFoam in a more flexible, general and easily
maintainable form.  A compressibleInterFilmFoam script is provided to redirect
uses to the replacement functionality:

The compressibleInterFilmFoam solver has solver has been replaced by the more general
compressibleInterFoam solver, which now supports surface films using the new
VoFSurfaceFilm fvOption.

To run with with surface film create a system/fvOptions dictionary
containing the VoFSurfaceFilm specification, e.g.

    VoFSurfaceFilm
    {
        type    VoFSurfaceFilm;

        phase   water;
    }
2021-02-23 14:21:22 +00:00
2bd0fd2f49 drivaerFastback: changed mesh size options.
Allrun script includes the following options
-c | -cores <nCores>   number of cores in parallel run
-h | -help             help
-m | -mesh <S|M|L|XL>  mesh size
                       - S: small, 440k cells
                       - M: medium, 3M cells (default)
                       - L: large, 22.5M cells
                       - XL: extra large, ~200M cells
20210220
2021-02-19 15:45:25 +00:00
8922bdf6a7 drivaerFastback: additional '-help' option in Allrun script 2021-02-19 09:37:56 +00:00
ab38757902 drivaerFastback: additional '-cores' and '-meshSize' options in Allrun script 2021-02-19 09:33:12 +00:00
a72c3e6c88 tutorials::drivaerFastback: Added commented reconstruction commands 2021-02-19 08:52:58 +00:00
03f8a05e12 drivaerFastback: corrected gzip-compressed files 2021-02-18 20:48:04 +00:00
6336a30468 drivaerFastback: gzip-compressed geometry files 2021-02-18 19:46:58 +00:00
c8e35a2f67 drivaerFastback: example case of automotive aerodynamics 2021-02-18 19:43:45 +00:00
0e13649996 surfaceFeatures: Consistent plane specification for subsetting
Specifying a plane with which to subset feature edges is now done using
the same dictionary syntax used elsewhere in OpenFOAM. For example, in
system/surfaceFeaturesDict:

    subsetFeatures
    {
        // Include only edges that intersect the plane
        plane
        {
            planeType       pointAndNormal;
            point           (0 0 0);
            normal          (1 0 0);
        }

        ...
    }
2021-02-18 09:09:53 +00:00
cb8be0abbb isoSurface: Improvements to filtering robustness
The "full" filtering option in isoSurface now no longer attempts to
remove non-manifold faces. As a result, this filtering level is now
robust, but it may leave small imperfections in the surface. This has
been reinstated as the default filtering level as it has advantageous
properties over "partial" filtering in both smoothness of visualisation
and in the size of the files it generates.

A new "clean" level has been added, which does try and remove
imperfections. This is equivalent to the previous operation of the
"full" option. This is not guaranteed to be robust. In certain
configurations the removal process can propagate and delete an entire
section of the surface.
2021-02-18 08:49:38 +00:00
0d24c90b29 sampling: updated pointAndNormal plane parameters in header documentation 2021-02-17 19:21:24 +00:00
33537598e4 etc/templates/closedVolume/system/fvSchemes: Corrected div scheme for buoyantSimpleFoam. 2021-02-17 16:53:55 +00:00