Commit graph

4967 commits

Author SHA1 Message Date
Vuko Vukcevic
b46ede8553 Bugfix: suitablePairsSuit_ must be data member 2018-07-16 15:34:54 +02:00
Vuko Vukcevic
3142fa27ee Parallelised adaptiveOverlapFringe 2018-07-16 14:13:31 +02:00
Vuko Vukcevic
497ccfada8 Updates (fixes) to adaptiveOverlapFringe
1. Clearing out temporary worker data for dynamic cases,
2. minLocalSuitability and orphanSuitability now given as fractions (0 to 1)
   instead of percentages (0 to 100%).
2018-07-16 12:51:21 +02:00
Vuko Vukcevic
ed06d9d919 Minor style change: adaptiveOverlapFringe 2018-07-12 19:34:32 +02:00
Vuko Vukcevic
eb1e30ecdb Updates to NACA4412-airfoil overset validationSuite case 2018-07-12 19:33:39 +02:00
Vuko Vukcevic
ea0466aa43 Adaptive overlap fringe algorithm by Josip Katavic 2018-07-12 15:37:20 +02:00
Vuko Vukcevic
8a1f5f66fc Updates to overlapFringe::evaluateNonOversetBoundaries
This function is now static instead of ordinary member function so it can be
used by adaptiveOverlapFringe. A slight reorganization of this is needed.
2018-07-12 15:35:22 +02:00
Vuko Vukcevic
c9cfe3cbf8 Compilation fixes due to updated code
1. Donor suitability functions now hold reference to oversetFringe (base class)
   and not the overlapFringe,
2. Missing curly braces in oversetRegion.
2018-07-12 14:19:52 +02:00
Vuko Vukcevic
7ae045b32b Changed directory structure for overlapFringe 2018-07-12 13:51:05 +02:00
Vuko Vukcevic
4b485ab906 Updates to oversetRegion
1. Avoid deleting holeCells and eligibleDonorCells if region has not found
   suitable overlap,
2. When choosing donors, make a preference depending on whether the donor is
   within acceptors bounding box (among other things).
2018-07-12 13:47:43 +02:00
Vuko Vukcevic
1e57733ed1 Updates to donorSuitability
Added suitabilityFraction member function which returns how suitable
donor and acceptor are (0: not suitable at all, 1: perfectly suitable).
2018-07-12 13:45:43 +02:00
Vuko Vukcevic
e56083051e Updates to donorAcceptor
Added data member to check whether the donor is within bounding box of the
acceptor.
2018-07-12 13:44:09 +02:00
Vuko Vukcevic
8bfcd34ffe Bugfix in periodicOscillation::stabilise
Added missing motion amplitude and velocity amplitude when stabilising the
constraint.
2018-07-12 13:36:39 +02:00
Vuko Vukcevic
9dae7c64bf Additional refinement selection strategy: protectedInitialRefinement
This strategy allows us to protect the initial refinement done using
snappyHexMesh or similar meshers where the cellLevel and pointLevel are used and
written down. The strategy protects refined cells (during the meshing stage)
from unrefinement. To be used as part of compositeRefinement.
2018-07-10 16:08:37 +02:00
Hrvoje Jasak
304d230d1a Fixed evaluation problem when regionCoupling is inactive 2018-07-06 10:08:24 +01:00
Vuko Vukcevic
2ecd49f2be Corrected error message in refinement.C 2018-07-05 16:48:20 +02:00
Vuko Vukcevic
2d66abcadf Cleaned-up include directives for refactored classes 2018-07-05 07:17:57 +02:00
Vuko Vukcevic
778af3691a Fixed error on FatalErrorIn call
abort(FatalError) must be called and not abort(FatalErrorIn)
2018-07-05 07:17:57 +02:00
Vuko Vukcevic
086fad1ecc Refactored adaptive mesh refinement polyMeshModifiers
Base class "refinement" that contains necessary interface and all the data
members and member function used by both derived classes:
1. polyhedralRefinement: used for 3D isotropic refinement,
2. prismatic2DRefinement: used for 2D isotropic refinement.

Note: refactorisation not tested yet.
2018-07-05 07:17:57 +02:00
Vuko Vukcevic
a29e1ead28 Refactored dynamicPolyRefinementFvMesh class
Enabled automatic switching between polyhedralRefinement engine for 3D and
prismatic2DRefinement engine for 2D.
2018-07-05 07:17:57 +02:00
Vuko Vukcevic
2d845a809c Updates to polyhedralRefinement engine
1. Make sure that we don't refine over maximum refinement level when extending
   refinement cells over additional buffer layers,
2. Removed redundancy check which becomes wrong in case we are running dynamic
   load balancing,
3. Removed deprecated hard-code where the cells protected from unrefinement are
   extended by nUnrefinementBufferLayers_ + 2 instead of just
   nUnrefinementBufferLayers_
2018-07-05 07:17:57 +02:00
Vuko Vukcevic
a913c28897 Updates to prismatic2DRefinement.C related to unrefinement
Enabled unrefinement (splitting of boundary points and removing internal faces)
using the existing removeFaces engine.
2018-07-05 07:17:57 +02:00
Vuko Vukcevic
7524014a37 2D AMR: prismatic2DRefinement polyMeshModifier
Ported prismatic2DRefinement class from other temporary repository. Basically a
version of polyhedralRefinement specifically designed for 2D cases.

Status:
Refinement seems to work well on simple cases:
  1. 4 by 4 hex cells (quad prisms),
  2. 28 triangular prisms,
  3. Tested both in serial and parallel up to 9 refinement levels.

To do:
  1. Implement proper 2D unrefinement,
  2. Refactor prismatic2DRefinement and polyhedralRefinement to avoid duplicate
     functions used by both classes.
2018-07-05 07:17:57 +02:00
Martin Beaudoin
b59cad23fd ThirdParty: bumping openmpi to version 3.1.1 2018-07-04 22:54:35 -04:00
Martin Beaudoin
1c5b0bc3cc ParaView plugin compilation: syntax adjustments for newer versions of CMake 2018-07-01 22:51:57 -04:00
Martin Beaudoin
903e06f5ab ThirdParty: ParaView-5.5.2: adjustments to automatically generated .sh and .csh
package configuration files
2018-07-01 22:48:52 -04:00
Martin Beaudoin
e8c1beed0e ThirdParty: bumping Paraview to version 5.5.2 2018-07-01 20:41:56 -04:00
Martin Beaudoin
99c20324fc ThirdParty: bumping the QT library to version 5.11.1. Improving the compilation
configuration options based on Kitware's ParaView-Superbuild package
2018-07-01 13:16:26 -04:00
Martin Beaudoin
f8cfd5a100 Ignoring .xz file for Git 2018-07-01 13:13:57 -04:00
Martin Beaudoin
814ed82294 ThirdParty: adjust maximum timeout for curl downloads 2018-07-01 12:57:35 -04:00
Martin Beaudoin
6be52fe7e8 ThirdParty: bumping mesquite to version 2.3.0 2018-06-28 20:40:30 -04:00
Martin Beaudoin
17a3e12763 ThirdParty: add support for PyFoam version 0.6.6 and 0.6.9. Make PyFoam 0.6.9 the default version 2018-06-27 22:56:01 -04:00
Martin Beaudoin
1e973d5fe6 ThirdParty: bumping hwloc to version 2.0.1 2018-06-27 18:40:28 -04:00
Martin Beaudoin
8201aa30bd Add a MPIRUN_OPTIONS environment variable when using the runParallel shell function.
When using OpenMPI 3.1.0, one could specify the runtime parameter '-oversubscribe' to mpirun
2018-06-26 22:21:14 -04:00
Martin Beaudoin
454253dbe9 ThirdParty: adding some retry/timeout robustness parameters to the curl download command for the packages' source code. 2018-06-25 23:53:45 -04:00
Martin Beaudoin
f2a471c5c8 ThirdParty:
- Bumping cmake to version 3.11.4
 - Bumping openmpi to version 3.1.0
2018-06-25 22:59:38 -04:00
Martin Beaudoin
8a12411d38 ThirdParty: modification to the bash uninstallPackage() function.
Make it easier to read, and more portable.
2018-06-25 22:37:58 -04:00
Martin Beaudoin
6aba1630ed Minor corrections for compiling under macOS High Sierra (10.13.5) using
the stock compiler Apple LLVM version 9.1.0 (clang-902.0.39.2)
2018-06-24 22:15:40 -04:00
Hrvoje Jasak
e01e16c943 Refactorization of incompressible/compressible nut/mut wall functions. Author: Vuko Vukcevic. Merge: Hrvoje Jasak. 2018-06-20 13:34:29 +01:00
Hrvoje Jasak
d311db5954 Added public member functions that return accelerations (translational and rotational). Author: Vuko Vukcevic. Merge: Hrvoje Jasak. 2018-06-20 13:33:16 +01:00
Vuko Vukcevic
9e53ac1209 Updated mut in all tutorials
Using mutkWallFunction instead of mutWallFunction (this is abstract base now and
mutkWallFunction is the same as previous mutWallFunction)
2018-06-19 15:43:53 +02:00
Vuko Vukcevic
7167d46046 Updated nut in all tutorials
Using nutkWallFunction instead of nutWallFunction (this is abstract base now and
nutkWallFunction is the same as previous nutWallFunction)
2018-06-19 15:40:23 +02:00
Vuko Vukcevic
3de5d66021 Compilation bugfixes:
1. Forgot to define typeName and debug level for
   nutWallFunctionFvPatchScalarField and mutWallFunctionFvPatchScalarField
2. Forgot to remove declaration of write(Ostream&) member function in
   nutSpalartAllmarasWallFunction and mutSpalartAllmarasWallFunction
2018-06-19 15:38:48 +02:00
Vuko Vukcevic
4ec81f9103 Update to backwardsCompatibilityWallFunctions.C
autoCreateMut now creates mutkWallFunction by default (instead of abstract base
class mutWallFunction)
2018-06-19 15:22:23 +02:00
Vuko Vukcevic
306bd93e81 Removed deprecated mutRoughWallFunction
Replaced by mutkRoughWallFunction
2018-06-19 15:20:33 +02:00
Vuko Vukcevic
da6f48e599 Refactored remaining Spalart Allmaras mut wall functions
1. mutSpalartAllmarasStandardWallFunction: same as mutUWallFunction
2. mutSpalartAllmarasStandardRoughWallFunction: same as mutURoughWallFunction
3. mutSpalartAllmarasWallFunction: refactored such that it derives from
   mutWallFunction
2018-06-19 15:18:04 +02:00
Vuko Vukcevic
6681c7e1ee Added mutURoughWallFunction for compatibility with incompressible wall functions
This BC is the same as mutSpalartAlmarasStandardRoughWallFunction. We will
refactor mutSpalartAlmarasStandardRoughWallFunction such that it derives from
this BC in order to have both backward compatibility and compatibility with
incompressible wall functions.
2018-06-19 15:15:08 +02:00
Vuko Vukcevic
660326047d Added mutUWallFunction for compatibility with incompressible wall functions
This BC is the same as mutSpalartAlmarasStandardWallFunction. We will refactor
mutSpalartAlmarasStandardWallFunction such that it derives from this BC in order
to have both backward compatibility and compatibility with incompressible wall
functions.
2018-06-19 15:12:56 +02:00
Vuko Vukcevic
671ad26638 Refactored mutkRoughWallFunction according to the new interface 2018-06-19 15:09:56 +02:00
Vuko Vukcevic
3d7f902f82 Refactored nutkWallFunction according to the new interface
mutkWallFunctionFvPatchScalarField now derives from
mutWallFunctionFvPatchScalarField
2018-06-19 15:05:12 +02:00