Commit Graph

22773 Commits

Author SHA1 Message Date
Mark Olesen
0f1fcb97b5 ENH: additional MinMax span() and zero_one() methods 2019-05-08 12:12:00 +02:00
Mark Olesen
ac317699d8 ENH: additional HashTable emplace/insert/set methods (#1286)
- support move insert/set and emplace insertion.

  These adjustments can be used for improved memory efficiency, and
  allow hash tables of non-copyable objects (eg, std::unique_ptr).

- extend special HashTable output treatment to include pointer-like
  objects such as autoPtr and unique_ptr.

ENH: HashTable::at() method with checking. Fatal if entry does not exist.
2019-05-06 08:34:39 +02:00
Mark Olesen
e30dc962b3 STYLE: unnecessary read-check in ccm::writer 2019-05-07 20:39:20 +02:00
Mark Olesen
4b39c9f19b Merge branch 'feature-dynamicCode' into 'develop'
Feature dynamic code

See merge request Development/OpenFOAM-plus!255
2019-05-07 17:33:32 +01:00
Mark Olesen
23e5d43e4e ENH: add colour for x3d surface writer (#1057)
- can be used for outputing sampled surfaces in x3d format for direct
  import in other rendering tools.
2019-05-06 17:13:22 +02:00
Mark Olesen
3089a11647 STYLE: comments and parameter names for coordinateRotations::euler 2019-05-03 13:31:00 +02:00
Mark Olesen
675aa8053a ENH: support pointer cast from autoPtr 2019-05-03 09:59:53 +02:00
Mark Olesen
8b6f4a4bcf STYLE: use iterator for mutable access in masterUncollatedFileOperation 2019-05-03 11:27:23 +02:00
Mark Olesen
1dbe897930 Merge branch 'feature-MUSCS-SurfaceReact' into 'develop'
Reacting heterogeneous cloud

See merge request Development/OpenFOAM-plus!242
2019-05-02 19:40:26 +01:00
mattijs
912009c458 ENH: overset: insert remote interpolation into lduMatrix
All remote contributions to interpolation stencils now
get added as 'processor' type lduInterfaces. This guarantees
a consistent matrix, e.g. initial residual is normalised to 1.

Second change is the normalisation of the interpolation discretisation
which uses the diagonal from the unmodified equation. This helps
GAMG.
2019-05-02 16:49:48 +01:00
mattijs
c924a3639c ENH: GAMG: enable debug printing 2019-05-02 13:28:01 +01:00
Mark Olesen
d2462d4d37 ENH: use areaAverage instead of average for -func patchAverage (#1303)
- this corresponds more closely to the expected behaviour of a
  patch-average value being independent of the local face
  discretization
2019-05-02 13:15:49 +02:00
Andrew Heather
5507d11bdd Merge branch 'feature-reflectiveSolarLoad' into 'develop'
Feature reflective solar load

See merge request Development/OpenFOAM-plus!243
2019-05-02 10:45:45 +01:00
Andrew Heather
af9334631f INT: Updates for radiation modelling for integration into the develop branch 2019-05-02 10:40:16 +01:00
Mark Olesen
a85c55bbb5 ENH: ensure that content changes in coded objects are noticed (#1293)
- for codedFunctionObject and CodedSource the main code snippets
  were not included in the SHA1 calculation, which meant that many
  changes would not be noticed and no new library would be compiled.

  As a workaround, a dummy 'code' entry could be used solely for the
  purposes of generating a SHA1, but this is easily forgotten.

  We now allow tracking of the dynamicCodeContext for the coded
  objects and append to the SHA1 hasher with specific entries.
  This should solve the previous misbehaviour.

  We additionally add information about the ordering of the code
  sections. Suppose we have a coded function object (all code
  segments are optional) with the following:

      codeExecute "";
      codeWrite   #{ Info<< "Called\n"; #};

  which we subsequently change to this:

      codeExecute #{ Info<< "Called\n"; #};
      codeWrite   "";

  If the code strings are simply concatenated together, the SHA1 hashes
  will be identical. We thus 'salt' with their semantic locations,
  choosing tags that are unlikely to occur within the code strings
  themselves.

- simplify the coded templates with constexpr for the SHA1sum
  information.

- Correct the CodedSource to use 'codeConstrain' instead of
  'codeSetValue' for consistency with the underlying functions.
2019-05-01 14:00:54 +02:00
Mark Olesen
36112db110 ENH: modernize SHA1 classes (#1301)
- localize some functionality, std::array for digest internals.
  Additional append sub-string methods, pass-through write of digest
  etc.
2019-05-01 12:14:09 +02:00
Mark Olesen
83d26d19b5 ENH: replace processorFvPatchField specialization with 'if...' (#1304)
- only apply component-wise transformCoupleField for non-scalar types
2019-05-01 14:20:08 +02:00
Mark Olesen
c96a84e653 STYLE: use std::is_arithmetic in contiguous and ListPolicy 2019-05-01 11:25:34 +02:00
Mark Olesen
1d5e0a4e0e ENH: unify dlSym handling
- amalgamate dlSym() and dlSymFound() into a single dlSymFind() backend
  with optional 'required' argument. This makes it possible to
  query and assign at once.
2019-04-30 14:27:12 +02:00
Mark Olesen
26a391b1e9 ENH: no string quotes when using OSHA1stream (#1301)
- previously would have different SHA1 depending on whether the
  string was a C-string, a C++-string or if the SHA1 was calculated
  directly or via the OSHA1stream.

    - SHA1("string")
    - OSHA1stream << "string";
    - OSHA1stream << string("string");

  By avoiding string quoting on output, they now all deliver the same
  result. This also means that the following will no longer change the SHA1
  content, since it does not add anything:

    osha<< string() << string() << string() << string();

  This would have previously add a pair of double quotes each time!
2019-04-30 12:43:59 +02:00
Mark Olesen
e7a046858e COMP: avoid some implicit linkage (#1238) 2019-04-30 11:28:23 +02:00
Mark Olesen
06b2aa6849 COMP: skip CGAL rules when -DNO_CGAL is defined for surfaceBooleanFeatures 2019-04-30 10:33:01 +02:00
Mark Olesen
4a51239820 STYLE: restrict posix and ieee754 random tests (non-portable) to linux 2019-04-30 10:05:53 +02:00
Johan Roenby
d8e8306bbc BUG: interIsoFoam nAlphaSubCycles, nOuterCorrectors issue (fixes #1300)
- failed when nAlphaSubCycles > 1 and nOuterCorrectors > 1.
  Fixed thanks to Henning Scheufler (DLR Bremen).
2019-04-30 10:59:32 +02:00
Mark Olesen
ed6b26ba45 BUG: had clang++ instead of armclang++ 2019-04-29 21:10:14 +02:00
Mark Olesen
1ff33d0f9b GIT: adjust commits for modules 2019-04-29 19:47:39 +02:00
mattijs
25e0182fca COMP: label64: fixes #1297. 2019-04-29 14:23:05 +01:00
Mark Olesen
897528da1a ENH: streamline handling of static/dynamic libs in detection scripts 2019-04-29 10:04:44 +02:00
Mark Olesen
beefee48d4 COMP: adjust compilation order with updated interdependencies
- Eg, with surface writers now in surfMesh, there are fewer libraries
  depending on conversion and sampling.

COMP: regularize linkage ordering and avoid some implicit linkage (#1238)
2019-04-28 14:44:33 +02:00
Mark Olesen
a54aff9d26 COMP: add wmake rules for mingw (#1238) 2019-04-28 13:36:50 +02:00
Mark Olesen
4941213880 COMP: combine twoPhaseProperties library into interfaceProperties
- avoids unnecessary cyclic dependency
2019-04-26 20:55:46 +02:00
Mark Olesen
59da4cf56d STYLE: use uintptr_t cast instead of long when reporting addresses 2019-04-29 08:15:48 +02:00
Mark Olesen
4a1208ed30 ENH: add handling of exe file extensions in wmake/src/Makefile (#1238)
- change internal naming from 'EXE_EXT' to 'EXT_EXE' for symmetry with
  'EXT_SO'
2019-04-26 14:20:01 +02:00
Mark Olesen
ffcff46f18 ENH: support trapping of IOerror exceptions in parallel (#1296)
- continuation of commit 0e7954c22b

ENH: downgrade abort() to exit() in some places (#1238)
2019-04-26 13:55:37 +02:00
Mark Olesen
849dffedb8 COMP: define processorFvPatchField<scalar> with scoping 2019-04-26 14:35:55 +02:00
Andrew Heather
6146667284 Merge branch 'feature-indirect-lists' into 'develop'
Feature indirect lists

See merge request Development/OpenFOAM-plus!253
2019-04-29 10:48:17 +01:00
Mattijs Janssens
ca2b94d1ac ENH: add simple profiling of MPI communications
See merge request Development/OpenFOAM-plus!254
2019-04-29 10:08:30 +01:00
mattijs
5e01152779 ENH: Pstream: use commsType to decide whether reduce or all-to-all 2019-04-29 09:23:43 +01:00
Mark Olesen
70b12e0bd0 ENH: handle cellSet/cellZone updates in fvMeshSubsetProxy (#1294)
- now also track if the cellSet or cellZone has changed on point
  motion.
2019-04-26 13:34:00 +02:00
Mark Olesen
180a284814 ENH: add '==' and '!=' operators for PackedList/bitSet
- also available as equal() member function
2019-04-26 13:01:39 +02:00
Mark Olesen
e1609d16d1 STYLE: use degToRad() instead of pi/180 2019-04-26 11:48:27 +02:00
Mark Olesen
5f40a738d3 STYLE: adjust comments in quaternion
- make I/O operators global (non-member)
2019-04-26 10:27:53 +02:00
Mark Olesen
661d1f53df ENH: additional rotation tests (#1292) 2019-04-25 20:22:06 +02:00
mattijs
bc53e50c90 CONTRIBUTION: gmshToFoam: support version 4 mesh format. Fixes #1155.
Patch contributed by Gavin Ridley.
2019-04-25 16:33:17 +01:00
Mark Olesen
d80198ec09 STYLE: use modern iterator access (proximity check) 2019-04-25 17:44:52 +02:00
Mark Olesen
828f8e8504 ENH: add simple profiling of MPI communications 2019-04-25 15:33:51 +02:00
mattijs
53be19989b CONTRIBUTION: overset: handling patch interactions. See #1288.
- in case of cell overlapping a patch : set cell to hole always
- in case of cell changing from hole to calculated: set to hole
  and continue. Do so before 'flood filling' holes.
Patch supplied by Nicolas Edh.
2019-04-25 11:00:32 +01:00
Mark Olesen
bf30779b64 ENH: add partial sorting to SortableList 2019-04-24 19:03:00 +02:00
Mark Olesen
3a1a353483 STYLE: remove UList operator[] taking std::initializer_list
- unnecessary. Can deduce labelRange from the pair of labels.
  These are all the same:

      list[labelRange(18,3)] = 100;
      list[labelRange{18,3}] = 100;
      list[{18,3}] = 100;

  Removing the run-time handling of std::initializer_list in favour of
  compile-time deduction allows the future use of sliceRange as well.
  Eg,

     list[sliceRange{18,3,2}] = 100;
     list[{18,3,2}] = 100;
2019-04-24 18:26:57 +02:00
mattijs
cad37cf603 BUG: magneticFoam: add orientation information. Fixes #1291. 2019-04-24 15:40:52 +01:00