Commit Graph

11095 Commits

Author SHA1 Message Date
cf4d945aa1 Matrix: Minor reformatting 2016-11-21 11:47:25 +00:00
7d39328b5a functionObjects::add: Add list of fields
The operation can be applied to any volume or surface fields generating a
    volume or surface scalar field.

    Example of function object specification:
    \verbatim
    Ttot
    {
        type            add;
        libs            ("libfieldFunctionObjects.so");
        fields          (T Tdelta);
        result          Ttot;
        executeControl  writeTime;
        writeControl    writeTime;
    }
    \endverbatim

Also refactored functionObjects::fieldsExpression to avoid code
duplication between the 'add' and 'subtract' functionObjects.
2016-11-19 21:48:48 +00:00
f021d3b665 Removed temporary file 2016-11-18 22:43:52 +00:00
0eca493cb8 functionObjects::subtract: From the first field subtract the remaining fields in the list
The operation can be applied to any volume or surface fields generating a
    volume or surface scalar field.

    Example of function object specification:
    \verbatim
    Tdiff
    {
        type            subtract;
        libs            ("libfieldFunctionObjects.so");
        fields          (T Tmean);
        result          Tdiff;
        executeControl  writeTime;
        writeControl    writeTime;
    }
    \endverbatim
2016-11-18 22:20:22 +00:00
1254be97e3 lagrangian::patchInjectionBase: corrected initialization of tetFaceI and tetPtI
Patch contributed by Timo Niemi, VTT.
Resolved bug-report http://bugs.openfoam.org/view.php?id=2286
2016-11-18 14:31:51 +00:00
ee26cbeae9 lagrangian::InjectionModel.C: Corrected indentation 2016-11-18 14:31:18 +00:00
8a9618be52 functionObjects::fieldValueDelta: Corrected documentation 2016-11-18 14:30:42 +00:00
0de810db37 viscosityModels::strainRateFunction: New run-time selected strain-rate function non-Newtonian viscosity model
Uses 'Function1' to provide support for an extensible range of run-time
selected functions including interpolation of tabulated data etc.
2016-11-17 22:33:48 +00:00
f3b1676326 TurbulenceModels::ReynoldsStress: Added support for incompressible VoF solvers
and other incompressible mixture-based multiphase solvers.
2016-11-14 17:59:07 +00:00
328204dc1e TurbulenceModels::ReynoldsStress: remove the spherical part of the wall-function Reynolds stress
The spherical part of the Reynolds stress is included in the pressure so
that the wall boundary condition for the pressure is zeroGradient.

Resolves bug-report http://bugs.openfoam.org/view.php?id=2325
2016-11-14 15:03:08 +00:00
aeca671672 VectorSpace: Added cmptSqr 2016-11-14 11:22:43 +00:00
80db302666 Allwmake: Remove 'set -x' which generates a lot of noise
'set -x' should be used for debugging.

Added command printing into wmake and Allwmake as a replacement for
'set -x' to log current target.
2016-11-13 18:08:22 +00:00
d37e86d185 metisDecomp: Use real_t for processor weights
Based on patch contributed by Alexey Matveichev
Resolves feature-request http://bugs.openfoam.org/view.php?id=2330
2016-11-12 09:03:56 +00:00
48762a8c58 STLpoint: declare operator point() for double-precision only
The base-class provides the point for single-precision.
2016-11-12 09:02:51 +00:00
fbba6cd714 blockMesh: corrected debug messages
Patch contributed by Mattijs Janssens
2016-11-11 11:19:55 +00:00
a06cef31fa functionObjects::yPlus: Call read() in constructor to set base-class controls
Patch contributed by Bruno Santos
Resolves bug-report http://bugs.openfoam.org/view.php?id=2320
2016-11-06 10:31:07 +00:00
da3deb60c8 kOmegaSSTBase: Corrected read() to re-read the base-class settings
Patch contributed by Bruno Santos
Resolves bug-report http://bugs.openfoam.org/view.php?id=2318
2016-11-05 23:25:58 +00:00
fe415ff8f7 Cloud: Added 'td.switchProcessor' check to processor transfer logic
Patch contributed by Bruno Santos
Resolves bug-report http://bugs.openfoam.org/view.php?id=2315
2016-11-05 21:16:22 +00:00
fb95a08e20 indexedOctree: Corrected comment
Resolves bug-report http://bugs.openfoam.org/view.php?id=2319
2016-11-05 21:00:16 +00:00
3ab919d407 paraFoam -block: Added support for vertex and block names
Patch contributed by Mattijs Janssens
2016-11-04 17:29:02 +00:00
7781656347 pointConstraint: Added constrainDisplacement
which directly applies the constraint to the displacement without
external tensor ops.

Patch contributed by Mattijs Janssens
2016-11-04 17:13:04 +00:00
9a155dd0d5 blockMesh: Added edge projection
New functionality contributed by Mattijs Janssens:
  - new edge projection: projectCurve for use with new geometry
    'searchableCurve'
  - new tutorial 'pipe'
  - naming of vertices and blocks (see pipe tutorial). Including back
    substitution for error messages.
2016-10-31 18:00:15 +00:00
46b8bfb25f codedFunctionObject.H: Corrected docs
Resolved bug-report http://bugs.openfoam.org/view.php?id=2313
2016-10-31 15:45:59 +00:00
aace62a1b8 Revert "VectorSpace: Added printing of out-of-range index"
This reverts commit d881d2afe6.
2016-10-27 20:57:10 +01:00
d881d2afe6 VectorSpace: Added printing of out-of-range index
Patch contributed by Mattijs Janssens
2016-10-25 17:08:11 +01:00
1b51b7743b blockMesh::projectEdge: Added support for point position adjustment
Re-positions points after projection to correct distribution

Patch contributed by Mattijs Janssens
2016-10-21 12:10:48 +01:00
eed875e1fa primitiveMeshEdges: Added support for edges with duplicate vertices
Patch contributed by Mattijs Janssens
Resolves bug-report http://bugs.openfoam.org/view.php?id=2301
2016-10-21 12:08:18 +01:00
bfaa9da93c SpalartAllmarasDES: Recalculate fv1 for the update of nut
Patch contributed by Bruno Santos
Resolves bug-report http://bugs.openfoam.org/view.php?id=2292
2016-10-20 09:08:48 +01:00
22dfcb7bc6 sixDoFSolvers::symplectic: Removed the restriction on outer iteration
Resolves bug-report http://bugs.openfoam.org/view.php?id=2297
2016-10-19 15:10:52 +01:00
fdf326f88c blockMesh: Update the curved-edge consistency checking
Loop over the edges of each block rather than the edgeList of the
topological mesh due to problems with calcEdges for blocks with repeated
point labels
2016-10-19 13:28:56 +01:00
08d78d47ef blockMesh: Added checks for duplicate and unmatched curved-faces 2016-10-19 09:54:19 +01:00
919c486871 blockMesh: Added check for duplicate curved-edge definitions 2016-10-18 15:18:52 +01:00
3773db53e9 blockMesh: Added projected vertices and edges
Patch contributed by Mattijs Janssens

    - Added projected vertices
    - Added projected edges
    - Change of blockEdges API (operate on list lambdas)
    - Change of blockFaces API (pass in blockDescriptor and blockFacei)
    - Added sphere7ProjectedEdges tutorial to demonstrate vertex and edge projection
2016-10-18 14:06:23 +01:00
b84618a3c8 blockMesh: Added check for curved-edge/block-edge consistency 2016-10-18 13:05:20 +01:00
cfe909d77b inletOutletTotalTemperature,waveTransmissiveFvPatchField: default psi -> thermo:psi
Resolves bug-report http://bugs.openfoam.org/view.php?id=2294
2016-10-17 19:12:55 +01:00
550206b5fd blockMesh::BSplineEdge: Updated #ifndef BSplineEdge_H to #ifndef blockEdges_BSplineEdge_H 2016-10-15 14:31:06 +01:00
2339d607ee blockMesh: Added support for run-time selectable methods to set the block vertex locations 2016-10-15 14:24:36 +01:00
009203188f blockMesh: New experimental support for projecting block face point to geometric surfaces
For example, to mesh a sphere with a single block the geometry is defined in the
blockMeshDict as a searchableSurface:

    geometry
    {
        sphere
        {
            type searchableSphere;
            centre (0 0 0);
            radius 1;
        }
    }

The vertices, block topology and curved edges are defined in the usual
way, for example

    v 0.5773502;
    mv -0.5773502;

    a 0.7071067;
    ma -0.7071067;

    vertices
    (
        ($mv $mv $mv)
        ( $v $mv $mv)
        ( $v  $v $mv)
        ($mv  $v $mv)
        ($mv $mv  $v)
        ( $v $mv  $v)
        ( $v  $v  $v)
        ($mv  $v  $v)
    );

    blocks
    (
        hex (0 1 2 3 4 5 6 7) (10 10 10) simpleGrading (1 1 1)
    );

    edges
    (
        arc 0 1 (0 $ma $ma)
        arc 2 3 (0 $a $ma)
        arc 6 7 (0 $a $a)
        arc 4 5 (0 $ma $a)

        arc 0 3 ($ma 0 $ma)
        arc 1 2 ($a 0 $ma)
        arc 5 6 ($a 0 $a)
        arc 4 7 ($ma 0 $a)

        arc 0 4 ($ma $ma 0)
        arc 1 5 ($a $ma 0)
        arc 2 6 ($a $a 0)
        arc 3 7 ($ma $a 0)
    );

which will produce a mesh in which the block edges conform to the sphere
but the faces of the block lie somewhere between the original cube and
the spherical surface which is a consequence of the edge-based
transfinite interpolation.

Now the projection of the block faces to the geometry specified above
can also be specified:

    faces
    (
        project (0 4 7 3) sphere
        project (2 6 5 1) sphere
        project (1 5 4 0) sphere
        project (3 7 6 2) sphere
        project (0 3 2 1) sphere
        project (4 5 6 7) sphere
    );

which produces a mesh that actually conforms to the sphere.

See OpenFOAM-dev/tutorials/mesh/blockMesh/sphere

This functionality is experimental and will undergo further development
and generalization in the future to support more complex surfaces,
feature edge specification and extraction etc.  Please get involved if
you would like to see blockMesh become a more flexible block-structured
mesher.

Henry G. Weller, CFD Direct.
2016-10-13 15:05:24 +01:00
e53520ecbf blockMesh::blockDescriptor: Generate the edge points and weights on demand 2016-10-09 15:16:41 +01:00
50b549f368 blockMesh: rationalizing class and member names 2016-10-08 19:48:39 +01:00
da70f6734a blockMesh: Simplify reading of curvedEdges 2016-10-07 20:31:36 +01:00
8f22c5d1ec movingWallVelocityFvPatchVectorField: Removed incorrect documentation concerning MRF
Resolves bug-report http://bugs.openfoam.org/view.php?id=2287
2016-10-07 17:38:17 +01:00
803f4e66c2 plane: Make constructors explicit
Resolves bug-report http://bugs.openfoam.org/view.php?id=2284
2016-10-06 14:20:59 +01:00
d6b404dba2 reactingTwoPhaseEulerFoam::IATE: Added wallBoiling sub-model
to handle the size of bubbles created by boiling.  To be used in
conjunction with the alphatWallBoilingWallFunction boundary condition.

The IATE variant of the wallBoiling tutorial case is provided to
demonstrate the functionality:

tutorials/multiphase/reactingTwoPhaseEulerFoam/RAS/wallBoilingIATE
2016-10-06 12:40:58 +01:00
9c2892cd82 Removed #define __STDC_LIMIT_MACROS needed for C++ < 11
See http://bugs.openfoam.org/view.php?id=1474
2016-10-04 08:08:42 +01:00
6a489bd8a6 Updated header 2016-10-03 09:12:55 +01:00
48a2356953 fieldTypes: Using C++11 __VA_ARGS__ functionality created the FOR_ALL_FIELD_TYPES macro
This supports the abstraction of the set of fields from the field code
generation macros making it easier to change the set of fields supported
by OpenFOAM.  This functionality is demonstrated in the updated
fvPatchFields macros and will be applied to the rest of the field code
generation macros in the future.
2016-10-03 09:08:01 +01:00
3f4f05b6e0 Map, SortableList: Added constructors from and assignment to initializer list
Patch based on contribution from Mattijs Janssens
Resolves http://bugs.openfoam.org/view.php?id=2276
2016-09-30 18:49:38 +01:00
ec9883f389 Field: Added constructor from UIndirectList
Patch contributed by Mattijs Janssens
2016-09-30 18:48:26 +01:00
4bdf712b35 triangle storage: Return barycentric coordinates as FixedList instead of List
Patch contributed by Mattijs Janssens
Resolves bug-report http://bugs.openfoam.org/view.php?id=2278
2016-09-30 16:22:55 +01:00