Now the functionality to write single graph files or log files (vs time)
may be used in the creation of any form of functionObject, not just
those relating to a mesh region.
- Follow similar pattern as per boost/CGAL with the '*-none' to disable,
and '*-system' for system installations.
Also support central non-ThirdParty installations by specifying the
version as "*-system", but also providing the fully qualified
*_ARCH_PATH too.
--
ENH: Verify label and scalar sizes used in the metis header.
- ensure they match with expected values, which can be obtained via
the OpenFOAM definitions for WM_LABEL_SIZE and WM_PRECISION_OPTION
- For merging meshedSurf content from parallel sources.
Ensures zoneIds are properly preserved for sampling in parallel.
Current state
~~~~~~~~~~~~~
Current producers of the region information:
* sampledTriSurfaceMesh
Current consumers of the region information:
* nastran writer. The zone ids passed through as PSHELL Ids (with offset 1).
Limitations
The per-face region association is preserved, but the face/element
sort order gets lost in reconstruction. Would need to attach
additional information to the sampled surface and use that for
sorting, but this would also imply that sampled values be written
indirectly (or resorted) too to match the order. Zone ids are passed
through, but not their names. After reconstruction, zone ids are no
longer contiguous. Re-sorting (as mentioned above) would solve this
too, but again at the cost of more complexity when writing.
- Allows passing of additional information (per-face zone ids) or possibly
other things, while reducing the number of arguments to pass.
- In sampledTriSurfaceMesh, preserve the region information that was
read in, passing it onwards via the UnsortedMeshSurface content.
The Nastran surface writer is currently the only writer making use
of this per-face zone information.
Passing it through as a PSHELL attribute, which should retain the
distinction for parts. (issue #204)
- use surfFaces() to return the templated list of faces.
This frees up the method 'faces()' to be used as a virtual method,
which will be needed at a later stage.
The diameter of the drops formed are obtained from the local capillary
length multiplied by the \c dCoeff coefficient which defaults to 3.3.
Reference:
Lefebvre, A. (1988).
Atomization and sprays
(Vol. 1040, No. 2756). CRC press.
Changed default mode of operation to use standard y+ based switching
rather than the previous ad hoc blending and added consistent handling
of the near-wall generation term.
This boundary condition provides a wall constraint on turbulnce specific
dissipation, omega for both low and high Reynolds number turbulence models.
The near-wall omega may be either blended between the viscous region and
logarithmic region values using:
\f[
\omega = sqrt(\omega_{vis}^2 + \omega_{log}^2)
\f]
where
\vartable
\omega_{vis} | omega in viscous region
\omega_{log} | omega in logarithmic region
\endvartable
see eq.(15) of:
\verbatim
Menter, F., Esch, T.
"Elements of Industrial Heat Transfer Prediction"
16th Brazilian Congress of Mechanical Engineering (COBEM),
Nov. 2001
\endverbatim
or switched between these values based on the laminar-to-turbulent y+ value
derived from kappa and E. Recent tests have shown that the standard
switching method provides more accurate results for 10 < y+ < 30 when used
with high Reynolds number wall-functions and both methods provide accurate
results when used with continuous wall-functions. Based on this the
standard switching method is used by default.
This boundary condition provides a turbulence dissipation wall constraint
for low- and high-Reynolds number turbulence models.
The condition can be applied to wall boundaries for which it
- calculates \c epsilon and \c G
- specifies the near-wall epsilon value
where
\vartable
epsilon | turblence dissipation field
G | turblence generation field
\endvartable
The model switches between laminar and turbulent functions based on the
laminar-to-turbulent y+ value derived from kappa and E.
Recent tests have shown that this formulation is more accurate than
the standard high-Reynolds number form for 10 < y+ < 30 with both
standard and continuous wall-functions.
Replaces epsilonLowReWallFunction and should be used for all
low-Reynolds number models for which the epsilonLowReWallFunction BC was
recommended.
of film flow on an inclined plane by Brun et.al.
Brun, P. T., Damiano, A., Rieu, P., Balestra, G., & Gallaire, F. (2015).
Rayleigh-Taylor instability under an inclined plane.
Physics of Fluids (1994-present), 27(8), 084107.
Until C++ supports 'concepts' the only way to support construction from
two iterators is to provide a constructor of the form:
template<class InputIterator>
List(InputIterator first, InputIterator last);
which for some types conflicts with
//- Construct with given size and value for all elements
List(const label, const T&);
e.g. to construct a list of 5 scalars initialized to 0:
List<scalar> sl(5, 0);
causes a conflict because the initialization type is 'int' rather than
'scalar'. This conflict may be resolved by specifying the type of the
initialization value:
List<scalar> sl(5, scalar(0));
The new initializer list contructor provides a convenient and efficient alternative
to using 'IStringStream' to provide an initial list of values:
List<vector> list4(IStringStream("((0 1 2) (3 4 5) (6 7 8))")());
or
List<vector> list4
{
vector(0, 1, 2),
vector(3, 4, 5),
vector(6, 7, 8)
};