Commit Graph

1299 Commits

Author SHA1 Message Date
59f7f1ef0e foamNewFunctionObject: script to create template code for a new function object
Run foamNewFunctionObject -h for details
2016-03-22 17:40:03 +00:00
44c73bfbe1 Made all template declarations consistent using 'class' rather than 'typename' 2016-03-22 15:02:55 +00:00
055a113f10 SquareMatrix, SymmetricSquareMatrix: Changed the constructor from size to require only n
This avoids the need to check that the m and n dimensions are the same.
2016-03-22 14:13:48 +00:00
feada18b40 Identity: Added conversion to label 2016-03-22 14:12:53 +00:00
22b2e397b2 RectangularMatrix: Added construction from and assignment to zero
Also added the Field outer-product operator returning a RectangularMatrix
2016-03-22 14:11:41 +00:00
c33961f3ad Matrix: Added support for extracting and assigning blocks
The blocks may be specified directly in terms of the size and location in the
parent matrix or with the size obtained from a template specified
VectorSpace or MatrixSpace type.
2016-03-22 14:09:24 +00:00
5f9b1d1681 Updated header 2016-03-22 14:09:04 +00:00
a16fff88f7 GAMGAgglomerationTemplates: Assign to Zero rather than pTraits<Type>::zero 2016-03-22 14:08:35 +00:00
da347abc51 Updated header 2016-03-22 14:08:01 +00:00
050ee51ad8 zero: Return Zero rather than zero() 2016-03-22 14:07:38 +00:00
89fa292968 VectorSpaces, MatrixSpaces: Allow automatic conversion from zero 2016-03-22 10:38:59 +00:00
ffe2c2ac46 src/OpenFOAM: Use Zero rather than pTraits<Type> 2016-03-22 10:38:30 +00:00
983b3e2ca4 VectorSpaces, MatrixSpaces: Allow automatic conversion from zero 2016-03-22 10:35:57 +00:00
b49a71a402 zero: Added support for initializing bool 2016-03-22 10:35:13 +00:00
b8031d592b etc/codeTemplates/BC: Use Use 'Zero' rather than 'pTraits<Type>::zero' to initialize to 0 2016-03-22 08:33:16 +00:00
68f37e710f Updated headers 2016-03-22 08:31:34 +00:00
beb00e22d6 fvPatchFields: Use 'Zero' rather than 'pTraits<Type>::zero' to initialize to 0
This new approach to 0 initialization is simpler, cleaner, more readable
and more efficient.  The rest of the OpenFOAM code will be updated in
due course.
2016-03-22 08:27:59 +00:00
6f70b18bd2 Field: Added construction from and assignment to zero 2016-03-22 08:27:31 +00:00
042a9d96fd Updated header 2016-03-22 08:27:11 +00:00
d880a76409 List: Added construction from and assignment to zero 2016-03-22 08:26:50 +00:00
c55d554050 VectorSpaces and MatrixSpaces: Added construction from and assignment to zero 2016-03-22 08:25:50 +00:00
bf6f2b3ed1 zero: Added cast to float and double for consistent scalar and floatScalar initialization and assignment to 0
Zero: New global instance of zero for simple and efficient initialization and assigment of primitives to 0
2016-03-22 08:23:09 +00:00
ec045baafe Identity: Added cast to scalar 2016-03-22 08:22:21 +00:00
64d256f79e etc/config.sh/CGAL: updated
Patch contributed by Bruno Santos:
 - "etc/config.sh/CGAL":
   - Indented the contents of the recently added if block.
   - Added comment about using system versions.
   - Library paths are now only added if the respective version is not "boost-system" and "cgal-system".

 - "src/renumber/Allwmake":
   It now relies on the previous file to get the version for
   Boost (the same way as in "makeCGAL"). This is so that it will also
   build "SloanRenumber" if "boost_version" is set to "boost-system".

 - "applications/utilities/mesh/generation/Allwmake":
   It now also relies on the script "config.sh/CGAL" to get the
   version for CGAL. If "cgal_version" is set to "cgal-system", it
   will now also build "foamy*Mesh" utilities and respective
   libraries.

Resolves report http://www.openfoam.org/mantisbt/view.php?id=1232
2016-03-22 07:58:38 +00:00
71da87b11f Test-Matrix: Removed timing test 2016-03-20 19:50:23 +00:00
c13421b10a Matrix: Added (i, j) addressing to allow support for addressing blocks of the matrix
This change brings OpenFOAM into line with the standard matrix
addressing in other C++ libraries for better interoperability.
2016-03-20 19:44:29 +00:00
767ffc3c7b Matrix: Replace the row-start pointer array with computed offsets
The row-start pointer array provided performance benefits on old
computers but now that computation is often cache-miss limited the
benefit of avoiding a integer multiply is more than offset by the
addition memory access into a separately allocated array.

With the new addressing scheme LUsolve is 15% faster.
2016-03-20 15:00:36 +00:00
59c9f3594e Updated header 2016-03-20 10:35:35 +00:00
9209192b65 objectRegistry: Set the path of the Time objectRegistry
Patch contributed by Bruno Santos
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2030
2016-03-20 10:31:48 +00:00
3c3a02e61c sampledSet/midPoint, midPointAndFace: Improved robustness of the mid-point cell seaching and selecting 2016-03-19 21:22:09 +00:00
9f80c727e5 sampledSet/face: Improved robustness of face selection 2016-03-19 21:21:23 +00:00
712b07d478 Field: Added zero() constructor 2016-03-19 21:20:33 +00:00
248d6065eb Updated header 2016-03-19 21:20:18 +00:00
9dc14af017 SubList, SubField: Added assignment to UList 2016-03-19 21:19:14 +00:00
e809171540 SpatialVector: Added cross-product and dual cross-product operators
SpatialTensor: Added SpatialVector cross-product and dual cross-product -> SpatialTensor operators
2016-03-18 21:52:27 +00:00
e3bbe40748 SphericalTensor/Identity: Added dual form 2016-03-18 21:52:00 +00:00
0a0e282090 Update header 2016-03-18 11:47:59 +00:00
4ab535bdda Identity: special type derived from SphericalTensor to provide the concept of identity (I)
Allows efficient operators to be defined for the interaction between
types and the equivalent identity.
2016-03-18 11:45:45 +00:00
f528f844db SpatialVector: Added component access member functions
wx(), wy(), wz(), lx(), ly() and lz()
2016-03-17 22:12:48 +00:00
4cc909f1ed spatialTransform: Compact representation of the Plücker spatial transformation tensor
in terms of the rotation tensor \c E and translation vector \c r .

  See Chapter 2 and Appendix A in reference:
     Featherstone, R. (2008).
     Rigid body dynamics algorithms.
     Springer.

    This work is sponsored by Carnegie Wave Energy Ltd

Henry G. Weller
CFD Direct
2016-03-17 20:31:36 +00:00
e2d1156ddd primitives/transform: Added functios to generate rotation tensor about the given axis 2016-03-17 18:09:04 +00:00
69dd56b9dd primitives/transform: Added functions to generate rotation tensors about the individual axes 2016-03-17 18:05:11 +00:00
8eb32a21d7 SpatialTensor: Added constructor from 4 Tensor blocks 2016-03-17 09:14:25 +00:00
926c29e95a reactingEulerFoam: Moved fluid.correctThermo() into energy corrector loop
to update the interfacial temperature.
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2029
2016-03-17 08:05:08 +00:00
156b2d9791 thermoSingleLayer: Output the mean film temperature in addition to max and min 2016-03-16 15:34:57 +00:00
6ee4cad870 paraFoam: Updated instructions to build the reader modules
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=2027
2016-03-16 09:24:25 +00:00
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
fa1dfa813b MatrixSpace::Block: Added "dereference" operator for conversion to sub-tensor 2016-03-15 22:36:56 +00:00
c26d5ee31a driftFluxFoam/relativeVelocityModels/general/general:: Corrected construction of residualAlpha 2016-03-15 20:33:06 +00:00
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