Commit graph

726 commits

Author SHA1 Message Date
Henry Weller
e2d1156ddd primitives/transform: Added functios to generate rotation tensor about the given axis 2016-03-17 18:09:04 +00:00
Henry Weller
69dd56b9dd primitives/transform: Added functions to generate rotation tensors about the individual axes 2016-03-17 18:05:11 +00:00
Henry Weller
8eb32a21d7 SpatialTensor: Added constructor from 4 Tensor blocks 2016-03-17 09:14:25 +00:00
Henry Weller
156b2d9791 thermoSingleLayer: Output the mean film temperature in addition to max and min 2016-03-16 15:34:57 +00:00
Henry Weller
2e88689c3b lagrangian::StandardWallInteraction: accumulate escaping mass
Do not set accumulated properties to 0 on output

Updates provided by Karl Meredith
2016-03-15 22:37:48 +00:00
Henry Weller
fa1dfa813b MatrixSpace::Block: Added "dereference" operator for conversion to sub-tensor 2016-03-15 22:36:56 +00:00
Henry Weller
05455d50ea src/OpenFOAM/primitives/spatialVectorAlgebra: New classes to support spatial vector algebra
Based on definitions in chapter 2 of the book:
    Featherstone, R. (2008).
    Rigid body dynamics algorithms.
    Springer.

This work is sponsored by Carnegie Wave Energy Ltd
2016-03-15 18:14:03 +00:00
Henry Weller
6057695f4f RowVector: New 3D row-vector class derived from MatrixSpace
The transpose '.T()' of a RowVector returns a Vector and vice versa.
2016-03-15 15:13:41 +00:00
Henry Weller
06fcefebd2 VectorSpace: Changes loop logic to avoid warning from gcc-4.5 2016-03-14 15:36:42 +00:00
Henry Weller
7037737d03 Updated Doxygen documentation and files
Contributed by Bruno Santos
Resolves patch report http://www.openfoam.org/mantisbt/view.php?id=2023

Update online documentation http://openfoam.github.io/Documentation-dev/html/
2016-03-14 11:00:24 +00:00
Henry Weller
dbe5d5288b quaternion: Added generalized construction from and conversion to Euler-angles
The particular rotation sequence is specified via the enumeration:

    //- Euler-angle rotation sequence
    enum rotationSequence
    {
        ZYX, ZYZ, ZXY, ZXZ, YXZ, YXY, YZX, YZY, XYZ, XYX, XZY, XZX
    };

and provided as an argument to the constructor from Euler-angles

    //- Construct a quaternion given the three Euler angles:
    inline quaternion
    (
        const rotationSequence rs,
        const vector& angles
    );

and conversion to Euler-angles:

    //- Return a vector of euler angles corresponding to the
    //  specified rotation sequence
    inline vector eulerAngles(const rotationSequence rs) const;
2016-03-14 08:07:42 +00:00
Henry Weller
36f19c88c4 src/sampling/sampledSurface/isoSurface: Correct referencing to temporary fields
Patch provided by Mattijs Janssens
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1487
2016-03-12 11:50:04 +00:00
Henry Weller
3ba1d17660 MatrixSpace: 2D (i-j) specialization of VectorSpace
Provides '(i, j)' element access and general forms of inner and outer
products, transpose etc. for square and rectangular VectorSpaces.

VectorSpaces default to be column-vectors as before whereas row-vectors
may be represented as 1xn MatrixSpaces.  In the future it may be
preferable to create a specializations of VectorSpace for column- and
maybe row-vectors but it would add complexity to MatrixSpace to handle
all the type combinations.

Tensor is now a 3x3 specialization of MatrixSpace.

Sub-block const and non-const access is provided via the
'.block<SubTensor, RowStart, ColStart>()' member functions.  Consistent
sub-block access is also provide for VectorSpace so that columns of
MatrixSpaces may be accessed and substituted.

These new classes will be used to create a more extensive set of
primitive vector and tensor types over the next few weeks.

Henry G. Weller
CFD Direct
2016-03-12 10:41:18 +00:00
Henry Weller
bb49210567 Corrected typo 2016-03-11 09:46:48 +00:00
Henry Weller
930d750bfd Matrix: Switch n() and m() so that now m() = number of rows and n() = number of columns
For consistency with current references and other numerics libraries
2016-03-10 22:53:09 +00:00
Henry Weller
9711774b28 floatTensor: Tensor<float> 2016-03-10 12:45:42 +00:00
Henry Weller
53c641e737 VectorSpace: Change template parameter from nCmpt to Ncmpts for consistency with other template classes 2016-03-10 12:44:53 +00:00
Henry Weller
f3ca360300 Vector: Add constructor from Foam::zero 2016-03-10 12:44:25 +00:00
Henry Weller
f2b111e203 src/OpenFOAM: changed template rank type from int to Foam::direction
Foam::direction is an unsigned type which makes it easier for the
compiler to pickup and report errors in the instantiation of
VectorSpaces and associated types.
2016-03-09 10:10:28 +00:00
Henry Weller
9ef051dd18 fixedShearStressFvPatchVectorField: Corrected patch nuEff access
Resolves bug-report http://openfoam.org/mantisbt/view.php?id=2020
2016-03-08 14:14:39 +00:00
Henry Weller
45d092f2e0 src/OpenFOAM/primitives: Moved the standard static data members for vector and tensor types into VectorSpace
This simplifies the code easing maintenance and the addition of other
VectorSpace types.
2016-03-08 10:57:41 +00:00
Henry Weller
db675599ea SRFWallVelocityFvPatchVectorField: New BC for walls rotating in the SRF
Wall-velocity condition to be used in conjunction with the single rotating
    frame (SRF) model (see: FOAM::SRFModel)

    The condition applies the appropriate rotation transformation in time and
    space to determine the local SRF velocity of the wall.

        \f[
            U_p = - U_{p,srf}
        \f]

    where
    \vartable
        U_p     = patch velocity [m/s]
        U_{p,srf} = SRF velocity
    \endvartable

    The normal component of \f$ U_p \f$ is removed to ensure 0 wall-flux even
    if the wall patch faces are irregular.

    \heading Patch usage

    Example of the boundary condition specification:
    \verbatim
    myPatch
    {
        type            SRFWallVelocity;
        value           uniform (0 0 0);    // Initial value
    }
    \endverbatim
2016-03-07 15:25:52 +00:00
Henry Weller
4db6b030e2 Tensor: Added inv() member function 2016-03-07 15:25:27 +00:00
Henry Weller
eae4c1289d polyMeshFilter.H: Updated indentation 2016-03-06 21:35:02 +00:00
Henry Weller
499c221df4 Sprucing up the tutorials folder and adding -dict to "collapseEdges"
Patch provided by Bruno Santos
Resolves patch application request http://www.openfoam.org/mantisbt/view.php?id=2015
2016-03-06 19:06:44 +00:00
Henry Weller
37157f436c Vector: added operator=(scalar) 2016-03-06 19:05:34 +00:00
Henry Weller
6f188f9ed2 Tensor: Added operator&= 2016-03-06 19:05:14 +00:00
Henry Weller
0003783224 Matrix: Improved readability of the code 2016-03-06 19:04:53 +00:00
Henry Weller
e0451c75ec messageStream: Added DebugInfo and DebugInFunction:
DebugInfo:
    Report an information message using Foam::Info if the local debug
    switch is true

DebugInFunction:
    Report an information message using Foam::Info for FUNCTION_NAME in
    file __FILE__ at line __LINE__ if the local debug switch is true
2016-03-04 11:30:13 +00:00
Henry Weller
8b8d0a02ba StaticAssert: Avoid unused typedef messages from gcc 2016-03-04 11:29:37 +00:00
Henry Weller
41594f70eb CocoParserErrors.H: No longer used 2016-03-04 11:29:14 +00:00
Henry Weller
1df60791d8 DynamicList: Added initialized constructor and STL erase function 2016-03-04 11:28:35 +00:00
Henry Weller
898693713c Rationalize the autoMesh library: autoHexMesh -> snappyHexMesh
autoRefine -> snappyRefine
autoLayer -> snappyLayer
autoSnap -> snappySnap
2016-03-01 16:21:31 +00:00
Henry Weller
8380044966 Rationalize the autoMesh library: autoMesh -> snappyHexMesh 2016-03-01 16:01:42 +00:00
Henry Weller
bd893a5357 src/OpenFOAM: Removed unused files 2016-03-01 12:29:33 +00:00
Henry Weller
5f729820a1 src/OpenFOAM: Moved function documentation comments into .H files and removed duplicates 2016-03-01 12:29:01 +00:00
Henry Weller
d020141e48 src/OpenFOAM: Moved function documentation comments into .H files and removed duplicates 2016-02-29 21:21:41 +00:00
Henry Weller
503273c69e src/finiteVolume: Moved function documentation comments into .H files and removed duplicates 2016-02-29 19:58:50 +00:00
Henry Weller
d60651a09e OpenFOAM: Added experimental version of 'tmp' which does not use reference counting 2016-02-29 18:36:37 +00:00
Henry Weller
c544bec896 Removed duplicate, inconsistent and spurious comments in .C files 2016-02-29 18:33:54 +00:00
Henry Weller
99c000fc94 Rationalized the indentation of C-preprocessor directives 2016-02-29 15:42:03 +00:00
Henry Weller
e287bd2e65 sampledSets: use smallDist consistently between getTrackingPoint and other tracking functions
Use different hit-tolerances between sampling methods to account for the
difference in the "offset" definition.
2016-02-29 12:09:46 +00:00
Henry Weller
cd59748bdb tmp: encapsulate refCount to enable the option for tmp to use a specific version 2016-02-28 22:50:24 +00:00
Henry Weller
de01562257 ConeNozzleInjection: Corrected copy constructor
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2010
2016-02-28 18:22:38 +00:00
Henry Weller
f572fdcf9a src/OpenFOAM/containers: Updated formatting and comments 2016-02-28 18:21:58 +00:00
Henry Weller
51f93d3b43 tmp: Limit the number of references to a temporary object to 2
which reduces the number of potential problems with the reuse of
temporary objects.

In order to avoid unnecessary creation of tmp's referring to temporary
objects the assignment operator now transfers ownership of the object
and resets the argument.
2016-02-27 18:11:09 +00:00
Henry Weller
7859083246 OpenFOAM: Updated all libraries, solvers and utilities to use the new const-safe tmp
The deprecated non-const tmp functionality is now on the compiler switch
NON_CONST_TMP which can be enabled by adding -DNON_CONST_TMP to EXE_INC
in the Make/options file.  However, it is recommended to upgrade all
code to the new safer tmp by using the '.ref()' member function rather
than the non-const '()' dereference operator when non-const access to
the temporary object is required.

Please report any problems on Mantis.

Henry G. Weller
CFD Direct.
2016-02-26 17:31:28 +00:00
Henry Weller
49c54e9070 OpenFOAM libraries: Updated to use the new const-safe tmp 2016-02-26 08:13:59 +00:00
Henry Weller
2666f87663 FieldField, DimensionedField, GeometricField: Simplified tmp reuse and cleanup 2016-02-25 18:29:00 +00:00
Henry Weller
4f93551da9 Field: Simplified tmp reuse and cleanup 2016-02-25 15:07:14 +00:00