Commit Graph

390 Commits

Author SHA1 Message Date
graham
6595741ecd Merge branch 'master' into cvm 2010-11-25 17:36:43 +00:00
Mark Olesen
7b5de8021f Merge remote branch 'OpenCFD/master' into olesenm 2010-11-25 11:24:10 +01:00
graham
c630d77fc4 Merge branch 'master' into cvm 2010-11-24 14:02:07 +00:00
mattijs
1aea998bbe ENH: FaceCellWave : additional trackData like argument for passing in non-cell data 2010-11-24 11:48:04 +00:00
Mark Olesen
499d48cfdb STYLE: uniform 'Test-' prefix for all applications/test
- easier to clean, avoid confusion with 'real' applications, etc.
2010-11-23 16:26:04 +01:00
Mark Olesen
e5cf4f093e COMP: adjust syncTools test to compile 2010-11-23 16:08:47 +01:00
Mark Olesen
2ab6d349d6 STYLE: reset parameters in memInfo::update()
- avoids old values if the read from /proc/.../status somehow failed
2010-11-22 16:12:20 +01:00
graham
9f1d94bddd ENH: memInfo class. 2010-11-18 16:45:49 +00:00
graham
05b10612ca ENH: memInfo class. 2010-11-18 16:45:49 +00:00
graham
3629979263 Merge branch 'master' into cvm
Conflicts:
	src/OpenFOAM/primitives/random/Random/random.3
	src/OpenFOAM/primitives/random/Random/random.c
2010-11-11 18:29:28 +00:00
graham
ff473b9833 ENH: cmptProduct function, i.e. cmptProduct(vector(a, b, c)) = a*b*c. 2010-11-04 16:47:42 +00:00
graham
35416aa3c2 ENH: cmptProduct function, i.e. cmptProduct(vector(a, b, c)) = a*b*c. 2010-11-04 16:47:42 +00:00
Mark Olesen
d5acd22a63 STYLE: use labelUList typedef instead of UList<label> or unallocLabelList 2010-11-02 09:32:32 +01:00
graham
f2fe2f5140 Merge branch 'master' into cvm 2010-11-01 17:23:23 +00:00
mattijs
3f6d24ad0b STYLE: DynamicFieldTest.C : date 2010-10-29 16:40:38 +01:00
mattijs
13f86d8b68 ENH: DynamicField: extend to be like DynamicList. 2010-10-29 16:37:37 +01:00
graham
f7d3162a15 Merge branch 'master' into cvm 2010-10-12 16:09:17 +01:00
Henry
eb51614780 Renamed rUA -> rAU 2010-10-11 20:10:34 +01:00
andy
865379a135 Merge branch 'olesenm' 2010-10-11 09:39:53 +01:00
Mark Olesen
71b7e7cee1 ENH: add StaticAssert to Polynomial - positive number of terms only
ENH: allow construct from UList of coefficients, from C-arrays
     avoid uninitialized values for null constructor
2010-10-08 17:54:13 +02:00
Mark Olesen
dd5ed76a70 ENH: avoid costly pow() when evaluating Polynomial
OLD timings:
    ~~~~~~~~~~~~~~~~~~
    evaluate:     -6.82572e+31 in 10.38 s
    hard-coded 0: -6.82572e+31 in 0.2 s
    hard-coded 1: -6.82572e+31 in 10.37 s
    hard-coded 2: -6.82572e+31 in 0.24 s

    New timings:
    ~~~~~~~~~~~~~~~~~~
    evaluate:     -6.82572e+31 in 0.11 s
2010-10-08 15:56:58 +02:00
mattijs
197b3f398e ENH: CompactIOList test app 2010-10-07 12:15:35 +01:00
graham
ebe711cae1 Merge branch 'master' into cvm 2010-10-06 15:40:52 +01:00
Mark Olesen
d01a47aeee ENH: replace IndirectList with version that inherits from UIndirectList 2010-10-04 14:53:43 +02:00
andy
f2c3ba65a6 STYLE: code formatting and start copyright dates 2010-10-04 13:02:54 +01:00
andy
7ec390d23d Merge branch 'olesenm' 2010-10-04 11:08:48 +01:00
graham
6a70f4ecdb Merge branch 'master' into cvm 2010-10-01 15:36:26 +01:00
mattijs
2a6e9f10c0 COMP: testPrimitivePatch.C : extraneous include file 2010-09-30 14:07:12 +01:00
graham
f39d084874 Merge branch 'master' into cvm 2010-09-17 17:20:19 +01:00
graham
ebb9a9e1ac ENH: tet decomposed particle tracking.
Squashed merge of particleInteractions up to
commit e7cb5bcf0315c359539ef1e715e1d51991343391
2010-09-17 16:59:17 +01:00
Mark Olesen
4ed8ff2c7e ENH: add first draft of IndirectList that inherits from UIndirectList 2010-09-17 13:53:26 +02:00
Mark Olesen
ba896b6903 ENH: better handling of resizing for PackedList bit-wise operators
- previously using an '|=' or '^=' would increase the list size to
  match the RHS. Now it only increases to last bit set.

- limit bit-wise operations to addressable range for minor efficiency
  improvement

- trim results from '&' and '^' operations for more consistent
  behaviour
2010-09-16 16:37:41 +02:00
Mark Olesen
b7c85357d5 ENH: added binary IO for PackedList and compact ASCII format
The compact ASCII format is a block of index/value tuples for the
non-zero entries:

    { (index1 value1) (index2 value2) (index3 value3) }

For PackedList<1>, and thus PackedBoolList, the compact ASCII format is
a block of indices for the non-zero entries:

    { index1 index2 index3 }

Thus either of the following could be used - for PackedList<2>:

  - a list of all values:
        16(0 3 0 2 0 0 3 1 0 0 0 0 0 0 0 1)

  - a block of index/value tuples:
        {(1 3) (3 2) (7 3) (8 1) (15 1)}

For PackedList<1> and PackedBoolList, either of the following could be
used:

  - a list of all values, using any valid bool representation:
        16(0 1 0 true 0 0 t 1 0 n n 0 0 0 0 yes)

  - a block of the indices for non-zero entries:
        {1 3 7 8 15}
2010-09-15 10:20:39 +02:00
Mark Olesen
e564a9810f ENH: add IO support for PackedList, PackedBoolList 2010-08-09 17:27:09 +02:00
graham
aa96f77e96 Merge branch 'master' into cvm 2010-07-29 12:55:19 +01:00
graham
28345247a7 STYLE: Fixing code style requirements for more files - those not
picked up by a copyright change.
2010-07-29 11:28:44 +01:00
Mark Olesen
e12581bffc ENH: Add PackedBoolList class (previously just a typedef)
ENH: adjust internal storage of PackedList to ensure that all unused
     internal storage elements are guaranteed to always be bit-wise
     zero. This makes the PackedBoolList implementation easier, and
     also greatly eases much of the book-keeping.
     Bits are now also zeroed on PackedList::clear()

Note: in PackedList, require packing at least 2 items otherwise it is
     more efficient to use a normal list.
2010-07-28 14:50:17 +02:00
graham
0e935f41b0 Merge branch 'master' into cvm 2010-07-27 15:48:23 +01:00
graham
012494fdb5 STYLE: Fixing code style requirements for all apps.
Exception: applyWallFunctionBoundaryConditions.C cannot split #include
directives.
2010-07-27 15:27:05 +01:00
graham
1412553d06 Merge branch 'master' into cvm
Conflicts:
	src/edgeMesh/featureEdgeMesh/featureEdgeMesh.C
2010-07-23 13:41:31 +01:00
henry
6574570ba0 Merge branch 'master' of ssh://noisy/home/noisy3/OpenFOAM/OpenFOAM-dev
Conflicts:
	tutorials/heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/polyMesh/boundary
	tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/0/rho
	tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/polyMesh/boundary
	tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/RASProperties
	tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/thermophysicalProperties
	tutorials/heatTransfer/chtMultiRegionFoam/snappyMultiRegionHeater/constant/topAir/turbulenceProperties
	tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/cp
	tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/0/rho
	tutorials/heatTransfer/chtMultiRegionSimpleFoam/multiRegionHeater/constant/polyMesh/boundary
	tutorials/incompressible/simpleFoam/windTurbineTerrain/0/include/fixedInlet
	tutorials/incompressible/simpleFoam/windTurbineTerrain/0/include/sideAndTopPatches
	tutorials/incompressible/simpleFoam/windTurbineTerrain/0/nut
	tutorials/incompressible/simpleFoam/windTurbineTerrain/0/p
	tutorials/incompressible/simpleFoam/windTurbineTerrain/constant/RASProperties
	tutorials/incompressible/simpleFoam/windTurbineTerrain/system/decomposeParDict
2010-06-23 16:56:45 +01:00
henry
ccfb6e32a6 Corrected headers. 2010-06-23 16:54:54 +01:00
Mark Olesen
aa4781fcc0 BUG: missing constructor for pTraits specializations 2010-06-15 18:23:49 +02:00
Mark Olesen
0a4c8f7266 ENH: add assignment from UIndirectList to DynamicList 2010-06-15 11:02:23 +02:00
Mark Olesen
3277d0573e STYLE: use 'using Field<Type>::operator[]' in DynamicField 2010-06-07 14:37:48 +02:00
andy
28b1a9e2c6 Merge branch 'olesenm' 2010-06-03 10:25:03 +01:00
mattijs
c51a2b0f63 ENH: have MUST_READ_IF_MODIFIED on IOdictionary construction 2010-06-02 09:48:07 +01:00
Mark Olesen
895a077cb1 STYLE: fixup some dictionary headers 2010-05-18 11:38:07 +02:00
graham
f106f89f1f Merge branch 'master' into cvm
Conflicts:
	applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C
2010-05-11 13:00:25 +01:00
Mark Olesen
0e9851b432 Merge remote branch 'OpenCFD/master' into olesenm 2010-05-03 09:34:31 +02:00
Mark Olesen
35afeb9b18 STYLE: remove superfluous uses of argList::validArgs.clear()
- a holdover from the old <root> <case> days
2010-05-03 08:38:39 +02:00
Mark Olesen
72f7d46f23 ENH: add operator[](const word&) as "find-by-name" to some classes
- affected: polyBoundary, fvBoundaryMesh, ZoneMesh, searchableSurfaces

  before:
      const label zoneI = mesh.cellZones().findZoneID(zoneName);
      const cellZone& cz = mesh.cellZones()[zoneI];
  after:
      const cellZone& cz = mesh.cellZones()[zoneName];
2010-04-29 10:12:35 +02:00
graham
dc26005e49 Merge branch 'master' into particleInteractions
Conflicts:
	src/lagrangian/dieselSpray/spraySubModels/atomizationModel/atomizationModel/newAtomizationModel.C
	src/lagrangian/dieselSpray/spraySubModels/dispersionModel/dispersionModel/newDispersionModel.C
	src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcel.C
	src/lagrangian/intermediate/parcels/Templates/KinematicParcel/KinematicParcelI.H
2010-04-26 16:45:54 +01:00
Mark Olesen
42807ddd7e STYLE: fix worst spacing violations for 'os <<' constructions
- accept some violations of the coding guidelines though
- perhaps adding a style exception would be simpler.
2010-04-13 17:45:49 +02:00
graham
3be2501cd9 Merge branch 'master' into particleInteractions
Conflicts:
	src/lagrangian/intermediate/parcels/Templates/KinematicParcel/CollisionRecordList/CollisionRecordList.H
	src/lagrangian/intermediate/submodels/Kinematic/CollisionModel/NoCollision/NoCollision.H
	src/lagrangian/molecularDynamics/molecule/interactionLists/referralLists/receivingReferralList.C
	src/lagrangian/molecularDynamics/molecule/interactionLists/referralLists/sendingReferralList.C
2010-04-13 16:34:36 +01:00
Mark Olesen
6b819eb50a STYLE: use new fvPatch::start() method 2010-04-13 17:12:57 +02:00
graham
cddce779e8 STYLE: Change to GPL v3 and update copyright date. 2010-04-13 11:38:22 +01:00
graham
5c33936264 Merge branch 'master' into cvm 2010-04-13 11:31:32 +01:00
mattijs
defea5836e Merge branch 'master' of /home/noisy3/OpenFOAM/OpenFOAM-dev
Conflicts:
	src/OpenFOAM/containers/Lists/DynamicList/DynamicList.H
	src/postProcessing/functionObjects/field/fieldValues/cellSource/cellSource.C
	src/postProcessing/functionObjects/field/fieldValues/faceSource/faceSource.C
2010-04-13 11:07:19 +01:00
Mark Olesen
c2044d746a ENH: udr_checker is the same for ensight82 and ensight90 2010-04-13 10:35:51 +02:00
Mark Olesen
874120350c STYLE: use forAllIter, forAllConstIter in more places
ENH: change some iterator -> const_iterator access

BUG: found some places with forAllIter and ::iterator !
2010-04-13 09:10:36 +02:00
mattijs
fb86371714 ENH: Test ListOps on DynamicList. 2010-04-12 17:18:46 +01:00
graham
240c714aab Merge branch 'master' into cvm
Conflicts:
	etc/settings.csh
	etc/settings.sh
	wmake/rules/General/CGAL
2010-04-09 10:13:42 +01:00
graham
94bab707d3 Merge branch 'master' into particleInteractions 2010-03-31 11:48:58 +01:00
Mark Olesen
d29c438657 STYLE: use url for FSF license instead of postal address, switch to GPL v3 2010-03-29 14:07:56 +02:00
graham
5342baa2a7 Merge branch 'master' into cvm
Conflicts:
	etc/settings.csh
	etc/settings.sh
2010-03-23 11:43:17 +00:00
graham
876f975c29 Merge branch 'master' into particleInteractions 2010-03-19 16:01:41 +00:00
mattijs
f1ab396a66 STYLE: remove all references to wallPoint::greatPoint.
Replaced with point::max wherever possible. Is VGREAT, not GREAT so be
careful with calculations.
2010-03-17 11:48:44 +00:00
graham
4bb3159323 Merge branch 'particleInteractions' of ssh://graham@hunt//home/noisy3/OpenFOAM/OpenFOAM-dev into particleInteractions 2010-03-16 22:30:14 +00:00
graham
4030fa7129 BUG: test/globalIndex. globalIndex.C no long needs compiled here. 2010-03-16 22:29:34 +00:00
graham
8500a9caa6 BUG: Using FaceCellWave instead of MeshWave in testWallDist2.C. Does
not compile in old form.
2010-03-16 22:06:36 +00:00
graham
e09a140a28 Merge branch 'master' into cvm
Conflicts:
	applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C
2010-02-22 13:59:07 +00:00
Mark Olesen
78e41f78bd STYLE: avoid spaces around fileName::operator/ except when split across lines 2010-02-18 10:51:56 +01:00
Mark Olesen
689d4b2860 ENH: provide operator[] for accessing argList options.
- operator[] with label -> get args at index
- operator[] with word  -> get named option
2010-02-17 11:43:42 +01:00
Mark Olesen
d857d671ac STYLE: use new argList argRead() method and operator[] for cleaner code.
- deprecate argList::additionalArgs() method and remove uses of it
2010-02-16 17:57:49 +01:00
graham
abd1ee0f1d ENH: Distribution. Adding operator+ to allow
reduce(dist, sumOp< Distribution<scalar> >());

operations for parallel data.  Combines distributions using the
coarsest binWidth.

Changed write function to write normalised and raw to the same file.

BUG: Distribution. Corrected inaccurate median calculation.
2010-02-11 17:21:16 +00:00
graham
867f419731 ENH: Distribution. Basing the Distribution class on a List instead of
a Map.

Resizing by doubling and mapping data when a new entry is added that
is outside of the current bounds.  Trimming the output (normalised or
raw) to only the entries that contain data.

Overriding List clear method to enable the Distribution to be reset,
but retaining the correct number of components.
2010-02-10 17:50:31 +00:00
graham
c91ffbdbe8 Merge branch 'master' into cvm
Conflicts:
	src/OpenFOAM/meshes/primitiveShapes/plane/plane.C
	src/edgeMesh/Make/options
2010-02-10 15:00:34 +00:00
andy
7b3da686d8 Merge branch 'master' of ssh://noisy/home/noisy3/OpenFOAM/OpenFOAM-dev 2010-02-08 19:13:37 +00:00
mattijs
4e3efc9d0c STYLE: explain only collocated points addressed 2010-02-08 17:35:39 +00:00
Mark Olesen
00616b72ff ENH: Add functionEntry '#calc' to dictionary
- handles basic operations, references to other dictionary entries
  (with '$name' syntax) and assorted mathematical functions:

      pi(), degToRad, radToDeg, asin, acos, atan, sin, cos, tan, log,
      log10, mag, atan2, pow

The basic syntax: #calc{ ... };

NOTE the trailing ';' is required for the primitiveEntry to be
properly defined.
2010-02-07 13:58:10 +01:00
Mark Olesen
7dd1ad1e23 Adjust Make options for calcEntry. 2010-01-15 19:25:12 +01:00
Mark Olesen
6a8db69cf7 Merge remote branch 'bundle/olesenm' into home 2010-01-15 18:51:21 +01:00
Mark Olesen
cf3e2a8abf Update calcEntry grammar to include copyright.
Include character class (wchar_t or char) as a template parameter in
CocoParserErrors.
2010-01-06 12:27:14 +01:00
graham
58406da0a8 Merge branch 'master' into cvm
Conflicts:
	src/parallel/decompositionMethods/Make/options
2010-01-04 16:45:54 +00:00
mattijs
aac29d740a Merge branch 'master' of /home/noisy3/OpenFOAM/OpenFOAM-dev 2010-01-04 13:37:37 +00:00
mattijs
c6d4035ced Added master-slave addressing for coupled points.
- Rewrote globalPoints to use globalIndex class so now only transfers
single label instead of labelPair
- Added addressing in globalMeshData
    - from coupled master points to slave points
    -         ,,          edges     ,,    edges
    - from coupled points (master or slave) to uncoupled boundary faces
    -               ,,                    ,,                      cells
- See test/globalMeshData for simple test
2010-01-04 13:25:30 +00:00
graham
1fe32e3c48 Merge branch 'master' into cvm 2010-01-04 11:47:57 +00:00
Mark Olesen
e0ba4cbb02 Adjust line number before/after #calc{} scanner for improved error messages. 2010-01-03 21:45:32 +01:00
Mark Olesen
ebfdafad7f Add preliminary wmake rule for using CoCo/R. 2010-01-03 00:39:28 +01:00
Mark Olesen
d1a2be7872 Reorganize runTimeSelection to include new macros from calcEntry.
Added globalFunctionSelectionTables, staticMemberFunctionSelectionTables
2010-01-02 16:09:08 +01:00
Mark Olesen
cf91174880 Use global lookup tables for the calcEntry scalar functions.
Handle leading signs on functions etc.
2010-01-02 15:09:17 +01:00
Mark Olesen
f8147f5bb5 Add basic scalar functions to calcEntry. 2010-01-02 13:01:37 +01:00
graham
ff671ff1bb Merge branch 'master' into cvm
Conflicts:
	applications/utilities/surface/surfaceFeatureConvert/surfaceFeatureConvert.C
	applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C
	src/Allwmake
	src/edgeMesh/Make/files
	src/edgeMesh/edgeMesh.C
	src/edgeMesh/edgeMesh.H
	src/edgeMesh/edgeMeshI.H
	src/edgeMesh/edgeMeshIO.C
	src/edgeMesh/featureEdgeMesh.C
	src/edgeMesh/featureEdgeMesh.H
	src/edgeMesh/featureEdgeMesh/featureEdgeMesh.C
	src/edgeMesh/featureEdgeMesh/featureEdgeMesh.H
	src/meshTools/searchableSurface/closedTriSurfaceMesh.C
	src/meshTools/searchableSurface/closedTriSurfaceMesh.H

Merged Mark's work on edgeMesh with my featureEdgeMesh.
2009-12-21 15:52:03 +00:00
Mark Olesen
c0d37d9a6b Merge commit 'OpenCFD/master' into olesenm 2009-12-21 15:06:31 +01:00
Mark Olesen
8bf3807c3e Update dictionary calcEntry testing for updated CoCo/R 2009-12-21 15:02:33 +01:00
Mark Olesen
ccdbf4735f Move CocoParserErrors.H template class into src/OpenFOAM/db/error 2009-12-21 14:14:30 +01:00
graham
d241c43ac7 Adding hard-coded tetraherdal solid inertia calculation. Can be used
in a similar way to calculate the inertia of cells.
2009-12-21 10:29:05 +00:00
Mark Olesen
438a83fc81 Update experimental dictionary #calc for new Coco pragmas 2009-12-21 09:28:17 +01:00
mattijs
3bfec62cee Merge branch 'master' of /home/noisy3/OpenFOAM/OpenFOAM-dev 2009-12-17 15:55:21 +00:00
Mark Olesen
e434b51914 Add namespace qualifier to WarningIn, FatalErrorIn, etc. macros.
- Previously had just 'Warning' instead of '::Foam::Warning', which
  meant that an identically named class method would inadvertently be
  used - resulting in a compile failure.
2009-12-16 08:55:04 +01:00
Mark Olesen
a5217d7be3 Merge commit 'bundle/home' into olesenm 2009-12-16 08:08:23 +01:00
Mark Olesen
ad2204a818 Add in calcEntry as a very rough draft
- needs Coco/R 16 Dec 2009 version
2009-12-16 01:31:44 +01:00
mattijs
e325814c80 Test application for syncTools functionality 2009-12-15 16:00:47 +00:00
Mark Olesen
2760c3db5f Merge commit 'OpenCFD/master' into olesenm 2009-12-15 10:48:51 +01:00
Mark Olesen
bf2865a087 Add missing low-level peek() to ISstream. 2009-12-11 17:31:15 +01:00
Mark Olesen
497ec32ed8 Add missing low-level peek() to ISstream. 2009-12-11 17:31:15 +01:00
andy
d058c7ceb8 Added Polynomial class test 2009-12-10 12:50:20 +00:00
Mark Olesen
d2d39c32be HashSet and PackedList get an unset() method
- provides a convenient (and lazy) means of removing entries
2009-12-08 10:01:48 +01:00
Mark Olesen
16c715ceec Applied Mattijs' PackedList improvements
- resize with factor 2 as per DynamicList

Old insertion speed:
    1000000 in 0.61 s
    2000000 in 2.24 s
    3000000 in 3.97 s
    4000000 in 5.76 s
    5000000 in 7.54 s
    6000000 in 9.41 s
    7000000 in 11.5 s

New insertion speed:
    1000000 in 0.01 s
    2000000 in 0.02 s
    3000000 in 0.01 s
    4000000 in 0.02 s
    5000000 in 0.01 s
    6000000 in 0.01 s
    7000000 in 0.01 s
2009-12-08 09:42:38 +01:00
Mark Olesen
45f17a9e6c Merge commit 'OpenCFD/master' into olesenm 2009-12-07 10:41:19 +01:00
Mark Olesen
73f9f7f780 Remove legacy splines code and use CatmullRomSpline as 'spline'
- compatibility:
  * 'polySpline' and 'simpleSpline' accepted
  * detect and discard end tangent specifications

- a BSpline is also included (eg, for future support of NURBS), but is
  not selectable from blockMesh since it really isn't as nice as the
  Catmull-Rom (ie, doesn't *exactly* go through each point).
2009-12-07 06:54:06 +01:00
graham
e00078aa01 Merge branch 'master' into cvm
Conflicts:
	applications/test/momentOfInertia/Make/options
2009-12-04 18:00:52 +00:00
graham
f23e3eb3ea Changing linked library from finiteVolume to meshTools. 2009-12-04 17:11:30 +00:00
graham
70e00e93be Adding a function to calculate the moment of inertia of a triangle to
triangle, from:

http://en.wikipedia.org/wiki/Inertia_tensor_of_triangle

Adding the ability to calculate the inertia tensor of a polygon face
by summing the triangle inertias.

Added a test application to draw a test face with its principal
axes and moments of inertia.
2009-12-04 16:33:46 +00:00
graham
6b7dd8160d Adding a function to calculate the moment of inertia of a triangle to
triangle, from:

http://en.wikipedia.org/wiki/Inertia_tensor_of_triangle

Adding the ability to calculate the inertia tensor of a polygon face
by summing the triangle inertias.

Added a test application to draw a test face with its principal
axes and moments of inertia.
2009-12-04 16:33:46 +00:00
Mark Olesen
1b0cf102cc testing on fileName Istream construction 2009-12-04 16:22:59 +01:00
Mark Olesen
066b3158e7 quickly implemented BSpline2 as an alternative B-Spline implementation
- also looks reasonable and doesn't deviate much from Catmull-Rom
2009-12-04 15:34:42 +01:00
Mark Olesen
79b53a9c6c rename BSplineTest to splineTest and add Catmull-Rom to it
- the current B-Splines deliver rubbish
2009-12-04 12:54:15 +01:00
Mark Olesen
063d8edea1 PackedBoolList specializaton for operator=
- now that I re-examined the code, the note in commit 51fd6327a6
  can be mostly ignored

  PackedList isMaster(nPoints, 1u);
  is not really inefficient at all, since the '1u' is packed into
  32/64-bits before the subsequent assignment and doesn't involve
  shifts/masking for each index

  The same misinformation applies to the PackedList(size, 0u) form.
  It isn't much slower at all.

  Nonetheless, add bool specialization so that it is a simple assign.
2009-12-03 16:33:58 +01:00
Mark Olesen
67b79d9206 commit existing sizeof test 2009-12-03 14:40:12 +01:00
Mark Olesen
c091d856ae pedantic changes: 'forAll (' -> 'forAll(' in applications/
- to match coding guidelines
2009-12-03 14:12:08 +01:00
Mark Olesen
58b7e64185 Use argList::addOption, argList::addBoolOption (almost) everywhere
- ensure that the standard options (eg, from timeSelector) also have
  some usage information
2009-12-03 13:32:12 +01:00
Mark Olesen
c3457b5152 argList - specializations for optionRead<string> etc.
- new optionLookupOrDefault and additional form of optionReadIfPresent
  with a default value
2009-12-02 13:45:11 +01:00
Mark Olesen
a4f4a904f4 HashSet enhancement
- allow insert() and set() from a UList of Key
  This complements the existing erase(const UList<Key>&) method
2009-12-01 18:26:18 +01:00
Mark Olesen
28345f7e97 fixup #remove functionEntry and revert e15e32fdb7d515b
- forgot to use readList in removeEntry, which caused the test failure.

- remaining problem:

it doesn't work as might be expected
This is the problem:

dict
{
   foo xxx;
   bar yyy;
}

dict
{
   baz zzz;
   #remove foo
}

This only removes 'foo' from the current scope (the second dict), since
it occurs before the dictionary merge does.

To remove from the final, merged dictionary, we'd need a new
deleteEntry type that would do the right thing on the merge before
self-destructing (ie, removing itself too).
2009-12-01 13:50:51 +01:00
henry
80a27fb9da Removed the "#remove" statements which do not appear to work. 2009-12-01 12:04:28 +00:00
graham
ad669ae3d8 Merge branch 'master' into cvm
Conflicts:
	doc/codingStyleGuide.org
2009-11-30 14:55:39 +00:00
Mark Olesen
909e6b27e4 Apply coding style recommendations:
- space between keyword and bracket in 'for(..)', 'if(..)', 'while(..)'
2009-11-30 08:55:03 +01:00
Mark Olesen
fa93ce8cd7 coding style adherence
- markup codingStyleGuide.org examples so they actually indent correctly

- use 'Info<<' as per codingStyleGuide instead of 'Info <<'
2009-11-27 15:39:14 +01:00
graham
844685d29d Finished working version of templated Distribution class.
Changed the underlying map to be a Map<scalar> to allow the addition
of a value to the Distribution to be weighted (by timestep or by cell
size for example) component by-component - default weight is one.

Adding normalisation, write, mean snd median functions.

Test application DistributionTest draws numbers from the Random class
and creates distributions of them, writing to disk, for the main
types: scalar, vector, symmTensior, sphericalTensor and tensor.

Creating a labelVector distibution, but need to check what is
happening to the mean and median values and what happens when an odd
number is used as a binWidth, as truncation to label will be
occurring.
2009-11-23 12:22:13 +00:00
graham
a74f31aace Initial templated Distribution class where a distribution is
accumulated for each component of the template parameter.
2009-11-22 18:21:37 +00:00
henry
35c9d7bbd5 Corrected test applications. 2009-11-20 12:40:19 +00:00
mattijs
b7845edeba updated to new thermo 2009-11-13 16:09:27 +00:00
mattijs
cad5a703fc Merge branch 'olesenm' 2009-11-06 11:05:21 +00:00
mattijs
2268ea38a0 Added Container template argument for e.g. construct from faceList 2009-11-04 11:40:12 +00:00
Mark Olesen
ebe39c4ea4 Merge commit 'OpenCFD/master' into olesenm 2009-11-04 08:56:20 +01:00
Mark Olesen
53a9208d9f Merge commit 'bundle/home' into olesenm
Conflicts:
	src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.C
	src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.H
	tutorials/incompressible/simpleFoam/airFoil2D/Allclean
	tutorials/multiphase/settlingFoam/ras/tank3D/Allclean
2009-11-04 08:54:34 +01:00
mattijs
baea3d76a8 CompactListList to use offsets sized one beyond nRows 2009-11-03 18:04:24 +00:00
mattijs
fe17dd2d1f globalIndex to use procI+1 scheme 2009-11-03 18:02:52 +00:00
Mark Olesen
946aac500a HashTbl changes
- iterators store pointers instead of references to the HashTbl.
  This lets us use the default bitwise copy/assignment

- add empty constructor for iterators. It returns the equivalent to end().
  This lets us do this:
      HashTbl<label>::iterator iter;
      // some time later
      iter = find(Value);

- erase(const HashTbl<AnyType, Key, AnyHash>&) is now more generous.
  Only the Key type matters, not the hashing function.
2009-10-30 22:37:35 +01:00
Mark Olesen
1fbcb6e2c0 Added HashTbl::shrink() - but it only be useful in particular situations
- for the hashTableTest3, it seemed to slow things down a bit

loop 0 - Erased 100000 elements (size 2900000 capacity 4194304) 0.31 s
loop 1 - Erased 100000 elements (size 2800000 capacity 4194304) 0.01 s
loop 2 - Erased 100000 elements (size 2700000 capacity 4194304) 0 s
loop 3 - Erased 100000 elements (size 2600000 capacity 4194304) 0 s
loop 4 - Erased 100000 elements (size 2500000 capacity 4194304) 0.01 s
loop 5 - Erased 100000 elements (size 2400000 capacity 4194304) 0 s
loop 6 - Erased 100000 elements (size 2300000 capacity 4194304) 0 s
loop 7 - Erased 100000 elements (size 2200000 capacity 4194304) 0 s
loop 8 - Erased 100000 elements (size 2100000 capacity 4194304) 0.01 s
loop 9 - Erased 100000 elements (size 2000000 capacity 4194304) 0.44 s
loop 10 - Erased 100000 elements (size 1900000 capacity 4194304) 0.44 s
loop 11 - Erased 100000 elements (size 1800000 capacity 4194304) 0.39 s
loop 12 - Erased 100000 elements (size 1700000 capacity 4194304) 0.4 s
loop 13 - Erased 100000 elements (size 1600000 capacity 2097152) 0.15 s
loop 14 - Erased 100000 elements (size 1500000 capacity 2097152) 0.01 s
loop 15 - Erased 100000 elements (size 1400000 capacity 2097152) 0 s
loop 16 - Erased 100000 elements (size 1300000 capacity 2097152) 0 s
loop 17 - Erased 100000 elements (size 1200000 capacity 2097152) 0.01 s
loop 18 - Erased 100000 elements (size 1100000 capacity 2097152) 0 s
loop 19 - Erased 100000 elements (size 1000000 capacity 2097152) 0.27 s
loop 20 - Erased 100000 elements (size 900000 capacity 2097152) 0.2 s
loop 21 - Erased 100000 elements (size 800000 capacity 1048576) 0.1 s
loop 22 - Erased 100000 elements (size 700000 capacity 1048576) 0 s
loop 23 - Erased 100000 elements (size 600000 capacity 1048576) 0 s
loop 24 - Erased 100000 elements (size 500000 capacity 1048576) 0.12 s
loop 25 - Erased 100000 elements (size 400000 capacity 524288) 0.04 s
loop 26 - Erased 100000 elements (size 300000 capacity 524288) 0.01 s
loop 27 - Erased 100000 elements (size 200000 capacity 262144) 0.02 s
loop 28 - Erased 100000 elements (size 100000 capacity 131072) 0.02 s
loop 29 - Erased 100000 elements (size 0 capacity 2) 0 s
2009-10-30 19:28:39 +01:00
Mark Olesen
2c73afb6ec HashTbl avoid backward search in erase()
- The ideas as discussed in email

- The speedup is really there.

Before
loop 0 - Erased 100000 elements:   3.82 s
loop 1 - Erased 100000 elements:   11.45 s
loop 2 - Erased 100000 elements:   19.46 s
loop 3 - Erased 100000 elements:   27.73 s
loop 4 - Erased 100000 elements:   38.74 s
^C

After
loop 0 - Erased 100000 elements (size 2900000 capacity 8388608) 0.01 s
loop 1 - Erased 100000 elements (size 2800000 capacity 8388608) 0 s
loop 2 - Erased 100000 elements (size 2700000 capacity 8388608) 0.01 s
loop 3 - Erased 100000 elements (size 2600000 capacity 8388608) 0 s
loop 4 - Erased 100000 elements (size 2500000 capacity 8388608) 0 s
loop 5 - Erased 100000 elements (size 2400000 capacity 8388608) 0 s
loop 6 - Erased 100000 elements (size 2300000 capacity 8388608) 0 s
loop 7 - Erased 100000 elements (size 2200000 capacity 8388608) 0 s
...
2009-10-30 18:54:51 +01:00
Mark Olesen
55a89e9db3 added HashTbl as development replacement for HashTable
- rename to HashTable later when it is considered stable
2009-10-30 18:31:28 +01:00
mattijs
02e73e2530 Merge branch 'master' of /home/hunt2/mattijs/OpenFOAM/OpenFOAM-dev/. 2009-10-27 16:44:41 +00:00
Mark Olesen
c100ffc957 Merge commit 'OpenCFD/master' into olesenm
Conflicts:
	src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.C
	src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.H
	src/mesh/blockMesh/curvedEdges/BSpline.C
	src/mesh/blockMesh/curvedEdges/spline.C
	src/mesh/blockMesh/curvedEdges/spline.H

- Also adjusted chemistrySolver/EulerImplicit/EulerImplicit.C
  to use simpleMatrix with initialized values
2009-10-27 08:29:33 +01:00
Mark Olesen
2b7dee2c8b add applications/test/BSpline - it fails! 2009-10-26 13:14:40 +01:00
mattijs
9a139812ed Merge branch 'master' of /home/hunt2/mattijs/OpenFOAM/OpenFOAM-dev/. 2009-10-26 09:59:18 +00:00
mattijs
46f1df810c unallocated Pstream 2009-10-26 09:59:07 +00:00
henry
427bbd8174 Changed the interface for the upToDate check to avoid unnecessary object lookups
by providing the independent objects directly.
2009-10-20 22:17:37 +01:00